0% found this document useful (0 votes)
23 views18 pages

Software Engineering by Pressman in Short Main Keywords Ch4

The document outlines a recommended process model for modern software development, emphasizing the importance of early stakeholder involvement, evolving documentation, and appropriate project management. It discusses various models such as Agile and Spiral, highlighting their suitability for different project types and the need for continuous testing and risk assessment. Key points include incremental prototyping, minimal documentation, and the necessity of acceptance testing and risk management throughout the development process.

Uploaded by

Rahul Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views18 pages

Software Engineering by Pressman in Short Main Keywords Ch4

The document outlines a recommended process model for modern software development, emphasizing the importance of early stakeholder involvement, evolving documentation, and appropriate project management. It discusses various models such as Agile and Spiral, highlighting their suitability for different project types and the need for continuous testing and risk assessment. Key points include incremental prototyping, minimal documentation, and the necessity of acceptance testing and risk management throughout the development process.

Uploaded by

Rahul Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd

Chapter 4

RECOMMENDED PROCESS MODEL

Software Engineering: A Practitioner’s Approach, 9/e


by Roger S. Pressman and Bruce R. Maxim

1
Suggestions for a modern
software development project
 Linear process model risky without
ample feedback
 No big up-front requirements
gathering
 Appropriate project management
 Evolving Documents
 Early stakeholders involvement
 Testers involvement prior to software
construction.
2
Agile
 Not suitable for large high-risk or mission
critical projects.
Minimal rules and minimal documentation
 Continuous involvement of testers
 Easy to accommodate product changes
 Depends heavily on stakeholder interaction
 Easy to manage
 Early delivery of partial solutions
 Informal risk management
 Built-in continuous process improvement
3
Spiral
1. Not suitable for small, low-risk projects
2. Several steps required, along with documentation done up
front
3. Early involvement of testers (might be done by outside
team)
4. Hard to accommodate product changes until prototype
completed
5. Continuous stakeholder involvement in planning and risk
assessment
6. Requires formal project management and coordination
7. Project end not always obvious
8. Good risk management
9. Process improvement handled at end of project
4
Incremental model for
prototype development

5
Spiral model for
prototype development

6
REQUIREMENTS DEFINITION

• Gather user stories from all stakeholders.


• Have stakeholders describe acceptance
criteria user stories.
• Use simple models (e.g., Post-it notes,
fast sketches, user stories)
• Use a breadth-first approach > big
picture of the project
• prioritized list, and implement the most
important user stories first.

7
PRELIMINARY ARCHITECTURAL DESIGN


Make use of paper prototypes and models.

Assess alternatives using nonfunctional
requirements.

Document architecture design decisions.

8
RESOURCE ESTIMATION

 Use historic data > estimate time to


complete each user story.
 Organize the user stories into sprints.
 Determine the number of sprints needed to
complete the product.
 Revise the time estimates as use stories
are added or deleted.

9
FIRST PROTOTYPE CONSTRUCTION


Select subset of user stories most important
to stakeholders.

Create paper prototype as part of the design
process.

Design a user interface prototype with
inputs and outputs.

Engineer the algorithms needed for first
prototypes.

Prototype with deployment in mind.

10
PROTOTYPE EVALUATION

Create test cases while prototype is being


designed.
Test prototype using appropriate users.
Capture stakeholder feedback for use in revision
process.

11
GO, NO-GO DECISION

Determine the quality of the current prototype.


Revisetime and cost estimates for completing
development.
Determine the risk of failing to meet stakeholder
expectations.
Get commitment to continue development.

12
Evolve system

Define new prototype scope.


Construct new prototype.
Evaluate new prototype and include regression
testing.
Assess risks associated with continuing
evolution.

13
Recommended software process
model

14
Release prototype

Perform acceptance testing.

Document defects identified.

Share quality risks with management

15
Maintain software
Understand code before making changes.
Test software after making changes.
Document changes.
Communicate known defects and risks to all
stakeholders.

16
Maintain software

17
Key Points:

 Incremental prototyping process


 Maintain agile philosophy
 Minimal useful documents and models
 Early paper prototypes
 Risk assessment and acceptance testing

18

You might also like