10
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

AD_Topic_12

Embed Size (px)

DESCRIPTION

AD_Topic_12

Citation preview

Page 1: AD_Topic_12

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

Page 2: AD_Topic_12

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

Page 3: AD_Topic_12

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

Page 4: AD_Topic_12

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 8 Principles 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 Consortium 2007

Page 5: AD_Topic_12

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

Page 6: AD_Topic_12

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 Atern’s 5 Key Techniques

• MoSCoW prioritisation

• Modelling

F ilit t d k h

MMSSCC

WWMM

V1.0 ©

• Facilitated workshops

• Iterative development

•Timeboxing

Module Summary and Revision Guidance Topic 12 - 12.17

Practices: MoSCoW Prioritisation

MMust have

O

SShould haveCC

WWMM

V1.0 ©

CCould have

O

WWon’t have this timeMM

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)

Page 7: AD_Topic_12

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

consensusexchange

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 ©

Page 8: AD_Topic_12

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

Page 9: AD_Topic_12

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 offaulty products)

Quality Assurance(definition of productsand quality criteria)

V1.0 ©

Quality Management and a QM system(the feedback from QC & QA to improvethe process using a system of tools, techniquesand standards etc)

SolutionQuality

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!

Page 10: AD_Topic_12

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 OutcomesBy 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 LimitedV1.0

Any Questions?