Agile Process Models. Prescriptive models don’t work It is unrealistic to not have changes. Why? The Agile Manifesto: Individuals and interactions over.

Slides:



Advertisements
Similar presentations
Agile Software Development کاری از : مهدی هوشان استاد راهنما : استاد آدابی.
Advertisements

Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
ITEC 370 Lecture 25 Lifecycles. Review Questions? F give prototype demonstration –Testing plan for your software Life cycles –Scrum (Roles, Meetings,
NAUG NAUG Knowledge Evening – th February 2007.
 User assignments (product owner)  ‘circle’  1 st sprint: ◦ Scrum Boards (informative workspace)  Product -, release -, sprint -, defect backlog 
Agile development By Sam Chamberlain. First a bit of history..
© ThoughtWorks, 2008 Improving Productivity and Quality With Agile Patrick Kua.
Agile
Agile Software Development. Traditional Software Development 1.Initiation (RFP) 2.Feasibility study Technical – can we build it? Economic – should we.
Agile Methods and Extreme Programming CSSE 376, Software Quality Assurance Rose-Hulman Institute of Technology March 23, 2007.
EXtreme Programming Quick Introduction Daniel Arraes Pereira Eduardo Lourenço Apolinário Ricardo de Oliveira Cavalcanti.
Computer Engineering 203 R Smith Agile Development 1/ Agile Methods What are Agile Methods? – Extreme Programming is the best known example – SCRUM.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Coming up: The Manifesto for Agile Software Development 1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development Software Engineering:
An Agile View of Process
Introduction to Agile Methodologies and Concepts Roy Osherove Principal, Team Agile Blog : ISerializable.com.
Introduction to Agile.
An Overview of Agile L e a d i n g C h a n g e T h r o u g h C o l l a b o r a t i o n.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Agile Software Development What is Agile? And How are we implementing Agile?
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
Chapter 3 – Agile Software Development Lecture 1 1Chapter 3 Agile software development.
Software Development Landscape
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter 4 Agile Development
Chapter 5 Software Process Models. Problems with “Traditional” Processes 1.Focused on and oriented towards “large projects” and lengthy development time.
Chapter 4 Agile Development 1. The Manifesto for Agile Software Development 2 “We are uncovering better ways of developing software by doing it and helping.
IS2210: Systems Analysis and Systems Design and Change Twitter:
Current Trends in Systems Develpment
Agile and XP Development Dan Fleck 2008 Dan Fleck 2008.
Chapter 3 – Agile Software Development Pepper modification of Sommerville presentation & Colm O’hEocha – AgileInnovation Ltd presentation 1Chapter 3 Agile.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Extreme Programming (XP). Agile Software Development Paradigm Values individuals and interactions over processes and tools. Values working software over.
XP – Extreme Programming
Agile
Coming up: The Manifesto for Agile Software Development 1 Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development Software Engineering:
Software Engineering Saeed Akhtar The University of Lahore Lecture 5 Originally shared for: mashhoood.webs.com.
1 The Manifesto for Agile Software Development “We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Informatics 43 – May 14, Open Source Source code is freely available and (usually) re-distributable Examples: Firefox web browser Apache HTTP Server.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 4 Agile Development Discussion of Agile Development and Agile Process.
CS3100 Software Project Management Agile Approaches.
AP-1 4. Agile Processes. AP-2 Agile Processes Focus on creating a working system Different attitude on measuring progress XP Scrum.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Agile Methods Presentation By: Jason Abbett. Definition A process to rapidly develop software Many kinds of agile methods but few are practiced.
Agile. Processes Waterfall Traditional With prototyping Sprial Agile Dynamic Systems Development Method (DSDM) Scrum Crystal eXtreme Programming (XP)
Agenda: Overview of Agile testing Difference between Agile and traditional Methodology Agile Development Methodologies Extreme Programming Test Driven.
Agile Development Chapter 10 - part 2. Agile Philosophy  A guiding philosophy and set of guidelines for : developing information systems in an unknown,
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
TIK 302 Rekayasa Perangkat Lunak Agile Proses. Agile View of Process Represents a reasonable compromise between conventional software engineering for.
Extreme Programming מתודולוגיה לפיתוח פרויקטי תוכנה.
Extreme programming (XP) Advanced Software Engineering Dr Nuha El-Khalili.
By Manish Shrotriya CSE MS 4 Point Agile Manifesto 1.Individuals and interactions over processes and tools 2.Working software over comprehensive.
Agile Methodology. -Dhanashree Kumkar -Plus91 Technologies.
Coming up: What is Agile? XP Development Dan Fleck 2010 Dan Fleck 2010.
Embedded Systems Software Engineering
Agile/XP Introduction
Chapter 5 Agile Development Moonzoo Kim KAIST
Agile Methods SENG 301.
Software & Software Engineering Pertemuan-4 Dosen :Kundang K Juman
Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Rapid software development
روش‌های سريع الانتقال (چابک) توسعه نرم افزار
Agile Software Development
Agile and XP Development
Agile and XP Development
Agile and XP Development
Coming up: What is Agile?
Introduction to XP.
Chapter 5: New and Emerging Process Methodologies
Presentation transcript:

Agile Process Models

Prescriptive models don’t work It is unrealistic to not have changes. Why? The Agile Manifesto: Individuals and interactions over processes and toolsIndividuals and interactions over processes and tools Working software over comprehensive documentationWorking software over comprehensive documentation Customer collaboration over contract negotiationCustomer collaboration over contract negotiation Responding to change over following a planResponding to change over following a plan

The Agile approach Fix time and resources, not features Functionality TimeResourcesFunctionality TimeResources Agile Prescriptive FIXED VARIABLE

The Agile approach Effective and rapid response to change Effective communication among all stakeholders On-site customer Rapid, incremental delivery of software

The Agile process Driven by customer descriptions of what is desired These are translated into short-lived plans Development is iterative Adapts as changes occur Little to no documentation – Why bother documenting what is likely to change? – Customer is on-site

Popular Agile Processes eXtreme Programming Scrum

eXtreme Programming Very programmer-focused; take the good practices and do only those! – Simplicity – Communication – Feedback – Courage

XP practices: Planning Begins with customer-defined user stories Agile team assigns each story a cost Stories are grouped into deliverable increments Commitment is made on delivery date After the first increment this project velocity is used to define future increments

XP practices: planning game Write a Story (Customer) Spike a Story (Developer) Estimate a story (Developer) Split a Story (Customer) Sort stories by value (Customer) Declare velocity (Developer) Exploration Planning “too big” “don’t know how”

XP practices: user stories Watered-down version of use cases Written by customers, estimated by developers Often on post-it notes Replaces large documents

XP practices: on-site customer

More XP practices Small releases Continuous integration – Implies refactoring System metaphor Sustainable pace – 40 hours max/week

XP practices: Pair programming One developer writes, the other watches Switch every two hours Results in collective ownership Need a coding standard

XP practices: Test Driven Development Write automated unit tests first (will all fail) Only write code until all tests pass – Stop there; no extra features!

When not to use XP Customer requires documentation Teams larger than 15 people When you can’t get immediate feedback (embedded systems) When it’s impossible to get people in the same room

Scrum Sprints, backlog, daily scrum meeting

Criticisms of Agile approaches Lack of scalability Relies on mature team May result in inefficient designs due to incrementality Potentially expensive – On-site customer – Rework – Inefficiency