The software development life cycle, or SDLC, encompasses all of the steps that an organization follows when it develops software tools or applications.
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Software Lifecycle Management
1. Software Lifecycle Management
The software development life cycle, or SDLC, encompasses all of the steps that an
organization follows when it develops software tools or applications. The SDLC is broken
down into seven stages; requirement gathering, UI Interface design, system architecture
design, development, testing, deployment and maintenance. A software project manager is
required during the entire software development lifecycle to do the entire software delivery
management.
•
The first stage in software development lifecycle is requirement gathering and
planning. It is the most important step of the entire SDLC and is done by senior
business analysts or product managers of the company. This stage consists of
requirement understanding, technical feasibility analysis and documentation of SRS
(Software Requirement Specifications). SRS templates are made and filled post
discussions with the client. In this collaborative exercise, many rounds of
discussions are held with the client and they are advised about all interactions that
the end users will have with the software system. The business analysis think
through all edge cases, imagine themselves in the shoes of the end-user and make
wireframes and mocks to show how the final web screens or mobile screens etc.
will look. Competitor benchmarking is done with existing competitive sites. Latest
technological trends are discussed for how to do things differently and more
2. intuitively.
Depending on time and cost constraints of the end-user, suggestions are also given
by software consultants for which functionality should be left out for next phase and
which are a must have for the first launch.
During this process lots of un-clear requirements get thrashed out in detail, and all
software features are spaced out with full data flow wireframes. Some functionality can be
out of the scope of project because of un-clear requirements in the beginning or due to
high cost so It is very important to do the requirement analysis right because it sets the
outline of the entire software project and helps in making the right management decisions
regarding development cost and project execution time lines.
•
•
•
•
The next step is UI interface design – This is the visual appearance and actual
physical look of the website or mobile app or desktop application. The software user
interface must be simple, easy to use, non-cluttered and intuitive. Users should
have a good navigation flow, a good organized page with all relevant content and
they should be able to easily access all features of the site without getting lost. UX
designers with experience of human computer interaction get involved at this stage
to make visually appealing designs that are web 2.0 compatible.
This is followed by design stage. This phase mainly involves making the web or
mobile application architecture which consists of database modeling, class
diagrams and feature sequence diagrams. The coding frameworks, libraries and
open source tools are identified. The is done by senior tech leads and the goal is to
understand site’s traffic and make a scalable web architecture which is secure, fast
and robust.
Next comes the development stage of SDLC which deals with the actual coding of
the project followed by software quality assurance Development and software QA
testing go hand in hand. Development is done by experienced software engineers.
A senior project managers gives them tasks to code with a software project lifecycle
chart called a Gantt chart that shows start and end time for coding each feature.
Feature dependencies are hash out which shows which feature depends on which
ones as pre-requisites. The Gantt chart shows how features can be parallely
executed by different developers and who works on which features. All software
engineers follow this to complete development. Software QA testing is done by QA
engineers who may be non-technical. They do black box testing to identify bugs that
may be either functional defects or potential breaks caused in the system due to
stress on the server, network speed or incorrect 3rd party integrations. In order to
lower the risk of pushing a deficient system in production, a rigorous software QA
testing
exercise
is
performed
by
experienced
test
engineers.
QA engineers should make comprehensive test cases in order to understand the
scope of testing. Practically, a test environment can never be an exact mirror image
of the production environment due to several factors such as difference in database
sizes, integrations, network security etc. and this can cause the system to behave
differently as that in the production environment. All such bugs are filed in a bug
reporting tool and assigned to the developer to fix it. However, it is not possible to
create a system that is completely ‘bug’ free. The main intent of the test engineers
to ensure that the system that is pushed to the production has minimum permissible
level of bugs and the system behaves in the desired fashion.
Deployment phase is final stage of the SDLC. This is is the release management
step when the final bug-free software code is taken from QA servers and deployed
on production servers. The software is launched for live and real users on such
production machines. This is done by experienced server administrators with