SlideShare une entreprise Scribd logo
1  sur  41
Software
Development
Process Models
Software Process Model
 Process models prescribe a distinct set of
activities, actions, tasks, milestones, and work
products required to engineer high quality
software.
 Process models are not perfect, but provide
roadmap for software engineering work.
 Software models provide stability, control, and
organization to a process that if not managed can
easily get out of control
 Software process models are adapted to meet the
needs of software engineers and managers for a
specific project.
Build and Fix Model
 The earlier approach
 Product is constructed without specification or
any attempt at design.
 Developers simply build a product that is
reworked as many times as necessary to satisfy
the client.
 Model may work for small projects but is totally
unsatisfactory for products of any reasonable
size.
 Maintenance is high.
 Source of difficulties and deficiencies
 impossible to predict
 impossible to manage
Why Models are Needed?
 Symptoms of inadequacy: the software crisis
scheduled time and cost exceeded
user expectations not met
poor quality
Personal & Team Process
Models
 The Personal Software Process (PSP) shows engineers
how to
 manage the quality of their projects
 make commitments they can meet
 improve estimating and planning
 reduce defects in their products
 PSP emphasizes the need to record and analyze the
types of errors you make, so you can develop strategies
eliminate them.
 PSP model Framework Activities
 Planning – isolates requirements and based on
these develops both size & resource estimates.
A defect estimate is made.
 High level Design – external specification of all
components. All issues are recorded and
tracked.
 High level Design Review- formal verification to
uncover errors
 Development- metrics are maintained for all
important tasks & work results.
 Postmortem- using measures & metrics
collected effectiveness of process is
determined an improved.
 The Team Software Process (TSP), along with the Personal
Software Process, helps the high-performance engineer to
 ensure quality software products
 create secure software products
 improve process management in an organization
 TSP Framework Activities
 Launch high level design
 Implementation
 Integration
 Test
 postmortem
Process Models- Prescriptive Models
 Waterfall Model (classic life cycle, linear sequential model)
 Suggests a systematic, sequential approach to software
development that begins with customer specification of
requirement and progresses through planning, modeling,
construction and deployment, finishing in ongoing support of the
completed s/w.
The V- Model
Limitations of the waterfall
model
1. Real projects are rarely follow the sequential model.
2. Difficult for the customer to state all the requirement
explicitly.
3. Assumes patience from customer - working version of
program will not available until late in the project life
span.
4. Some teams sit ideal for other teams to finish
 The model implies that you should attempt to complete a
given stage before moving on to the next stage.
5. The model implies that once the product is finished,
everything else is maintenance.
6. Delivers a large amount of work products.
 This model is only appropriate when the requirements
are well-understood and changes will be fairly limited
during the design process.
Incremental Process Model
 Rather than deliver the system as a single delivery, the
development and delivery is broken down into
increments with each increment delivering part of the
required functionality.
C- Communication
P - Planning
M – Modeling
C - Construction
D - Deployment
 First Increment is often core product
 Includes basic requirement
 Many supplementary features (known & unknown)
remain undelivered
 A plan of next increment is prepared
 Modifications of the first increment
 Additional features of the first increment
 Incremental model focus more on delivery of operation product with
each increment
 User requirements are prioritised and the
highest priority requirements are included in
early increments.
 Once the development of an increment is
started, the requirements are frozen though
requirements for later increments can
continue to evolve.
 Customer value can be delivered with each
increment so system functionality is
available earlier.
 Early increments act as a prototype to help
elicit requirements for later increments.
 Increment can be planned to manage
technical risks.
 Lower risk of overall project failure.
 The highest priority system services
tend to receive the most testing.
 It is particularly useful when enough
staffing is not available for the whole
project
Rapid Application
Development (RAD) Model Rapid application development (RAD) is an incremental software
development process model that emphasizes an extremely short
development cycle.
 Communication – to understand business problem.
 Planning – multiple s/w teams works in parallel on diff. system.
 Modeling –
 Business modeling – Information flow among
business is working.
Ex. What kind of information drives?
Who is going to generate information?
From where information comes and goes?
 Data modeling – Information refine into set of data
objects that are needed to support business.
 Process modeling – Data object transforms to
information flow necessary to implement business.
 Construction – Highlighting the use of pre-existing software
component.
 Deployment – Deliver to customer basis for subsequent iteration.
 RAD model emphasize a short development cycle.
 “High speed” edition of linear sequential model.
 If requirement are well understood and project scope is
constrained then it enable development team to create “ fully
functional system” within a very short time period.
 Makes heavy use of reusable software components with an
extremely short development cycle
 Each major function can be addressed by a separate team and
then integrated to form a whole.
Drawback:
For large but scalable projects
RAD requires sufficient human resources
Projects fail if developers and customers
are not committed in a much shortened
time-frame
Problematic if system can not be
modularized
Not appropriate when technical risks are
high ( heavy use of new technology)
Evolutionary Process Models
 Prototyping Model
 Best approach when:
 Objectives defines by customer are general but
does not have details like input, processing, or
output requirement.
 Developer may be unsure of the efficiency of
an algorithm, O.S., or the form that human
machine interaction should take.
 It can be used as standalone process model,
but commonly used as a technique within the
context of any other process model.
 Model assist software engineer and customer
to better understand what is to be built when
requirement are fuzzy.
 Prototyping start with communication, between a
customer and software engineer to define overall
objective, identify requirements and make a boundary.
 Going ahead, planned quickly and modeling (software
layout visible to the customers/end-user) occurs.
 Quick design leads to prototype construction.
 Prototype is deployed and evaluated by the
customer/user.
 Feedback from customer/end user will refine
requirement and that is how iteration occurs during
prototype to satisfy the needs of the customer.
 Prototype can be serve as “the first
system”.
 Both customers and developers like the
prototyping paradigm.
 Customer/End user gets a feel for the actual
system
 Developer get to build something
immediately.
 Prototype
 Throwaways
 Evolutionary
Problem Areas
 Customer cries foul and demand that
“a few fixes” be applied to make the
prototype a working product, due to
that software quality suffers as a
result.
 Developer often makes
implementation in order to get a
prototype working quickly without
considering other factors in mind like
OS, Programming language, etc.
Spiral Model
 Couples iterative nature of prototyping with the controlled and systematic
aspects of the linear sequential model
 It provide potential for rapid development of
increasingly more complete version of the software.
 Using spiral, software developed in as series of
evolutionary release.
 Early iteration, release might be on
paper or prototype.
 Later iteration, more complete version
of software.
 Divided into framework activities (C,P,M,C,D). Each
activity represent one segment.
 Evolutionary process begins in a clockwise direction,
beginning at the center.
 Risk is considered as each revolution is made.
 First circuit around the spiral might result in
development of a product specification. Subsequently,
develop a prototype and then progressively more
sophisticated version of software.
 Each pass through the planning region results in
adjustments to the project plan.
 Unlike other process models that end when software is
delivered.
 It can be adapted to apply throughout the life of
software.
Concept Development Project:
 Start at the core and continues for multiple iterations until it is
complete.
 If concept is developed into an actual product, the process
proceeds outward on the spiral.
New Product Development Project:
 New product will evolve through a number of iterations around the
spiral.
 Later, a circuit around spiral might be used to represent a
“Product Enhancement Project”
Product Enhancement Project:
 There are times when process is dormant or software team not
developing new things but change is initiated, process start at
appropriate entry point.
Product Maintenance Project:
 Once the product is deployed maintenance phase is represented as
a circuit around the spiral.
 Spiral models uses prototyping as a risk reduction mechanism but,
more important, enables the developer to apply the prototyping
approach at each stage in the evolution of the product.
 It maintains the systematic stepwise approach suggested by the
classic life cycle but also incorporates it into an iterative
framework activity.
 If risks cannot be resolved, project is immediately terminated
Problem Area:
 It may be difficult to convince customers (particularly in contract
situations) that the evolutionary approach is controllable.
 If a major risk is not uncovered and managed, problems will
undoubtedly occur.
The Concurrent
Development Model
 Represents iterative and concurrent elements of any of
the process models.
 Defines a series of events that will trigger transitions from state to state
for each of the software engineering activities, actions, or tasks.
 It is often more appropriate for system engineering projects where
different engineering teams are involved.
 The activity-modeling may be in any one of the states for a given time.
 All activities exist concurrently but reside in different states.
 E.g. The analysis activity (existed in the none state while initial customer
communication was completed) now makes a transition into the under
development state.
 Analysis activity moves from the under development state into the awaiting
changes state only if customer indicates changes in requirements.
 Series of event will trigger transition from state to state.
 E.g. During initial stage there was inconsistency in design which was
uncovered. This will triggers the analysis action from the Done state into
Awaiting Changes state.
 Visibility of current state of
project
 It define network of activities
 Each activities, actions and tasks
on the network exists
simultaneously with other
activities ,actions and tasks.
 Events generated at one point in
the process network trigger
transitions among the states.
Specialized Process Models
 Component Based Development
 Component-based development (CBD)
model incorporates many of the
characteristics of the spiral model.
 It is evolutionary by nature and
iterative approach to create software.
 CBD model creates applications from
prepackaged software components
(called classes).
Steps of CBD
 Available Component Based products are researched
and evaluated for the application domain in question
 Component integration issues are considered.
 A s/w architecture is designed to accommodate the
components
 Components are integrated into the architecture
 Comprehensive testing is conducted to ensure proper
functionality.
 CBD model leads to software
reusability
 Based on studies, CBD model
leads to 70 % reduction in
development cycle time.
 84% reduction in project cost.
 Productivity is very high.
THE FORMAL METHODS
MODEL
 Encompasses a set of activities that leads to formal
mathematical specification of computer software.
 Enable a software engineer to specify, develop, and
verify a computer-based system by applying a rigorous,
mathematical notation.
 A variation on this approach, called cleanroom software
engineering.
 Ambiguity, incompleteness, and inconsistency can be
discovered and corrected more easily, not through ad
hoc review but through the application of mathematical
analysis.
 Offers the promise of defect-free software.
 Problems
 The development of formal models is currently quite time
consuming and expensive.
 Because few software developers have the necessary
background to apply formal methods, extensive training is
required.
 It is difficult to use the models as a communication
mechanism for technically unsophisticated customers.
 Best Suited for;
 safety-critical software
The Unified Process
 The Unified Process is an iterative and incremental
development process.
The UP organizes work and
iterations across four major
phases
 Inception – approximate vision, business case, scope,
vague estimates.
 NOT a requirements phase, but a feasibility phase
 Elaboration – refined vision, iterative implementation of
the core architecture, resolution of high risks,
identification of most requirements and scope, more
realistic estimates.
 A phase where the core architecture is iteratively
designed and implemented
 Construction – iterative implementation of the
remaining lower risk and easier elements, preparation
for deployment.
 Transition – beta tests and deployment

Contenu connexe

Tendances

Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLCAdeel Rasheed
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structuresNur Islam
 
extreme Programming
extreme Programmingextreme Programming
extreme ProgrammingBilal Shah
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)Simran Kaur
 
Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1Abhimanyu Mishra
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process FrameworkJAINAM KAPADIYA
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
Incremental model
Incremental modelIncremental model
Incremental modelHpibmx
 
Software maintenance
Software maintenance Software maintenance
Software maintenance Rajeev Sharan
 
Prototype model
Prototype modelPrototype model
Prototype modelsadhana8
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Agile Process models
Agile Process modelsAgile Process models
Agile Process modelsStudent
 
Software project management
Software project managementSoftware project management
Software project managementR A Akerkar
 

Tendances (20)

Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Software quality
Software qualitySoftware quality
Software quality
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Software Development Life Cycle-SDLC
Software Development Life Cycle-SDLCSoftware Development Life Cycle-SDLC
Software Development Life Cycle-SDLC
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structures
 
extreme Programming
extreme Programmingextreme Programming
extreme Programming
 
Software development life cycle (SDLC)
Software development life cycle (SDLC)Software development life cycle (SDLC)
Software development life cycle (SDLC)
 
Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Incremental model
Incremental modelIncremental model
Incremental model
 
Software maintenance
Software maintenance Software maintenance
Software maintenance
 
Software design
Software designSoftware design
Software design
 
Prototype model
Prototype modelPrototype model
Prototype model
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Agile Process models
Agile Process modelsAgile Process models
Agile Process models
 
Software project management
Software project managementSoftware project management
Software project management
 

En vedette

Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAhmed Alageed
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process modelsTauseef Ahmad
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Muhammad Ahmed
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and MethodsRiant Soft
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development processRiant Soft
 
Foresquare Time Sharing Partner (TSP) Model
Foresquare Time Sharing Partner (TSP) ModelForesquare Time Sharing Partner (TSP) Model
Foresquare Time Sharing Partner (TSP) Modelforesquare
 
Transit Signalisation Priority (TSP) - A New Approach to Calculate Gains
Transit Signalisation Priority (TSP) - A New Approach to Calculate GainsTransit Signalisation Priority (TSP) - A New Approach to Calculate Gains
Transit Signalisation Priority (TSP) - A New Approach to Calculate GainsWSP
 
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...Strongstep - Innovation in software quality
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process modelIIUI
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process ModelsNana Sarpong
 

En vedette (20)

Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software Engg. process models
Software Engg. process modelsSoftware Engg. process models
Software Engg. process models
 
Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)Software Development Process Models (SCRUM Methodology)
Software Development Process Models (SCRUM Methodology)
 
Process models
Process modelsProcess models
Process models
 
List of Software Development Model and Methods
List of Software Development Model and MethodsList of Software Development Model and Methods
List of Software Development Model and Methods
 
6 basic steps of software development process
6 basic steps of software development process6 basic steps of software development process
6 basic steps of software development process
 
Foresquare Time Sharing Partner (TSP) Model
Foresquare Time Sharing Partner (TSP) ModelForesquare Time Sharing Partner (TSP) Model
Foresquare Time Sharing Partner (TSP) Model
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Process model in Software engeneering
Process model in Software engeneering Process model in Software engeneering
Process model in Software engeneering
 
Transit Signalisation Priority (TSP) - A New Approach to Calculate Gains
Transit Signalisation Priority (TSP) - A New Approach to Calculate GainsTransit Signalisation Priority (TSP) - A New Approach to Calculate Gains
Transit Signalisation Priority (TSP) - A New Approach to Calculate Gains
 
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...
[QUATIC 2012] PSP PAIR: Personal Software Process Performance Analysis and Im...
 
What is agile model
What is agile modelWhat is agile model
What is agile model
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process model
 
02 software process_models
02 software process_models02 software process_models
02 software process_models
 
Prototyping
PrototypingPrototyping
Prototyping
 
SDLC and Software Process Models
SDLC and Software Process ModelsSDLC and Software Process Models
SDLC and Software Process Models
 
Process Models IN software Engineering
Process Models IN software EngineeringProcess Models IN software Engineering
Process Models IN software Engineering
 
Software process model
Software process modelSoftware process model
Software process model
 

Similaire à Software development process models

Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptRayonJ1
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineeringMuhammadTalha436
 
Unit 1 sepm process models
Unit 1 sepm process modelsUnit 1 sepm process models
Unit 1 sepm process modelsKanchanPatil34
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Managementswatisinghal
 
Software Engineering
Software Engineering Software Engineering
Software Engineering JayaKamal
 
System Development
System  DevelopmentSystem  Development
System DevelopmentSharad Patel
 
Software_Process_Model for class.ppt
Software_Process_Model for class.pptSoftware_Process_Model for class.ppt
Software_Process_Model for class.pptvishnupriyapm4
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle modelsWasif Khan
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxSeniorUsama
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfVikasRai405977
 
1.4 Prototyping model.pptx
1.4 Prototyping model.pptx1.4 Prototyping model.pptx
1.4 Prototyping model.pptxJAYAPRIYAR7
 

Similaire à Software development process models (20)

Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.ppt
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineering
 
Unit 1 sepm process models
Unit 1 sepm process modelsUnit 1 sepm process models
Unit 1 sepm process models
 
Introduction,Software Process Models, Project Management
Introduction,Software Process Models, Project ManagementIntroduction,Software Process Models, Project Management
Introduction,Software Process Models, Project Management
 
Software Engineering
Software Engineering Software Engineering
Software Engineering
 
System Development
System  DevelopmentSystem  Development
System Development
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
Incremental model
Incremental modelIncremental model
Incremental model
 
Software_Process_Model for class.ppt
Software_Process_Model for class.pptSoftware_Process_Model for class.ppt
Software_Process_Model for class.ppt
 
Soft lifecycle
Soft lifecycleSoft lifecycle
Soft lifecycle
 
Software life cycle models
Software life cycle modelsSoftware life cycle models
Software life cycle models
 
Software Development Life Cycle Part II
Software Development Life Cycle Part IISoftware Development Life Cycle Part II
Software Development Life Cycle Part II
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptx
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdf
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
 
Software models
Software modelsSoftware models
Software models
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 
1.4 Prototyping model.pptx
1.4 Prototyping model.pptx1.4 Prototyping model.pptx
1.4 Prototyping model.pptx
 
SDLC MODEL
SDLC MODEL SDLC MODEL
SDLC MODEL
 
SE-03.pptx
SE-03.pptxSE-03.pptx
SE-03.pptx
 

Plus de Muhammed Afsal Villan

Plus de Muhammed Afsal Villan (10)

Software engineering : Layered Architecture
Software engineering : Layered ArchitectureSoftware engineering : Layered Architecture
Software engineering : Layered Architecture
 
Lexical analysis - Compiler Design
Lexical analysis - Compiler DesignLexical analysis - Compiler Design
Lexical analysis - Compiler Design
 
Compiler construction
Compiler constructionCompiler construction
Compiler construction
 
Bluetooth - Comprehensive Presentation
Bluetooth - Comprehensive PresentationBluetooth - Comprehensive Presentation
Bluetooth - Comprehensive Presentation
 
3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals3D Graphics : Computer Graphics Fundamentals
3D Graphics : Computer Graphics Fundamentals
 
Properties of Fourier transform
Properties of Fourier transformProperties of Fourier transform
Properties of Fourier transform
 
Barcodes - Types, Working and Hardware
Barcodes - Types, Working and HardwareBarcodes - Types, Working and Hardware
Barcodes - Types, Working and Hardware
 
8255 Programmable parallel I/O
8255 Programmable parallel I/O 8255 Programmable parallel I/O
8255 Programmable parallel I/O
 
Direct memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA ControllerDirect memory access (dma) with 8257 DMA Controller
Direct memory access (dma) with 8257 DMA Controller
 
Programmable Timer 8253/8254
Programmable Timer 8253/8254Programmable Timer 8253/8254
Programmable Timer 8253/8254
 

Dernier

4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)cama23
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptxiammrhaywood
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 

Dernier (20)

4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)Global Lehigh Strategic Initiatives (without descriptions)
Global Lehigh Strategic Initiatives (without descriptions)
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptxAUDIENCE THEORY -CULTIVATION THEORY -  GERBNER.pptx
AUDIENCE THEORY -CULTIVATION THEORY - GERBNER.pptx
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 

Software development process models

  • 2. Software Process Model  Process models prescribe a distinct set of activities, actions, tasks, milestones, and work products required to engineer high quality software.  Process models are not perfect, but provide roadmap for software engineering work.  Software models provide stability, control, and organization to a process that if not managed can easily get out of control  Software process models are adapted to meet the needs of software engineers and managers for a specific project.
  • 4.  The earlier approach  Product is constructed without specification or any attempt at design.  Developers simply build a product that is reworked as many times as necessary to satisfy the client.  Model may work for small projects but is totally unsatisfactory for products of any reasonable size.  Maintenance is high.  Source of difficulties and deficiencies  impossible to predict  impossible to manage
  • 5. Why Models are Needed?  Symptoms of inadequacy: the software crisis scheduled time and cost exceeded user expectations not met poor quality
  • 6. Personal & Team Process Models  The Personal Software Process (PSP) shows engineers how to  manage the quality of their projects  make commitments they can meet  improve estimating and planning  reduce defects in their products  PSP emphasizes the need to record and analyze the types of errors you make, so you can develop strategies eliminate them.
  • 7.  PSP model Framework Activities  Planning – isolates requirements and based on these develops both size & resource estimates. A defect estimate is made.  High level Design – external specification of all components. All issues are recorded and tracked.  High level Design Review- formal verification to uncover errors  Development- metrics are maintained for all important tasks & work results.  Postmortem- using measures & metrics collected effectiveness of process is determined an improved.
  • 8.  The Team Software Process (TSP), along with the Personal Software Process, helps the high-performance engineer to  ensure quality software products  create secure software products  improve process management in an organization  TSP Framework Activities  Launch high level design  Implementation  Integration  Test  postmortem
  • 9. Process Models- Prescriptive Models  Waterfall Model (classic life cycle, linear sequential model)  Suggests a systematic, sequential approach to software development that begins with customer specification of requirement and progresses through planning, modeling, construction and deployment, finishing in ongoing support of the completed s/w.
  • 11. Limitations of the waterfall model 1. Real projects are rarely follow the sequential model. 2. Difficult for the customer to state all the requirement explicitly. 3. Assumes patience from customer - working version of program will not available until late in the project life span. 4. Some teams sit ideal for other teams to finish  The model implies that you should attempt to complete a given stage before moving on to the next stage. 5. The model implies that once the product is finished, everything else is maintenance. 6. Delivers a large amount of work products.  This model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process.
  • 12. Incremental Process Model  Rather than deliver the system as a single delivery, the development and delivery is broken down into increments with each increment delivering part of the required functionality. C- Communication P - Planning M – Modeling C - Construction D - Deployment
  • 13.  First Increment is often core product  Includes basic requirement  Many supplementary features (known & unknown) remain undelivered  A plan of next increment is prepared  Modifications of the first increment  Additional features of the first increment  Incremental model focus more on delivery of operation product with each increment
  • 14.  User requirements are prioritised and the highest priority requirements are included in early increments.  Once the development of an increment is started, the requirements are frozen though requirements for later increments can continue to evolve.  Customer value can be delivered with each increment so system functionality is available earlier.  Early increments act as a prototype to help elicit requirements for later increments.
  • 15.  Increment can be planned to manage technical risks.  Lower risk of overall project failure.  The highest priority system services tend to receive the most testing.  It is particularly useful when enough staffing is not available for the whole project
  • 16. Rapid Application Development (RAD) Model Rapid application development (RAD) is an incremental software development process model that emphasizes an extremely short development cycle.
  • 17.  Communication – to understand business problem.  Planning – multiple s/w teams works in parallel on diff. system.  Modeling –  Business modeling – Information flow among business is working. Ex. What kind of information drives? Who is going to generate information? From where information comes and goes?  Data modeling – Information refine into set of data objects that are needed to support business.  Process modeling – Data object transforms to information flow necessary to implement business.
  • 18.  Construction – Highlighting the use of pre-existing software component.  Deployment – Deliver to customer basis for subsequent iteration.  RAD model emphasize a short development cycle.  “High speed” edition of linear sequential model.  If requirement are well understood and project scope is constrained then it enable development team to create “ fully functional system” within a very short time period.  Makes heavy use of reusable software components with an extremely short development cycle  Each major function can be addressed by a separate team and then integrated to form a whole.
  • 19. Drawback: For large but scalable projects RAD requires sufficient human resources Projects fail if developers and customers are not committed in a much shortened time-frame Problematic if system can not be modularized Not appropriate when technical risks are high ( heavy use of new technology)
  • 20. Evolutionary Process Models  Prototyping Model
  • 21.  Best approach when:  Objectives defines by customer are general but does not have details like input, processing, or output requirement.  Developer may be unsure of the efficiency of an algorithm, O.S., or the form that human machine interaction should take.  It can be used as standalone process model, but commonly used as a technique within the context of any other process model.  Model assist software engineer and customer to better understand what is to be built when requirement are fuzzy.
  • 22.  Prototyping start with communication, between a customer and software engineer to define overall objective, identify requirements and make a boundary.  Going ahead, planned quickly and modeling (software layout visible to the customers/end-user) occurs.  Quick design leads to prototype construction.  Prototype is deployed and evaluated by the customer/user.  Feedback from customer/end user will refine requirement and that is how iteration occurs during prototype to satisfy the needs of the customer.
  • 23.  Prototype can be serve as “the first system”.  Both customers and developers like the prototyping paradigm.  Customer/End user gets a feel for the actual system  Developer get to build something immediately.  Prototype  Throwaways  Evolutionary
  • 24. Problem Areas  Customer cries foul and demand that “a few fixes” be applied to make the prototype a working product, due to that software quality suffers as a result.  Developer often makes implementation in order to get a prototype working quickly without considering other factors in mind like OS, Programming language, etc.
  • 25. Spiral Model  Couples iterative nature of prototyping with the controlled and systematic aspects of the linear sequential model
  • 26.  It provide potential for rapid development of increasingly more complete version of the software.  Using spiral, software developed in as series of evolutionary release.  Early iteration, release might be on paper or prototype.  Later iteration, more complete version of software.  Divided into framework activities (C,P,M,C,D). Each activity represent one segment.  Evolutionary process begins in a clockwise direction, beginning at the center.  Risk is considered as each revolution is made.
  • 27.  First circuit around the spiral might result in development of a product specification. Subsequently, develop a prototype and then progressively more sophisticated version of software.  Each pass through the planning region results in adjustments to the project plan.  Unlike other process models that end when software is delivered.  It can be adapted to apply throughout the life of software.
  • 28.
  • 29. Concept Development Project:  Start at the core and continues for multiple iterations until it is complete.  If concept is developed into an actual product, the process proceeds outward on the spiral. New Product Development Project:  New product will evolve through a number of iterations around the spiral.  Later, a circuit around spiral might be used to represent a “Product Enhancement Project” Product Enhancement Project:  There are times when process is dormant or software team not developing new things but change is initiated, process start at appropriate entry point. Product Maintenance Project:  Once the product is deployed maintenance phase is represented as a circuit around the spiral.
  • 30.  Spiral models uses prototyping as a risk reduction mechanism but, more important, enables the developer to apply the prototyping approach at each stage in the evolution of the product.  It maintains the systematic stepwise approach suggested by the classic life cycle but also incorporates it into an iterative framework activity.  If risks cannot be resolved, project is immediately terminated Problem Area:  It may be difficult to convince customers (particularly in contract situations) that the evolutionary approach is controllable.  If a major risk is not uncovered and managed, problems will undoubtedly occur.
  • 31. The Concurrent Development Model  Represents iterative and concurrent elements of any of the process models.
  • 32.  Defines a series of events that will trigger transitions from state to state for each of the software engineering activities, actions, or tasks.  It is often more appropriate for system engineering projects where different engineering teams are involved.  The activity-modeling may be in any one of the states for a given time.  All activities exist concurrently but reside in different states.  E.g. The analysis activity (existed in the none state while initial customer communication was completed) now makes a transition into the under development state.  Analysis activity moves from the under development state into the awaiting changes state only if customer indicates changes in requirements.  Series of event will trigger transition from state to state.  E.g. During initial stage there was inconsistency in design which was uncovered. This will triggers the analysis action from the Done state into Awaiting Changes state.
  • 33.  Visibility of current state of project  It define network of activities  Each activities, actions and tasks on the network exists simultaneously with other activities ,actions and tasks.  Events generated at one point in the process network trigger transitions among the states.
  • 34. Specialized Process Models  Component Based Development  Component-based development (CBD) model incorporates many of the characteristics of the spiral model.  It is evolutionary by nature and iterative approach to create software.  CBD model creates applications from prepackaged software components (called classes).
  • 35. Steps of CBD  Available Component Based products are researched and evaluated for the application domain in question  Component integration issues are considered.  A s/w architecture is designed to accommodate the components  Components are integrated into the architecture  Comprehensive testing is conducted to ensure proper functionality.
  • 36.
  • 37.  CBD model leads to software reusability  Based on studies, CBD model leads to 70 % reduction in development cycle time.  84% reduction in project cost.  Productivity is very high.
  • 38. THE FORMAL METHODS MODEL  Encompasses a set of activities that leads to formal mathematical specification of computer software.  Enable a software engineer to specify, develop, and verify a computer-based system by applying a rigorous, mathematical notation.  A variation on this approach, called cleanroom software engineering.  Ambiguity, incompleteness, and inconsistency can be discovered and corrected more easily, not through ad hoc review but through the application of mathematical analysis.  Offers the promise of defect-free software.
  • 39.  Problems  The development of formal models is currently quite time consuming and expensive.  Because few software developers have the necessary background to apply formal methods, extensive training is required.  It is difficult to use the models as a communication mechanism for technically unsophisticated customers.  Best Suited for;  safety-critical software
  • 40. The Unified Process  The Unified Process is an iterative and incremental development process.
  • 41. The UP organizes work and iterations across four major phases  Inception – approximate vision, business case, scope, vague estimates.  NOT a requirements phase, but a feasibility phase  Elaboration – refined vision, iterative implementation of the core architecture, resolution of high risks, identification of most requirements and scope, more realistic estimates.  A phase where the core architecture is iteratively designed and implemented  Construction – iterative implementation of the remaining lower risk and easier elements, preparation for deployment.  Transition – beta tests and deployment