CS计算机代考程序代写 capacity planning Agile at Atlassian – Web

Agile at Atlassian – Web

N I R A J B H AW N A N I | S E N I O R D E V T E A M L E A D, C O N F L U E N C E S E RV E R | C S M

Agile at Atlassian
Agile software delivery at scale

Agenda

Team structure

Agile rituals

Agile tools

Scaling agile

Estimation & delivery

Agile tips & anti patterns

Team structure
Roles and responsibilities

Product Manager (PM)

TEAM STRUCTURE – ROLES

• More traditionally known as the Product
Owner (PO) in Scrum

• Often supported by Business Analysts
• Responsibilities:
• Product strategy
• Set priorities
• Clearly expressing backlog items
• Ensuring team is set up to deliver value

Designer (UX)

TEAM STRUCTURE – ROLES

• Works closely with the TL and PM
• Responsibilities:
• End-user experience
• Work closely with the team on

envisioning upcoming work
• Provide UX support for current work

Team Lead (TL)

TEAM STRUCTURE – ROLES

• a.k.a. Scrum Master
• Responsibilities:
• People management
• Communicating goals and scope
• Facilitate agile rituals
• Coaching the team to do agile effectively
• Remove blockers
• Backlog management

Triad

TEAM STRUCTURE – ROLES

• TL + PM + UX
• Responsibilities:
• Decision makers for the team
• Roadmap planning

Development Team

TEAM STRUCTURE – ROLES

• Typically 5-10 developers
• People who actually work on the backlog
• Work autonomously but under guidance
• Mix of skills and levels

What’s missing?

TEAM STRUCTURE – ROLES

Agile rituals
Implementing agile

Sprints

AGILE RITUALS

• Time-boxed period of work
• Produces a product increment
• Some teams choose not to have sprints

Standup

AGILE RITUALS

• When: Daily (usually morning)
• Who: Dev team + TL + optional members
• Where: In-person or over video conferencing
• Length: Ideally 5 minutes
• Topic: Blockers & progress

Planning Meeting

AGILE RITUALS

• When: Weekly or fortnightly
• Who: Dev team + TL
• Where: In-person or over video conferencing
• Length: 20 minutes
• Topic: Kicking off the next batch of work

Retrospective

AGILE RITUALS

• When: Weekly or fortnightly
• Who: Dev team + TL + PM + UX + …
• Where: In-person or over video conferencing
• Length: 20 minutes
• Topic: Discussing problems and

improvements

Demos

AGILE RITUALS

• When: Weekly or fortnightly
• Who: Dev team + TL + PM + UX + QE
• Where: In-person or over video conferencing
• Length: 20 minutes
• Topic: Demonstrating completed/in-

progress work

Estimation Meeting

AGILE RITUALS

• Estimate the effort required to complete
tickets in the backlog

• When: Ad-hoc
• Who: Dev team + TL (optional)
• Where: In-person or over video conferencing
• Length: 5-30 minutes

Agile tools
Tools we use to implement agile practices

AGILE TOOLS

• Work backlog lives in Jira
• Provides tracking and visibility
• Projects > Epics > Issues > Sub-tasks
• Custom workflows
• Powerful querying
• Highly customisable

Fun fact: Jira is so
customisable, this

guy used it to
control a toaster.

AGILE TOOLS

• Lightweight alternative to Jira
• No reporting
• Not good at managing large backlogs
• Does not control toasters

AGILE TOOLS

• Knowledge base / wiki
• Project documentation
• Team practices
• Meeting notes
• …

• Collaboration

AGILE TOOLS

• Continuous integration
• Tests changes to the product
• Reports on the results

• Continuous delivery
• Deploys tested artifacts

• Bitbucket Pipelines

AGILE TOOLS

• Code hosting – Git service
• Competitor to GitHub
• Version control
• Code reviews via pull requests

AGILE TOOLS

• Feature flags for cloud services
• A/B testing for early feedback

Scaling agile
How agile works with large, distributed teams

How do multiple teams work
in sync?

SCALING AGILE

Scrum of Scrums

SCALING AGILE

• Representatives from teams attend a status
meeting

• Similar to standup, but more high level
• Less frequent – weekly

How does a team handle
multiple streams of work?

SCALING AGILE

Feature Lead (FL)

SCALING AGILE

• A team may have several FLs
• Each manages one stream of work
• Still expected to contribute to velocity (50%)
• Responsibilities overlap with TL
• TL is still accountable
• Escalates all people issues to TL
• Temporary role. Not an official title

How do teams monitor
dependencies and keep up to

date with other projects?

SCALING AGILE

Project Central (PC)

SCALING AGILE

• A repository of projects that are being
worked on

• FL posts high level update once a week
• Execs and external teams watch updates
• Projects > 2 developer weeks

How do you visualise
roadmaps and dependencies?

SCALING AGILE

SCALING AGILE

• High level tracking for projects
• Long term roadmap planning for teams
• Based on data in Jira
• Capacity planning

Jira Portfolio

Estimation & delivery
How do we deliver software on time and with confidence

Simple estimation

ESTIMATION & DELIVERY

• Simple calculations based on velocity
• Can also base it on number of tickets

Simple estimation – Example

ESTIMATION & DELIVERY

• A team has a velocity of 50 points per sprint.
• A project is estimated at 250 story points.
• The team’s sprints are 2 weeks long.
• 250 ÷ 50 = 5 sprints
• 5 × 2 = 10 weeks
• Can also swap story points for number of tickets.

Simple estimation – Problems

ESTIMATION & DELIVERY

• Assumes that the backlog is complete. It never really is.
• People go on leave, get sick, etc.
• Teams change over time
• Work tends to take longer in the start and end of the project
• Implies more people = more velocity
• Developers are bad at estimating

Project-level estimation

ESTIMATION & DELIVERY

• Compare with a completed project worked on by a similar team
• Maintain a repository of projects and their estimates
• e.g. upgrading the same library
• e.g. project B feels like it would be as big as project A, so we look at

how many story points project A was.

Project-level estimation – Problems

ESTIMATION & DELIVERY

• Hard to find similar projects and teams
• Relies heavily on gut feeling

Probabilistic estimation

ESTIMATION & DELIVERY

• Use historical “lead time” data to predict possible outcomes
• Generates a probability chart
• Use the probability you are comfortable with (e.g. 80%)

Probabilistic estimation – Example

ESTIMATION & DELIVERY

• Team consists of 3 developers
• Person A has completed 3 tickets: 1 day, 3 days, 5 days
• Person B has completed 3 tickets: 2 days, 3 days, 6 days
• Person C has completed 2 tickets: 2 days, 3 days

Probabilistic estimation – Example

ESTIMATION & DELIVERY

• Build a histogram

0

0.75

1.5

2.25

3

1 day 2 days 3 days 4 days 5 days 6 days

Probabilistic estimation – Example

ESTIMATION & DELIVERY

• Run simulation based on histogram data to get a chart

Probabilistic estimation – Problems

ESTIMATION & DELIVERY

• Can be hard to communicate in terms of probabilities
• Assumes backlog is complete

“Bubble chart”

ESTIMATION & DELIVERY

• Consumed buffer vs remaining scope
• Trend becomes visible
• Used to make scoping and resourcing

decisions as a project is progressing
• Can look at multiple projects at once

… makes a dev team very
responsive to change by
allowing them to better track
progress, anticipate risks and
course correct accordingly.

Maui Duclercq
Program Manager, Atlassian

Agile tips & anti-patterns
Things to do and not to do to get agile to work for you

Definition of done
is not clear. Tasks

are loosely
defined.

It is clear what
needs to be done

to mark each task
as done.

GOOD BAD

Poor testing loop
leading to many

regressions
during

development

Good automated
testing coverage

catches
regressions early.

GOOD BAD

Large, loosely
defined tasks.
Tasks are long

lived.

Tasks are broken
down properly.

Progress is
clearly visible.

GOOD BAD

Don’t measure.
Use gut feeling.
Miss deadlines.

Measure, review,
make decisions,
course correct.

GOOD BAD

Backlog is out of
date. Leading to

unreliable
numbers.

Continuously
groom the

backlog.

GOOD BAD

Urgency to the
point of burnout.

– or –
No urgency

leading to slow
velocity.

The team should
have just the

right amount of
urgency.

GOOD BAD

Thank you!