Module-5 - Development of MIS-1
Module-5 - Development of MIS-1
Software Development Life Cycle (SDLC) is a framework that defines the steps involved in the development
of software at each phase. It covers the detailed plan for building, deploying and maintaining the software.
SDLC defines the complete cycle of development i.e. all the tasks involved in planning, creating, testing, and
deploying a Software Product.
Purpose:
Purpose of SDLC is to deliver a high-quality product which is as per the customer’ s requirement.
SDLC has defined its phases as, Requirement gathering, Designing, Coding, Testing, and Maintenance. It is
important to adhere to the phases to provide the Product in a systematic manner.
For Example, A software has to be developed and a team is divided to work on a feature of the product and is
allowed to work as they want. One of the developers decides to design first whereas the other decides to code
first and the other on the documentation part.
This will lead to project failure because of which it is necessary to have a good knowledge and understanding
among the team members to deliver an expected product.
SDLC Cycle
SDLC Cycle represents the process of developing software.
SDLC Phases
Given below are the various phases:
Requirement gathering and analysis
Design
Implementation or coding
Testing
Deployment
Maintenance
#1) Requirement Gathering and Analysis
During this phase, all the relevant information is collected from the customer to develop a product as per their
expectation. Any ambiguities must be resolved in this phase only.
Business analyst and Project Manager set up a meeting with the customer to gather all the information like
what the customer wants to build, who will be the end-user, what is the purpose of the product. Before
building a product a core understanding or knowledge of the product is very important.
For Example, A customer wants to have an application which involves money transactions. In this case, the
requirement has to be clear like what kind of transactions will be done, how it will be done, in which currency
it will be done, etc.
Once the requirement gathering is done, an analysis is done to check the feasibility of the development of a
product. In case of any ambiguity, a call is set up for further discussion.
Once the requirement is clearly understood, the SRS (Software Requirement Specification) document is
created. This document should be thoroughly understood by the developers and also should be reviewed by
the customer for future reference.
#2) Design
In this phase, the requirement gathered in the SRS document is used as an input and software architecture that
is used for implementing system development is derived.
#4) Testing
Testing starts once the coding is complete and the modules are released for testing. In this phase, the
developed software is tested thoroughly and any defects found are assigned to developers to get them fixed.
Retesting, regression testing is done until the point at which the software is as per the customer’ s
expectation. Testers refer SRS document to make sure that the software is as per the customer’ s standard.
#5) Deployment
Once the product is tested, it is deployed in the production environment or first UAT (User Acceptance
testing) is done depending on the customer expectation.
In the case of UAT, a replica of the production environment is created and the customer along with the
developers does the testing. If the customer finds the application as expected, then sign off is provided by the
customer to go live.
#6) Maintenance
After the deployment of a product on the production environment, maintenance of the product i.e. if any issue
comes up and needs to be fixed or any enhancement is to be done is taken care by the developers.
Waterfall Model
Waterfall model is the very first model that is used in SDLC. It is also known as the linear sequential model.
In this model, the outcome of one phase is the input for the next phase. Development of the next phase starts
only when the previous phase is complete.
First, Requirement gathering and analysis is done. Once the requirement is freeze then only the System
Design can start. Herein, the SRS document created is the output for the Requirement phase and it acts
as an input for the System Design.
In System Design Software architecture and Design, documents which act as an input for the next
phase are created i.e. Implementation and coding.
In the Implementation phase, coding is done and the software developed is the input for the next phase
i.e. testing.
In the testing phase, the developed code is tested thoroughly to detect the defects in the software.
Defects are logged into the defect tracking tool and are retested once fixed. Bug logging, Retest,
Regression testing goes on until the time the software is in go-live state.
In the Deployment phase, the developed code is moved into production after the sign off is given by
the customer.
Any issues in the production environment are resolved by the developers which come under
maintenance.