Agile Scrum Class
About me Tentang Saya
Eric Lee
CSM, CSP, CSPO, PMP, PSM I, PSM Trainer Founder of AgileView Based in Sydney, Australia
Software for career People for work Training for life
Support Operations Project Management Scrum Master Agile Trainer 2
Learn about Agile, Scrum
Why are we here?
1. Start with Agile 2. Kanban 3. Scrum Over the next 2 days • Workshop style • Group Exercises & Sharing • Targeted knowledge for Developers & those interested in certification
3
Day 1 Sessions
9 - 10:30
Agile Basics
10:30 - 10:45
Morning Break
10:45 - 12:00
Agile Team, Product
12:00 - 1:00 PM
Lunch
1:00 - 3:00 PM
Kanban
3:00 - 3:15 PM
Afternoon Break
3:15 - 5:00 PM
Scrum Events 4
Day 2 Sessions
9 - 10:30
Scrum Artefacts
10:30 - 10:45
Morning Break
10:45 - 12:30
Scrum Roles
12:30 - 1:30 PM
Lunch
1:30 - 3:15 PM
Scrum Values & Dev Role
3:15 - 3:30 PM
Afternoon Break
3:30 - 4:30 PM
Interactions 5
Why are we here? 1. Discuss in pairs (2 people) - 1 minute > Agree on 3 things, write them down 2. Discuss amongst your table - 2 minutes > Agree on 3 things, write them down 3. Discuss as one room - 4 minute > Put up the written items
If you only learn 3 things... ● Practical ● Use it every day! ● Techniques Agile teams have found very useful
Even today and tomorrow!
Time Boxing Set a time limit on a task, meeting & achieve a goal ● Encourages Critical Thinking ● Avoids sinking into a blackhole ● Limit impact of time consuming task
8
Coming to a halt ANYONE can raise their hand, signal to halt or ask a question â—? Limiting to 1 person talking at a time â—? Visual cue to signified time to stop
9
Taking it Offline When discussion gets off topic or irrelevant for some of those present ● Anyone can call for ‘taking it offline’ ● Get back on track Those that needs to talk more, can, after the meeting themselves 10
Agile - Basics ● ● ● ● ●
Agile Basics, Agile Values Agile Principles Why Agile, Waterfall vs Agile Benefits of Agile Scrum and Kanban high level
Not too long ago We thought doing work will be like this
12
We ended up like this
13
Where did ‘Agile’ come from ?
Early 2000 “The Agile Manifesto” was written
14
The Agile Manifesto
4 Agile Values
“We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:�
Individuals & Interactions over Process and Tools Working Product over Comprehensive Documentation
Nilai
Customer Collaboration over Contract Negotiation Respond to Change over Following a fixed Plan Agile Manifesto
15
1. Satisfy the customer through early and continuous delivery of valuable work.
12 Agile Principles
2. Welcome changing requirements, Agile processes harness change for the customer's competitive advantage.
Prinsip
3. Working software (product or service) is delivered frequently, with a preference to the shorter timescale. 16
4. Business people and developers must work together daily throughout the project.
12 Agile Principles
5. Build projects around motivated individuals Give them the environment and support they need, and trust them to get the job done.
Prinsip
6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. 17
7. Working software (or product / service) is the primary measure of progress.
12 Agile Principles Prinsip
8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. 9. Continuous attention to technical excellence and good design enhances agility. 18
10. Simplicity, the art of maximizing the amount of work not done is essential.
12 Agile Principles Prinsip
11. The best architectures, requirements, and designs emerge from self-organizing teams. 12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. 19
agile ˈadʒʌɪl/ adjective 1. able to move quickly and easily. 2. relating to a method of project management, used especially for software development, that is characterized by the division of tasks into short phases of work and frequent reassessment and adaptation of plans. 20
How Agile are you? (10 min) With your table, referring to list of Agile Principles (or the drawing) Do you / your project / business / product practice any of the values or principles? Volunteers to share
Agile what is it
Apakah itu Agile?
agile ˈadʒʌɪl/ adjective 1. able to move quickly and easily. 2. a method of project management, with division of tasks into short phases and frequent review followed by adaptation of plans.
22
Agile what is it
23
What are the benefits? Keuntungan
Benefits of becoming good at Agile Faster ROI / more success / more wins!
Agile Why do it
Speed to market Greater market share More revenue realised for money spent Laba dari Investasi lebih cepat mencapai market 25
Happy Customers
Agile Why do it
Better Customer Satisfaction & Business Engagement Pembeli senang / puas
26
Reduced Risk
Agile Why do it
Smaller pieces of work = smaller risk = easier to manage / lower impact Mengurangi resiko 27
Better Quality
Agile Why do it
More time is spent testing Testing scope is smaller but more frequent Kualitas yang lebih baik
28
Everyone is more involved
Agile Why do it
Drives Team Work & Collaboration & More manageable/smaller deadlines Kerja sama yang lebih baik 29
More Enjoyable Workplace Much more predictable
Agile Why do it
Better commitment More success, more frequently Tempat kerja yang lebih baik Mempertahankan karyawan 30
Exercise (15 min) Which benefits do you think is most important & Why. 1. 2. 3. 4.
Discuss as a team, take turns Decide as a table which is most important Write up why it is the most important One person present for team
And more…
Version One State of Agile 2017
32
Agile vs Waterfall / Tangkas vs Air terjun
Waterfall vs Agile ujung ke ujung
34
Waterfall project experience (10 min) Create a list of issues with doing things in a sequential order. Issues you have seen in a waterfall project‌
Iron Triangle / cangkupan, sumber daya, waktu
36
Agile vs Traditional Kemampuan adaptasi, Nilai bisnis, Resiko
37
Best fit process What’s the best process for a task that is Proses yang sesuai untuk projek yang tepat
• • • •
Obvious Chaotic Complicated Complex
38
Agile product / project Produk Agile
The need of Agile Product Kenapa membangun produk Agile
40
Minimum Viable Product produk dengan fitur minimum yang memiliki nilai yang diterima pasar 41
Evolve a product / Perubahan / evolusi produk
42
Increment / Penambahan bertahap
43
Iterate / ulangi
44
In Agile, we try to Iterate & Increment Lakukan keduanya
45
Inspect & Adapt Periksa dan adaptasikan sebuah produk
46
How is Success Measured?keberhasilan suatu produk, projek
Being Agile helps you target these! 47
The World is adopting Agile Agile semakin banyak dipakai
Agile Companies / Perusahaan teknologi
49
Agile Companies Pemerintah, Riset, manufaktur
50
Use it at home
51
52
● Must Inspect & Adapt, enemies, avoid, eat dots ● Helps to Divide & Conquer minimise length travelled ● Require transparency Intersections, dot locations ● Make smaller decisions but more frequently 53
Agile mindset Pola pikir Agile
Agile Team Mindset Pemikiran Agile
Agile
Old
Here’s what I think we should do
Just tell me what to do, and I’ll do it
I’ve done my part, what can I help with
I’ve done my part, you finish yours
We know the product, we have the answer
Ask the boss, he has the answer
How can we get better
We’re doing fine
What do we need to do
We can’t do that here! 55
What we want is Less like this Tidak mirip seperti ini
56
More like this What does Agile REALLY Look like? Keliahatan seperti ini
57
Agile Frameworks More of… Kalian akan menemukan
● Team collaboration ● Open-ness ● More ‘Work the problem’ ● More frequent, shorter meetings ● Finding things wrong! 58
Exercise (5 min) Characteristics of Great Teams True or False 1. They trust one another 2. They commit to decisions, plans and actions 3. They focus on achieving individual results 4. They avoid conflict 5. They listen to the most experienced team member 6. They enagage in unfiltered conflict around ideas
What’s being practiced?
Scrum 68% Hybrid (Scrumban) 8% Custom 8% Kanban 5% Others 11%
Version One State of Agile 2017
60
Kanban & Scrum Cara mana yang paling baik?
Depends on
Agile Frameworks
• Team size • Type of work • Frequency of change • Existing team process 61
Agile Frameworks Which one do we choose?
Tergantung, tapi mari kita coba dan adaptasi
Learn what it means first! Inspect & Adapt Change if we have to! • Scrum: ‘Development’ not necessarily code • Kanban: Process, Business teams, Support, DevOps 62
Agile Frameworks Banyak sekali pengetahuan
63
Kanban Framework
Kerangka kerja Kanban
Kanban Apakah itu Kanban?
kanban [kahn-bahn] noun 1. a just-in-time method, originally developed in Japanese automobile factories. 2. kan = look, ban = board 3. Bulletin board
65
This is a Kanban Board / Ini adalah papan Kanban
Kanban Kanban Practice
Columns to indicate status Kanban Board = Dashboard 66
This is a Task / Ini adalah tugas
Kanban Kanban Practice
Anyone can write up tasks, post it up at any time ‘Progress’ the task to indicate status 67
Exercise (10 min) Project Bake a cake! In your groups, use the post-it notes and 1. Write up tasks to bake this cake --------> 2. Create a Kanban Board ready to start!
What are the differences?
Kanban Task Mgnt
Papan - papan yang berbeda
What other changes can you suggest? 69
Kanban Principles
1. 2. 3. 4. 5. 6.
Start with what you have Visualise the Workflow Limit Work in Progress Manage Flow of Work Make Process Policies Explicit Improve Collaboratively 70
Kanban does NOT impose any rules nor processes
Kanban
Start with what you have
Don’t change anything ‘because Kanban said so’ There is no criteria that makes a team ‘Kanban’ So the question should be… How agile is the team? 71
agile ˈadʒʌɪl/ adjective 1. able to move quickly and easily.
Agile what is it
2. relating to a method of project management, used especially for software development, that is characterized by the division of tasks into short phases of work and frequent reassessment and adaptation of plans. 72
Team to review everything that needs to be done to deliver a feature
Kanban
Visualise the Workflow
Organise by 1. priority 2. sequence 3. value to be gained Tasks Flow • Priority is Top -> Down • Flow is Left -> Right *Use different colours to highlight tasks 73
Kanban tasks should be Small enough to see progress periodically
Kanban
Visualize the Workflow
Broken down so it can be done by 1 person Grouped & Ordered (eg. due dates) Similarly sized (duration)
74
Exercise (10 min) Project Bake a cake! Continued In your groups, re-organise your board 1. Re-Write large tasks into smaller ones 2. Bonus points if you take into account duration of task and make them roughly the same 3. Prioritise and order everything
Kanban
Limit Work in Progress
As Kanban Board is a Dashboard, we don’t want to see (Team needs to be self aware) . .
76
Focus a. On fewer items b. Work on highest importance tasks Always ask
Kanban
Manage the Flow
Instead of starting a new task - can you help someone else complete their higher importance (to the project) task faster?
77
Kanban
Manage the Flow
Blockers a. Use colours to highlight b. Try and solve these constantly as a team c. If we don’t clear these, they build up to eventually grind team to a halt
Always ask Instead of starting a new task - can we address / followup on a blocked item? 78
We want to manage the flow of tasks 1. Progress (Manage the Flow) a. Update status frequently & consistently b. Write smaller tasks
Kanban
Manage the Flow
2. Focus (Limit Work In Progress) a. On fewer items b. Work on highest importance tasks 3. Blockers a. Use colours to highlight b. Try and solve these constantly 79
When do you release in Kanban? Every piece of work contributes to the whole So, Any time!
Kanban Kanban Flow
Task • Creation • Progress • Completion
80
Kanban Boards Demo / Demonstrasi https://trello.com/b/f3rG7QAe/kanban-board-demo
Kanban Boards Applied in Non IT https://www.youtube.com/watch?v=ovBEHduSudk
Create Your Own Kanban Board (20 min) + (10 min) Now that you know what Kanban is… 1. Think of a project you can use Kanban on 2. Create a backlog of To Dos, Prioritise the backlog 3. (10 min) - Review each other’s board Some ideas: A Kanban board to… Renovate your house | Plan a holiday | Fix the bike
Put team working policies in place Write them down & display them!
Kanban Explicit policies
For example 1. Individual & Team Agreements a. How work is done (by People) b. How work is really done (following Process) c. How work is really really done (with Tools) 2. Commitments , Social Contracts a. Technical standards b. Industry best practices c. To complete the task to team’s best ability 83
Create a Social Contract Example No name calling Listen to everyone Only 1 person talks at a time Work the problem Only Scrum Master is allowed to interrupt Never start a new task if ‘x’ is already in progress Respect each other’s input
Suggested Meetings 1. A weekly meeting (as long as it takes), same place, same time to review & prioritise tasks for the week 2. A daily (15 min) meeting to talk about any blockers & choosing tasks
Kanban Explicit policies
#Teams are encouraged to have adhoc discussions on the floor during the day #Review process when required and adapt 85
Improve, All the time! Anyone can raise an idea for improvement at any time
Kanban
Improve collaboratively
>> Stop work, inspect, plan, implement << Regular reviews of process should be set up (or carried out as needed) in order to Review People, Process, Tools Experiment 86
Kanban Framework
Rangka kerja Kanban
87
Create Your Own Kanban Board (20 min) + (10 min) Now that you know what Kanban is… 1. Think of a project you can use Kanban on 2. Create a backlog of To Dos, Prioritise the backlog 3. (10 min) - Review each other’s board Some ideas: A Kanban board to… Renovate your house | Plan a holiday | Fix the bike
Agile & Kanban Word Cloud (10 min) 1. Brainstorm (try not to look at the material) at your table for keywords relating to Kanban 2. Draw up a cloud and create a word cloud
Scrum Framework
Scrum
Scrum
noun: scrum; plural noun: scrums RUGBY - an ordered formation of players, used to restart play, in which the forwards of a team form up with arms interlocked and heads down, and push forward against a similar group from the opposing side.
91
Scrum 1. 2. 3. 4.
Roles Artefacts Events Values
92
Scrum â&#x20AC;&#x153;A framework within which people can address complex adaptive problems, while productively and creatively delivering products of the highest possible value.â&#x20AC;? - the scrum guide http://www.scrumguides.org/scrum-guide.html
93
Empirical Process (opposite of) â&#x20AC;&#x2DC;Definedâ&#x20AC;&#x2122; Process 94
95
Mechanics of Scrum
Scrum
• • • •
3 Roles 3 Artefacts 5 Events 5 Values
Project : Build a Zoo 96
Scrum Team (3 Roles)
97
Scrum Roles Product Owner 1 Person, spends time between â&#x2014;? Requesters (what is desired) â&#x2014;? Team (how it will be built) Captures detailed requirements -> Stories Maximises value of the work (direct team to work on most valuable stories) Always available to team & management Accountable for the success of the product
98
Scrum Artefacts Product Backlog Ranked list of changes required Anyone can write/request (feature, bug, feedback) Prioritised by Product Owner Constantly changing & evolving
Continuously detailed/fleshed out as work is done during a â&#x20AC;&#x2DC;Backlog refinementâ&#x20AC;&#x2122; meeting
99
Product Owner & Product Backlog Simulation (15 min) In your groups, 1. Select a Product Owner / the rest will be Expert keepers for a selected animal 2. Expert animal keepers to think about what to build to keep that animal eg. a platypus needs a pond, flowing water, rocks and tree branches to swim 3. Everyone write up 5x ‘To Do’ requirements (onto post-its) 4. Product Owner to collect & talk with experts to understand each requirement 5. Product Owner to prioritise the zoo’s ‘Product Backlog’
Scrum Roles The Team - Structured & empowered to self manage Helps Product Owner ● Understand technical items ● Break down requests into smaller ones ● Prioritise the Product Backlog Gets to decide on how work is to be done Participates in all scrum activities No division of ‘Developer’ and ‘Tester’ Holds each other accountable, more on this later
101
Backlog Refinement Meeting A meeting attended by Scrum Team Run by Product Owner Opportunity to understand future work Review Product Backlog Items Break down into smaller items +Story Point Once every 2 weeks
102
Backlog Refinement includes: • Order the Backlog • Removing or demoting items • Adding or promoting items • Splitting items into smaller items • Merging items into larger items • Story Pointing / Estimating items 103
Scrum Artefacts Story Writing
Has context Has Acceptance Criteria Has Story Point & Estimation 104
Acceptance Critera
105
Story Point Story Pointing is a relative value system used to MEASURE how CONFIDENT they are with the task asked Large number means we need to discuss more, break it down Smaller number means we understand it enough to ‘go & do it’ It should NOT be effort (hours, days) based 106
ed
ck Ba nt
ry Sto
me fine Re
The Iceberg
Po
int
Ready for Sprint
log
Estimated
107
Story Point Poker Setting the baseline (Once in a long while) 1. Select a Story criteria (Complexity, hours, or all of the effort) 2. Select a Story that is a ‘1’ point (Or T-shirt size XS) 3. Assume subsequent story points are based upon that story being a ‘1’ pointer 4. When ‘Story Pointing’, Ask: is it 2x, 3x, 5x, 8x, >13x? 5. Team agree on when a story is larger than ‘x’ it should be broken down Actual Story Pointing (Done at Backlog Refinement or Planning) 1. Product Owner describes the requirement 2. Team discuss and confirms requirement 3. When team is ready to story point 4. Everyone shows card/fingers on count of 3 5. People on extreme ends talk about why (improves understanding) 6. Everyone re-vote until we arrive at same point GOAL: Decide if stories needs to be discusses further & indicate if team understands the work.
108
‘Spike’ it up! A Time-box story to do some research As we don’t know what we don’t know - so rather than story pointing or estimating an unknow piece of work, we write up a ‘Spike’ to go and learn about the task/technology/knowledge/tool/process. The outcome of a spike enables us to then story point.
109
Backlog Refinement & Story Pointing Simulation (15 min) In your groups, 1. 2. 3. 4.
Same Product Owner / Rest of team will now be The Team Take the â&#x20AC;&#x2DC;to doâ&#x20AC;&#x2122; stories written up and simulate a Refinement meeting Story Point the 5 highest priority tasks Write down the t-shirt size on top right (XS, S, M, L, XL, XXL, Too large)
Scrum Events The Sprint
Goal: Produce an increment of product that is potentially releasable A Sprint is a time-box, 1-4 weeks in length, should not change length Team has to ● Add feature, fix issue, improve usability etc ● Do all work needed to have a ‘ready product ● Includes any verification, testing, reviewing ● Participate in Sprint event contained within 111
Scrum Events Sprint Planning Meeting Goal: Decide / negotiate the Product Backlog Items to work on for the coming sprint Team has to have ● Understanding of request / story ● Confidence on what needs to be done ● Agreement with Product Owner Product Owner has to ensure the committed PBIs will be the best way to spend ‘the team’s time’ Consider Holidays and other interruptions, reduce scope appropriately
112
Scrum Artefacts Sprint Backlog Team then breaks down PBI into smaller tasks if necessary during Planning meet The list of tasks are called â&#x20AC;&#x2DC;Sprint Backlogâ&#x20AC;&#x2122; It is everything The Team needs to do during sprint If needed - Team can then further break down story into subtasks & estimate the work
113
Estimation (optional) 1. At the Sprint Planning Meeting, when PBI is accepted into Sprint, the Team breaks it down into Sub-tasks 2. Add hour estimation to each of these at this time Estimation (Done towards the end of Sprint Planning) 1. The team can allow the person that will most likely work on the task to provide hour estimation GOAL: Hour estimation at this time allows team to decide if it is indeed possible to complete the work or not 114
Sprint Planning Simulation (15 min)
In your groups, 1. Same Product Owner / Rest of team will now be The Team 2. Do a Sprint Planning Meeting. a. Select PBI to be done in â&#x20AC;&#x2DC;xâ&#x20AC;&#x2122; amount of time, negotiate! b. Break down PBI into smaller tasks if needed, add estimation (hours) c. Finalise on your Sprint Backlog
Levels of Team Commitment At the end of Sprint Planning, the team commits to delivering everything negotiated to the Product Owner The team is held accountable on how much is actually Done / measurement of team performance
116
Scrum Artefacts Sprint Backlog Progress is updated to these tasks Visible on ‘the Board’ During the Sprint the end date and scope needs to be ‘protected’ by Everyone Otherwise team can’t achieve what’s been committed
117
Scrum Events Daily Scrum Meeting During the sprint The Team meets daily to review Sprint Backlog Team plans how to spend their day / work on most important â&#x20AC;&#x2DC;nextâ&#x20AC;&#x2122; task in list Blockers the team can not solve are raised Team should scrum!
118
The 3 Questions Often the Daily Scrum is referred to as the Daily Standup A meeting where people stand and answer ‘3 questions’ It needs to be noted that this practice is NOT BEST PRACTICE
119
This is NOT how you conduct a Daily Scrum
120
Scrum Roles Scrum Master Is the Scrum process owner Facilitates / ensures meetings are done Instigate progress Remove Blockers Protect the team Keeps team focused
121
Q: How do you respond in each case?
Interruptions During the Sprint
A. You spot a manager from Support area asking a developer about a production defect, he would like it be fixed immediately. B. Management thinks that the sprint is not going as planned - Asks you to organise a meeting with the whole team to discuss. C. You have been asked to attend a meeting with a potential client the same time Backlog Refinement meeting for your team is on.
Progress Blocker When you encounter a blocker
123
Progress Blocker • Do something different (be creative) • Get help from outside (ask the team, ask another team • Reduce Scope (save what’s left) • Cancel Sprint (understand what happened, regroup, restart) 124
This is a Scrum Board (looks familiar?)
Scrum Board
As each day progress, tasks moves left to right
125
Scrum Artefacts Sprint Burn Down Is a graph, shows closing of tasks in Sprint Backlog Natural result of team working on tasks Gives you an idea of how team is getting through the Sprint Backlog
126
Daily Scrum Simulation (15 min)
In your groups, 1. 2. 3. 4.
Do 5x Daily Scrum Meeting ***Impediment/blocker/interruption occurs*** wait for me to come around Progressively move tasks to â&#x20AC;&#x2DC;Doneâ&#x20AC;&#x2122; Draw up a Burn Down Chart!
Scrum Artefacts Product Increment End of Sprint - everything that is ‘done’ goes into the ‘Product Increment’. aka End of Sprint ‘build’. The build should have been well tested, ready for deployment The product Owner can choose to release it
>>>> But wait….is it REALLY Done?
128
DoD Definition of Done is an understood level of completion between everyone
DoD of a Story - Example • Quality of work - all code has been peer reviewed • Conforms to agreed coding guidelines • high-level design should be documented • Component tested where possible • Automated as far as possible • Code should be covered by integration tests • What we build shouldn't break other parts of the system • Meets acceptance criteria • Acceptance criteria verified by the PO DoD of a Sprint - Example • Code quality • TFS component test coverage of >80% • Integration tested for completed features Dod of a Release - Example • Deployed to integration test environment & passed integration tests • Fitness for Use - Have we built enough value to justify releasing it? 129
Scrum Events Sprint Review Meeting Team / PO / SM to meet with stakeholders at end of every sprint Goals is to ● Update/show/demo the ‘Finished work’ ● Account for unfinished work, ask for mgnt help ● Collect feedback from everyone, goes into Product Backlog. Unfinished work goes back into Product Backlog
130
Scrum Events Sprint Retrospective Meeting Meeting for the Scrum Team to discuss how to improve itself, typically Managers don’t attend ● People / Team (& inter-team) ● Process ● Tools Questions to ask if no one speaks up ● What’s worked ● What hasn’t worked ● What will we change from next sprint
131
Action Items and Tracking improvements As a retrospective may reveal too many issues rather than tackling it all, it is recommended to tackle 1-2 each sprint
Sprint Retrospective
The remaining items can go into an Improvement Backlog tracked and reviewed by team at every Retrospective
132
Sprint Review Simulation (10 min)
In your groups, 1. Do a Sprint Review with team ( 5min) a. Any product feedback ? write them up and add to PB 2. Do a Sprint Retrospective (5 min) a. Are there People, Process and Tools improvements to be made?
Your team has just completed a Sprint!
How many items did your team complete?
2? 5? 20?
Velocity
• You can not compare one team to another • You can compare one sprint to another The number of items (or their story points) averaged across a handful of sprints will give you an idea of the ‘velocity’ of the team Team can project forward based on same conditions, the ‘product’ can be ready ‘x’
135
136
Sprint 2 Simulation (5 min) Project Build a Zoo - Sprint 2 In your groups, 1. Do another Sprint Planning Meeting! a. Select PBI to be done in â&#x20AC;&#x2DC;xâ&#x20AC;&#x2122; amount of time b. Break down PBI into smaller tasks if needed c. Finalise on your Sprint Backlog
Sprints should be considered time-boxes
When does Sprint End/Start?
• • • •
So it starts and ends on a definite date No extensions! As one finishes, the next one starts It’s ok to have Planning straight after, or next day
138
Scrum Re-cap
Scrum
5 Events/Ceremonies 5 Values 3 Roles 3 Artefacts (plus burn down) Q: Recall the name for all the pieces
140
Exercise (10 min) Scrum Role Silhouette 1. Work as a team 2. Line up the correct responsibilities to the role
Exercise (5 min) Scrum Artefact Word Puzzle 1. Work as a team 2. Line up the correct description to each Artefact
Remember...
Scrum Artefacts
Always visible Always up-to-date Always transparent
143
Exercise (5 min) Draw your own Scrum Events in sequence 1. Use a fresh piece of paper 2. Work INDIVIDUALLY 3. Re-draw the sequence of Scrum Events in order (draw it up differently)
Sprint Planning • Once per sprint, 4 hrs max for a 2 week sprint • Attended by The Team, PO, SM, other Dept rep
Scrum Events
Daily Scrum • Same place, same time, every day • 15 minutes max (don’t ‘fix’ in this meeting) • Attended by The Team (PO, SM occasionally) (Backlog Refinement) • Once per sprint, Duration as long as needed • Run by the PO, attended by The Team Sprint Review • Once per sprint, 1 hrs max for a 2 week sprint • Attended by The Team, PO, SM, other Dept rep & Stakeholders Sprint Retrospective • Once per sprint, 1 hrs max for a 2 week sprint • Attended by The Team, PO, SM 145
Scrum Values
146
Self-Organising Teams
Scrum Team
• • • • • • •
Decides how to do the work Decides who does the work Decides how much work is committed Committed to completing work Takes responsibility on quality (everyone!) Accepts work from the Product Owner Manages Scrum process if no one else there 147
Dev Team Role In-Depth
Scrum Roles The Team Structured & empowered to self manage Helps Product Owner ● Understand technical items ● Break down requests into smaller ones ● Prioritise the Product Backlog Gets to decide on how work is to be done Participates in all scrum activities No division of ‘Developer’ and ‘Tester’ Holds each other accountable
149
Scrum Team
150
Works in unison to ensure Sprint is productive
Product Owner & Scrum Master
Product Owner - Ultimate ownership of productâ&#x20AC;&#x2122;s success. Communication channel to/from Team Owner of Backlog (Create, detail, prioritisation) Scrum Master - Ultimate ownership of agile processâ&#x20AC;&#x2122; success. Operates within Team to make sure processes are followed and improved Owner of Agile Process (Observe, suggest, experiment) 151
Team Role Responsibilities
Exercise (10 min) Team Responsibilities
Draw / write a teamâ&#x20AC;&#x2122;s responsibilities
Hint: Check previous dayâ&#x20AC;&#x2122;s content
1. Deliver the right solution 2. Deliver it in the right timing 3. Scrum to get it all â&#x20AC;&#x2DC;Doneâ&#x20AC;&#x2122;
154
Team Responsibilities Deliver the right solution What is the problem? â&#x20AC;&#x2DC;Get to airport fastâ&#x20AC;&#x2122; 155
Team Responsibilities Deliver it in the right timing Gradual improvement â&#x20AC;&#x2DC;Get to airport fast ...faster ...fastestâ&#x20AC;&#x2122;
156
Team Responsibilities
Scrum to get everything done Utilise the team efficiently 157
During the Sprint
1. ● ● ● ●
Focus Scrum on Sprint Backlog Work on the highest priority item Ownership till it is ‘Done’ Raise issues with rest of Team
2. Ensure work is of high quality ● Execute per agreed ● Meet the Definition of Done ● Have it signed off PO: Work on Product Backlog SM: Observe the team and make notes 158
Q: How do you respond in each case?
Interruptions During the Sprint
A. You spot a manager from Support area asking a team member about a production defect, he would like it be fixed immediately. B. Management thinks that the sprint is not going as planned - Asks you to organise a meeting with the whole team to discuss. C. You have been asked to attend a meeting with a potential client the same time Backlog Refinement meeting for your team is on. 159
The Product Owner will present stories that they need your help to understand, discuss, break down more
Backlog Refinement Meeting
Goal is to break down and make sure there are enough stories ahead of the next Sprint Planning If not sure, write up a â&#x20AC;&#x2DC;Spikeâ&#x20AC;&#x2122; story PO: Run the meeting SM: Observe and Ask Qs re Story Pointing 160
1. Account for Sprint Backlog ● Done Stories ● Unfinished Stories
Sprint Review
2. Present completed features (real value) ● Never show ‘just one bit’ of the flow ● Encourage Team to self-organise & decide who will present the features ● Even if it’s research, show results SM: to facilitate PO: to round off the rough edges 161
!!! Provide a safe environment !!!
Sprint Retrospective
1. Team to go first ● Encourage participation ● Give opportunity for everyone ● Encourage self-solving of problems 2. Raise your observations ● Offer chance for team to address ● Maybe it’s not a problem ● Build a backlog for Improvement? PO: Participate as a team member SM: Participate and facilitate meeting 162
Team Member Role Skills and Characteristics
T-shaped People Deep level of expertise
Wide breadth of understanding
164
T-shaped People
165
Exercise (5 min)
How T-Shaped Are you? Write down your wide ranging skills and knowledge as well as in-depth expertise
Cross Functional Team
167
Cross Functional Team ● Has all the skills needed to deliver end-to-end ● Self organised and accountable for the work ● Team members are dedicated ● 3-9 people that are highly collaborative & empowered 168
Exercise (5 min) What is the shape of your team?
Draw up how your team is shaped Or Draw up how your ideal team should be shaped
Pull, not Push
170
Burn Down ● Everyone needs to be aware/reviewed daily ● Shows how the team dealt with closing of the sprint backlog ● Sprint ‘Heart beat’ ● Outcome of team doing the work
171
Interactions
With Product Owner 1. Helpful
2. Explain
3. Listen
4. Propose
173
With Scrum Master 1. Open Transparent
2. Process
3. Experiment
4. Notify
174
With Each Other 1. Be passionate about the product 2. Listen and talk / collaborate with team mates 3. Focuses and works on items in priority order 4. Be proactive and think ‘team’ 5. Loves to ‘work the problem’
175
Professional Certification
Scrum.org Professional Development Paths
177
Further Reading
Further Scrum Reading
179
This is the beginning of your Journey
Eric Lee Founder and Principal Trainer CSM, CSP, CSPO PSM I, PSM II, PSM TTT PSPO I SAFe Agilist
Contact Details www.agileview.com.au eric@agileview.com.au +61 433 110 388 Australia +65 815 555 97 Singapore, Malaysia, Indonesia, Taiwan & Hong Kong
Advance concepts and terminologies
Definition of Done
183
Technical Debt When programming, using easiest short cut instead of best solution. Adding unstructured code, adds to clutter and makes future improvements more and more difficult. 184
Cost of Tech Debt
185
Different levels of Agile Testing 1. Unit Test: Testing at Code level Tester -> Developer to make effective unit Dev tests 2. Acceptance Test: Testing at Feature level Developer -> Tester to perform QA acceptance tests 3. Integration tests and Regression tests: Testing at Product level Performed by automation 4. Additional tests carried in different environments as required 186
Exercise (5 min) How do you test your work?
Letâ&#x20AC;&#x2122;s brainstorm ideas on how we can test a task/project. eg. Get a customer to try it out...
1. Local Environment Individual Developer to make local changes 2. Continuous Integration Environment / CI Team to put together their changes in one place 3. Engineering System Test 1 / 2 Environments Team test product against Future / Current versions 4. Staging Environment A Production - like environment
More Production Like
Using Environments
188
Other engineering practices ● Coding standard ● Regular Refactoring ● Continuous Integration / Continuous Deployment ● ‘DevOps’, ‘Sustained Engineering’ ● Ship-It Day / Innovation Day 189
Exercise Practice 5 Iteration/increments Your project is to ‘get to the moon’ How can you break this project down to 5 iterations? Draw up your products at each stage
Distributed Scrum
Distributed Teams Same process as single scrum team, but adjusted to minimise issues caused by distance. Key points 1. Enabling Communication 2. Build Trust There are no guidelines, but inspect and adapt 192
Distributed Teams Communication through cultural differences Spending time with each other, talk face to face helps Product Owner to be open and honest with team, and ask team to do the same. Anyone in the team should feel comfortable to speak up 193
Exercise (5 min) Communication through cultural differences 1.
East: ‘We have a bit of concern…’ Western interpretation: >>>
2.
West: ‘The situation is a disaster!’ Eastern interpretation: >>>
Distributed Teams Build Trust Team needs to always come together At start of project, at end of project & in between as often as possible Shows team how important their project is, starts team off with correct context and clear direction $ A team of 4 that communicates well > a team of 5 that doesnâ&#x20AC;&#x2122;t
195
Distributed Teams Real test of a teamâ&#x20AC;&#x2122;s trust is when an issue is found. If a critical issue is found... How should the Product Owner respond? How should the team respond? 196
Exercise (10 min) Can you think of ways to improve communication or build trust? Everyone share with table - What are some things you have seen/practiced in the past that has helped with communication? One person to present 1 idea per table
Distributed Teams Ideas to help improve communication & build trust ● ● ● ● ● ● ●
Invest in Webcams and encourage everyone to use Setup a Scrum room - with PC, phone etc Create a Team contact list Clearly detail the Product Owner’s availability Get some clocks! Create a Team Agreement for meeting etiquette Practice Time Boxing and Taking things offline 198
Distributed Scrum ● There is no best sprint length ○ > Pros and Cons of a short/long sprint ● Rotate and share ‘odd hour meetings’ ● Proxy Product Owner? ● Local Scrum Master vs Team to self manage? ● Scrum of Scrum Teams? ● Avoid specialising one team on one component ● Share knowledge and capabilities across teams 199
Eric Lee Founder and Principal Trainer CSM, CSP, CSPO PSM I, PSM II, PSM TTT PSPO I SAFe Agilist
Contact Details www.agileview.com.au eric@agileview.com.au +61 433 110 388 Australia +65 815 555 97 Singapore, Malaysia, Indonesia, Taiwan & Hong Kong