agilescrum

40
An Intro to Agile & Scrum Amelia Schmidt UX developer, Equiem

Upload: amelia-schmidt

Post on 12-Apr-2017

71 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: AgileScrum

An Intro to Agile & ScrumAmelia Schmidt UX developer, Equiem

Page 2: AgileScrum

An Introduction to Agile using the Scrum Framework

WHAT YOU’LL LEARN TODAY

‣  What Agile is ‣  What Scrum is ‣  We’ll run through some example sprints ‣  You can ask questions

2

Page 3: AgileScrum

INTRODUCTION 3

About me

‣  I’m a UX/front-end software developer ‣  I work for Equiem (equiem.com.au) ‣  I’ve had about three years’ experience with Agile & Scrum

Page 4: AgileScrum

INTRODUCTION 3

About you

Page 5: AgileScrum

What is Agile?An intro to Agile using the Scrum framework

Page 6: AgileScrum

5What is Agile?

Working software over comprehensive documentation

Individuals and interactions over processes and tools

Customer collaboration over contract negotiation

Responding to change over following a plan

— agilemanifesto.org

Page 7: AgileScrum

What is Agile? 3

Agile is:

‣  A response to the waterfall method ‣  A philosophy for team management ‣  A way to make sure the end result is relevant to changing expectations

and needs ‣  Based on the concept of breaking something in to smaller parts to

make it more manageable

Page 8: AgileScrum

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.

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.

6What is Agile?

Page 9: AgileScrum

What is Agile? 3

Agile vs Waterfall

Page 10: AgileScrum

What is Agile? 3

Agile vs Waterfall

Page 11: AgileScrum

What is Agile? 3

Agile vs Waterfall

Page 12: AgileScrum

What is Agile? 3

Agile for agencies

‣  Agencies using Agile face some interesting challenges ‣  Clients are an integral part of Agile and a successful approach requires

client buy-in and a high level of their participation at regular intervals ‣  Agile can be adapted to work with fixed budget, fixed scope or fixed

timeline projects (not all three at once), but it can be hard to explain this

‣  Agile challenges the core ideas of tenders ‣  Agile means constantly re-assessing requirements

Page 13: AgileScrum

What is Agile? 3

The iron triangle

Page 14: AgileScrum

What is Agile? 3

Agile for product development ‣  Agile works best in an internal team with limited involvement from

external stakeholders ‣  Agile only makes sense if high quality projects are the ultimate goal –

this isn’t always the case ‣  Agile allows for revisions, refactoring and regular grooming of a project ‣  Agile is built around the idea of disrupting hierarchical work

environments and providing a psychologically safe environment to work in

Page 15: AgileScrum

What is Scrum?An intro to Agile using the Scrum framework

Page 16: AgileScrum

What is Scrum? 3

Scrum is a type of Agile methodology ‣  Crystal Clear ‣  Extreme Programming (XP) ‣  Feature-driven development ‣  Dynamic Systems Development Method (DSDM) ‣  Kanban

Page 17: AgileScrum

5What is Scrum?

It provides a structure of roles, meetings, rules and artifacts. Teams are responsible for creating and adapting their processes from within this framework.

Scrum is a management framework for incremental product development using one or more cross-functional, self-organising teams of about seven people each.

Scrum uses fixed-length iterations, called Sprints, which are typically 1-2 weeks long (never more than 30 days).

Scrum teams attempt to build a potentially shippable (properly tested) product increment every iteration.

— scrumreferencecard.com

Page 18: AgileScrum

What is Scrum? 3

Some key terms

‣  Cross functional teams ‣  Incremental product development ‣  Fixed-length iterations ‣  Potentially shippable

Page 19: AgileScrum

What is Scrum? 3

Scrum roles

‣  Product owner ‣  ScrumMaster ‣  Development team

Page 20: AgileScrum

What is Scrum? 3

Product owner ‣  Single person responsible for maximizing the return on investment (ROI) of the development effort

‣  Responsible for product vision

‣  Constantly re-prioritizes the Product Backlog, adjusting any long term expectations such as release plans

‣  Final arbiter of requirements questions

‣  Accepts or rejects each product increment

‣  Decides whether to ship

‣  Decides whether to continue development

‣  Considers stakeholder interests

‣  May contribute as a team member

Page 21: AgileScrum

What is Scrum? 3

Development team ‣  Cross-functional (e.g., includes members with testing skills, and often others not traditionally called developers: business analysts,

domain experts, etc.) Self-organizing / self-managing, without externally assigned roles

‣  Negotiates commitments with the Product Owner, one Sprint at a time

‣  Has autonomy regarding how to reach commitments

‣  Intensely collaborative

‣  Most successful when located in one team room, particularly for the first few Sprints

‣  Most successful with long-term, full-time membership. Scrum moves work to a flexible learning team and avoids moving people or

splitting them between teams.

‣  3-9 members (originally 7 ± 2 members)

Page 22: AgileScrum

What is Scrum? 3

ScrumMaster ‣  Facilitates the Scrum process

‣  Helps resolve impediments

‣  Creates an environment conducive to team self-organisation

‣  Captures empirical data to adjust forecasts

‣  Shields the team from external interference and distractions to keep it in group flow (a.k.a. the zone)

‣  Enforces timeboxes

‣  Keeps Scrum artifacts visible

‣  Promotes improved engineering practices

‣  Has no management authority over the team (anyone with authority over the team is by definition not its ScrumMaster)

Page 23: AgileScrum

What is Scrum? 3

Scrum meetings ‣  Sprint planning ‣  Daily scrum ‣  Sprint review ‣  Sprint retrospective ‣  Backlog refinement meeting ‣  All meetings are facilitated by the

ScrumMaster, who does not have decision-making authority

Page 24: AgileScrum

What is Scrum? 3

The product backlog ‣  This is a list of Product Backlog Items, which are chunks of functionality that shouldn’t take more than a couple of days to complete

‣  The smaller a Product Backlog Item, the better

‣  Often written in User Story format

‣  May include specific acceptance criteria

‣  The team estimates each item

‣  The Product Backlog is always organised in top to bottom order of priority

‣  The Product Backlog is constantly being re-organised

‣  The Product Backlog is visible to all stakeholders and the whole team

Page 25: AgileScrum

What is Scrum? 3

The sprint backlog ‣  A subset of the product backlog that contains the items to be completed in the current sprint

‣  Visible to the whole team

‣  Used as the main reference during the Sprint and at Daily Scrums

‣  Often organised in a Kanban-style task board

‣  Additional tasks can be added to satisfy the fixed scope of the Sprint

Page 26: AgileScrum

What is Scrum? 3

Product backlog interfaces

Page 27: AgileScrum

What is Scrum? 3

Sprint planning ‣  Everyone in: the Product Owner, Dev team and Scrum master all attend

‣  The purpose of the meeting is to decide which Product Backlog Items the team will try to complete in the iteration

‣  The Product Owner has the responsibility of declaring which items are priority for the project from a business standpoint

‣  This meeting has a maximum time limit of 8 hours

‣  Some guesswork is involved, and each time you do this you get better at it

‣  Product Backlog Items are moved from the Product Backlog to the Sprint Backlog and they make up the requirements for the current

sprint.

Page 28: AgileScrum

What is Scrum? 3

Daily Scrum ‣  Also known as a “standup” because often teams do this standing up to keep it brief – maximum 15 minutes

‣  Usually done first thing in the morning

‣  Each Development team member must say:

‣  What they did yesterday

‣  What they will do today

‣  Anything blocking them from achieving this

‣  The Product Owner is allowed to join this meeting and is encouraged to do so

‣  Scrum meetings help developers not step on each others’ toes and keeps the ScrumMaster updated on anything that is stopping work

from progressing smoothly.

Page 29: AgileScrum

What is Scrum? 3

Sprint review ‣  After the sprint is complete, the dev team demos the functionality to the Product Owner

‣  The Product Owner assesses progress and adds anything back to the Product Backlog if it’s not satisfactory

‣  Feedback at this meeting can often result in scope discovery

‣  Stakeholders can attend this meeting – including end-users

‣  Maximum time for this meeting is four hours

Page 30: AgileScrum

What is Scrum? 3

Sprint retrospective ‣  In this meeting, the team reflects on processes, attitudes and behaviours and assesses what worked, what didn’t work, what they can do

better and why.

‣  It’s really important that this is a “safe” meeting where everyone feels comfortable and can reflect honestly without fear of judgment or

conflict.

‣  This meeting should be free from blaming and hostility

Page 31: AgileScrum

What is Scrum? 3

Backlog refinement ‣  This meeting helps prepare the backlog for the next Sprint planning

‣  Large items are split in to smaller pieces

‣  Product Backlog items that may have been added can be estimated

‣  Large Product Backlog Items are usually classed as “epics” with sub-tasks

‣  Not everyone has to be present here – but the Product Owner and ScrumMaster must, and sometimes other stakeholders

‣  In this meeting the ScrumMaster defines a strict definition of done on stories

‣  Both business and technical concerns are considered in this meeting.

Page 32: AgileScrum

Playtime!An intro to Agile using the Scrum framework

Page 33: AgileScrum

Project details

Due in 12 months $100k budget You have a team of 7 devs Really huge contract with a set feature list and spec already in place You must deliver on the contract’s feature list within the deadline and on budget

CASE STUDY

SUMMARY

You’re a digital agency and you just won a tender to develop a new platform for Centrelink. You are required to commit to a fixed budget and deadline.

As a client, Centrelink have not worked in an Agile manner before and require a lot of hand-holding.

It’s up to you to decide how to make this project work – how long will your sprints be, how much will you involve the client how will you use Agile to complete the tender requirements while still delivering a high-quality product?

CENTRELINK8

Page 34: AgileScrum

Project details

CatNanny v1 due in 6 months Somewhat flexible budget, but it’s limited because you are a startup The deadline is linked to investment $$ so it’s pretty important You have a team of 7 devs Scope is extremely flexible – you just want to release something that people will love

CASE STUDY

SUMMARY

You’re a startup developing a product called CatNanny. It’s basically a way to take care of your cat while you’re at work using lots of Internet Of Things technology. It’s lifting off and you’re in high demand to expand to DogNanny, BabyNanny and GrannyNanny.

You have external investors who shape your roadmap and you have enterprise-level clients who also have frequent and sometimes urgent feature requests.

CATNANNY8

Page 35: AgileScrum

Project details

Website relaunch due in three months $60k budget Team of 3 devs Focus on high quality product that must meet business needs Budget is very tight

CASE STUDY

SUMMARY

You’re a digital agency working with dogood.org, who are a not-for-profit group looking to re-launch their website to target a younger market.

Dogood.org are keen to work Agile but they do have a very strict budget. They are focused on making their new website really usable and have done a lot of UX research with their target market. They’re willing to put the time and effort in to making this work.

Dogood.org8

Page 36: AgileScrum

CASE STUDY 3

Sprint retrospective In this simulation we want to explore the positive and negative sides of working Agile in different situations. Try to imagine something that worked well and also something that might not work so well.

What went well? What went badly? What can we improve on for next sprint? How did the Agile process work for this project?

Page 37: AgileScrum

Present your Sprint Retrospective

15INSERT CLASS TITLE

Page 38: AgileScrum

Discussion15Intro to Agile & Scrum

Page 39: AgileScrum

Thanks!16Intro to Agile & Scrum

Page 40: AgileScrum

agilemanifesto.org

scrumreferencecard.com

agilemethodology.org

scrum.org