What Is SDLC?: 1. Planning

Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

What is SDLC?

SDLC is a process followed for a software project, within a software organization. It


consists of a detailed plan describing how to develop, maintain, replace and alter or
enhance specific software. The life cycle defines a methodology for improving the
quality of software and the overall development process.

1. Planning
- This is the first phase in the systems development process. It identifies whether or not
there is the need for a new system to achieve a business"s strategic objectives. This is a
preliminary plan (or a feasibility study) for a company"s business initiative to acquire the
resources to build on an infrastructure to modify or improve a service.

- The company might be trying to meet or exceed expectations for their employees,
customers and stakeholders too. The purpose of this step is to find out the scope of the
problem and determine solutions. Resources, costs, time, benefits and other items
should be considered at this stage.

• Why build the system? How should the team go about building it?
• Identifying business value
• Analyze feasibility
• Develop work plan
• Staff the project
• Control and direct project

Prepared by: Dhiraj Sharma(Mphil ICT)


Stage 2: Systems Analysis and Requirements

- The second phase is where businesses will work on the source of their problem
or the need for a change. In the event of a problem, possible solutions are
submitted and analyzed to identify the best fit for the ultimate goal(s) of the
project.

- This is where teams consider the functional requirements of the project or


solution. It is also where system analysis takes place—or analyzing the needs of
the end users to ensure the new system can meet their expectations.

- Systems analysis is vital in determining what a business’s needs are, as well as


how they can be met, who will be responsible for individual pieces of the project,
and what sort of timeline should be expected.

- Once the requirement analysis is done the next step is to clearly define and
document the product requirements and get them approved from the customer or
the market analysts. This is done through an SRS (Software Requirement
Specification) document which consists of all the product requirements to be
designed and developed during the project life cycle.
• Who uses system, what will it do, where and when will the system be used?
• Information gathering
• Process modeling
• Logic modeling
• Data modeling

3. Systems Design

- The third phase describes, in detail, the necessary specifications, features and
operations that will satisfy the functional requirements of the proposed system
which will be in place.

- This is the step for end users to discuss and determine their specific business
information needs for the proposed system. It’s during this phase that they will
consider the essential components (hardware and/or software) structure
(networking capabilities), processing and procedures for the system to
accomplish its objectives.

- This system design is reviewed by all the important stakeholders and based on
various parameters as risk assessment, product robustness, design modularity,
budget and time constraints, the best design approach is selected for the product.

Prepared by: Dhiraj Sharma(Mphil ICT)


• How will the system work?
• Physical design
• Architectural design
• Interface design
• Database and file design
• Program design

4. Development

- The fourth phase is when the real work begins—in particular, when a
programmer, network engineer and/or database developer are brought on to do
the major work on the project. This work includes using a flow chart to ensure
that the process of the system is properly organized.
- Developers must follow the coding guidelines defined by their organization and
programming tools like compilers, interpreters, debuggers, etc. are used to
generate the code. Different high level programming languages such as C, C++,
Pascal, Java and PHP are used for coding. The programming language is
chosen with respect to the type of software being developed.
- The development phase marks the end of the initial section of the process.
Additionally, this phase signifies the start of production. The development stage is
also characterized by instillation and change. Focusing on training can be a huge
benefit during this phase.

5. Testing the Product


- The fifth phase involves systems integration and system testing (of programs and
procedures)—normally carried out by a Quality Assurance (QA) professional—to
determine if the proposed design meets the initial set of business goals.
- Testing may be repeated, specifically to check for errors, bugs and
interoperability. This testing will be performed until the end user finds it
acceptable. Another part of this phase is verification and validation, both of which
will help ensure the program"s successful completion.

6. Implementation

- The sixth phase is when the majority of the code for the program is written.
Additionally, this phase involves the actual installation of the newly-developed
system. This step puts the project into production by moving the data and
components from the old system and placing them in the new system via a direct
cutover.

Prepared by: Dhiraj Sharma(Mphil ICT)


- While this can be a risky (and complicated) move, the cutover typically happens
during off-peak hours, thus minimizing the risk. Both system analysts and end-
users should now see the realization of the project that has implemented
changes.

7. Operations and Maintenance

- The seventh and final phase involves maintenance and regular required updates.
This step is when end users can fine-tune the system, if they wish, to boost
performance, add new capabilities or meet additional user requirements.

SDLC Models
There are various software development life cycle models defined and designed which
are followed during the software development process. These models are also referred
as Software Development Process Models". Each process model follows a Series of
steps unique to its type to ensure success in the process of software development.
1. Waterfall Model

- The Waterfall Model was the first Process Model to be introduced. It is also
referred to as a linear-sequential life cycle model. It is very simple to
understand and use. In a waterfall model, each phase must be completed
before the next phase can begin and there is no overlapping in the phases.
- The Waterfall model is the earliest SDLC approach that was used for
software development.
- The waterfall Model illustrates the software development process in a linear
sequential flow. This means that any phase in the development process
begins only if the previous phase is complete. In this waterfall model, the
phases do not overlap.

Prepared by: Dhiraj Sharma(Mphil ICT)


Different Phases of Waterfall Model in Software
Engineering
Different phases Activities performed in each stage

Requirement Gathering • During this phase, detailed requirements of the software system to be
stage developed are gathered from client

Design Stage • Plan the programming language, for Example Java, PHP, .net
• or database like Oracle, MySQL, etc.
• Or other high-level technical details of the project

Built Stage • After design stage, it is built stage, that is nothing but coding the software

Test Stage • In this phase, you test the software to verify that it is built as per the
specifications given by the client.

Deployment stage • Deploy the application in the respective environment

Maintenance stage • Once your system is ready to use, you may later require change the code
as per customer request

The advanced phases in Waterfall model are −


• Requirement Gathering and analysis − All likely necessities of the system to be
developed are captured in this phase and documented in a requirement specification
document.
• System Design − the requirement specifications from first phase are studied in this phase
and the system design is prepared. This system design helps in stating hardware and
system necessities and helps in describing the complete system architecture.
• Implementation − with inputs from the system design, the system is first established in
small programs called units, which are combined in the following phase. Each unit is
established and tested for its functionality, which is mentioned to as Unit Testing.
Prepared by: Dhiraj Sharma(Mphil ICT)
• Integration and Testing − All the units established in the implementation phase are
combined into a system after testing of each unit. Post integration the whole system is
tested for any errors and failures.
• Deployment of system − When the functional and non-functional testing is done; the
product is set up in the customer background or released into the market.
• Maintenance − There are some concerns which come up in the client environment. To fix
those concerns, patches are released. Also to improve the product some improved versions
are released. Maintenance is done to provide these alterations in the customer environment

Waterfall Model - Application


Each software developed is not same and needs a suitable SDLC method to be followed build
on the internal and external factors. Some conditions where the use of Waterfall model is
maximum suitable are −
• Necessities are very well documented, clear and fixed.
• Product description is stable.
• Technology is assumed and is not dynamic.
• There are no indistinct requirements.
• Ample resources with essential expertise are accessible to support the product.
• The project is short.

Waterfall Model Advantages and Disadvantages


The Waterfall model is easy to follow and understand, it is common to large
institutions with many levels of decision making and coordination. Still, like any other
SDLC model, it has its strong and weak sides. Waterfall model can’t suit every
conceivable sort of a project. To sum up, there’s a table of the model’s pros and
cons:

Waterfall Disadvantages
Waterfall Advantages

• Simple to oversee and preserve • Short of flexibility


• Detailed documentation • Lack of visibility of the current progress
• Low possibility of unforeseen • Increased delivery term
financial costs • Changes in the business requirements or new
• The outcome is clear additions in functionality require changes at all previous
steps
• Time-shift in one phase will strongly affect the whole
road map as simultaneous processes are not available
in a waterfall model

Prepared by: Dhiraj Sharma(Mphil ICT)


Prepared by: Dhiraj Sharma(Mphil ICT)

You might also like