agile software development (monash university - guest lecture series)

42
Agile Development in practice Nigel Fernandes Architecture Practice Manager

Upload: nigel-fernandes

Post on 11-Apr-2017

229 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Agile Software Development (Monash University - Guest Lecture series)

Agile Development in practice

Nigel FernandesArchitecture Practice Manager

Page 2: Agile Software Development (Monash University - Guest Lecture series)

Github.com/nigelfds

Architecture Practice Manager

I’ve worked for:ThoughtWorks, Envato, Suncorp, WorldVision, NBN, Unicief, Nokia, TheTrainline, PCT, Real Estate Australia, MYOB, Channel 4, ForwarGroup, Westpac, etc

I’ve worked inIndia, China, UK, Germany, Uganda, Brazil, and Australia

Page 3: Agile Software Development (Monash University - Guest Lecture series)

1 in 3 of you would find a job on SEEK (statistically)

Page 4: Agile Software Development (Monash University - Guest Lecture series)
Page 5: Agile Software Development (Monash University - Guest Lecture series)

Agenda:

- Why Agile.

- Waterfall & Agile

- Agile Principles

- Agile as a Cookbook

- Roles Ceremonies Artifacts @ SEEK

- Being adaptive - fighting for adaptability over efficiency

Page 6: Agile Software Development (Monash University - Guest Lecture series)

So why Agile?

Page 7: Agile Software Development (Monash University - Guest Lecture series)

A story about

phones

Page 8: Agile Software Development (Monash University - Guest Lecture series)

Rate of change is accelerating

Connected Company – Dave Gray

Page 9: Agile Software Development (Monash University - Guest Lecture series)

State of Agile Survey 2015

Page 10: Agile Software Development (Monash University - Guest Lecture series)

A cost story

Too Long32% of projects delivered successfullyLong duration defers revenue(Source: Standish Report 2009)

Time wasted on Junk52% of requirements implemented64% of functionality rarely used(Source: Standish Report 2003)

Page 11: Agile Software Development (Monash University - Guest Lecture series)

Not all projects are equal

Page 12: Agile Software Development (Monash University - Guest Lecture series)
Page 13: Agile Software Development (Monash University - Guest Lecture series)

Waterfall vs Agile

Page 14: Agile Software Development (Monash University - Guest Lecture series)

Software for the mars rover

Page 15: Agile Software Development (Monash University - Guest Lecture series)

Software for businesses

Page 16: Agile Software Development (Monash University - Guest Lecture series)

Agile Principles @ Seek

Page 17: Agile Software Development (Monash University - Guest Lecture series)

Group activities @ Monash

Page 18: Agile Software Development (Monash University - Guest Lecture series)

Agile principles @ SEEK

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

Business people and developers must work together daily throughout the project.

Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.

The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

Page 19: Agile Software Development (Monash University - Guest Lecture series)

Agile principles @ SEEK

Working software is the primary measure of progress.

Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.

Continuous attention to technical excellence and good design enhances agility.

Simplicity--the art of maximizing the amount of work not done--is essential.

The best architectures, requirements, and designs emerge from self-organizing teams.

At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

Page 20: Agile Software Development (Monash University - Guest Lecture series)

Agile as a cook book

Page 21: Agile Software Development (Monash University - Guest Lecture series)
Page 22: Agile Software Development (Monash University - Guest Lecture series)

State of Agile Survey 2015

Page 23: Agile Software Development (Monash University - Guest Lecture series)

Human Methods

Agile methods are people oriented rather than process oriented

Page 24: Agile Software Development (Monash University - Guest Lecture series)

State of Agile Survey 2015

Page 25: Agile Software Development (Monash University - Guest Lecture series)

Evolving Roles, Ceremonies and Artifacts

@ SEEK

Page 26: Agile Software Development (Monash University - Guest Lecture series)

Story walls

Page 27: Agile Software Development (Monash University - Guest Lecture series)

Stand ups

Page 28: Agile Software Development (Monash University - Guest Lecture series)

The original roles

Pig RolesCore team of Developers, Business Analysts and QAs

Project/Iteration manager

Product owner

Chicken RolesArchitecture, Security, Operations, Strategy, Data Analysts, UX etc.

Page 29: Agile Software Development (Monash University - Guest Lecture series)

Evolving from there

Delivery Managers over Scrum mastersSteering committees with accountability

Design, Operations & Architecture as part of core team

Page 30: Agile Software Development (Monash University - Guest Lecture series)
Page 31: Agile Software Development (Monash University - Guest Lecture series)
Page 32: Agile Software Development (Monash University - Guest Lecture series)
Page 33: Agile Software Development (Monash University - Guest Lecture series)

Being adaptive – trading for adaptability over efficiency

Page 34: Agile Software Development (Monash University - Guest Lecture series)
Page 35: Agile Software Development (Monash University - Guest Lecture series)
Page 36: Agile Software Development (Monash University - Guest Lecture series)
Page 37: Agile Software Development (Monash University - Guest Lecture series)
Page 38: Agile Software Development (Monash University - Guest Lecture series)
Page 39: Agile Software Development (Monash University - Guest Lecture series)
Page 40: Agile Software Development (Monash University - Guest Lecture series)
Page 41: Agile Software Development (Monash University - Guest Lecture series)

Summary

Page 42: Agile Software Development (Monash University - Guest Lecture series)

Thank you