SlideShare a Scribd company logo
Chapter 4 Agile Development Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman
Common Fears for Developers The project will produce the wrong product. The project will produce a product of inferior quality. The project will be late. We’ll have to work 80 hour weeks. We’ll have to break commitments. We won’t be having fun.
The Manifesto for Agile Software Development Individuals and interactions   over processes and tools   Working software   over comprehensive documentation   Customer collaboration   over contract negotiation   Responding to change   over following a plan -- Kent Beck et al. “ We are uncovering better ways of developing software by doing it and helping others do it.  Through this work we have come to value: That is, while there is value in the items on the right, we value the items on the left more.”
What is “Agility”? Effective (rapid and adaptive) response to change Effective communication among all stakeholders Drawing the customer onto the team Organizing a team so that it is in control of the work performed Yielding … Rapid, incremental delivery of software
An Agile Process Is driven by customer descriptions of what is required (scenarios) Recognizes that plans are short-lived Develops software iteratively with a heavy emphasis on construction activities Delivers multiple ‘software increments’ Adapts as changes occur
Principles of Agility Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter time scale. Business people and developers must work together daily throughout the project.
Principles of Agility Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
Principles of Agility Continuous attention to technical excellence and good design enhances agility. Simplicity - the art of maximizing the amount of work not done - is essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
Extreme Programming (XP) The most widely used agile process, originally proposed by Kent Beck XP Planning Begins with the creation of  user stories Agile team assesses each story and assigns a  cost Stories are grouped to for a  deliverable increment A  commitment  is made on delivery date After the first increment  project velocity  is used to help define subsequent delivery dates for other increments
Extreme Programming (XP) XP Design Follows the  KIS principle Encourage the use of  CRC cards  (see Chapter 8) For difficult design problems, suggests the creation of  spike solutions  — a design prototype Encourages  refactoring  — an iterative refinement of the internal program design XP Coding Recommends the  construction of a unit test  for a store  before  coding commences Encourages  pair programming XP Testing All  unit tests are executed daily Acceptance tests  are defined by the customer and executed to assess customer visible functionality
Extreme Programming (XP)
Other Agile Processes Adaptive Software Development (ASD) Dynamic Systems Development Method (DSDM) Scrum Crystal Feature Driven Development Agile Modeling (AM)

More Related Content

PPT
Slides chapter 2
PPT
Slides chapter 5
PPT
Slides chapter 15
PPTX
Generic process model
PPT
Slides chapter 1
PPT
Slides chapter 17
PPT
Lecture 10 understanding requirements (2)
PPT
Slides chapters 6-7
Slides chapter 2
Slides chapter 5
Slides chapter 15
Generic process model
Slides chapter 1
Slides chapter 17
Lecture 10 understanding requirements (2)
Slides chapters 6-7

What's hot (20)

PPTX
Software Process Models
PPTX
Process and Project Metrics-1
PPT
Lecture 7 agile software development (2)
PPT
Lecture 5 software process model (3)
PPT
Slides chapters 26-27
PPT
Lecture 6 agile software development
PPT
Slides chapters 21-23
PPT
Lecture 8 agile software development (3)
PPT
Chapter 01
PDF
An introduction to software engineering
PPT
Slides chapter 3
PDF
Software engineering process
PPTX
Software Engineering Layered Technology Software Process Framework
PPT
Lecture 2 introduction to Software Engineering 1
PPTX
Postmortem Analysis
PPTX
Software engineering
PDF
Agile Software Development - making programming fun again
PPT
Pressman ch-3-prescriptive-process-models
PPTX
Spm unit v-software reliability-
PDF
Software process model
Software Process Models
Process and Project Metrics-1
Lecture 7 agile software development (2)
Lecture 5 software process model (3)
Slides chapters 26-27
Lecture 6 agile software development
Slides chapters 21-23
Lecture 8 agile software development (3)
Chapter 01
An introduction to software engineering
Slides chapter 3
Software engineering process
Software Engineering Layered Technology Software Process Framework
Lecture 2 introduction to Software Engineering 1
Postmortem Analysis
Software engineering
Agile Software Development - making programming fun again
Pressman ch-3-prescriptive-process-models
Spm unit v-software reliability-
Software process model
Ad

Viewers also liked (20)

PDF
Uml book 7th ed. by Roger S. Pressman
PDF
SAFe – A dangerous weapon: Techniques for implementing a lasting adoption of ...
PDF
Agile software development
PPT
User Experience & Design…Designing for others…UED
PDF
Design Simple but Powerful application
PPTX
An Agile Development Primer
PPTX
Software Engineering Practice
PDF
Developing Design Systems: Patterns, Prototypes, and People (Dennis Kardys)
PPTX
UX Strategy: A Systems Design Approach to Innovation
PPT
Agile Development | Agile Process Models
PDF
How Email and Great Content Can Fuel Your Buyer's Journey
PPT
Bringing User-Centered Design Practices into Agile Development Projects
PDF
UX research at Napster: A Product Manager’s perspective
PDF
UX in Action: IBM Watson
PDF
Rapid UX Research Cycles
PDF
Design Systems: Parts, Products & People
PDF
Email Marketing 101: The Welcome Email
PDF
Quick & Dirty Tips for : Better PowerPoint Presentations Faster
PDF
The SlideShare Handbook
Uml book 7th ed. by Roger S. Pressman
SAFe – A dangerous weapon: Techniques for implementing a lasting adoption of ...
Agile software development
User Experience & Design…Designing for others…UED
Design Simple but Powerful application
An Agile Development Primer
Software Engineering Practice
Developing Design Systems: Patterns, Prototypes, and People (Dennis Kardys)
UX Strategy: A Systems Design Approach to Innovation
Agile Development | Agile Process Models
How Email and Great Content Can Fuel Your Buyer's Journey
Bringing User-Centered Design Practices into Agile Development Projects
UX research at Napster: A Product Manager’s perspective
UX in Action: IBM Watson
Rapid UX Research Cycles
Design Systems: Parts, Products & People
Email Marketing 101: The Welcome Email
Quick & Dirty Tips for : Better PowerPoint Presentations Faster
The SlideShare Handbook
Ad

Similar to SE chapter 4 (20)

PPT
Week_03-Agile Developmnet.ppt
PPT
SE Lecture 3.ppt
PPT
what is agile and its usage and properties
PPTX
Chapter 5
PDF
ch2-Agile-Software-Development-engineerning.pdf
PDF
Chapter 3.pdf Agile Development + framework
PPT
chapter-03-Agile view of process.ppt
PPT
3. Agility and extreme programming OF UNIT-1 PPT
ODP
Agile Injection, Varberg
DOCX
PPTX
software engineering and project management 3rd module ppt presenetation
PPTX
Software engineering MODULE3__Agile.pptx
PPT
Agile intro resources
PPTX
Agile software development
PPTX
Agile Process models
PPTX
Agile with process 3 best for all types of
PPTX
Hardware Firewall with all the detail of
PPTX
Agile development
PDF
Role of Agile model in software development
PPTX
Fundamentals of Software Engineering
Week_03-Agile Developmnet.ppt
SE Lecture 3.ppt
what is agile and its usage and properties
Chapter 5
ch2-Agile-Software-Development-engineerning.pdf
Chapter 3.pdf Agile Development + framework
chapter-03-Agile view of process.ppt
3. Agility and extreme programming OF UNIT-1 PPT
Agile Injection, Varberg
software engineering and project management 3rd module ppt presenetation
Software engineering MODULE3__Agile.pptx
Agile intro resources
Agile software development
Agile Process models
Agile with process 3 best for all types of
Hardware Firewall with all the detail of
Agile development
Role of Agile model in software development
Fundamentals of Software Engineering

More from Hardik Patel (7)

PPT
SE chapters 24-25
PPT
SE chapters 6-7
PPT
SE chapter 5
PPT
Slides chapter 3
PPT
SE chapter 2
PPT
Slides chapter 1
PPT
SE chapters 21-23
SE chapters 24-25
SE chapters 6-7
SE chapter 5
Slides chapter 3
SE chapter 2
Slides chapter 1
SE chapters 21-23

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Cloud computing and distributed systems.
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Machine learning based COVID-19 study performance prediction
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Modernizing your data center with Dell and AMD
PDF
Encapsulation theory and applications.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPT
Teaching material agriculture food technology
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Empathic Computing: Creating Shared Understanding
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Cloud computing and distributed systems.
The Rise and Fall of 3GPP – Time for a Sabbatical?
Spectral efficient network and resource selection model in 5G networks
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Machine learning based COVID-19 study performance prediction
Advanced methodologies resolving dimensionality complications for autism neur...
Unlocking AI with Model Context Protocol (MCP)
Review of recent advances in non-invasive hemoglobin estimation
Encapsulation_ Review paper, used for researhc scholars
Digital-Transformation-Roadmap-for-Companies.pptx
Modernizing your data center with Dell and AMD
Encapsulation theory and applications.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Big Data Technologies - Introduction.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Understanding_Digital_Forensics_Presentation.pptx
Teaching material agriculture food technology
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Empathic Computing: Creating Shared Understanding

SE chapter 4

  • 1. Chapter 4 Agile Development Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman
  • 2. Common Fears for Developers The project will produce the wrong product. The project will produce a product of inferior quality. The project will be late. We’ll have to work 80 hour weeks. We’ll have to break commitments. We won’t be having fun.
  • 3. The Manifesto for Agile Software Development Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan -- Kent Beck et al. “ We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: That is, while there is value in the items on the right, we value the items on the left more.”
  • 4. What is “Agility”? Effective (rapid and adaptive) response to change Effective communication among all stakeholders Drawing the customer onto the team Organizing a team so that it is in control of the work performed Yielding … Rapid, incremental delivery of software
  • 5. An Agile Process Is driven by customer descriptions of what is required (scenarios) Recognizes that plans are short-lived Develops software iteratively with a heavy emphasis on construction activities Delivers multiple ‘software increments’ Adapts as changes occur
  • 6. Principles of Agility Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter time scale. Business people and developers must work together daily throughout the project.
  • 7. Principles of Agility Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
  • 8. Principles of Agility Continuous attention to technical excellence and good design enhances agility. Simplicity - the art of maximizing the amount of work not done - is essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
  • 9. Extreme Programming (XP) The most widely used agile process, originally proposed by Kent Beck XP Planning Begins with the creation of user stories Agile team assesses each story and assigns a cost Stories are grouped to for a deliverable increment A commitment is made on delivery date After the first increment project velocity is used to help define subsequent delivery dates for other increments
  • 10. Extreme Programming (XP) XP Design Follows the KIS principle Encourage the use of CRC cards (see Chapter 8) For difficult design problems, suggests the creation of spike solutions — a design prototype Encourages refactoring — an iterative refinement of the internal program design XP Coding Recommends the construction of a unit test for a store before coding commences Encourages pair programming XP Testing All unit tests are executed daily Acceptance tests are defined by the customer and executed to assess customer visible functionality
  • 12. Other Agile Processes Adaptive Software Development (ASD) Dynamic Systems Development Method (DSDM) Scrum Crystal Feature Driven Development Agile Modeling (AM)