+ All Categories
Home > Documents > Agile Models

Agile Models

Date post: 08-Apr-2018
Category:
Upload: pavan-kumar-koutarapu
View: 219 times
Download: 0 times
Share this document with a friend
33
Agile Models Scrum, XP, DSDM, ASD, FDD, Crystal Family 1 Algorithms Software Pvt. Ltd.
Transcript
Page 1: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 1/33

Page 2: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 2/33

� Introduction to Agile

� Overview to Agile Methods

Introduction

Phases

Scope Of Use

Roadmap

2Algorithms Software Pvt. Ltd.

Page 3: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 3/33

� Agile proponents believe

± Current software development processes are too heavyweight

� Too many things are done that are not directly related to software

product being produced

± Current software development is too rigid

� Difficulty with incomplete or changing requirements

± Short development cycles (Internet applications)

± More active customer involvement needed

Introduction to Agile

3Algorithms Software Pvt. Ltd.

Page 4: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 4/33

� Agile methods are considered

± Lightweight

± People-based rather than Plan-based

� Several agile methods± No single agile method

± XP most popular

� No single definition

� Agile Manifesto closest to a definition

± Set of principles

± Developed by Agile Alliance

Introduction to Agile (Contd)

4Algorithms Software Pvt. Ltd.

Page 5: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 5/33

� Agility is the ability to create and respond to change in order 

to profit in a turbulent business environment 

� Agility is prioritizing for plan with respect to shifting

requirements, technology, and knowledge

� Agile methods use time-boxed iterations, adaptability, and 

evolutionary delivery to promote rapid flexibility 

� Agile methods promote quick response to changes in

requirements as well as collaboration with customers

� Agile methods are a better way of developing software using

teams, collaboration, iterations, and flexibility 

Introduction to Agile

5Algorithms Software Pvt. Ltd.

Page 6: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 6/33

6Algorithms Software Pvt. Ltd.

Agile Manifesto

A Statement of Values

� Individuals and interactions over processes and tools

� Working software over comprehensive documentation

� Customer collaboration over contract negotiation

� Responding to change over following a plan 

� http://www.agilemanifesto.org

Page 7: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 7/33

7Algorithms Software Pvt. Ltd.

Big 5 Agile Methods� The term Agile Methods was coined in 2001

Page 8: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 8/33

8Algorithms Software Pvt. Ltd.

Agile Methods� Scrum

� XP (Extreme Programming)

� DSDM (Dynamic Software Development Model)

� ASD (Adaptive Software Development)

� FDD (Feature Driven Development)

� Crystal Family (Crystal Clear, Crystal Yellow, Crystal

Oran

ge)

Page 9: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 9/33

9Algorithms Software Pvt. Ltd.

Scrum in

100 words� Scrum is an agile process that allows us to focus on 

delivering the highest business value in the shortest time.

� It allows us to rapidly and repeatedly inspect actual workingsoftware (every two weeks to one month).

� The business sets the priorities. Our teams self-manage todetermine the best way to deliver the highest priorityfeatures.

� Every two weeks to a month anyone can see real working

software and decide to release it as is or continue toenhance for another iteration.

Back

Page 10: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 10/33

10BackAlgorithms Software Pvt. Ltd.

Page 11: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 11/33

� Scrum phases:

Pregame, Game and Postgame.

� Pregame Phase:

Planning and Architecture.

� Planning:

If a new system is being developed then this phase is very broad andconsists of conceptualization and analysis.

If the latter is the case and a system is improved then this phase isnarrowed to limited analysis.

� Steps Involved:

Development of a Product-backlog & Sprint backlog

Delivery date

Risk control & assessment

Scrum Phases

11Algorithms Software Pvt. Ltd.

Back

Page 12: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 12/33

Architecture and High Level Design phase :

Steps Involved:

� Review of Sprint backlog items

� I

den

tify the chan

ges that aren

ecessary to implemen

t backlog items� Perform domain analysis required to build

� Enhance or Update the domain models to reflect the new system contextand requirements

� Identify any possible problems in implementing or developing the changes

� Conduct a design review meeting in which every team has to present theapproach and changes required to implement each backlog item

� Changes are reassigned as required

Scrum Phases (Contd)

12Algorithms Software Pvt. Ltd.

Back

Page 13: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 13/33

Game Phase: (Sprint Development)

Steps Involved:

� Development of new release functionality and monitoring of variables,namely: time, requirements, quality, cost and competition.

� The end of this phase is defined by interaction with these variables.

� Review-meetings conducted for presenting current work and progress ,resolving problems , adding new backlog items , risk review.

Postgame Phase: (Iteration closure)

Steps Involved:

�Integration

� Preparation for release

� Final documentation

� Pre- release stage testing and eventually release.

Scrum Phases (Contd)

13Algorithms Software Pvt. Ltd.

Back

Page 14: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 14/33

Scope Of Use

14Algorithms Software Pvt. Ltd.

Back

Page 15: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 15/33

� Developed by Kent Beck± XP is a light-weight methodology for small to medium-sized teams developing

software in the face of vague or rapidly changing requirements.

� Core Practices of XP:

� Planning Game: Pla

nwork i

ncreme

ntally.

� Small Releases: Release as quickly as possible to increase time to market,and get feedback as soon as possible.

� Metaphor: If possible, define a metaphor for the system being developed.For example, the shopping cart metaphor is widely used to describe an online ordering system.

� Simple Design: Use the simplest design that will work for the functionality(user story) being implemented. Do not design for things that may neveractually be used.

� Testing: Test everything, and try to automate the testing if possible.

� Refactoring: Instead of designing the entire system up front, design as yougo, making improvements as needed.

Extreme Programming

15Algorithms Software Pvt. Ltd.Back

Page 16: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 16/33

� Pair Programming: Programming in teams of two (or three) allow for a discussion to occur in real-time that addresses requirement, design, testing, andprogramming concerns.

� Collective Code Ownership: Anyone on the team can make a change to any codeat any time.

� Continuous Integration: The entire code base is constantly being rebuilt, andretested in an automated fashion.

� Sustainable Pace: Ideally, team members do not need to work more than 40 hoursper week to meet project deadlines. Burning the midnight oil is chunked bymanagement in favor of consistent, predictable, repeatable delivery.

� Whole Team: The team functions as a whole. Members are encouraged to be

more generalized than specialized. Learning about all technologies andrequirements is encouraged.

� Coding Standards: In order to maximize communication, coding standards aredefined by the team, and used to ensure consistent coding practices.

� Onsite Customer: Having constant and direct access to the customer allows theteam to work at the fastest possible speed.

Extreme Programming

16Algorithms Software Pvt. Ltd.

Back

Page 17: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 17/33

Extreme Programmin

g overview

17Algorithms Software Pvt. Ltd.

Page 18: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 18/33

One iteration of Extreme Programming

18Algorithms Software Pvt. Ltd.

Page 19: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 19/33

Page 20: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 20/33

� Dynamically Changing Requirements

� Risky Projects

� Small Development Groups

� Non-Fixed Scope (Price) Contract

Scope Of Use

20Algorithms Software Pvt. Ltd.

Back

Page 21: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 21/33

� Dynamic Systems Development Method (DSDM) :

� DSDM is an iterative and incremental approach that emphasizescontinuous user involvement.

Its goal is to deliver software systems on time and on budget whileadjusting for changing requirements along the developmentprocess.

Three phases:

� Pre-project phase

� Project life-cycle phase

� Post-project phase.

DSDM

21Algorithms Software Pvt. Ltd.

Page 22: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 22/33

DSDM Project Lifecycle Phase

22Algorithms Software Pvt. Ltd.

Page 23: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 23/33

� Timeboxing

� MOSCOW:

Represents a way of prioritizing requirements

It stands for the following:

� MUST have this requirement to meet the business needs.

� SHOULD have this requirement if at all possible, but the project success doesnot rely on this.

� COULD have this requirement if it does not affect the fitness of business needsof the project.

� WOULD have this requirement at later date if there is some time left (or in thefuture development of the system).

� Prototyping� Testing

� Workshop

� Modelling

� Configuration Management

Core Techniques in DSDM

23Algorithms Software Pvt. Ltd.

Page 24: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 24/33

Scope Of Use

24Algorithms Software Pvt. Ltd.

Back

Page 25: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 25/33

� Adaptive Software Development(ASD) was developed by Jim A.Highsmith.

� ASD focuses mainly on the problems in developing complex, large systems.

� The method strongly encourages incremental, iterative development with

constant prototyping.

� Three phases:

Speculate

Collaborate

Learn

ASD

25Algorithms Software Pvt. Ltd.

Page 26: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 26/33

� Project Initialization Determine the intent of the project

� Determine the project Time box (estimation duration of the project)

� Determine the optimal number of cycles and the Time box for each

� Write an objective statement for each cycle

� Assign primary components to each cycle

� Develop a project task list

� Review the success of a cycle

� Plan the next cycle

Adaptive Steps

26Algorithms Software Pvt. Ltd.

Page 27: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 27/33

Adaptive Lifecycle

27Algorithms Software Pvt. Ltd.

Page 28: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 28/33

Scope Of Use

28Algorithms Software Pvt. Ltd.

Back

Page 29: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 29/33

� FDD is a model-driven short-iteration process that consists of five basic

activities.

� FDD describes five basic activities that are within the software

development process.

During the first three sequential activities an overall model shape isestablished. The final two activities are iterated for each feature.

� Activities:

Object Modelling

Features List

Development Planning Design by Feature

Development by Feature

FDD

29Algorithms Software Pvt. Ltd.

Page 30: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 30/33

� FDD is a model-driven short-iteration process that consists of five basic

activities.

� FDD describes five basic activities that are within the software

development process.

During the first three sequential activities an overall model shape isestablished. The final two activities are iterated for each feature.

� Activities:

Object Modelling

Features List

Development Planning Design by Feature

Development by Feature

FDD

30Algorithms Software Pvt. Ltd.

Page 31: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 31/33

FDD Project Lifecycle

31Algorithms Software Pvt. Ltd.

Page 32: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 32/33

� Domain Object Modelling

� Developing by Feature

� Individual Class (Code) Ownership

� Feature Teams

� Inspections

� Configuration Management

� Regular Builds

� Visibility of Progress and Results

Best Practices in

FDD

32Algorithms Software Pvt. Ltd.

Page 33: Agile Models

8/7/2019 Agile Models

http://slidepdf.com/reader/full/agile-models 33/33

Scope Of Use

33Algorithms Software Pvt. Ltd.

Back


Recommended