+ All Categories
Home > Documents > Agile Intro for FCL

Agile Intro for FCL

Date post: 05-Dec-2014
Category:
Upload: jabizz
View: 977 times
Download: 3 times
Share this document with a friend
Description:
Quick intro to Agile-SCRUM given to FCL - 2011
27
Transcript
Page 1: Agile Intro for FCL

������� ������� �������

Page 2: Agile Intro for FCL

1. Why Agile? – waterfall vs Agile2. Agile Manifesto3. Scrum – an overview4. Key Roles in scrum5. Story planning6. Retrospective7. Role of the ScrumMaster8. Role of the Product Owner9. Role of Scrum Teams 10. Agile Project Management11. Agile Infrastructure12. Scrum of scrums13. Release Planning14. Scaling

Page 3: Agile Intro for FCL

� �� �����������

End-to-End small slices of work

20 % done = 100 % usable

• Business value is only delivered towards the end of the project (hard to capture ROI against Business Case)

• False belief the we know more about the project than we possibly can

• Planning is by task rather than feature

• False feature rich

• Business value is delivered early (can capture ROI against Business Case early)

• Focus on the important features first• Early feedback that we are doing the

right thing• Customers are happy when they see

progress• Early feedback of capability to deliver• Reduced cycle time is a major

competitive advantage

Half way?

0% of software delivered

Are we doing the right thing?

����� �������������������������������������������� ��� ��

Page 4: Agile Intro for FCL

� Individuals and Interactions – over processes & tools

� Working Software – over comprehensive documentation

� Collaboration & Transparency – over contract negotiation

� Responding to change – over following a plan

� Customer transparency/business buy-in (crucial)� People focus� Open & Honest� Remaining ‘Agile’� Scrum, XP, TDD, KANBAN etc…

����� ������� ���� ��������

Page 5: Agile Intro for FCL

Common misuse of Agile The Agile Promise

All care no responsibility. A free run on time and budget

Agile provides early indicators on likelihood of delivery to promise. Accountability to tasks specific to sprints. (we deliver what we promise)Known delivery NOT assumed

An excuse for no documentation Eliminate wasted documentation and collaborate through knowledgemanagement

Development led project Business/customer led project (Product Owner)

Little visibility/control Complete transparency/improved control

Agile IS based on iterative outcomes, where requirements and solutions evolve through collaboration between self-organising cross-functional teams.

Agile is NOT

• The ‘silver bullet’

• Uncontrollable by Project Management

• A free reign to deliver anything

• Is not a methodology

Initial Investment

• Require team coaching – plan, allocate, commit (at sprint level)

• Technology delivery focus

• Business involvement and buy in

Iteration2-4 weeks

Return

Iteration goal

Product backlog Potentially shippable

product increment

24 hours

Page 6: Agile Intro for FCL

The Agile promise� Delivery commitment on a known–known NOT and known-

unknown� A framework NOT the law

Agile practices• Forming, Storming, Norming & Performing• Regular showcases – inspection and evolution• Emerging requirements, team capability and technology• Self organizing team & adaptive• Regular process improvement (Retrospectives, Scrum-of-Scrums,

Design Reviews, etc…)• Risk management• Collaboration & transparency

Page 7: Agile Intro for FCL

• Product Owner: – The Product Owner is responsible for gathering the product backlog for the entire

program of work at an epic level to capture the high level features (functions) required by the business, breaking up the epics into user stories (manageable chunks in business speak), elaborating on features and prioritising the backlog of work. The product owner role is a key role in providing the overall business context and functional scope of each release of work to the sprint teams and understanding the complete scope of work and alignment to business drivers. (align benefits)

• Scrum Master/Technical Project Lead: – The Scrum Master is responsible for making sure a Scrum team lives by the values and

practices of Scrum and is the key individual for competency leads, project manager and product owner to communicate with a team. The Scrum Master keeps the team working at the highest level of productivity primarily by making and facilitating decisions and removing impediments.

– The Scrum Master facilitates the daily scrum and becomes responsible for removing any obstacles that are brought up by the team during those meetings.

– The role must plan the delivery of the iterations and release in conjunction with the product owner, confer with the scrum team and take accountability for the technical delivery of the application. This includes identification of key milestones, dependencies and progress reporting/tracking. This role is accountable to the project manager

– LEAD & FACILITATE

Page 8: Agile Intro for FCL

• Scrum Team Member: (Delivery Team)– The Sprint Team builds the deliverable that the customer is going to consume (examples

should include: processes, documentation, software functionality). The aims to be "cross-functional" and includes members from all competencies conducting various roles where possible.

• Subject Matter Expert: – Provide real business experience to the project team and ensures that any proposed solution

can meet business requirements, while still considering the limitations in product functionality and understanding where business processes need to be re-engineered.

A new role ??• Project Delivery Partner:

– The project delivery partner is responsible for overall delivery of the project . The project delivery partner is responsible for engaging and reporting to the project board. The project delivery partner is responsible for working with the scrum masters to determine resource allocations for the pipeline of work.

– The project delivery partner is responsible for the financial control relating to the project.– The project delivery partner is responsible for expectation management with the

business sponsor.– The project delivery partner is responsible for ensuring adequate change management

practices are in place for the project.– Can be potentially shared across the SM

Page 9: Agile Intro for FCL

Product Owner:

The Product Owner is responsible for gathering the product backlog for the entire program of work at an epic level to capture the high level features required by the business, breaking up the epics into user stories, elaborating on features and prioritising the backlog of work. The product owner role is a key role in providing the overall business context and functional scope of each release of work to the sprint teams and understanding the complete scope of work and alignment to business drivers.

?

Page 10: Agile Intro for FCL

Scrum master:

• Supporting the team and removing key barriers at an iteration level

• Ensure administration of the iteration velocity tracking & reporting

• Managing and improving development team software delivery and maturity practices – i.e. test automation, continuous integration

• Improving the engineering practices so each increment of functionality is potentially shippable.

• Manage the product backlog

• Apply commonsense

� ����������� � ����������� � ����������� � �����������

?

Page 11: Agile Intro for FCL

� ��� !�� ������"

High-level view of WoL priorities

R2.2 Features/Stories

Business Prioritisation }Lock in Scope

R2.2 Features/Stories(relative Weighting(planning poker))

High-level delivery costs &

timeframes

ROM Days (BA, Dev, Test)/

Prelim release plan

R2.2 Features/Stories

Business Agreement

Detailed task planningHours & Iteration plan

(BA, Dev, Test)R2.2 Features/Stories

?

Page 12: Agile Intro for FCL

User Stories

As a <user>I want <business functionality>So that <business value>

Acceptance Criteria Entry Criteria <pre-requisites>Exit Criteria <post-conditions>Then <result>

Must be simple enough to be completed in a iteration. If story is large and complex break it down into manageable pieces.

Page 13: Agile Intro for FCL

Agile Estimation (Poker Planning)

� Estimation done by ‘scrum team’� Complexity measure to estimate (Fibonacci Sequence)� Story weighting (complexity calibration)� Simple story complexity vs complex story

� Continue estimating until all team members agree (3 Times)� If consensus can’t be met discuss the separation in estimates

� Note: Break the story down into as simple a form as possible so task planning can be easily achieved.

Page 14: Agile Intro for FCL

Product Backlog Prioritisation

� Finalise PBI (Product Backlog Items)� PO to agree with Business on priority of deliverable stories� This is prioritised across the entire product backlog (or as much

as possible across the PBI)� Agree with the business the first iteration of stories to be delivered� Agree with the scrum team � Deliver sprint!

Page 15: Agile Intro for FCL

� Daily stand up� Facilitated by the scrum master� 15 minutes� Chicken & Pigs

� Each team member stands in front of the scrum board and details � the tasks they completed yesterday, � planned to do today and � any impediments

� Each team member to ensure scrum board is upto date and tasks move across the board as they are completed

� Team members must be prompt and ontime to the daily stand-up

Page 16: Agile Intro for FCL

������������� �����

���� ������������

Story #1

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Story #2 Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

���!������#�

Task: Configure database and SpaceIDs for Trac

Owner: SanjayTime Remaining:4 hrs

Page 17: Agile Intro for FCL
Page 18: Agile Intro for FCL
Page 19: Agile Intro for FCL

� Product showcasing is displaying working software� Involves the customer� Review the iteration goals� Were they achieved� Review iteration backlog� Review acceptance criteria

� Seek customer feedback� Nominate a different team member for each showcase

(spread the knowledge)

Page 20: Agile Intro for FCL

� What went well� What didn’t go so well� What can we do better� What are we going to implement in the next iteration (assign

these to owners in the team)� Issues to escalate to the scrum master� Actions

Occur after every iteration (minor retrospective with the team)Major retrospectives can occur after every 3rd iteration and can involve

the customerThis is an opportunity to share ideas for improvement.This is NOT an opportunity to whinge…

$ ��������������

���� %� ���������

Page 21: Agile Intro for FCL

UNINTERRUPTED FOCUS TO COMPLETE ITERATIONS

•Daily stand-up•Design sessions•Real time progress view from a team perspective•Showcase•Retrospectives

Transparency – Storyboarding• Planned, In-progress, Test, Done• Real-time burndown – updated daily• Look at managing dependencies using KANBAN ?• How to manage impediments? – backlog or tax

Scope

Actual Velocity

Planned Velocity

Reporting drawn out of Jira

Page 22: Agile Intro for FCL

Velocity – WoL reporting & predictability

•Rolled up iteration reporting against WoL product backlog•Realtime project reporting against plan•Trend forecasting - forecasting•Stage gating – i.e. burndown tracking against specific milestones (set as part of epic-level estimating)•Can consume additional scope depending on velocity & business value (zero cost change)•WoL tracking – overall number of stories/epics to be delivered against current WoL delivery plan

Page 23: Agile Intro for FCL

� Meeting between the scrum-master and the project delivery partner and other key resources

� Generally twice weekly� Generally used on large projects with multiple scrums� Great way to manage interdependencies between scrums or

non-Agile projects� Similar to a stand-up� More project management focused� Review impediments that can’t be managed at a scrum-

master or sprint level (key risks/issue review)� Validation of overall program velocity vs release roadmap

Page 24: Agile Intro for FCL

EPIC

EPIC

•Storys

DecOctSepAugJulyJuneAprilMarchFebJan May Nov

•Storys

EPIC

•Storys

•Storys

EPIC

Regular release planning based on planned velocityPredictive planning based on actual delivery capabilityReviewed and adjusted regularly in consultation with the businessGenerally delivery is prioritised by business value

1 2 3 4

Page 25: Agile Intro for FCL

� Collaboration� Whiteboards� Wiki – share and update stories

� Continuous Integration (Hudson)� Automated testing� Automated Unit testing (xUnit)� Automated Regression testing

� Scrumworks/Jira for product backlog tracking

Page 26: Agile Intro for FCL

Committed Stakeholder – Business Buy-in

High performing technical teamsHire the right people (collaborative self starter, change adopters and drivers

Roles & Responsibilities – SCRUMProduct owner – business representativeSCRUM MasterTeam – cross-functional (no egos)Project Management/Governance (optional)

Manageable technical debtContinuous integration/build – Hudson Automated testing – Unit, RegressionTest driven development – quality in the hands of the teamDevelop to test scenarios – robust software

Page 27: Agile Intro for FCL

Dependency management‘Agile up’ – taking into account various other influences within the Agile environmentNon-Agile teamsTechnical Debt – Infrastructure, Architecture, SupportOther projectsBusiness process tuning (i.e. change processes etc…)

Acknowledgement of a “Lean” documentation approachWiki’sReduced heavy documented templates for reqs capture etc..Story cards

Access to resources whom are versed and knowledgeable with iterative deliveryA coach will be the difference between success and half baked implementation of

Agile


Recommended