Chapter 5 Agile Development Moonzoo Kim KAIST

Slides:



Advertisements
Similar presentations
Keith McMillan Principal, Adept Technologies Copyright (C) 2008, Adept Technologies llc.
Advertisements

Colin Weaver The Eleven Essential Behaviours of Successful Agile Project Teams.
Agile Project Management with Scrum
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
Agile Architecture? Paul Lund 24 th Nov Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it.
Agile Methods.
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:
Agile Principles Suradet Jitprapaikulsarn 1. What is Agility? Effective (rapid and adaptive) response to change Effective communication among all stakeholders.
Agile Process: Overview n Agile software engineering represents a reasonable compromise to conventional software engineering for certain classes of software.
An Agile View of Process
Software engineering Process models Pavel Agejkin.
1 Agile Methodology & Programming Ric Holt July 2009.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Agile Programming Principles.
Agile Web Development C. Daniel Chase University of Colorado at Boulder.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
Developed by Reneta Barneva, SUNY Fredonia Agile Development.
Chapter 4 Agile Development
Chapter 5 Agile Development Chapter 5 Agile Development Moonzoo Kim KAIST 1.
Chapter 4 An Agile View of Process
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.
AgileCamp Presents: Agile 101. Good luck in your presentation! This slide deck has been shared by AgileCamp Kit under the Creative Commons Attribution.
Chapter 5 애자일 개발 Agile Development
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CS1: Classic Software Life Cycle “Waterfall” method: 1.Requirements/Analysis Determine the problem to be solved – client-centered 2.Specification.
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.
AGILE COTS Václav Pergl We are uncovering better ways of developing software by doing it and helping others do it. Through this work.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 4 Agile Development Discussion of Agile Development and Agile Process.
Chapter 3 Agile Development
Software Engineering (CSI 321) An Agile View of Process 1.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009) Slides copyright 2009 by Roger Pressman.1.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
- Discussion of Chapter 1 in Martin and Martin.  We are uncovering better ways of developing software by doing it and helping others do it. Through this.
Chapter 3 Agile Development
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Agile Introduction Emerson Murphy-Hill. Agile Manifesto/Alliance XP, SCRUM, DSDM, Adaptive Software Development, Crystal, FDD February 2001 (Snowbird,
CS 4500: Software Development Software Process. Materials Sommmerville Chapters 1, 2 and 3 Software Cycle and Models:
TIK 302 Rekayasa Perangkat Lunak Agile Proses. Agile View of Process Represents a reasonable compromise between conventional software engineering for.
1 The economies of ALL developed nations are dependent on software The economies of ALL developed nations are dependent on software More and more systems.
Embedded Systems Software Engineering
Software Engineering Principles I (Spring 2017)
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Chapter 4 & Chapter 5 Important Concepts
Chapter 3 An Agile view of process.
Introduction to Agile Software Development
Principles for Agile Development
Software & Software Engineering Pertemuan-4 Dosen :Kundang K Juman
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Software Engineering: A Practitioner’s Approach, 7/e Chapter 3 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Chapter 5 Agile Development
Software Engineering (CSI 321)
Chapter 3 Agile Development
Agile Software Development Paradigms
Rosa María Torres de Paz
Chapter 3 Agile Development
Agile Process: Overview
Chapter 3 Agile Development
Chapter 3 Agile Development
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Introduction to Agile Blue Ocean Workshops.
Adjective: Able to move quickly and easily. Principles and Values
Chapter 3: Agile Software Processes
Software Engineering: A Practitioner’s Approach, 6/e Chapter 4 Agile Development copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
The Manifesto for Agile Software Development
Projects, Assignments, and other Assessments
Chapter 3 Agile Development
Presentation transcript:

Chapter 5 Agile Development Moonzoo Kim KAIST

The Manifesto for Agile Software Development “We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions v.s. processes and tools Working software v.s. comprehensive documentation Customer collaboration v.s. contract negotiation Responding to change v.s. over-following a plan That is, while there is value in the items on the right, we value the items on the left more.” Kent Beck et al

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 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

12 Principles of Agile Process To satisfy the customer through early and continuous delivery of valuable SW Welcome changing requirements, even late in development Deliver working SW frequently (from a couple of weeks to a couple of months) Business people and developers must work together daily Build projects around motivated individuals The most effetive method of communication is face-to-face conversation Working SW is the primary measure of progress Agile processes promote sustainable development Continuous attention to technical excellence and good design Keep it simple (KIS) The best architectures, requirements, and designs emerge from self-organinzing teams At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior

Extreme Programming (XP) (1/3) The most widely used agile process, originally proposed by Kent Beck XP Planning Begins with the creation of “user stories” that describe required features and functionality for SW Agile team assesses each story and assigns a cost (in weeks) Stories are grouped to for a deliverable increment A commitment is made on delivery date After the first increment “project velocity” (# of user stories implemented during the first release) is used to help define subsequent delivery dates for other increments

Extreme Programming (XP) (2/3) XP Design Follows the KIS (keep it simple) principle Encourage the use of CRC (class-responsibility-collaborator) cards (see Chapter 24) For difficult design problems, suggests the creation of a spike solution (a design prototype) A spike solution is a very simple program to explore potential solutions. 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 Test oriented implementation (a.k.a. TDD) 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) (3/3)