Topic 12 Module Summary and Revision Guidance Agile Development
V1.0 Visuals Handout Page 1
V1.0 Agile Development Topic 12: Module Summary and Revision Guidance Module Summary and Revision Guidance Topic 12 - 12.2 Topic 12 Coverage This topic will cover: Revision of the module objectives Review of the key elements of the topics covered V1.0 Module Summary and Revision Guidance Topic 12 - 12.3 The Agile Development Module Scope and Coverage The Agile Development module will: Provide an introduction to the principles, people, processes and practices of Agile development V1.0 Prepare students for future trends in software development practices Reinforce understanding of the information systems development process Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 2 Module Summary and Revision Guidance Topic 12 - 12.4 Module Learning Outcomes By the end of the module students will be able to: Understand the background to Agile development Understand the roles within an Agile development team Understand the various Agile development techniques V1.0 Understand an Agile development lifecycle Understand the principles associated with an Agile development approach Be able to apply an Agile development approach to a particular project scenario Module Summary and Revision Guidance Topic 12 - 12.5 What is Agile? A family of approaches: - DSDM Atern - Lean - FDD - XP - Scrum V1.0 - and others Collectively they address: - Engineering best practices - Leadership philosophy - Project management framework - Development framework Module Summary and Revision Guidance Topic 12 - 12.6 The Agile Manifesto 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 over processes and tools Working software over comprehensive documentation V1.0 Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more www.agilemanifesto.org (2001) Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 3 Module Summary and Revision Guidance Topic 12 - 12.7 What is Waterfall? Winston Royce, 1970, wrote a paper: Managing the Development of Large Software Systems Royce did not use the term Feasibility Analysis Design V1.0 Royce did not use the term Waterfall at all Royce acknowledged prototyping, iteration and incremental delivery Code Test Implement Module Summary and Revision Guidance Topic 12 - 12.8 What is DSDM Atern? An Agile Project Delivery Framework that delivers the right solution at the right time - Any kind of project - Focused on business benefit V1.0 Focused on business benefit - On-time and in budget - Quality and rigour - Incremental - Collaborative Module Summary and Revision Guidance Topic 12 - 12.9 Flexing Requirements Features Cost Time Fixed Traditional Approaches DSDM Atern Fixed V1.0 Cost Time Quality? Quality Features Variable Variable Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 4 Module Summary and Revision Guidance Topic 12 - 12.10 The Structure of DSDM Atern V1.0 Module Summary and Revision Guidance Topic 12 - 12.11 The Philosophy of Atern (1) Any project V1.0 must be aligned to clearly defined strategic goals must focus upon early delivery of real benefits to the business Module Summary and Revision Guidance Topic 12 - 12.12 The 8Principles of Atern Deliver on time Develop iteratively Build incrementally from firm foundations Focus on the business need V1.0 Collaborate Never compromise quality Demonstrate control Communicate continuously and clearly DSDM Consortium2007 Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 5 Module Summary and Revision Guidance Topic 12 - 12.13 The DSDM Atern Lifecycle Feasibility V1.0 Module Summary and Revision Guidance Topic 12 - 12.14 Team Roles and Responsibilities V1.0 Module Summary and Revision Guidance Topic 12 - 12.15 Product Overview Business Focus Management V1.0 Solution Focus Focus Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 6 Module Summary and Revision Guidance Topic 12 - 12.16 Practices: DSDM Aterns 5 Key Techniques MoSCoW prioritisation Modelling F ilit t d k h MM SS CC WW MM V1.0 Facilitated workshops Iterative development Timeboxing Module Summary and Revision Guidance Topic 12 - 12.17 Practices: MoSCoW Prioritisation MMust have O SShould have CC WW MM V1.0 CCould have O WWont have this time MM SS Module Summary and Revision Guidance Topic 12 - 12.18 Practices: Modelling Many industries use models (and prototypes) to: - establish requirements - confirm expectations - test the achievability of objectives V1.0 Examples of models: - storyboards - diagrams - scale models (prototypes) - working software (prototypes) Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 7 Module Summary and Revision Guidance Topic 12 - 12.19 Practices: Facilitated Workshops A place where a specific job of work is done and a product produced. A team-based information gathering and decision making technique V1.0 Interactive communication Empowered personnel Independent facilitator views consensus exchange deliverables decisions Module Summary and Revision Guidance Topic 12 - 12.20 Practices: Iterative Development This is a key technique to evolve ... - from a high level idea V1.0 - to a delivered product - incrementally Module Summary and Revision Guidance Topic 12 - 12.21 Practices: Timeboxing V1.0 Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 8 Module Summary and Revision Guidance Topic 12 - 12.22 What is a Timebox? A timebox is a fixed period of time, at the end of which an objective has been met. V1.0 The time available dictates work done The aim of a timebox is to make something useful!! A timebox is product-focused, not task-focused Module Summary and Revision Guidance Topic 12 - 12.23 Further Guidance: DSDM Atern V1.0 Module Summary and Revision Guidance Topic 12 - 12.24 Agile Project Management Major Planning Issues Part 1: - Control - Risk Part 2: V1.0 Part 2: - Configuration Management - Quality - Testing - Metrics - Maintainability Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 9 Module Summary and Revision Guidance Topic 12 - 12.25 What is Quality? Fitness for purpose Quality Control (testing and rejection of faulty products) Quality Assurance (definition of products and quality criteria) V1.0 Quality Management and a QM system (the feedback from QC & QA to improve the process using a system of tools, techniques and standards etc) Solution Quality Process Quality Module Summary and Revision Guidance Topic 12 - 12.26 What is a Requirement? In simple terms, a requirement is a: - feature - function service V1.0 - service - Constraint that the solution needs to perform or exhibit. Module Summary and Revision Guidance Topic 12 - 12.27 Agree to what you believe you can do Estimating Set realistic objectives! V1.0 Then honour your commitments! Topic 12 Module Summary and Revision Guidance Agile Development V1.0 Visuals Handout Page 10 Module Summary and Revision Guidance Topic 12 - 12.28 Summary The Agile Development module will: - Provide an introduction to the principles, people, processes and practices of Agile development - Prepare students for future trends in software V1.0 Prepare students for future trends in software development practices - Reinforce understanding of the information systems development process Module Summary and Revision Guidance Topic 12 - 12.29 Module Learning Outcomes By the end of the module students will be able to: Understand the background to Agile development Understand the roles within an Agile development team Understand the various Agile development techniques U d t d A il d l t lif l V1.0 Understand an Agile development lifecycle Understand the principles associated with an Agile development approach Be able to apply an Agile development approach to a particular project scenario Module Summary and Revision Guidance Topic 12 - 12.30 Topic 12 Module Summary and Revision Guidance NCC Education Limited V1.0 Any Questions?