Anda di halaman 1dari 28

Introduction to Software Development Life Cycle

Objectives
In this lesson, you will learn to:
 Identify the five phases involved in the development of
a system
 Identify the following process models:
 The waterfall model
 The prototype model
 The evolutionary model
 The Rapid Application Development (RAD) model
 The spiral model

©NIIT SDLC/Lesson 1/Slide 1 of 28


Introduction to Software Development Life Cycle

Need for Software Development Life Cycle


 Mr. Gibson wants to construct a house of his own
 He is tired of looking for a house whenever his
landlord asks him to vacate
 He meets the representative of M/s Newcity Builders
to discuss plans for the construction of his house
 The architect, Mike Fleming, who is assigned to Mr.
Gibson’s ‘House’, spends time with the Gibsons to
understand what they want in the house
 He then draws up a plan acceptable to the Gibsons
 Six months later the Gibsons move into their new
house
©NIIT SDLC/Lesson 1/Slide 2 of 28
Introduction to Software Development Life Cycle

Need for Software Development Life Cycle …


(Contd.)
 Notice that this house building project and went
through five stages
 Conception: Mr. Gibson conceptualizes his
problem as the need to have a house of his own
 Initiation: Mr. Gibson brings in the architect to
figure out a feasible solution
 Analysis: The architect analyses the needs of the
Gibson family to determine their requirement
 Design: The architect draws a plan
 Construction: The house is built
©NIIT SDLC/Lesson 1/Slide 3 of 28
Introduction to Software Development Life Cycle

Need for Software Development Life Cycle …


(Contd.)
 Any computerization project also goes through the
same five phases
 These five phases constitute the life cycle of a
software project called the software development life
cycle (SDLC).

©NIIT SDLC/Lesson 1/Slide 4 of 28


Introduction to Software Development Life Cycle

The Five Phases of the SDLC

CONCEPTION

INITIATION

ANALYSIS

DESIGN

CONSTRUCTION
©NIIT SDLC/Lesson 1/Slide 5 of 28
Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 Conception:
 Starts with the recognition of a problem or
opportunity
 Four objectives are identified in this phase:
 Problem
 Solution
 Benefit
 Scope
 The details are recorded in a document called the
Project Request Form.

©NIIT SDLC/Lesson 1/Slide 6 of 28


Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 Initiation:
 A preliminary study of the user’s need is done
 The following are documented:
 Proposed solution
 Alternatives solutions considered
 Economic justification or cost benefit
analysis
 Schedule
 The details are recorded in a document called
System Proposal
©NIIT SDLC/Lesson 1/Slide 7 of 28
Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 Analysis:
 The following are documented:
 Output requirements
 Input requirements
 Data to be retained
 Processes
 Audit and control requirements
 Acceptance criteria
 The resulting document is Function Specifications

©NIIT SDLC/Lesson 1/Slide 8 of 28


Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 Design:
 Defines how the system will work
 The following are documented in the design
specification:
 How input, output, operation, file, and audit and
control requirement will be handled
 Acceptance test plan/schedule
 Facilities, equipment, and personnel required
 Manual procedures required to operate the
system

©NIIT SDLC/Lesson 1/Slide 9 of 28


Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 Construction:
 This phase includes three activities:
 Completing and testing computer programs and
operating instructions for using the package
 Performing all tasks to carry out the conversion
from the system currently in use to the new
system
 Conducting the final testing of the system to
determine if it performs according to the
acceptance criteria established during the
Analysis phase

©NIIT SDLC/Lesson 1/Slide 10 of 28


Introduction to Software Development Life Cycle

The Five Phases of SDLC (Contd.)


 During system evaluation the performance of the
system in a real life environment is assessed

©NIIT SDLC/Lesson 1/Slide 11 of 28


Introduction to Software Development Life Cycle

Just a Minute…
List the five phases of SDLC

©NIIT SDLC/Lesson 1/Slide 12 of 28


Introduction to Software Development Life Cycle

Process Models
 The five generic phases of SDLC are combined with
different software tools and methodologies to create
SDLC strategies that can be applied to real life
scenarios called process models or software
engineering paradigms.
 Some process models are:
 The Waterfall model
 The Prototyping model
 The Evolutionary model
 The Rapid Application Development (RAD) model
 The Spiral model

©NIIT SDLC/Lesson 1/Slide 13 of 28


Introduction to Software Development Life Cycle

The Waterfall Model


 The Waterfall model is also called the linear
sequential model or classic life cycle model
 In this model, each phase has a defined a start point
and an end point, and clear deliverables from one
phase to the next
 This model is ideal in situations where the
requirements are well defined from the beginning, and
undergo only minor changes
 Most software systems are dynamic – they are
required to change over time as they acquire more
users. Therefore, this model can prove
counter‑productive

©NIIT SDLC/Lesson 1/Slide 14 of 28


Introduction to Software Development Life Cycle

The Waterfall Model

©NIIT SDLC/Lesson 1/Slide 15 of 28


Introduction to Software Development Life Cycle

Just a Minute…
In which phase of the waterfall model do you specify the
inputs, outputs, and the system acceptance criteria?

©NIIT SDLC/Lesson 1/Slide 16 of 28


Introduction to Software Development Life Cycle

The Prototyping Model


 The first version of the product is viewed as a trial
 The main purpose of this trial is to assess the
feasibility of the product and to verify the requirements
 This ‘first version’ of the product is called a prototype
 This product is discarded and real development starts
on more solid foundations
 Prototyping is best suited in situations where the user
is unable to precisely articulate his or her
requirements

©NIIT SDLC/Lesson 1/Slide 17 of 28


Introduction to Software Development Life Cycle

The Prototyping Model

©NIIT SDLC/Lesson 1/Slide 18 of 28


Introduction to Software Development Life Cycle

Combining Process Models


 Prototyping and structured techniques of the Waterfall
model can be used together
 The prototype is used only until it provides enough
feedback to the software engineer on what the exact
requirements of the user are
 The second version is then developed following the
Waterfall model

©NIIT SDLC/Lesson 1/Slide 19 of 28


Introduction to Software Development Life Cycle

The Evolutionary Model


 A model whose stages consist of expanding
increments of an operational software product
 The requirements for the increments are analyzed;
 Each increment is then separately designed, coded,
tested, integrated, and delivered to the customer
 The second version is then developed following the
Waterfall model

©NIIT SDLC/Lesson 1/Slide 20 of 28


Introduction to Software Development Life Cycle

The Rapid Application Development Model


(RAD)
 A linear process model that leads to fast development
of applications
 Uses component‑based systems, such as
object‑oriented systems
 More than one team is usually involved in the
development process simultaneously
 Each team follows the RAD processes independently
 The RAD model has the following five phases:
 Business modeling
 Data modeling

©NIIT SDLC/Lesson 1/Slide 21 of 28


Introduction to Software Development Life Cycle

The RAD Model


 Process modeling
 Application generation
 Testing and turnover
Team 1 Business Data Process Application Testing and
modeling modeling modeling modeling turnover

Team 2 Business Data Process Application Testing and


modeling modeling modeling modeling turnover

Team 3 Business Data Process Application Testing and


modeling modeling modeling modeling turnover

©NIIT SDLC/Lesson 1/Slide 22 of 28


Introduction to Software Development Life Cycle

The RAD Model


 The RAD model is appropriate for applications that
need to be developed in a short span of time
 Automated tools are used to generate the code
 Fourth generation tools or 4GT are also used
 Object-oriented languages are used in the RAD model
because components can be reused
 The RAD model requires more human resources than
other models and both the developers and the client
needs to be committed to the fast track activities
involved in RAD

©NIIT SDLC/Lesson 1/Slide 23 of 28


Introduction to Software Development Life Cycle

Just a Minute…
What is a data object?

©NIIT SDLC/Lesson 1/Slide 24 of 28


Introduction to Software Development Life Cycle

The Spiral Model


 One of the major causes of project failures in the past
has been the negligence of project risks
 This model shifts the management emphasis to risk
evaluation and resolution
 This model can be implemented effectively in projects
involving a high degree of complexity and risk

©NIIT SDLC/Lesson 1/Slide 25 of 28


Introduction to Software Development Life Cycle

The Spiral Model (Contd.)

©NIIT SDLC/Lesson 1/Slide 26 of 28


Introduction to Software Development Life Cycle

Summary
 System development should take place in five phases:
 CONCEPTION phase during which the Project
Request Form is prepared
 INITIATION phase during which the System
Proposal is prepared
 ANALYSIS phase during which the Functional
Specifications are prepared
 DESIGN phase during which the Design
Specifications are prepared
 CONSTRUCTION phase during which the
Programs and the Operation Manuals are written

©NIIT SDLC/Lesson 1/Slide 27 of 28


Introduction to Software Development Life Cycle

Summary (Contd.)
 Process models combine the software development
life cycle with various tools to implement the different
phases to projects
 The waterfall model is a linear model with the
conception, initiation, analysis, design, construction,
testing, and implementation and maintenance phases
 The prototype model starts with the development of a
prototype
 The evolutionary model combines both the prototype
and waterfall model
 The RAD model is used for fast development of
applications by using 4GT

©NIIT SDLC/Lesson 1/Slide 28 of 28

Anda mungkin juga menyukai