Achieving Predictability with Agile - Doing Scrum in a complex multi-disciplinary environment - Elbit Case study
By Gil Ari @ AgileIL12
http://agilesparks.com/ElbitCaseStudy-GilAri
6. The Project - Complexity
System of Systems
Lots of interfaces
Multidisciplinary:
Pilots
System
Software
Think A Head
7. SCRUM Team - Concepts
Working Software
Predictability
Definition Of Done (DoD) for each US
Done is Done – no bugs
Team Commitment – as many US per PO priority
Early Feedback
Measure the team, not the individual developer
Think A Head
9. End to End Flow
Discovery Team
Manages the
end-to-end flow
(using Kanban)
Scrum Team
Manages the
development per
iteration
Think A Head
10. Kanban – managing the end to end flow
Visualize the workflow Pioneered by
Limit WIP (work in progress) David
Anderson
Measure & optimize flow in 2004
Explicit policies (definition of Done, WIP limits, etc)
Backlog Dev UAT Deploy Done
5 3 2 3
orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit orem ipsum dolor sit
orem ipsum dolor sit
amet, co nse ctetur amet, co nse ctetur
amet, co nse ctetur
orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit
amet, co nse ctetur
orem ipsum dolor sit
amet, co nse ctetur
FLOW 12
Avg lead time: days
Think A Head
11. End to End Flow – The States
Backlog New
Discovery Scrum
Analysis Selected Ready Story
Elaborating Elaborating
Development
In Process Done
(SCRUM)
Acceptance Free Run Mini FQT Formal FQT Closed
Think A Head
12. Discovery Team – Practical Notes
Who is in the team
Technical Manager
Operational
System
Software
Discovery Forum
Once a week
Review WIP
Visibility tools
SCRUM Team – board & notes – Tasks
Discovery – TFS – User Stories
Think A Head
13. Discovery Team – Continuous Flow
Analysis Acceptance
Think A Head
15. Discovery Team – Story Points
Rough estimate (range) Min Max Story Tshirt
[days] [days] Point Size
Estimates may be wrong XS
Team Velocity is per Backlog S
estimates M
Team estimates (Scrum L
XL
planning) are not related to
XXL
Backlog estimates (Backlog
XXXL
preparation)
Velocity : Done is Done
Think A Head
17. Team Velocity & Predictability
Remaining Future
Iterations:
Remaining Story Points:
Calculated Values Normal Worst Case
Current Velocity:
Estimates
Remaining Capacity:
Outstanding Story
Points:
Think A Head
19. Our Conclusions
Manage the entire process
Manage the flow
Before Iteration – Planning preparations
During Iteration – Early feedback; Free run tests
After Iteration –
Fix bugs ASAP
Mini FQTs (avoid Integration hell)
Multi disciplinary discovery team
Work as a team
Focus on ready stories
Think A Head
20. Our Conclusions
Predictability
Team Velocity as a parameter
Data Analysis
How to increase Team Velocity
Always Retrospect
Ready Story
Remove impediments
Team size – Diminishing Marginal Utility
Trust the Team
Think A Head
אבני דרך, תקציבים והתחייבויותחריגותהערכת זמנים לא מדוייקתהיסטוריה לפרויקטים הבאיםהתמקדות בעיקר ובהורדת סיכוניםלעמוד בהתחייבויות שלוקחיםשיפור איכות המערכתמערכת שעושה מה שמצפים ממנה (דרישות מוגדרות טוב ומובנות נכון)מערכת בדוקה, פחות באגים, הקטנת ה- Integration Hellשיפור כלי הניהולהגברת שקיפות כלפי מנהלי הפרויקט (ולצוות)שיפור הפרדיקטביליותהגברת מחויבות העובדים
מי אנחנו ומה אנחנו עושים
דגש על מולטידיסיפלינאריות– החשיבות של עבודה צמודה עם אפיון ומערכת
תיאור הבעיה: ב- 2 הספרינטים הראשונים הצוות לא הצליח לעמוד במחויבות. דגש על ספרינט 2.ברטרוספקטיב: US לא מוכנים לפיתוחפיתרון: דגש על planning, על end-to-end flowחשוב לציין – נמנענו מלחץ על הצוות, אלא חיפשנו איך להשתפר
להדגיש עקרונות KANBAN שיושמו ב- FLOW הזהלהדגיש שזה FLOW של USחשיבות ההכנה לפני הספרינטדיסקוברי מכיןSCRUM מוודאפגישת planning – ה- US ברור, מציגים משימותפיתוחתקשורת שוטפתבדיקות תוך כדי ספרינטסגירהבדיקות מוקדם ככל האפשר לפיתוח
Threshold - קביעת טווח רצוי של SP בכל stateמניעתstarvationAvoid Integration hellדגש על בדיקת US שפיתוחו הסתייםתיקון באגים מוקדם
מה אנחנו לומדים על מחויבות הצוות?הצוות רוצה לעשות הרבההצוות לא מצליח (אף פעם !!) לעמוד במחויבות שלקחאין קורלציה בין גודל ההתחייבות לגודל ה- delivery
הסתכלות אחורה על התנהגות הצוות:להתחיל בהסבר הגרףלהראות ירידה ב- newלהראות יציבות ב- discovery preparationsלהראות אי התקדמות בבדיקות