0% found this document useful (0 votes)
63 views56 pages

SDLC Lecture - 01

The document discusses the software development life cycle (SDLC) and different lifecycle models. It provides an overview of the traditional waterfall model, describing its sequential phases of requirements analysis, design, implementation, testing/integration, and maintenance. Each phase produces deliverables that are used as input for the next phase. The document also outlines the various phases of the SDLC - planning, analysis, design, implementation, and maintenance - and describes their typical steps and objectives.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views56 pages

SDLC Lecture - 01

The document discusses the software development life cycle (SDLC) and different lifecycle models. It provides an overview of the traditional waterfall model, describing its sequential phases of requirements analysis, design, implementation, testing/integration, and maintenance. Each phase produces deliverables that are used as input for the next phase. The document also outlines the various phases of the SDLC - planning, analysis, design, implementation, and maintenance - and describes their typical steps and objectives.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 56

SDLC & MODELS

SOFTWARE DEVELOPMENT LIFE CYCLE (SDLC) AND OTHER


MODELS
Introduction to SDLC
A systematic strategy used by organizations
Used for large scale systems
Used for developing information systems
Structured framework
Traditional systems development method
Also called as “application development life-cycle”

11/14/2022 SAD - LIFECYCLE MODELS 2


SDLC Phases
SDLC follows a similar set of four fundamental phases
◦ Planning
◦ Analysis
◦ Design
◦ Implementation
◦ Maintenance

Each phase is itself composed of a series of steps, and deliverables.


Project team moves through these steps consecutively, incrementally, iteratively
Project can have all the steps or some of these steps

11/14/2022 SAD - LIFECYCLE MODELS 3


SDLC
Planning

Maintenance Analysis

Implementation Design

11/14/2022 SAD - LIFECYCLE MODELS 4


Project Planning
SDLC STAGES

11/14/2022 SAD - LIFECYCLE MODELS 5


Planning
Why an information system should be built?
How the project team will go about building it?
It has two steps:
1. Project Initiation
2. Project Management

11/14/2022 SAD - LIFECYCLE MODELS 6


Project Initiation
Identify project business value to the organization
◦ How will it lower costs or increase revenues?

Different non IS departments make request in the form of System requests.


◦ A system request is a brief summary of a business need, and explains how a system that supports the
need will create business value.
◦ Project sponsor – person or department generating the request

IS department work together with project sponsor to conduct feasibility analysis.


The feasibility analysis examines key aspects of the proposed project:
◦ The technical feasibility (Can we build it?)
◦ The economic feasibility (Will it provide business value?)
◦ The organizational feasibility (If we build it, will it be used?)

11/14/2022 SAD - LIFECYCLE MODELS 7


Project Initiation
The system request and feasibility analysis are presented to an information systems approval
committee (also called steering committee)
Approval committee decides whether the project should be undertaken.

11/14/2022 SAD - LIFECYCLE MODELS 8


Project Management
Project enters this stage after approval
The project manager
◦ creates a work plan
◦ staffs the project
◦ puts techniques in place to help the project team control and direct the project through the entire SDLC

Deliverable for project management – Project plan


Project plan
◦ Describes how the project team will go about developing the system.

11/14/2022 SAD - LIFECYCLE MODELS 9


System Analysis
SDLC STAGES

11/14/2022 SAD - LIFECYCLE MODELS 10


System Analysis
Answers the questions
◦ Who will use the system?
◦ What the system will do?
◦ Where and when it will be used?

During this phase


◦ Project team investigates any current system(s)
◦ Identifies improvement opportunities
◦ Develops a concept for the new system

Deliverables - System proposal


◦ Describes what business requirements the new system should meet

11/14/2022 SAD - LIFECYCLE MODELS 11


System Analysis
This phase has three steps:
1. Analysis Strategy
2. Requirements Gathering
3. System Proposal

11/14/2022 SAD - LIFECYCLE MODELS 12


Analysis Strategy
Developed to guide the project team’s efforts
The strategy usually includes
◦ a study of the current system (called the as-is system) and its problems
◦ envisioning ways to design a new system (called the to-be system)

11/14/2022 SAD - LIFECYCLE MODELS 13


Requirements Gathering
Done by using interviews, group workshops, or questionnaires
Analysis of the information
Develop a concept for a new system
System concept is used to develop a set of business analysis models
◦ Analysis models - describes how the business will operate if the new system were developed.

Set includes:
◦ Model – represent data
◦ Process – support underlying business process

11/14/2022 SAD - LIFECYCLE MODELS 14


System Proposal
A document
Generated using the analyses, system concept, and models
Presented to the project sponsor and other key decision makers
◦ e.g., members of the approval committee

Decide whether the project should continue to move forward.

11/14/2022 SAD - LIFECYCLE MODELS 15


System Design
SDLC STAGES

11/14/2022 SAD - LIFECYCLE MODELS 16


Design Phase
Decides how the system will operate in terms of;
◦ the hardware, software, and network infrastructure that will be in place
◦ the user interface, forms, and reports that will be used
◦ the specific programs, databases, and files that will be needed

This phase has four steps:


1. Determine Design Strategy
2. Basic Architecture Design
3. Database and File specifications development
4. Develop Program Design

11/14/2022 SAD - LIFECYCLE MODELS 17


Design Phase Cont.…
1. Determine Design Strategy clarify;
◦ Whether the system will be developed by the company’s own programmers
◦ Whether its development will be outsourced to another firm (usually a consulting firm)
◦ Whether the company will buy an existing software package

2. Basic Architecture Design


◦ Describes the hardware, software, and network infrastructure that will be used.
◦ Interface Design – specifies how the users will move through the system (e.g., by navigation methods
such as menus and on-screen buttons) and the forms and reports that the system will use

3. Database and File specifications development


◦ Define exactly what data will be stored and where they will be stored.

4. Develop Program Design


◦ defines the programs that need to be written and exactly what each program will do.

11/14/2022 SAD - LIFECYCLE MODELS 18


Design Phase Cont.…
Deliverables
◦ Architecture design
◦ Interface design
◦ Database and file specifications
◦ Program design

This collection of deliverables called system specification – used by programming team for
implementation
At the end of this phase;
◦ feasibility analysis and project plan are reexamined and revised
◦ the project sponsor and approval committee decide about whether to terminate the project or continue

11/14/2022 SAD - LIFECYCLE MODELS 19


Implementation
SDLC STAGES

11/14/2022 SAD - LIFECYCLE MODELS 20


Implementation Phase
During this phase the system is actually built (or purchased)
Gets the most attention - longest and most expensive single part of the development process
This phase has three steps:
1. System Construction
2. System Installation
3. Establishes a support plan

11/14/2022 SAD - LIFECYCLE MODELS 21


Implementation Phase Cont.
System construction
◦ System is built and tested to ensure that it performs as designed
◦ Since the cost of fixing bugs can be immense, testing is one of the most critical steps in implementation
◦ Most organizations spend more time and attention on testing than on writing the programs

System installation
Old system is turned off and the new one is turned on
Several approaches
The most important aspect - training plan

Establishes a support plan


Includes formal or informal post-implementation review
Identifying major and minor changes needed for the system.

11/14/2022 SAD - LIFECYCLE MODELS 22


Maintenance
SDLC STAGES

11/14/2022 SAD - LIFECYCLE MODELS 23


Maintenance
Debugging the program - continues throughout the life of the system
Update system - accommodate changes in business conditions
New features and functionality - involves adding new features to the existing system without
disturbing its operation

11/14/2022 SAD - LIFECYCLE MODELS 24


SDLC Models

11/14/2022 SAD - LIFECYCLE MODELS 25


Waterfall Model
LIFECYCLE MODELS
Introduction
By Royce 1970
A sequential software development model
Development is flowing steadily downwards (like a waterfall)
Phases;
◦ Requirements analysis
◦ Design
◦ Implementation
◦ testing (validation)
◦ Integration
◦ Maintenance

11/14/2022 SAD - LIFECYCLE MODELS 27


Waterfall Model
Requirement Analysis

Design

Implementation

Integration & testing

Maintenance

11/14/2022 SAD - LIFECYCLE MODELS 28


Waterfall Model Cont.
Non-iterative development approach
Linear and sequential approach
Structured system analysis and design method
Start with Requirement analysis
Next stage initiate after complete previous stage
Input for the next stage will be the output of previous stage.

11/14/2022 SAD - LIFECYCLE MODELS 29


Output in a Waterfall Model
Requirement document
Project plan
System design document
Detailed design document
Test plan and test report
Final code
Software manuals (user manual, installation manual etc.)
Review report

11/14/2022 SAD - LIFECYCLE MODELS 30


Advantages of Waterfall Model
Easy to explain to the user
Stages and activities are well defined
Helps to plan and schedule the project
Verification at each stage ensures early detection of errors / misunderstanding

11/14/2022 SAD - LIFECYCLE MODELS 31


Limitations of the Waterfall Model
Unchanging requirements (Frozen)
Frozen requirements leads to large project completion time. Cannot be applicable for large
projects.
Difficult of changing in the middle

11/14/2022 SAD - LIFECYCLE MODELS 32


Prototyping

11/14/2022 SAD - LIFECYCLE MODELS 33


Prototyping
For encountering the two limitations on Waterfall model.
Instead of freezing requirements, uses throwaway prototypes.
Each prototype passes design, coding and testing. But not thoroughly.
With this, client gets the actual feel of the system.
Better for large systems. Client allows to determine the system.
Effective method for demonstrate the feasibility
Prototypes are not complete systems.
Goal is to provide a system with overall functionality.
Gives the experience to the developer to develop final system.

11/14/2022 SAD - LIFECYCLE MODELS 34


Prototyping Model

Start Requirement Quick Building


Gathering Design Prototype

Engineer Refining Customer


Stop
Product Prototype Evaluation

11/14/2022 SAD - LIFECYCLE MODELS 35


Advantages
Users are actively involved in the development
It provides a better system to users, as users have natural tendency to change their mind in
specifying requirements and this method of developing systems supports this user tendency.
Since in this methodology a working model of the system is provided, the users get a better
understanding of the system being developed.
Errors can be detected much earlier as the system is mode side by side.
Quicker user feedback is available leading to better solutions.

11/14/2022 SAD - LIFECYCLE MODELS 36


Disadvantages
Leads to implementing and then repairing way of building systems.
Practically, this methodology may increase the complexity of the system as scope of the system
may expand beyond original plans.

11/14/2022 SAD - LIFECYCLE MODELS 37


The Spiral Life Cycle
Model

11/14/2022 SAD - LIFECYCLE MODELS 38


The Spiral Life Cycle Model
Recent model proposed by Boehm
Activities are organized such a way like spiral.
Radial dimension – cumulative cost incurred in accomplishing the steps dome
Angular dimension - progress made in completing each cycle of the spiral
Each cycle in the spiral begins with the identification of objectives and possible alternatives
Evaluate alternatives ,analyse risks and uncertainties.
The next step is to develop strategies that resolve the uncertainties and risks which involve
activities such as benchmarking, simulation and prototyping.
Next, the software is developed by keeping in mind the risks. Finally the next stage is planned.

11/14/2022 SAD - LIFECYCLE MODELS 39


11/14/2022 SAD - LIFECYCLE MODELS 40
Spiral Model Description
The development spiral consists of four quadrants as shown in the figure above
Quadrant 1: Determine objectives, alternatives, and constraints.
Quadrant 2: Evaluate alternatives, identify, resolve risks.
Quadrant 3: Develop, verify, next-level product.
Quadrant 4: Plan next phases.

http://www.tutorialspoint.com/sdlc/sdlc_spiral_model.htm

11/14/2022 SAD - LIFECYCLE MODELS 41


Iterative Model

11/14/2022 SAD - LIFECYCLE MODELS 42


Iterative Model
Remove the third limitation of the waterfall model (change in the middle)
tries to combine the benefits of both prototyping and the waterfall model
Basic idea;
◦ Software should be developed in increments
◦ Each increment adds some functional capability to the system until the full system is implemented

At each step extensions and design modifications can be made


Better easier testing – testing each increment (waterfall model)
Gather client feedback – Prototyping – increments provides feedback to the client which is
useful for determining the final requirements of the system

11/14/2022 SAD - LIFECYCLE MODELS 43


Iterative Model Cont.
First step: simple initial implementation is done for a subset of the overall problem
Iteratively enhances the evolving versions until the full system is implemented
At each iteration, design modifications are made and new functional capabilities are added.
The basic idea behind this method is to develop a system through repeated cycles (iterative) and
in smaller portions at a time (incremental).

http://www.tutorialspoint.com/sdlc/sdlc_iterative_model.htm

11/14/2022 SAD - LIFECYCLE MODELS 44


Iterative Model

11/14/2022 SAD - LIFECYCLE MODELS 45


Agile Model

11/14/2022 SAD - LIFECYCLE MODELS 46


Agile Model
Agile model believes that every project needs to be handled differently and the existing
methods need to be tailored to best suit the project requirements.
A combination of iterative and incremental process models
Agile Methods break the product into small incremental builds.
These builds are provided in iterations.

Further reading
http://www.tutorialspoint.com/sdlc/sdlc_agile_model.htm

11/14/2022 SAD - LIFECYCLE MODELS 47


Agile Model

11/14/2022 SAD - LIFECYCLE MODELS 48


Rapid Applications Design
(RAD)

11/14/2022 SAD - LIFECYCLE MODELS 49


RAD Model
Less emphasis on planning and more emphasis on development
Emphasize the necessity of adjusting requirements in reaction to knowledge gained as the
project progresses
Sometimes use prototypes in place of design specifications
Flexible process and adapts according to the project evolves
Well suited (although not limited to) developing software that is driven by user interface
requirements

http://www.tutorialspoint.com/sdlc/sdlc_rad_model.htm

11/14/2022 SAD - LIFECYCLE MODELS 50


RAD Model

11/14/2022 SAD - LIFECYCLE MODELS 51


Dynamic System Development Method (DSDM)

11/14/2022 SAD - LIFECYCLE MODELS 52


Dynamic System Development Method
(DSDM)
Another approach to system development
Develops the system dynamically
This methodology is independent of tools
A Rapid Application Development method that uses incremental prototyping
Useful for the systems to be developed in short time span and where the requirements cannot
be frozen at the start of the application building
Analysis, design and development phase can overlap
Further reading:
http://www.freetutes.com/systemanalysis/sa2-dynamic-system-development-method.html

11/14/2022 SAD - LIFECYCLE MODELS 53


Dynamic System Development Method
(DSDM)

11/14/2022 SAD - LIFECYCLE MODELS 54


Task
Describe two iterative and two sequential software lifecycle models.

11/14/2022 SAD - LIFECYCLE MODELS 55


End

11/14/2022 SAD - LIFECYCLE MODELS 56

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy