lecture # 04 & 05 cs314 introduction to software development software development process (sdp)...
TRANSCRIPT
Lecture # 04 & 05 CS314 Introduction To Software Development
Software Development Process (SDP)
Instructor :Muhammad Janas [email protected]
Monday, September 17, 2014
Also called Software Development Life Cycle (SDLC)
SDP is the process of developing a software Starts with a need, gets mature to a plan and
ends with producing a software meeting the need
Software Development Process (SDP)
Need
Proposal
PlanSolution
3 Abasyn University, Peshawar Campus
Formal Set of Guidelines Effective management control over technical
efforts Estimate Efforts and Schedule Has a defined plan of action Measurable for progress and performance Verifiable
Characteristics of Mature SDP
4 Abasyn University, Peshawar Campus
Phases and Activities in SDP
Feasibility Report
Design Document
Tested Software
SO
FT
WA
RE
SRS
5 Abasyn University, Peshawar Campus
Abstraction of SDP
Specialization of Generalization in SDP
Different for different conditions and circumstances
Concept of SDLC Model
6 Abasyn University, Peshawar Campus
Ad-hoc Waterfall V-Shape Evolutionary Throwaway Prototype Exploratory Iterative Enhancement Spiral Rapid Application Development eXtreme Programming (XP)
Types of SDLC Model
7 Abasyn University, Peshawar Campus
Advantages Simple & Quick Direct working Result oriented
BuildBuild
FixFix
• Disadvantages– No planning, Do not suit to big
projects– No Documentation, No tracing– Highly risky relying on expertise of
team
Ad-hoc SDLC Model
8 Abasyn University, Peshawar Campus
+ve Linear & Simple Highly
documented and traceable
Formal closure of each step
-ve No looking back No iterations Long waiting to
product feel Low Customer
interaction
Requirement analysis
Requirement analysis
Software Design & Detailed
Design
Software Design & Detailed
Design
Unit Implementation &
Unit Testing
Unit Implementation &
Unit Testing
Integration & System TestingIntegration &
System Testing
Installation & Operation
Installation & Operation
Maintenance &
Enhancement
Maintenance &
Enhancement
Waterfall SDLC Model
9 Abasyn University, Peshawar Campus
Prototyping Model
Abasyn University, Peshawar Campus10
Goals
Functionality Evaluate
Develop
Prototyping Model
Abasyn University, Peshawar Campus11
+ve users can try the system and provide constructive feedback during
development An operational prototype can be produced in weeks Users become more positive about implementing the system as
they see a solution emerging that will meet their needs Prototyping enables early detection of errors -ve Each iteration builds on the previous iteration and further refines
the solution. This makes it difficult to reject the initial solution as inappropriate and start over.
Formal end-of-phase reviews do not occur. Thus, its is very difficult to contain the scope of the prototype.
System documentation is often absent or incomplete, since the primary focus is on development of the prototype.
System backup and recovery, performance, and security issues can be overlooked.
Types of prototyping
Abasyn University, Peshawar Campus12
Throw-away Prototyping Evolutionary Prototyping
Throw-away Prototyping
Abasyn University, Peshawar Campus13
Throw Away Prototype is developed from the initial requirements but is not used for the final project.
Written specifications of the requirements
Some developers believe that this type is a waste of time because you don’t use it.
Regardless if prototype is discarded or kept for production, you must use a easy to use language.
Evolutionary Prototyping
Abasyn University, Peshawar Campus14
Evolutionary prototyping is consider the most fundamental form of prototyping.
Evolutionary prototyping main concept is to build a robust prototype and constantly improve it.
Objective to deliver a working system to the end user.
Evolutionary Prototyping
Abasyn University, Peshawar Campus15
Evolutionary Prototyping Phases
Abasyn University, Peshawar Campus16
Define the basic
requirements
Create a working
prototype
Verification of the working prototype
EvaluateAnd
Deliberate the
requirements
+ve Iterative Good Design Huge projects
accommodated Phase wise output Adds benefits of all
models -ve
Needs strong management
Needs strong Configuration management
Analysis
Project initiation
Delivery
Maintenance
Development
Spiral SDLC Model
17 Abasyn University, Peshawar Campus
+ve Iterative Huge projects
accommodated Quick Delivery in minimum
time Best use of reusable off-the-
shelf components -ve
Result relies on availability of required reusable components
Quality of result depends on quality of components
Analyze &
Design
Analyze &
Design
Cycles of selecting reusable modules and Integration
TestingTesting
DeploymentDeployment
Operation and Learning
Operation and Learning
MaintenanceMaintenance
RAD SDLC Model
18 Abasyn University, Peshawar Campus
THANK YOU SO MUCH
19 Abasyn University, Peshawar Campus