SlideShare uma empresa Scribd logo
1 de 86
2. The Systems
Development Life Cycle
(SDLC)
The System Development Life
Cycle
It was started in the 1960s and 1970s as the first
documented approach to computer systems
development. All the stages of the development
system are thought about, planned, monitored
and Completed. SDLC is the process by which an
Information System comes to life and maintains
its usefulness to a business as it moves from
inception to replacement.
Business need - changing business
conditions prompt request for
new/improved computer system
System development - analyse, design
and implement a system to meet the
business need
System installation - move new system
into production
System Development Life
Cycle
System operation - period of active
use
System obsolescence - system no
longer reflects changed business
needs
System Development Life
Cycle
Need
Develop
Install
Operate
Obsolete
System Life Cycle - illustration
Critical Success Factors for Systems
Development:
effectively meet the stated business needs
build a flexible and maintainable system
build a reliable system
produce a system on time and within
budget
System Development
Challenges
The phases of the SDLC are described
Differently depending on the author:
Kendall & Kendall terminology
Shelly terminology
Powers et al terminology
Etc.
Terminologies for the SDLC phases
Investigation
 Identify problems and opportunities
Determine requirements
Analysis
Design
Develop software
System Test
Implement and evaluate
System Development Life Cycle
(Kendall & Kendall terminology)
System Development Life Cycle
(Kendall & Kendall terminology)
Systems planning
Preliminary investigation report
Systems analysis
System requirements document
Systems design
System design specification
Systems implementation
Complete functioning information system
Systems operation and support
Operational information system
Systems Development Life Cycle
(Shelly terminology)
SDLC – (Shelly terminology)
.
Systems planning
Purpose – identify problem’s nature/scope
Systems request – begins the process &
describes desired changes/improvements
Systems planning – includes preliminary
investigation or feasibility study
End product – preliminary investigation report
Systems Development Life Cycle
Systems analysis
Purpose is to learn exactly how the current
system operates
Fact-finding or requirements
determination is used to define all
functions of the current system
Systems Development Life Cycle
Options
Develop a system in-house
Purchase a commercial package
Modify an existing system
Stop development
The end product for this phase is the systems
requirements document
Systems Development Life Cycle
Systems design
Purpose is to satisfy all documented
requirements
Identify all outputs, inputs, files, manual
procedures, & application programs
Avoid misunderstanding through manager and
user involvement
End product is system design specification
Systems Development Life Cycle
Systems implementation
Construct/deliver information system
Prepares functioning, documented system
Write, test, document application programs
User and manager approval obtained
File conversion occurs
Users, managers, IS staff trained to operate and
support the system
Post-implementation evaluation performed
Systems Development Life Cycle
Systems operation and support
New system supports business operations
Maintenance changes correct errors or meet
requirements
Enhancements increase system capability
After several years of operation, systems
experience need for extensive changes
Systems development life cycle ends with
system replacement
Systems Development Life Cycle
2. Determine requirements
3. Analysis
4. Design
5. Develop software
1. Investigation -
Identify problems,
opportunities
6. System Test
7. Implement
and evaluate
System Development Life Cycle illustration
Many organisations and many authors
use different terminology for the phases
of the SDLC
However essentially the same activities
are performed
Refer to examples of other terminology
Other Terminology for SDLC phases
Investigation phase
Analysis and General Design phase
Detailed Design and Implementation
phase
Installation phase
Review phase
System Development Life Cycle
(Powers et al terminology)
Initial investigation
Feasibility study
Financial feasibility
Technical feasibility
Operational feasibility
Legal /ethical feasibility
Investigation phase
Existing system review
 build model of existing system
New system requirements
 from User’s point of view
New system design
 sufficient information for management to decide
whether to proceed
Implementation and Installation planning
 plan to cover next phases
Analysis and General Design phase
Technical design
 for programs (pseudo-code), files, records,
reports, screens
Test specifications and Testing
prepare test plans
Programming and Testing
 write and test program code
User Training
System and Acceptance test
 by Users, simulating production conditions
Detailed Design and Implementation
phase
File conversion
 run programs to convert files into new format
System installation
 critical system transition to production
Options for installation are:
 Cutover can be abrupt
 Operate old and new systems in parallel
(for 2 weeks)
 Phase in new system, over time
 Install version of the system
Installation phase
Development recap
 team review of project, for benefit of
future projects
Post implementation review
 evaluate how well the system is working
 to what extent are project benefits being
achieved?
Review phase
Business Survey
Feasibility
Systems Analysis
Systems Design
Programming
Testing
Implementation
Post Implementation Review
Maintenance
S D L C Phases (general)
Management needs to know:
project is on time
project is within budget
These project control stages
(checkpoints) are the end of each
phase of the System Development Life
Cycle
Why have a System Development Life Cycle?
Initial broad term report
Estimate:
project cost
project resources (people)
project time
Recommend whether go on to
Feasibility
1. Business Survey
Assess feasibility of the project:
operational feasibility
technical feasibility
financial feasibility
Identify possible solutions and options
Recommend most appropriate to
management
Outline of development plan
2. Feasibility
Information Gathering
User Requirements refined to
specify the new system
Goal - User Requirements Document
 design for the new system
 just enough technical detail
for the customer
Report contents geared towards
customer
3. Systems Analysis
Convert User Requirements into
computer terms
Specify
how system will operate
what programs are needed
what the programs will do
4. Systems Design
Convert specifications into program
code
Prepare test plans
 for unit testing (individual programs)
5. Programming and Design Aim
Design aim must ensure that the
system is:
 Accurate • Implementable
 Maintainable • Acceptable
 Timely • Flexible
 Robust • Economic
 Efficient • Secure
 Compatible • Portable
5. Programming and Design Aim
System Testing & Acceptance
Testing
System Testing
test program as part of the whole
system e.g. new program in whole
payroll system
6. Testing - make system “bullet
proof”
Acceptance Testing
Customers / Users now involved
usually have their own test plans
sometimes also use programmer
tests
Sign-Off document - signed by
Customer Coordinator
6. Testing - make system “bullet
proof”
Implementation Plan or Update Log
Provides project leader with a list of all:
files - new / amended
screen messages - new / amended
programs (sources) - new / amended
Timing for lodgment in production
environment decided with customer
7. Implementation
BUILDING of the system is now complete
Development recap
 team review - what can be learned from the
project
Post Implementation Review (after 3 or 4
months)
 degree to which system meets objectives
 often results in recommended improvements
8. Post Implementation
Review
Ensure customer changes to the system:
 retain quality
 adhere to standards and procedures
Now back at the beginning of the SDLC
Size of maintenance change will
determine whether all (or subset of)
phases of the system Development Life
Cycle are required
9. Maintenance
Life-Cycle Models
1. The waterfall model
2. The spiral model
3. Rapid application development
4. Joint application development
5. The V model
Each Phase of SDLC has an
“Output”
Phase
• Requirements analysis
• Design
• Implementation
• Test
Output
• Software Requirements
Specification (SRS),
• Design Document,
Design Classes
• Code
• Test Report,
Change Requests
“Life-Cycle” Models
Single-Version Models
Incremental Models
Single-Version with Prototyping
Iterative Models
“Life-Cycle” Models (1)
Single-Version Models
Waterfall Model
 Waterfall Model with “back flow”
“V” model: Integrating testing
Incremental vs. Iterative
These sound similar, and sometimes are
equated.
Subtle difference:
 Incremental: add to the product at each phase
 Iterative: re-do the product at each phase
Some of the models could be used either way
The waterfall model
First described by Royce in 1970
There seem to be at least as many
versions as there are authorities -
perhaps more
The Waterfall model
Waterfall Model
Requirements
Design
Implementation
Test
Each phase “pours over” into
the next phase.
Waterfall Model
Managers love waterfall models:
Nice milestones
No need to look back (linear system), one
activity at a time
Easy to check progress : 90% coded, 20%
tested
Waterfall Model
Traditional life cycle
Analysis, design, code, test & maintenance
Top down rigidity
No iteration between phases
Difficult accommodating uncertainty & risk
Black box approach
Why Not Waterfall?
2. Requirements are not stable/unchanging.
The market changes—constantly.
The technology changes.
The goals of the stakeholders change.
Why Not Waterfall?
3. The design may need to change during
implementation.
Requirements are incomplete and changing.
Too many variables, unknowns, and novelties.
A complete specification must be as detailed as code itself.
Software is very “hard”.
 Discover Magazine, 1999: Software characterized as the most
complex “machine” humankind builds.
V - Model
The V Model Distinguishes
between Development and
Verification Activities
V - Model
Each phase has corresponding test or validation counterpart
Requirements
Analysis
System Design
Program Design
Implementation
Unit Test
Integration
Test
Acceptance
Test
V - Model
Level of Detail
Project Time
Low
High
Acceptance
Testing
Problem with V-Model:
Client’s Perception is the same as the
Developer’s Perception
Client’s Understanding
Developer’s Understanding
Requirements
Elicitation
Analysis
Design
System
Testing
Object Design Unit Testing
Integration Testing
Problems with V - Model
The V model does not model iteration
Boehm Spiral Model
Four major activities
1. Determination of objectives, alternatives,
and constraints
2. Risk analysis and prototyping
3. Waterfall approach to next level product
4. Plan for the next phase cycle:
Boehm Spiral Model
Identify risks
Assign priorities to risks
Develop a series of prototypes for the identified risks
starting with the highest risk.
Use a waterfall model for each prototype
development (“cycle”)
If a risk has successfully been resolved, evaluate the
results of the “cycle” and plan the next round
If a certain risk cannot be resolved, terminate the
project immediately
Spiral Model Deals with Iteration
Limitations of the Waterfall
and Spiral Models
Neither of these model deals well with
frequent change
 The Waterfall model assume that once you are
done with a phase, all issues covered in that
phase are closed and cannot be reopened
 The Spiral model can deal with change between
phases, but once inside a phase, no change is
allowed
What do you do if change is happening more
frequently? (“The only constant is the
change”)
Rapid Application
Development
RAD is a methodology for compressing
the analysis, design, build, and test
phases into a series of short, iterative
development cycles.
This has a number of distinct
advantages over the traditional
sequential development model.
Rapid Application Development
Iteration allows for effectiveness and
self-correction.
Iterations results into many small
refinements and improvements.
An important, fundamental principle of
iterative development is that each
iteration delivers a functional version of
the final system
Rapid Application Development
Like prototyping, uses iterative
development
Uses tools to speed up development
 GUI
 reusable code
 code generation
 programming, language testing and debugging
Rapid Application Development
RAD projects are typically staffed with small
integrated teams comprised of developers,
end users, and IT technical resources.
Small teams, combined with short, iterative
development cycles optimizes speed, unity of
vision and purpose, effective informal
communication and simple project
management.
Rapid Application Development
High Speed
High Quality
And Lower Cost
Quality is a primary concept in the RAD
environment. Systems developed using
the RAD development path meet the
needs of their users effectively and
have low maintenance costs.
Preliminary working version of a system (or
one of its parts)
built quickly and inexpensively
using “friendly, powerful” software
reviewed by end users
suggest changes for system improvements.
Prototyping
Iterative process, say 10 versions
Result - evolve to become final system, or
... throw away, but clarified SDLC
requirements
Prototyping
Identify Basic User RequirementsIdentify Basic User Requirements
Rapidly Develop PrototypeRapidly Develop Prototype
Users work with PrototypeUsers work with Prototype
Obtain User FeedbackObtain User Feedback
Modify the PrototypeModify the Prototype
IterativeIterative
enhancementenhancement
ThrowawayThrowaway
PrototypePrototype
EvolutionaryEvolutionary
PrototypePrototype
Prototyping Process
Prototype
Steps followed by a systems
analyst using a prototype during
the systems analysis phase are
shown
Prototype
*
Prototyping can help to obtain complete
and reliable system requirements
Prototyping process:
iterative
User works with latest version of prototype
to determine the refined requirements
prototype quickly amended (by the User
and systems analyst)
Prototyping
Interactive software development tools
Allows designer to quickly:
design screens, create files, data entry
routines,
basic reporting functions
Tools should be flexible and easy to use
Prototyping tools
Prototyping goal is to enhance the System
development process. Prototyping focuses
on the Analysis and General Design
phase.
Outcome –
 one extreme is prototype actually becomes the
finished system (after many iterations)
 other extreme is throw away prototype and
build system using conventional methods
 BUT now have very high level of confidence
with accuracy and completeness of User
Requirements
Prototyping and the SDLC
Prototyping
Performing analysis, design, and
implementation phases concurrently,
and repeatedly
Users see system functionality quickly
and provide feedback
Decision maker learns about problem
But can lose gains in repetition
Prototyping
Design
Implementation
Analysis
Need
Planning
Prototype
System
Prototype Not OK
Prototype OK
Uses of Prototyping
Verifying user needs
Verifying that design = specifications
Selecting the “best” design
Developing a conceptual understanding of novel
situations
Uses of Prototyping
Testing a design under varying environments
Demonstrating a new product to upper
management
Implementing a new system in the user
environment quickly
Prototyping
Proposed Advantages
Improved user
communication
Users like it
Low risk
Avoids over-design
Experimentation
and innovation
Spreads labor to
user department
Disadvantages in practice
 Prototypes are used “as is”
 Integration often
difficult
 Design flaws
 Poor performance
 Difficult to manage process
 Creates unrealistic
expectations
 Documentation is difficult
Advantages of Prototyping
Short development time
Short user reaction time
Improved user understanding
Low cost
Disadvantages of Prototyping
Gains may be lost in
Thorough understanding information
System’s benefits and costs
Detailed description of information needs
Easy to maintain IS design
Well-tested IS
Well-prepared users
Alternative methodologies to SDLC are:
Structured approaches.
 Structured System Analysis & Design
Methodology
 Yourdon
 Jackson system development
 Merise
 Work flow systems
Prototyping.
Alternative system development
methodologies
Alternative methodologies to SDLC are:
Joint Application Development
Rapid Application Development
Object oriented analysis and design.
Soft Systems Methodology.
Alternative system development
methodologies
JAD
Joint application development (JAD)
 Task force of users, managers, and IS staff
 Objectives
 Gather information
 Discuss business needs
 Define the new system requirements
 Methods
 Team usually meets at specific location
 Team has project leader and recorder(s)
 Key users participate in intense development effort
 JAD can be costly, but highly effective
Package
Click to see Figure 3-11
RAD
Rapid application development (RAD)
 Team method similar to JAD, but goes further
 RAD phases resemble a mini-SDLC
 Requirements planning, user design, construction, and
cutover
 RAD involves a continuous design process
 Team can react quickly
 Final objective is a functioning system
 RAD can be faster and less costly, but stresses
system mechanics rather than strategic needs
OOAD
Object-oriented (O-O) systems development
 Object-based model
 Objects and their attributes are abstract entities
 Classes and subclasses
Review Questions
1. List and describe the major stages of the
systems development life cycle.
2. What is prototyping and what
advantages does it offer in the SDLC?
3. Explain why the investigation phase and
the initial analysis and design phases are
perhaps the most critical stages of the
SDLC.
4. Explain the systems life cycle and
describe why this concept is important to
systems developers.
BUT
Soft Systems Methodology.

Mais conteúdo relacionado

Mais procurados

Software Evolution and Maintenance Models
Software Evolution and Maintenance ModelsSoftware Evolution and Maintenance Models
Software Evolution and Maintenance ModelsMoutasm Tamimi
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?Denys Zaiats
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSaqib Raza
 
BUSINESS PROCESS ANALYSIS
BUSINESS PROCESS ANALYSISBUSINESS PROCESS ANALYSIS
BUSINESS PROCESS ANALYSISAjeng Savitri
 
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processes
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processesITIL foundations - Complete introduction to ITIL phases, lifecycle and processes
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processesRichard Grieman
 
Unit4 Software Engineering Institute (SEI)’s Capability Maturity Model (CMM) ...
Unit4 Software Engineering Institute (SEI)’sCapability Maturity Model (CMM)...Unit4 Software Engineering Institute (SEI)’sCapability Maturity Model (CMM)...
Unit4 Software Engineering Institute (SEI)’s Capability Maturity Model (CMM) ...Reetesh Gupta
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineeringRa'Fat Al-Msie'deen
 
Validation testing
Validation testingValidation testing
Validation testingSlideshare
 
Waterfall Model PPT in Software Engineering
Waterfall Model PPT in Software EngineeringWaterfall Model PPT in Software Engineering
Waterfall Model PPT in Software EngineeringRaju Sheoran
 

Mais procurados (20)

Use case modeling
Use case modelingUse case modeling
Use case modeling
 
Software Evolution and Maintenance Models
Software Evolution and Maintenance ModelsSoftware Evolution and Maintenance Models
Software Evolution and Maintenance Models
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
BUSINESS PROCESS ANALYSIS
BUSINESS PROCESS ANALYSISBUSINESS PROCESS ANALYSIS
BUSINESS PROCESS ANALYSIS
 
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processes
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processesITIL foundations - Complete introduction to ITIL phases, lifecycle and processes
ITIL foundations - Complete introduction to ITIL phases, lifecycle and processes
 
Unit4 Software Engineering Institute (SEI)’s Capability Maturity Model (CMM) ...
Unit4 Software Engineering Institute (SEI)’sCapability Maturity Model (CMM)...Unit4 Software Engineering Institute (SEI)’sCapability Maturity Model (CMM)...
Unit4 Software Engineering Institute (SEI)’s Capability Maturity Model (CMM) ...
 
Requirements engineering in agile
Requirements engineering in agileRequirements engineering in agile
Requirements engineering in agile
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Itil Mind Maps
Itil Mind MapsItil Mind Maps
Itil Mind Maps
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 
Validation testing
Validation testingValidation testing
Validation testing
 
Incremental model
Incremental modelIncremental model
Incremental model
 
Software design methodologies
Software design methodologiesSoftware design methodologies
Software design methodologies
 
Waterfall Model PPT in Software Engineering
Waterfall Model PPT in Software EngineeringWaterfall Model PPT in Software Engineering
Waterfall Model PPT in Software Engineering
 
System Analysis and design Class 1
System Analysis and design Class 1System Analysis and design Class 1
System Analysis and design Class 1
 
Test Reports
Test ReportsTest Reports
Test Reports
 
Ten Reasons for Broken Processes
Ten Reasons for Broken ProcessesTen Reasons for Broken Processes
Ten Reasons for Broken Processes
 

Semelhante a SDLC

Information Systems Life Cycle
Information Systems Life CycleInformation Systems Life Cycle
Information Systems Life Cycle4goggas
 
Agile methodology
Agile methodologyAgile methodology
Agile methodologybipulpwc
 
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC Neetu Marwah
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsHassan A-j
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering Huda Alameen
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software developmentPratik Devmurari
 
2 approaches to system development
2 approaches to system development2 approaches to system development
2 approaches to system developmentcymark09
 
2015-HNDIT1212 Lecture 3.pptx
2015-HNDIT1212  Lecture 3.pptx2015-HNDIT1212  Lecture 3.pptx
2015-HNDIT1212 Lecture 3.pptxusama537223
 
SE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelSE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelAmr E. Mohamed
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESSIvano Malavolta
 
System Development Life Cycle & Implementation of MIS
System Development Life Cycle & Implementation of MISSystem Development Life Cycle & Implementation of MIS
System Development Life Cycle & Implementation of MISGeorge V James
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development processIvano Malavolta
 

Semelhante a SDLC (20)

Information Systems Life Cycle
Information Systems Life CycleInformation Systems Life Cycle
Information Systems Life Cycle
 
Mis unit iii by arnav
Mis unit iii by arnavMis unit iii by arnav
Mis unit iii by arnav
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC
Report on SOFTWARE DEVELOPMENT LIFE CYCLE SDLC
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 
system development life cycle
system development life cyclesystem development life cycle
system development life cycle
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering
 
Se lec 3
Se lec 3Se lec 3
Se lec 3
 
Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software development
 
2. Software process
2. Software process2. Software process
2. Software process
 
2 approaches to system development
2 approaches to system development2 approaches to system development
2 approaches to system development
 
2015-HNDIT1212 Lecture 3.pptx
2015-HNDIT1212  Lecture 3.pptx2015-HNDIT1212  Lecture 3.pptx
2015-HNDIT1212 Lecture 3.pptx
 
SE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle ModelSE18_Lec 02_Software Life Cycle Model
SE18_Lec 02_Software Life Cycle Model
 
Week 10
Week 10Week 10
Week 10
 
Week 10
Week 10Week 10
Week 10
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 
System Development Life Cycle & Implementation of MIS
System Development Life Cycle & Implementation of MISSystem Development Life Cycle & Implementation of MIS
System Development Life Cycle & Implementation of MIS
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
 

Último

Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz1
 
FESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfFESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfMarinCaroMartnezBerg
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxolyaivanovalion
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxJohnnyPlasten
 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxolyaivanovalion
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystSamantha Rae Coolbeth
 
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service Amravati
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service AmravatiVIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service Amravati
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service AmravatiSuhani Kapoor
 
Smarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptxSmarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptxolyaivanovalion
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxfirstjob4
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxolyaivanovalion
 
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiLow Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiSuhani Kapoor
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptxAnupama Kate
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Callshivangimorya083
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998YohFuh
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
Ukraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSUkraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSAishani27
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfLars Albertsson
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFxolyaivanovalion
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一ffjhghh
 

Último (20)

Invezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signalsInvezz.com - Grow your wealth with trading signals
Invezz.com - Grow your wealth with trading signals
 
FESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdfFESE Capital Markets Fact Sheet 2024 Q1.pdf
FESE Capital Markets Fact Sheet 2024 Q1.pdf
 
Carero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptxCarero dropshipping via API with DroFx.pptx
Carero dropshipping via API with DroFx.pptx
 
Log Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptxLog Analysis using OSSEC sasoasasasas.pptx
Log Analysis using OSSEC sasoasasasas.pptx
 
BabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptxBabyOno dropshipping via API with DroFx.pptx
BabyOno dropshipping via API with DroFx.pptx
 
Unveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data AnalystUnveiling Insights: The Role of a Data Analyst
Unveiling Insights: The Role of a Data Analyst
 
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service Amravati
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service AmravatiVIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service Amravati
VIP Call Girls in Amravati Aarohi 8250192130 Independent Escort Service Amravati
 
Smarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptxSmarteg dropshipping via API with DroFx.pptx
Smarteg dropshipping via API with DroFx.pptx
 
Introduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptxIntroduction-to-Machine-Learning (1).pptx
Introduction-to-Machine-Learning (1).pptx
 
BigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptxBigBuy dropshipping via API with DroFx.pptx
BigBuy dropshipping via API with DroFx.pptx
 
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service BhilaiLow Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
Low Rate Call Girls Bhilai Anika 8250192130 Independent Escort Service Bhilai
 
100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx100-Concepts-of-AI by Anupama Kate .pptx
100-Concepts-of-AI by Anupama Kate .pptx
 
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in  KishangarhDelhi 99530 vip 56974 Genuine Escort Service Call Girls in  Kishangarh
Delhi 99530 vip 56974 Genuine Escort Service Call Girls in Kishangarh
 
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
꧁❤ Greater Noida Call Girls Delhi ❤꧂ 9711199171 ☎️ Hard And Sexy Vip Call
 
RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998RA-11058_IRR-COMPRESS Do 198 series of 1998
RA-11058_IRR-COMPRESS Do 198 series of 1998
 
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Punjabi Bagh 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
Ukraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICSUkraine War presentation: KNOW THE BASICS
Ukraine War presentation: KNOW THE BASICS
 
Industrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdfIndustrialised data - the key to AI success.pdf
Industrialised data - the key to AI success.pdf
 
Halmar dropshipping via API with DroFx
Halmar  dropshipping  via API with DroFxHalmar  dropshipping  via API with DroFx
Halmar dropshipping via API with DroFx
 
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一定制英国白金汉大学毕业证(UCB毕业证书)																			成绩单原版一比一
定制英国白金汉大学毕业证(UCB毕业证书) 成绩单原版一比一
 

SDLC

  • 1. 2. The Systems Development Life Cycle (SDLC)
  • 2. The System Development Life Cycle It was started in the 1960s and 1970s as the first documented approach to computer systems development. All the stages of the development system are thought about, planned, monitored and Completed. SDLC is the process by which an Information System comes to life and maintains its usefulness to a business as it moves from inception to replacement.
  • 3. Business need - changing business conditions prompt request for new/improved computer system System development - analyse, design and implement a system to meet the business need System installation - move new system into production System Development Life Cycle
  • 4. System operation - period of active use System obsolescence - system no longer reflects changed business needs System Development Life Cycle
  • 6. Critical Success Factors for Systems Development: effectively meet the stated business needs build a flexible and maintainable system build a reliable system produce a system on time and within budget System Development Challenges
  • 7. The phases of the SDLC are described Differently depending on the author: Kendall & Kendall terminology Shelly terminology Powers et al terminology Etc. Terminologies for the SDLC phases
  • 8. Investigation  Identify problems and opportunities Determine requirements Analysis Design Develop software System Test Implement and evaluate System Development Life Cycle (Kendall & Kendall terminology)
  • 9. System Development Life Cycle (Kendall & Kendall terminology)
  • 10. Systems planning Preliminary investigation report Systems analysis System requirements document Systems design System design specification Systems implementation Complete functioning information system Systems operation and support Operational information system Systems Development Life Cycle (Shelly terminology)
  • 11. SDLC – (Shelly terminology) .
  • 12. Systems planning Purpose – identify problem’s nature/scope Systems request – begins the process & describes desired changes/improvements Systems planning – includes preliminary investigation or feasibility study End product – preliminary investigation report Systems Development Life Cycle
  • 13. Systems analysis Purpose is to learn exactly how the current system operates Fact-finding or requirements determination is used to define all functions of the current system Systems Development Life Cycle
  • 14. Options Develop a system in-house Purchase a commercial package Modify an existing system Stop development The end product for this phase is the systems requirements document Systems Development Life Cycle
  • 15. Systems design Purpose is to satisfy all documented requirements Identify all outputs, inputs, files, manual procedures, & application programs Avoid misunderstanding through manager and user involvement End product is system design specification Systems Development Life Cycle
  • 16. Systems implementation Construct/deliver information system Prepares functioning, documented system Write, test, document application programs User and manager approval obtained File conversion occurs Users, managers, IS staff trained to operate and support the system Post-implementation evaluation performed Systems Development Life Cycle
  • 17. Systems operation and support New system supports business operations Maintenance changes correct errors or meet requirements Enhancements increase system capability After several years of operation, systems experience need for extensive changes Systems development life cycle ends with system replacement Systems Development Life Cycle
  • 18. 2. Determine requirements 3. Analysis 4. Design 5. Develop software 1. Investigation - Identify problems, opportunities 6. System Test 7. Implement and evaluate System Development Life Cycle illustration
  • 19. Many organisations and many authors use different terminology for the phases of the SDLC However essentially the same activities are performed Refer to examples of other terminology Other Terminology for SDLC phases
  • 20. Investigation phase Analysis and General Design phase Detailed Design and Implementation phase Installation phase Review phase System Development Life Cycle (Powers et al terminology)
  • 21. Initial investigation Feasibility study Financial feasibility Technical feasibility Operational feasibility Legal /ethical feasibility Investigation phase
  • 22. Existing system review  build model of existing system New system requirements  from User’s point of view New system design  sufficient information for management to decide whether to proceed Implementation and Installation planning  plan to cover next phases Analysis and General Design phase
  • 23. Technical design  for programs (pseudo-code), files, records, reports, screens Test specifications and Testing prepare test plans Programming and Testing  write and test program code User Training System and Acceptance test  by Users, simulating production conditions Detailed Design and Implementation phase
  • 24. File conversion  run programs to convert files into new format System installation  critical system transition to production Options for installation are:  Cutover can be abrupt  Operate old and new systems in parallel (for 2 weeks)  Phase in new system, over time  Install version of the system Installation phase
  • 25. Development recap  team review of project, for benefit of future projects Post implementation review  evaluate how well the system is working  to what extent are project benefits being achieved? Review phase
  • 26. Business Survey Feasibility Systems Analysis Systems Design Programming Testing Implementation Post Implementation Review Maintenance S D L C Phases (general)
  • 27.
  • 28. Management needs to know: project is on time project is within budget These project control stages (checkpoints) are the end of each phase of the System Development Life Cycle Why have a System Development Life Cycle?
  • 29. Initial broad term report Estimate: project cost project resources (people) project time Recommend whether go on to Feasibility 1. Business Survey
  • 30. Assess feasibility of the project: operational feasibility technical feasibility financial feasibility Identify possible solutions and options Recommend most appropriate to management Outline of development plan 2. Feasibility
  • 31. Information Gathering User Requirements refined to specify the new system Goal - User Requirements Document  design for the new system  just enough technical detail for the customer Report contents geared towards customer 3. Systems Analysis
  • 32. Convert User Requirements into computer terms Specify how system will operate what programs are needed what the programs will do 4. Systems Design
  • 33. Convert specifications into program code Prepare test plans  for unit testing (individual programs) 5. Programming and Design Aim
  • 34. Design aim must ensure that the system is:  Accurate • Implementable  Maintainable • Acceptable  Timely • Flexible  Robust • Economic  Efficient • Secure  Compatible • Portable 5. Programming and Design Aim
  • 35. System Testing & Acceptance Testing System Testing test program as part of the whole system e.g. new program in whole payroll system 6. Testing - make system “bullet proof”
  • 36. Acceptance Testing Customers / Users now involved usually have their own test plans sometimes also use programmer tests Sign-Off document - signed by Customer Coordinator 6. Testing - make system “bullet proof”
  • 37. Implementation Plan or Update Log Provides project leader with a list of all: files - new / amended screen messages - new / amended programs (sources) - new / amended Timing for lodgment in production environment decided with customer 7. Implementation
  • 38. BUILDING of the system is now complete Development recap  team review - what can be learned from the project Post Implementation Review (after 3 or 4 months)  degree to which system meets objectives  often results in recommended improvements 8. Post Implementation Review
  • 39. Ensure customer changes to the system:  retain quality  adhere to standards and procedures Now back at the beginning of the SDLC Size of maintenance change will determine whether all (or subset of) phases of the system Development Life Cycle are required 9. Maintenance
  • 40. Life-Cycle Models 1. The waterfall model 2. The spiral model 3. Rapid application development 4. Joint application development 5. The V model
  • 41. Each Phase of SDLC has an “Output” Phase • Requirements analysis • Design • Implementation • Test Output • Software Requirements Specification (SRS), • Design Document, Design Classes • Code • Test Report, Change Requests
  • 42. “Life-Cycle” Models Single-Version Models Incremental Models Single-Version with Prototyping Iterative Models
  • 43. “Life-Cycle” Models (1) Single-Version Models Waterfall Model  Waterfall Model with “back flow” “V” model: Integrating testing
  • 44. Incremental vs. Iterative These sound similar, and sometimes are equated. Subtle difference:  Incremental: add to the product at each phase  Iterative: re-do the product at each phase Some of the models could be used either way
  • 45. The waterfall model First described by Royce in 1970 There seem to be at least as many versions as there are authorities - perhaps more The Waterfall model
  • 47. Waterfall Model Managers love waterfall models: Nice milestones No need to look back (linear system), one activity at a time Easy to check progress : 90% coded, 20% tested
  • 48. Waterfall Model Traditional life cycle Analysis, design, code, test & maintenance Top down rigidity No iteration between phases Difficult accommodating uncertainty & risk Black box approach
  • 49. Why Not Waterfall? 2. Requirements are not stable/unchanging. The market changes—constantly. The technology changes. The goals of the stakeholders change.
  • 50. Why Not Waterfall? 3. The design may need to change during implementation. Requirements are incomplete and changing. Too many variables, unknowns, and novelties. A complete specification must be as detailed as code itself. Software is very “hard”.  Discover Magazine, 1999: Software characterized as the most complex “machine” humankind builds.
  • 51. V - Model The V Model Distinguishes between Development and Verification Activities
  • 52. V - Model Each phase has corresponding test or validation counterpart Requirements Analysis System Design Program Design Implementation Unit Test Integration Test Acceptance Test
  • 53. V - Model Level of Detail Project Time Low High Acceptance Testing Problem with V-Model: Client’s Perception is the same as the Developer’s Perception Client’s Understanding Developer’s Understanding Requirements Elicitation Analysis Design System Testing Object Design Unit Testing Integration Testing
  • 54. Problems with V - Model The V model does not model iteration
  • 55. Boehm Spiral Model Four major activities 1. Determination of objectives, alternatives, and constraints 2. Risk analysis and prototyping 3. Waterfall approach to next level product 4. Plan for the next phase cycle:
  • 57. Identify risks Assign priorities to risks Develop a series of prototypes for the identified risks starting with the highest risk. Use a waterfall model for each prototype development (“cycle”) If a risk has successfully been resolved, evaluate the results of the “cycle” and plan the next round If a certain risk cannot be resolved, terminate the project immediately Spiral Model Deals with Iteration
  • 58. Limitations of the Waterfall and Spiral Models Neither of these model deals well with frequent change  The Waterfall model assume that once you are done with a phase, all issues covered in that phase are closed and cannot be reopened  The Spiral model can deal with change between phases, but once inside a phase, no change is allowed What do you do if change is happening more frequently? (“The only constant is the change”)
  • 59. Rapid Application Development RAD is a methodology for compressing the analysis, design, build, and test phases into a series of short, iterative development cycles. This has a number of distinct advantages over the traditional sequential development model.
  • 60.
  • 61. Rapid Application Development Iteration allows for effectiveness and self-correction. Iterations results into many small refinements and improvements. An important, fundamental principle of iterative development is that each iteration delivers a functional version of the final system
  • 62. Rapid Application Development Like prototyping, uses iterative development Uses tools to speed up development  GUI  reusable code  code generation  programming, language testing and debugging
  • 63. Rapid Application Development RAD projects are typically staffed with small integrated teams comprised of developers, end users, and IT technical resources. Small teams, combined with short, iterative development cycles optimizes speed, unity of vision and purpose, effective informal communication and simple project management.
  • 64. Rapid Application Development High Speed High Quality And Lower Cost Quality is a primary concept in the RAD environment. Systems developed using the RAD development path meet the needs of their users effectively and have low maintenance costs.
  • 65. Preliminary working version of a system (or one of its parts) built quickly and inexpensively using “friendly, powerful” software reviewed by end users suggest changes for system improvements. Prototyping
  • 66. Iterative process, say 10 versions Result - evolve to become final system, or ... throw away, but clarified SDLC requirements Prototyping
  • 67. Identify Basic User RequirementsIdentify Basic User Requirements Rapidly Develop PrototypeRapidly Develop Prototype Users work with PrototypeUsers work with Prototype Obtain User FeedbackObtain User Feedback Modify the PrototypeModify the Prototype IterativeIterative enhancementenhancement ThrowawayThrowaway PrototypePrototype EvolutionaryEvolutionary PrototypePrototype Prototyping Process
  • 68. Prototype Steps followed by a systems analyst using a prototype during the systems analysis phase are shown
  • 70. Prototyping can help to obtain complete and reliable system requirements Prototyping process: iterative User works with latest version of prototype to determine the refined requirements prototype quickly amended (by the User and systems analyst) Prototyping
  • 71. Interactive software development tools Allows designer to quickly: design screens, create files, data entry routines, basic reporting functions Tools should be flexible and easy to use Prototyping tools
  • 72. Prototyping goal is to enhance the System development process. Prototyping focuses on the Analysis and General Design phase. Outcome –  one extreme is prototype actually becomes the finished system (after many iterations)  other extreme is throw away prototype and build system using conventional methods  BUT now have very high level of confidence with accuracy and completeness of User Requirements Prototyping and the SDLC
  • 73. Prototyping Performing analysis, design, and implementation phases concurrently, and repeatedly Users see system functionality quickly and provide feedback Decision maker learns about problem But can lose gains in repetition
  • 75. Uses of Prototyping Verifying user needs Verifying that design = specifications Selecting the “best” design Developing a conceptual understanding of novel situations
  • 76. Uses of Prototyping Testing a design under varying environments Demonstrating a new product to upper management Implementing a new system in the user environment quickly
  • 77. Prototyping Proposed Advantages Improved user communication Users like it Low risk Avoids over-design Experimentation and innovation Spreads labor to user department Disadvantages in practice  Prototypes are used “as is”  Integration often difficult  Design flaws  Poor performance  Difficult to manage process  Creates unrealistic expectations  Documentation is difficult
  • 78. Advantages of Prototyping Short development time Short user reaction time Improved user understanding Low cost
  • 79. Disadvantages of Prototyping Gains may be lost in Thorough understanding information System’s benefits and costs Detailed description of information needs Easy to maintain IS design Well-tested IS Well-prepared users
  • 80. Alternative methodologies to SDLC are: Structured approaches.  Structured System Analysis & Design Methodology  Yourdon  Jackson system development  Merise  Work flow systems Prototyping. Alternative system development methodologies
  • 81. Alternative methodologies to SDLC are: Joint Application Development Rapid Application Development Object oriented analysis and design. Soft Systems Methodology. Alternative system development methodologies
  • 82. JAD Joint application development (JAD)  Task force of users, managers, and IS staff  Objectives  Gather information  Discuss business needs  Define the new system requirements  Methods  Team usually meets at specific location  Team has project leader and recorder(s)  Key users participate in intense development effort  JAD can be costly, but highly effective Package Click to see Figure 3-11
  • 83. RAD Rapid application development (RAD)  Team method similar to JAD, but goes further  RAD phases resemble a mini-SDLC  Requirements planning, user design, construction, and cutover  RAD involves a continuous design process  Team can react quickly  Final objective is a functioning system  RAD can be faster and less costly, but stresses system mechanics rather than strategic needs
  • 84. OOAD Object-oriented (O-O) systems development  Object-based model  Objects and their attributes are abstract entities  Classes and subclasses
  • 85. Review Questions 1. List and describe the major stages of the systems development life cycle. 2. What is prototyping and what advantages does it offer in the SDLC? 3. Explain why the investigation phase and the initial analysis and design phases are perhaps the most critical stages of the SDLC. 4. Explain the systems life cycle and describe why this concept is important to systems developers.