Introduction in Agile Methodologies - cs.ubbcluj.rotzutzu/Didactic/Agile/Course 01... · Principles...

Post on 01-Feb-2018

221 views 1 download

transcript

Introduction inAgile Methodologies

Source: Peter Leeson - The Battle for Success (ITCamp 2014)

User Customer

Front Desk

SalesEngineering

Mngt

EstimatesEng. Team

Eng. Team 2

Requirements

ArchitectureDesign

Customer Rep

Demo

Deliver

Story/Spec

Product Backlog

SprintBacklog Sprint

Estimates

Sprint Planning

Monitor/ScrumIntegration

Development

Release Planning

But, that's not really what I

wanted!

Kent BeckMike BeedleArie van BennekumAlistair CockburnWard CunninghamMartin FowlerJames GrenningJim HighsmithAndrew HuntRon JeffriesJon KernBrian MarickRobert C. MartinSteve MellorKen SchwaberJeff SutherlandDave Thomas

Agile Manifesto2001

• Individuals and interactionsover processes and tools

• Working softwareover comprehensive documentation

• Customer collaborationover contract negotiation

• Responding to changeover following a plan

Agile ManifestoWe are uncovering better ways of developingsoftware by doing it and helping others do it.Through this work we have come to value:

Kent BeckMike BeedleArie van BennekumAlistair CockburnWard CunninghamMartin FowlerJames GrenningJim HighsmithAndrew HuntRon JeffriesJon KernBrian MarickRobert C. MartinSteve MellorKen SchwaberJeff SutherlandDave Thomas

n = 17White males94% AmericanAverage age = 46Independent consultants

Principles behind

the Agile Manifesto

1. Customer satisfaction by early and continuous delivery of valuable software

2. Welcome changing requirements, even in late development3. Working software is delivered frequently (weeks rather than

months)4. Close, daily cooperation between business people and

developers5. Projects are built around motivated individuals, who should

be trusted6. Face-to-face conversation is the best form of communication

(co-location)7. Working software is the principal measure of progress8. Sustainable development, able to maintain a constant pace9. Continuous attention to technical excellence and good design10. Simplicity—the art of maximizing the amount of work not

done—is essential11. Self-organizing teams12. Regular adaptation to changing circumstance

Agile methodologies main virtue:

takegood

engineering & management

practices

to an extreme implementation

“Sweet spot”

Small teams

Colocated

Small-to-medium sized systems

Active customer collaboration

High requirements volatility

Agile methods are

the methods of choice

Henrik Kniberg, "Spotify engineering culture", 2014

Overallpicture

WATERFALL AGILE

Fixed

Estimated Resources Time Scope

Requirements Resources Time

Plan

Driven

Value

Driven

Change

Incomplete specifications

Significant estimation errors

Controlling Change

Reacting to Change

Planning

Jeff Patton: http://www.agileproductdesign.com/blog/dont_know_what_i_want.html

Plan-driven Evolutionary

"Tahitians at rest" Paul Gauguin

Communication

Hierarchical Organization

Cooperative Organization

Learning

The Backwards Brain Bicycle(https://www.youtube.com/watch?v=MFzDaBzBlL0)

Value vs Risk

Milk is cheapest in BIG cartons

Software is cheapest in lots of SMALL cartons

Definition

1.If they use it, it will change2.Only dead software stops changing

Amazon deploys new software to production every 11.6 seconds.

2h

BEING AGILE

DOINGAGILE

Course structure

Agile Methodologies - Overview

Scrum

Extreme Programming

Kanban

Crystal

The Agile Unified Process

34

AssessmentPresentation – optional, +2 pointsWhen? - seminar (last 4 weeks)

What? - own experience

How? - Powerpoint presentation

TestWhen? - session

What? - multiple choice test

How? - written

35