SlideShare uma empresa Scribd logo
1 de 26
Chapter 3
Prescriptive Process
Models

       - Generic process framework (revisited)
       - Traditional process models
       - Specialized process models
       - The unified process
Generic Process Framework

 Communication
    Involves communication among the customer and other stake holders;
     encompasses requirements gathering
 Planning
    Establishes a plan for software engineering work; addresses technical
     tasks, resources, work products, and work schedule
 Modelling (Analyze, Design)
    Encompasses the creation of models to better under the requirements and
     the design
 Construction (Code, Test)
    Combines code generation and testing to uncover errors
 Deployment
    Involves delivery of software to the customer for evaluation and feedback

                                                                             2
Modeling: Software
Requirements Analysis
 Helps software engineers to better understand the problem they
  will work to solve
 Encompasses the set of tasks that lead to an understanding of
  what the business impact of the software will be, what the
  customer wants, and how end-users will interact with the
  software
 Uses a combination of text and diagrams to depict requirements
  for data, function, and behavior
    Provides a relatively easy way to understand and review
     requirements for correctness, completeness and consistency




                                                                  3
Modeling: Software Design


 Form the “blueprint” for a product
 Creates a model that that provides detail about software data structures,
  software architecture, interfaces, and components that are necessary to
  implement the system
 Architectural design
     Represents the structure of data and program components that are required
      to build the software
 User Interface Design
     Creates an effective communication medium between a human and a
      computer
 Component-level Design
     Defines the data structures, algorithms, interface characteristics, and
      communication mechanisms allocated to each software component


                                                                                4
Traditional Process Models
Prescriptive Process Model

 Defines a distinct set of activities, actions, tasks, milestones,
  and work products that are required to engineer high-quality
  software
 The activities may be linear, incremental, or evolutionary




                                                                      6
Waterfall Model
  (Diagram)
Communication
Project initiation
 Requirements
   gathering
                      Planning
                     Estimating
                     Scheduling
                      Tracking    Modeling
                                  Analysis
                                   Design    Construction
                                                Code
                                                Test        Deployment
                                                             Delivery
                                                              Support
                                                             Feedback
                                                                 7
Waterfall Model
 (Description)
 Oldest software lifecycle model and best understood by upper
  management
 Used when requirements are well understood and risk is low
 Work flow is in a linear (i.e., sequential) fashion
 Used often with well-defined adaptations or enhancements to current
  software




                                                                 8
Waterfall Model
  (Problems)
 Doesn't support iteration, so changes can cause confusion
 Difficult for customers to state all requirements explicitly and up front
 Requires customer patience because a working version of the
  program doesn't occur until the final phase
 Problems can be somewhat alleviated in the model through the
  addition of feedback loops (see the next slide)




                                                                        9
Waterfall Model with
 Feedback
 (Diagram)
Communication
Project initiation
 Requirements
   gathering

                      Planning
                     Estimating
                     Scheduling
                      Tracking    Modeling
                                  Analysis
                                   Design    Construction
                                                Code
                                                Test        Deployment
                                                             Delivery
                                                              Support
                                                             Feedback
                                                                10
Incremental Model
     (Diagram)
Increment #1
Communication
                 Planning
                                Modeling
                                               Construction
                                                                   Deployment


                Increment #2
                Communication
                                    Planning
                                                     Modeling
                                                                     Construction
                                                                                       Deployment



                                    Increment #3

                                     Communication
                                                              Planning
                                                                            Modeling
                                                                                          Construction
                                                                                                         Deployment



                                                                                                          11
Incremental Model
  (Description)
 Used when requirements are well understood
 Multiple independent deliveries are identified
 Work flow is in a linear (i.e., sequential) fashion within an increment
  and is staggered between increments
 Iterative in nature; focuses on an operational product with each
  increment
 Provides a needed set of functionality sooner while delivering optional
  components later
 Useful also when staffing is too short for a full-scale development




                                                                    12
Prototyping Model
   (Diagram)
                                Quick
                               Planning

        Communication
Start

                                           Modeling
                                          Quick Design
        Deployment,
          Delivery,
        and Feedback


                        Construction
                        Of Prototype
                                                         13
Prototyping Model
  (Description)
 Follows an evolutionary and iterative approach
 Used when requirements are not well understood
 Serves as a mechanism for identifying software requirements
 Focuses on those aspects of the software that are visible to the
  customer/user
 Feedback is used to refine the prototype




                                                                     14
Prototyping Model
 (Potential Problems)
 The customer sees a "working version" of the software, wants to stop
  all development and then buy the prototype after a "few fixes" are
  made
 Developers often make implementation compromises to get the
  software running quickly (e.g., language choice, user interface,
  operating system choice, inefficient algorithms)
 Solution:
    Define the rules up front on the final disposition of the prototype before it
     is built
    In most circumstances, plan to discard the prototype and engineer the
     actual production software with a goal toward quality




                                                                             15
THE RAD MODEL

                                           60-90 Days
                                               Team#3
Communication
                                             Modeling
  Planning                  Team#2
                            Modeling                  Construction
 Team#1    Modeling
                                     Construction

                  Construction



                                                    Deployement
RAD MODEL
     (Description)
 Rapid application development (RAD) is an incremental process model
  that emphasizes on extremely short development cycle (e.g., 60 to 90
  days)
 …Provided requirements are well understood and project scope is
  constrained. encompasses following phases:
 Communication:
 Works to understand the business problems.
 Planning:
 is essential because multiple software teams work in parallel on
  different system functions.
 Modeling includes
    Business modeling-
    The information flow among business functions is modeled.
RAD MODEL
(Description)
      Data modeling-
      Previous information flow is refined into a set of data objects.
      Process modeling-
      The data objects defined in the data modeling phase are transformed to
       implement a business function.
 Construction :
 RAD assumes the use of fourth generation techniques Rather
  than conventional third generation programming languages.
 Reuse
 Automated tools are used for construction.
 Deployment :
RAD MODEL
(Drawbacks)
 For large but scalable projects, RAD requires sufficient human
  resources to create the right number of RAD teams.
 RAD requires developers and customers who are committed to
  rapid fire activities.
 Not all types of applications are appropriate for RAD.
 RAD is not appropriate when technical risks are high.
Spiral Model
(Diagram)
                       Planning

  Communication



  Start                                          Modeling




  Start



          Deployment              Construction

                                                            20
Spiral Model
    (Description)
 Follows an evolutionary approach
 Used when requirements are not well understood and risks are high
 Inner spirals focus on identifying software requirements and project risks;
  may also incorporate prototyping
 Outer spirals take on a classical waterfall approach after requirements
  have been defined, but permit iterative growth of the software
 Operates as a risk-driven model…a go/no-go decision occurs after each
  complete spiral in order to react to risk determinations
 Requires considerable expertise in risk assessment
 Serves as a realistic model for large-scale software development



                                                                      21
General Weaknesses of
Evolutionary Process Models
1)   Prototyping poses a problem to project planning because of the
     uncertain number of iterations required to construct the product
2)   Evolutionary software processes do not establish the maximum
     speed of the evolution
     •   If too fast, the process will fall into chaos
     •   If too slow, productivity could be affected
3)   Software processes should focus first on flexibility and
     extensibility, and second on high quality
     •   We should prioritize the speed of the development over zero defects
     •   Extending the development in order to reach higher quality could
         result in late delivery


                                                                        22
Specialized Process Models
Component-based Development
Model
  Consists of the following process steps
     Available component-based products are researched and evaluated
      for the application domain in question
     Component integration issues are considered
     A software architecture is designed to accommodate the
      components
     Components are integrated into the architecture
     Comprehensive testing is conducted to ensure proper functionality
  Relies on a robust component library
  Capitalizes on software reuse, which leads to documented
   savings in project cost and time




                                                                      24
Formal Methods Model
(Description)
 Encompasses a set of activities that leads to formal
  mathematical specification of computer software
 Enables a software engineer to specify, develop, and verify a
  computer-based system by applying a rigorous, mathematical
  notation
 Ambiguity, incompleteness, and inconsistency can be
  discovered and corrected more easily through mathematical
  analysis
 Offers the promise of defect-free software
 Used often when building safety-critical systems



                                                                  25
Formal Methods Model
(Challenges)
 Development of formal methods 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




                                                                   26

Mais conteúdo relacionado

Mais procurados

SWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design ToolsSWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design Toolsghayour abbas
 
Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Drusilla918
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)IIUI
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case DiagramKumar
 
Incremental model
Incremental modelIncremental model
Incremental modelHpibmx
 
Evolutionary models
Evolutionary modelsEvolutionary models
Evolutionary modelsPihu Goel
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressmanRohitGoyal183
 
Design Patterns - General Introduction
Design Patterns - General IntroductionDesign Patterns - General Introduction
Design Patterns - General IntroductionAsma CHERIF
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software designPiyush Gogia
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction ModelingHemant Sharma
 
Design Pattern in Software Engineering
Design Pattern in Software EngineeringDesign Pattern in Software Engineering
Design Pattern in Software EngineeringManish Kumar
 

Mais procurados (20)

SWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design ToolsSWE-401 - 6. Software Analysis and Design Tools
SWE-401 - 6. Software Analysis and Design Tools
 
Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...Software engineering a practitioners approach 8th edition pressman solutions ...
Software engineering a practitioners approach 8th edition pressman solutions ...
 
Software quality
Software qualitySoftware quality
Software quality
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Software design
Software designSoftware design
Software design
 
Unit 2
Unit 2Unit 2
Unit 2
 
UML
UMLUML
UML
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Incremental model
Incremental modelIncremental model
Incremental model
 
Evolutionary models
Evolutionary modelsEvolutionary models
Evolutionary models
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Design Patterns - General Introduction
Design Patterns - General IntroductionDesign Patterns - General Introduction
Design Patterns - General Introduction
 
Software process
Software processSoftware process
Software process
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling
 
Design Pattern in Software Engineering
Design Pattern in Software EngineeringDesign Pattern in Software Engineering
Design Pattern in Software Engineering
 
Software Myths
Software MythsSoftware Myths
Software Myths
 

Destaque

Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelszeal123123
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Traditional Process Models
Traditional Process ModelsTraditional Process Models
Traditional Process ModelsAhsan Rahim
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process modelIIUI
 
Unified Process
Unified ProcessUnified Process
Unified Processguy_davis
 
Software Engineering - Ch4
Software Engineering - Ch4Software Engineering - Ch4
Software Engineering - Ch4Siddharth Ayer
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAhmed Alageed
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLESwarnima Tiwari
 
Myths in Software Requirements
Myths in Software RequirementsMyths in Software Requirements
Myths in Software RequirementsSheraz Pervaiz
 
Concurrent Modeling in the Early Phases of the Software Development Life Cycle
Concurrent Modeling in the Early Phases of the Software Development Life CycleConcurrent Modeling in the Early Phases of the Software Development Life Cycle
Concurrent Modeling in the Early Phases of the Software Development Life CycleKonrad Wieland
 
Some Myths in Software Development
Some Myths in Software DevelopmentSome Myths in Software Development
Some Myths in Software Developmentbryanbibat
 

Destaque (20)

Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Process models
Process modelsProcess models
Process models
 
Traditional Process Models
Traditional Process ModelsTraditional Process Models
Traditional Process Models
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process model
 
Slides chapters 6-7
Slides chapters 6-7Slides chapters 6-7
Slides chapters 6-7
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Unified Process
Unified ProcessUnified Process
Unified Process
 
Software Engineering - Ch4
Software Engineering - Ch4Software Engineering - Ch4
Software Engineering - Ch4
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 ppt on sOFTWARE DEVELOPMENT LIFE CYCLE ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
ppt on sOFTWARE DEVELOPMENT LIFE CYCLE
 
Myths in Software Requirements
Myths in Software RequirementsMyths in Software Requirements
Myths in Software Requirements
 
Concurrent Modeling in the Early Phases of the Software Development Life Cycle
Concurrent Modeling in the Early Phases of the Software Development Life CycleConcurrent Modeling in the Early Phases of the Software Development Life Cycle
Concurrent Modeling in the Early Phases of the Software Development Life Cycle
 
Some Myths in Software Development
Some Myths in Software DevelopmentSome Myths in Software Development
Some Myths in Software Development
 
Ado.net
Ado.netAdo.net
Ado.net
 
Ch02 process a generic view
Ch02 process a generic viewCh02 process a generic view
Ch02 process a generic view
 
Ado.net
Ado.netAdo.net
Ado.net
 

Semelhante a Pressman ch-3-prescriptive-process-models

General process Frame work
General process Frame workGeneral process Frame work
General process Frame worklyingfromyou1
 
Software enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soniSoftware enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar sonimanojsonikgn
 
04_Materi Software Proses-Models(1).pptx
04_Materi Software Proses-Models(1).pptx04_Materi Software Proses-Models(1).pptx
04_Materi Software Proses-Models(1).pptxMarwondoMarwondo
 
Software engineering
Software engineeringSoftware engineering
Software engineeringh2eEdgar
 
Design concepts
Design conceptsDesign concepts
Design conceptsJoshuaU1
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposalcfry
 
Software Engineering
Software Engineering Software Engineering
Software Engineering JayaKamal
 
Software lifecycle model report
Software lifecycle model reportSoftware lifecycle model report
Software lifecycle model reportAshutosh Singh
 
3 D – Management Constructor
3 D – Management Constructor3 D – Management Constructor
3 D – Management ConstructorVadim Salnikov
 
4 agile modeldevelopement-danielleroux
4 agile modeldevelopement-danielleroux4 agile modeldevelopement-danielleroux
4 agile modeldevelopement-daniellerouxIBM
 
Agile Model Developement- Daniel Leroux
Agile Model Developement-  Daniel LerouxAgile Model Developement-  Daniel Leroux
Agile Model Developement- Daniel LerouxRoopa Nadkarni
 

Semelhante a Pressman ch-3-prescriptive-process-models (20)

General process Frame work
General process Frame workGeneral process Frame work
General process Frame work
 
Software enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soniSoftware enginnering unit 01 by manoj kumar soni
Software enginnering unit 01 by manoj kumar soni
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
04_Materi Software Proses-Models(1).pptx
04_Materi Software Proses-Models(1).pptx04_Materi Software Proses-Models(1).pptx
04_Materi Software Proses-Models(1).pptx
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
10.1.1.136.9597
10.1.1.136.959710.1.1.136.9597
10.1.1.136.9597
 
Design concepts
Design conceptsDesign concepts
Design concepts
 
Unit i software design principles 9
Unit i software design principles 9Unit i software design principles 9
Unit i software design principles 9
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 
Brochure for pmvt
Brochure for pmvtBrochure for pmvt
Brochure for pmvt
 
Software Engineering
Software Engineering Software Engineering
Software Engineering
 
Software engg unit 3
Software engg unit 3 Software engg unit 3
Software engg unit 3
 
Software lifecycle model report
Software lifecycle model reportSoftware lifecycle model report
Software lifecycle model report
 
3 D – Management Constructor
3 D – Management Constructor3 D – Management Constructor
3 D – Management Constructor
 
Unit1
Unit1Unit1
Unit1
 
06 fse design
06 fse design06 fse design
06 fse design
 
MDE first glance
MDE first glanceMDE first glance
MDE first glance
 
Design techniques
Design techniquesDesign techniques
Design techniques
 
4 agile modeldevelopement-danielleroux
4 agile modeldevelopement-danielleroux4 agile modeldevelopement-danielleroux
4 agile modeldevelopement-danielleroux
 
Agile Model Developement- Daniel Leroux
Agile Model Developement-  Daniel LerouxAgile Model Developement-  Daniel Leroux
Agile Model Developement- Daniel Leroux
 

Mais de saurabhshertukde (19)

Revision sql te it new syllabus
Revision sql te it new syllabusRevision sql te it new syllabus
Revision sql te it new syllabus
 
Oodbms ch 20
Oodbms ch 20Oodbms ch 20
Oodbms ch 20
 
Introduction er & eer
Introduction er & eerIntroduction er & eer
Introduction er & eer
 
Introduction er & eer
Introduction er &  eerIntroduction er &  eer
Introduction er & eer
 
Integrity & security
Integrity & securityIntegrity & security
Integrity & security
 
Er model
Er modelEr model
Er model
 
Er & eer to relational mapping
Er & eer to relational mappingEr & eer to relational mapping
Er & eer to relational mapping
 
Eer case study
Eer case studyEer case study
Eer case study
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Chapter 1
Chapter 1Chapter 1
Chapter 1
 
Chapter 9
Chapter 9Chapter 9
Chapter 9
 
J2 ee archi
J2 ee archiJ2 ee archi
J2 ee archi
 
J2 ee architecture
J2 ee architectureJ2 ee architecture
J2 ee architecture
 
Software project-scheduling
Software project-schedulingSoftware project-scheduling
Software project-scheduling
 
Softwareproject planning
Softwareproject planningSoftwareproject planning
Softwareproject planning
 
Design concepts and principles
Design concepts and principlesDesign concepts and principles
Design concepts and principles
 
Analysis modelling
Analysis modellingAnalysis modelling
Analysis modelling
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
 
Risk analysis
Risk analysisRisk analysis
Risk analysis
 

Último

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 

Último (20)

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 

Pressman ch-3-prescriptive-process-models

  • 1. Chapter 3 Prescriptive Process Models - Generic process framework (revisited) - Traditional process models - Specialized process models - The unified process
  • 2. Generic Process Framework  Communication  Involves communication among the customer and other stake holders; encompasses requirements gathering  Planning  Establishes a plan for software engineering work; addresses technical tasks, resources, work products, and work schedule  Modelling (Analyze, Design)  Encompasses the creation of models to better under the requirements and the design  Construction (Code, Test)  Combines code generation and testing to uncover errors  Deployment  Involves delivery of software to the customer for evaluation and feedback 2
  • 3. Modeling: Software Requirements Analysis  Helps software engineers to better understand the problem they will work to solve  Encompasses the set of tasks that lead to an understanding of what the business impact of the software will be, what the customer wants, and how end-users will interact with the software  Uses a combination of text and diagrams to depict requirements for data, function, and behavior  Provides a relatively easy way to understand and review requirements for correctness, completeness and consistency 3
  • 4. Modeling: Software Design  Form the “blueprint” for a product  Creates a model that that provides detail about software data structures, software architecture, interfaces, and components that are necessary to implement the system  Architectural design  Represents the structure of data and program components that are required to build the software  User Interface Design  Creates an effective communication medium between a human and a computer  Component-level Design  Defines the data structures, algorithms, interface characteristics, and communication mechanisms allocated to each software component 4
  • 6. Prescriptive Process Model  Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high-quality software  The activities may be linear, incremental, or evolutionary 6
  • 7. Waterfall Model (Diagram) Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 7
  • 8. Waterfall Model (Description)  Oldest software lifecycle model and best understood by upper management  Used when requirements are well understood and risk is low  Work flow is in a linear (i.e., sequential) fashion  Used often with well-defined adaptations or enhancements to current software 8
  • 9. Waterfall Model (Problems)  Doesn't support iteration, so changes can cause confusion  Difficult for customers to state all requirements explicitly and up front  Requires customer patience because a working version of the program doesn't occur until the final phase  Problems can be somewhat alleviated in the model through the addition of feedback loops (see the next slide) 9
  • 10. Waterfall Model with Feedback (Diagram) Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 10
  • 11. Incremental Model (Diagram) Increment #1 Communication Planning Modeling Construction Deployment Increment #2 Communication Planning Modeling Construction Deployment Increment #3 Communication Planning Modeling Construction Deployment 11
  • 12. Incremental Model (Description)  Used when requirements are well understood  Multiple independent deliveries are identified  Work flow is in a linear (i.e., sequential) fashion within an increment and is staggered between increments  Iterative in nature; focuses on an operational product with each increment  Provides a needed set of functionality sooner while delivering optional components later  Useful also when staffing is too short for a full-scale development 12
  • 13. Prototyping Model (Diagram) Quick Planning Communication Start Modeling Quick Design Deployment, Delivery, and Feedback Construction Of Prototype 13
  • 14. Prototyping Model (Description)  Follows an evolutionary and iterative approach  Used when requirements are not well understood  Serves as a mechanism for identifying software requirements  Focuses on those aspects of the software that are visible to the customer/user  Feedback is used to refine the prototype 14
  • 15. Prototyping Model (Potential Problems)  The customer sees a "working version" of the software, wants to stop all development and then buy the prototype after a "few fixes" are made  Developers often make implementation compromises to get the software running quickly (e.g., language choice, user interface, operating system choice, inefficient algorithms)  Solution:  Define the rules up front on the final disposition of the prototype before it is built  In most circumstances, plan to discard the prototype and engineer the actual production software with a goal toward quality 15
  • 16. THE RAD MODEL 60-90 Days Team#3 Communication Modeling Planning Team#2 Modeling Construction Team#1 Modeling Construction Construction Deployement
  • 17. RAD MODEL (Description)  Rapid application development (RAD) is an incremental process model that emphasizes on extremely short development cycle (e.g., 60 to 90 days)  …Provided requirements are well understood and project scope is constrained. encompasses following phases:  Communication:  Works to understand the business problems.  Planning:  is essential because multiple software teams work in parallel on different system functions.  Modeling includes  Business modeling-  The information flow among business functions is modeled.
  • 18. RAD MODEL (Description)  Data modeling-  Previous information flow is refined into a set of data objects.  Process modeling-  The data objects defined in the data modeling phase are transformed to implement a business function.  Construction :  RAD assumes the use of fourth generation techniques Rather than conventional third generation programming languages.  Reuse  Automated tools are used for construction.  Deployment :
  • 19. RAD MODEL (Drawbacks)  For large but scalable projects, RAD requires sufficient human resources to create the right number of RAD teams.  RAD requires developers and customers who are committed to rapid fire activities.  Not all types of applications are appropriate for RAD.  RAD is not appropriate when technical risks are high.
  • 20. Spiral Model (Diagram) Planning Communication Start Modeling Start Deployment Construction 20
  • 21. Spiral Model (Description)  Follows an evolutionary approach  Used when requirements are not well understood and risks are high  Inner spirals focus on identifying software requirements and project risks; may also incorporate prototyping  Outer spirals take on a classical waterfall approach after requirements have been defined, but permit iterative growth of the software  Operates as a risk-driven model…a go/no-go decision occurs after each complete spiral in order to react to risk determinations  Requires considerable expertise in risk assessment  Serves as a realistic model for large-scale software development 21
  • 22. General Weaknesses of Evolutionary Process Models 1) Prototyping poses a problem to project planning because of the uncertain number of iterations required to construct the product 2) Evolutionary software processes do not establish the maximum speed of the evolution • If too fast, the process will fall into chaos • If too slow, productivity could be affected 3) Software processes should focus first on flexibility and extensibility, and second on high quality • We should prioritize the speed of the development over zero defects • Extending the development in order to reach higher quality could result in late delivery 22
  • 24. Component-based Development Model  Consists of the following process steps  Available component-based products are researched and evaluated for the application domain in question  Component integration issues are considered  A software architecture is designed to accommodate the components  Components are integrated into the architecture  Comprehensive testing is conducted to ensure proper functionality  Relies on a robust component library  Capitalizes on software reuse, which leads to documented savings in project cost and time 24
  • 25. Formal Methods Model (Description)  Encompasses a set of activities that leads to formal mathematical specification of computer software  Enables a software engineer to specify, develop, and verify a computer-based system by applying a rigorous, mathematical notation  Ambiguity, incompleteness, and inconsistency can be discovered and corrected more easily through mathematical analysis  Offers the promise of defect-free software  Used often when building safety-critical systems 25
  • 26. Formal Methods Model (Challenges)  Development of formal methods 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 26