The document outlines the steps in the software development life cycle (SDLC), including initial communication, requirement gathering, feasibility analysis, system analysis, software design, coding, testing, integration, implementation, and maintenance. It describes each step in the SDLC process such as gathering requirements from stakeholders, analyzing feasibility, designing the software system, writing code, testing at various stages, integrating the software, implementing it for users, and maintaining it with updates. The SDLC provides a framework for software development projects by describing the key activities that occur at each phase.
3. SDLC Model
• A framework that describes the
activities performed at each
stage of a software development
project.
4. SDLC General Steps
• Initial Communication
• Requirement Gathering
• Feasibility Analysis
• System Analysis
• Software Design
• Coding
• Testing
• Integration
• Implementation
• Maintenance
5. Initial Communication
• User initiates the request for new software
product.
• User communicates with service provider
for software or set of functionalities.
• This kind of order is making for initiating
the SDLC
6. Requirement Gathering
• Used by software development team.
• The team holds the discussion with stack holders
to get more information about their requirements.
• The requirements are collected using :
• Studying the existing system
• Studying the existing s/w and its module
• Study of existing database structure, DFD etc.
• Developing questionnaires and collecting written
responses for questions to be used as
documentation.
7. Feasibility Analysis
• After gathering the basic requirements, the
software development team comes up with a blue
print of software development process. At this
stage, the team analysis the software they are
planning to develop, full fill the requirements of
the client or not. It is found out, if the project is
financially, practically and technologically well
suited for the organization then this is processed
on the next step or make the necessary changes
before moving to the next step.
8. System Analysis
• At this stage the software experts make a proper
roadmap of their plan and try their best effort to
bring the best software model for the project. It
includes an understanding of software product
limitations, learning system or necessary
changes to be made in existing systems
beforehand, identifying and addressing the
effect of project on organization and
personnel(group) etc.
9. Software Design
• The final output of this step comes in the
form of logical design or physical design.
Developers develop metadata, logical
diagrams, data-flow diagrams and in some
exceptional cases pseudo codes.
10. Coding
• This step is better known as programming
phase. The development of software
design starts in terms of writing,
programming code and easier
understanding programming language that
is helpful in the development of error free
executable programs.
11. Testing
• Small bugs can ruin(loss) your software
development objectives. This process is
done while coding by the developers and
thorough testing is conducted by the
testing experts at various stages of code
such as module testing, program testing,
and product testing. Early removing the
existing bugs and their remedy is the key
to reliable software.
12. Integration
• The integration of the software may
require its association to a larger set of
APIs, libraries, system modules, existing
and new datasets, storage and backup
procedures.
• In this stage, the s/w integration with outer
world entities and the platform which will
run the software.
13. Implementation
• Installing software on user machines is its
implementation.
• It is one of the most crucial (important)
step where user's get the benefits of
specific software, and able to do work fast
and impressively.
14. Maintenance
• This step ensures the software operation in
terms of more efficiency and bug free. If there is
any requirement of the training, then software
development organization provides the
appropriate training on how to operate the
software and how to keep the software
operational. The software is maintained timely
by updating the existing code according to the
changes taking place in technology or user end
environment.