Download - Agile Methods - 2 day workshop
EVAN [email protected]
AGILE METHODSPART 1: HISTORY & CORE CONCEPTS
Evan LeybournLean / Agile Business Leader and AuthorMelbourne, Australia@eleybournhttp://theagiledirector.com
SHU-HA-RITHE STAGES OF LEARNING
守 : SHU(BEGINNER)FOLLOW PRECISELY WITHOUT MODIFICATION
破 :HA (PROFICIENT)SHIFTING BETWEEN TECHNIQUES
離 : RI (MASTERY)UNCONSCIOUS CREATION OF NEW TECHNIQUES
WHAT DOES BEING “AGILE” ACTUALLY MEAN?THE AGILE MANIFESTO
To what degree is the outcome knowable in advance?
To what degree can you coordinate and control all the players?
To what degree is the outcome dependent on intangible elements?
Wat
erfa
ll
Agile
Waterfall (Incrementing)
Agile (Iterating)Images with thanks from Jeff Patton: http://www.agileproductdesign.com/
INDIVIDUALS AND INTERACTIONSOVER PROCESSES AND TOOLS
WORKING SOFTWARE OVER COMPREHENSIVE DOCUMENTATION
CUSTOMER COLLABORATION OVER CONTRACT NEGOTIATION
RESPONDING TO CHANGE OVER FOLLOWING A PLAN
1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
7. Working software is the primary measure of progress.
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.
10.Simplicity--the art of maximizing the amount of work not done--is essential.
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 behaviour accordingly.
Business change via sustained effort across the organisation
Change
Change
Change
Images shamelessly stolen from Ahmed Sidky (ICAgile)
INSPECT ADAPT INSPECT
HOW DOES“AGILE”WORK
WORKFLOW AND PROJECT MANAGEMENT
AUP, CRYSTAL CLEAR, DSDM, KANBAN, RUP, SCRUM
KANBAN
1. Visualise (Card Wall)2. Limit WIP3. Manage Flow4. Make Policies Explicit5. Feedback Loops6. Improve Collaboratively
LIMIT WIP
REDUCE LEAD TIME, IDENTIFY BLOCKS & CLEAR BOTTLENECKS
SCRUM
* Iterative Product Development* 1-4 week Sprints* Formal Roles (Product Owner & Scrum Master)* Timeboxed Meetings
DEVELOPMENT METHODS
BDD, FDD, RAD, LEAN SOFTWARE, XP
Extreme Programming
ActivitiesWriting the SoftwareTesting the SoftwareListening to the Customer Designing & Refactoring
DevelopmentPair ProgrammingCommon Code StandardsClear System Metaphor
QUALITY METHODS
TEST DRIVEN DEVELOPMENT
Test-Driven Development
1. Create a test2. Add the test to the test catalogue3. Write the code4. Run the tests (all of them)5. Clean up the code as required. (Refactor)
MURA: UNEVENNESSMURI: OVERBURDENMUDA: WASTEUNDERSTANDING WASTE
TRANSPORTATIONTHE 7 WASTES
INVENTORYTHE 7 WASTES
MOTIONTHE 7 WASTES
WAITINGTHE 7 WASTES
OVER PRODUCTIONTHE 7 WASTES
OVER PROCESSINGTHE 7 WASTES
DEFECTS THE 7 WASTES
1. AGILE MEANS NO DOCUMENTATIONCOMMON AGILE MISTAKES
2. NOT MEASURING, MONITORING OR CORRECTINGCOMMON AGILE MISTAKES
COMMON AGILE MISTAKES
3. ASSUMING YOU CAN DO MORE WITH LESS
COMMON AGILE MISTAKES
4. SKIMPING ON TRAINING AND EDUCATION
COMMON AGILE MISTAKES
5. LACKING AN EXECUTIVE SPONSOR
COMMON AGILE MISTAKES
6. THINKING AGILE IS FASTER OR EASY
7. START WITH A TOOLCOMMON AGILE MISTAKES
8. FAILING TO SCALECOMMON AGILE MISTAKES
9. ASSUMING AGILE = SCRUMCOMMON AGILE MISTAKES
TO LEARN MORE, CHECK OUT
DIRECTING THE AGILE ORGANISATIONBY EVAN LEYBOURN
AVAILABLE AT AMAZON AND ALL GOOD BOOK STORES
CLICK HERE TO DISCOVER MORE
EVAN [email protected]
AGILE METHODSPART 2: ROLES & RESPONSIBILITIES
Evan LeybournLean / Agile Business Leader and AuthorMelbourne, Australia@eleybournhttp://theagiledirector.com
CLICK TO DISCOVER MORE
BUSINESS• USERS• CUSTOM
ER• PRODUC
T OWNER
TECHNICAL• SCRUM
MASTER• DEVELOP
ERS• TESTERS
USERS WILL
USE THE SOFTWARE, IDENTIFY ISSUES & PROVIDE FEEDBACK
USERS CAN BE
THERE ARE NO TYPICAL USERS
USERS DO NOT
SET SCOPE OR TEST WORK
CUSTOMERS WILL
DEFINE, START& END THE PROJECT
CUSTOMERS CAN BE
INTERNAL MANAGERS OR EXTERNAL CLIENTS
CUSTOMERS DO NOT
DIRECT WORK
THE PRODUCT OWNER WILL
MANAGE THE PRODUCT BACKLOG, SET THE SCOPE & APPROVE RELEASES
THE PRODUCT OWNER CAN BE
PROJECT MANAGER, PRODUCT MANAGER OR CUSTOMER
THE PRODUCT OWNER DOES NOT
MANAGE THE TEAM
THE SCRUM MASTER WILL
MANAGE THE AGILE PROCESS & REPORT ON PROGRESS
THE SCRUM MASTER CAN BE
PROJECT MANAGER, TEAM LEADER OR TEAM MEMBER
THE SCRUM MASTER DOES NOT
PRIORITISE FEATURES
DEVELOPERS WILL
DEVELOP FEATURES, AND RESOLVE ISSUES
DEVELOPERS CAN BE
DEVELOPERS, DESIGNERS, WRITERS, OR ADMINISTRATORSCROSS FUNCTIONAL
DEVELOPERS DO NOT
PRIORITISE FEATURES
TESTERS WILL
TEST, APPROVE OR REJECT FEATURES FOR RELEASE
TESTERS CAN BE
EXISTING DEVELOPERS OR DEDICATED TESTERS
TESTERS DO NOT
TEST THEIR OWN CODE
7 +/- 2TYPICAL TEAM SIZE
HAS AN INTEREST IN THE WORK & IS KEPT UP TO DATEINVOLVED PARTIES (CHICKENS)
COMMITTED PARTIES (PIGS)
"DO" THE WORK & ARE RESPONSIBLE FOR THE RELEASE
VALUE STREAM MAPPING
DEFINES THE ‘AS-IS’ STEPS & ROLES FOR EACH TASK
TO LEARN MORE, CHECK OUT
DIRECTING THE AGILE ORGANISATIONBY EVAN LEYBOURN
AVAILABLE AT AMAZON AND ALL GOOD BOOK STORES
CLICK HERE TO DISCOVER MORE
EVAN [email protected]
AGILE METHODSPART 3: PROJECT INITIATION
Evan LeybournLean / Agile Business Leader and AuthorMelbourne, Australia@eleybournhttp://theagiledirector.com
CLICK TO DISCOVER MORE
ALSO KNOWN AS
FEASIBILITY, SPRINT 0 (SCRUM) OR ITERATION 0 (XP)
REDUCE RISK & UNCERTAINTYBY DEFINING THE HIGH LEVEL SCOPE
ALIGN TO STRATEGIC GOALS, & TECHNICAL FRAMEWORKSSKILLS GAP ANALYSIS & RECRUITMENT
BEGINNING THE PROCESS
AGILE PROJECTS HAVE MINIMAL INITIATION
THE DEVELOPMENT TEAM SHOULD BE
ENGAGED DURING INITIATION
CUSTOMER IS FULLY AWARE OF THEIR RESPONSIBILITIESCUSTOMERS SHARE ACCOUNTABILITY FOR DELIVERY
REMOVE ANY POTENTIAL IMPEDIMENTS
ADD TRAINING TASKS TO THE BACKLOG
“Friends don’t let friends use Microsoft Project”
CREATE THE INITIAL PRODUCT BACKLOG (IN LOW DETAIL)ALLOW CUSTOMERS TO SLOWLY DEFINE THEIR NEEDS
HIGH PRIORITY• SUMMARY• ESTIMATE• DETAIL• FUNCTION• ACCEPTANCE CRITERIA
LOW PRIORITY• SUMMARY• ESTIMATE
ESTIMATE THE PRODUCT BACKLOGFIRST ORDER ESTIMATE - USING STORY POINTS
1, 2, 3, 5, 8, 13, 20, 40, 100FIBONACCI SEQUENCE
EXPERT OPINION
THE TEAM MEMBER WITH SPECIFIC DOMAIN KNOWLEDGEE.G. A DBA ESTIMATING DATABASE TASKS.
COMPARISON
COMPARING A TASK TO ANOTHER, ESTIMATED, TASK.E.G. TASK A IS ABOUT TWICE THE EFFORT OF TASK B
COMPONENTS
BREAK A LARGE TASK INTO SMALL SUB-TASKSE.G. BREAK USER MANAGEMENT INTO INTERFACE, LOGIN, ACCESS CONTROL, ETC.
PLANNING POKER
EACH TEAM MEMBER PLAYS A CARD REPRESENTING THEIR ESTIMATEEVERYONE PARTICIPATES TO REACH CONSENSUS
Estimates must not be mentioned during planning discussion to avoid anchoring
STAFF OVERHEAD: NON PROJECT TIME
ESTIMATED LEAVE, ILLNESS, BREAKS, MEETINGS ETC.GENERIC INDUSTRY MODIFIER: 25%
DURATION CALCULATION
STORY COST X (OVERHEAD + 1) X (ESTIMATE RISK + 1)ESTIMATE RISK IS OPTIONAL
FOR EXAMPLE
4 X (25% + 1) X (50%+ 1)= 4 X 1.25 X 1.5= 5 TO 7.5 HOURS
ITERATIONS SHOULD BE BETWEEN 1 & 4 WEEKSSHORTER ITERATIONS PROVIDE MORE OPPORTUNITIES TO INSPECT & ADAPT
- “How much is this going to cost?”- “As much as you’re willing to spend.”
- “How long is this going to take?”- “As long as is necessary.”
- “What am I going to get?”- “Whatever you tell us you want.”
WORK IN PRIORITY ORDER, RELEASE QUICKLY & MONITOR BURN RATEFIXED COST
WORK IN PRIORITY ORDER & ENFORCE ITERATION LENGTHFIXED TIME
FIXED SCOPE
FOCUS ON BACKLOG DEFINITION AND ESTIMATION
FIXED COST AND TIME
CALCULATE TOTAL COST AS COST PER ITERATION
FIXED COST AND SCOPE
INCREASE THE ESTIMATE RISK DURING ITERATION 0
FIXED TIME AND SCOPE
PRE-ASSIGN WORK TO ITERATIONS & PAD SCHEDULE WITH EXTRA ITERATIONS
FIXED COST, TIME AND SCOPE
CANCEL THE PROJECT
TO LEARN MORE, CHECK OUT
DIRECTING THE AGILE ORGANISATIONBY EVAN LEYBOURN
AVAILABLE AT AMAZON AND ALL GOOD BOOK STORES
CLICK HERE TO DISCOVER MORE
EVAN [email protected]
AGILE METHODSPART 4: ITERATIONS
Evan LeybournLean / Agile Business Leader and AuthorMelbourne, Australia@eleybournhttp://theagiledirector.com
CLICK TO DISCOVER MORE
CONVERT THE BACKLOG INTO A REALISTIC GOALITERATION PLANNING
THIS IS A CREATIVE PROCESS: PREPARE BEFOREHANDSUPPLY PAPER, A WHITEBOARD AND INTERNET ACCESS.
PRIORITISE THE PRODUCT BACKLOGBEFORE THE PLANNING WORKSHOP
DEFINE THE BUSINESS GOAL FOR THE ITERATIONPART 1: BUSINESS PLANNING
ENCOURAGE A STABLE & CONSISTENT WORKFLOW
ITERATION SCOPE IS LIMITED BY TEAM VELOCITY
PART 2: TECHNICAL PLANNING
DECOMPOSE USER STORIES INTO TASKS (< 1 DAY)
CREATE THE ITERATION BACKLOG (IN HIGH DETAIL)OWNED & MAINTAINED BY THE DEVELOPERS
PLAN, DESIGN & ESTIMATE TASKSTECHNICAL SPECIFICATIONS
Highest Priority Task
Test-Driven Development
BuildCommit
Continuous Integration
Done
Testing
Deploy
GET HIGHEST PRIORITY FEATUREALLOW DEVELOPERS TO CHOOSE THEIR TASKS
KANBAN (かんばん )WORKFLOW MONITORING & VISUALISATION
CAN BE AS SIMPLE OR COMPLEX AS REQUIREDTHE FLOW OF VALUE THROUGH THE SYSTEM
Backlog Build Test Done
Backlog Analysis Build Test Stage Doc’ Release Done
KANBAN: CLASS OF SERVICE
EXPEDITEFIXED DELIVERY STANDARD CLASSINTANGIBLE CLASS
1• Create a test
2• Add the test to the test catalogue
3• Write the code
4• Run the tests (all of them)
5• Clean up the code as required. (Refactor)
TEST – DRIVEN DEVELOPMENT
TEST COVERAGE
FUNCTIONS, BOUNDARY CASES, USER INTERFACE & PERFORMANCE
TEST TYPES
DEFECT, USABILITY, FUNCTIONALITY & DATA
PAIR PROGRAMMING:CODER + REVIEWERBUILD
CODE STANDARDS: A COMMON CODING STYLEBUILD
SYSTEM METAPHOR:CLEAR NAMING STANDARDSBUILD
REGULAR COMMITSVERSION CONTROL
AUTOMATED: UNIT TESTING, COVERAGE, DOCUMENTATION, STANDARDS & BUILDCONTINUOUS INTEGRATION
WHAT DID YOU DO YESTERDAY?DAILY SCRUM
WHAT WILL YOU DO TODAY?DAILY SCRUM
ARE THERE ANY ISSUES?DAILY SCRUM
SCRUM OF SCRUMSFOR LARGE TEAMS
CUSTOMERS CAN ALWAYS SEE PROGRESSPROMOTING TRANSPARENCY THROUGH THE SCRUMS AND BACKLOG
VIEW PROGRESS AGAINST THE RELEASE
IMPROVE FUTURE ESTIMATES
PROGRESS MONITORING
BURNUP CHARTSBURNDOWN CHARTSCUMULATIVE FLOW STATISTICAL RUN
EFFORT VISUALISATION
PLOT DELIVERED FUNCTIONALITY AGAINST VELOCITY
BURNUP CHART
BURNDOWN CHART
VELOCITY
HOW MUCH WORK CAN BE DELIVERED PER ITERATION
DON'T MANAGE BY NUMBERS
IDENTIFY PROBLEM TRENDS EARLY
DISCOVERY
SCOPE CREEP
PLATEAU
TOO MANY FEATURES
TRACKING EPICS
PLOT DELIVERED FUNCTIONALITY AGAINST DURATION EFFORT VISUALISATION
CUMULATIVE FLOW DIAGRAM
AVERAGE TIME TO COMPLETE A TASK FROM STARTCYCLE TIME
AVERAGE TIME TO COMPLETE A TASK FROM REQUESTLEAD TIME
DON'T MANAGE BY NUMBERS
IDENTIFY PROBLEM TRENDS EARLY
BOTTLENECK
POOR FLOW
LARGE WIP LIMIT
LONG LEAD TIME
PLATEAU
PLOT CYCLE TIME AGAINST AVERAGE DURATION VISUALISATION
CYCLE TIME RUN CHARTS
DON'T MANAGE BY NUMBERS
IDENTIFY PROBLEM TRENDS EARLY
PROCESS TREND
PROCESS SHIFT
EXTREME PROCESS VARIATION
DIFFERS BY ORGANISATION
WHAT DOES “DONE” MEAN?
DEFINITION OF “DONE”
DOCUMENTATION?UAT?BUILT / COMPILED?
WHAT DOES“NOT DONE”MEAN?REMEMBER THE PRIMARY MEASURE OF PROGRESS
PER ITERATION OR ACROSS ITERATIONSDEPLOY
PRESENT & REVIEW COMPLETED WORK TO THE CUSTOMER ITERATION REVIEW
RETROSPECTIVE & KAIZEN (改善 )CONTINUOUS IMPROVEMENT
WHAT WENT WELL?ITERATION RETROSPECTIVE
ADD ACTIONABLE TASKS TO THE PRODUCT BACKLOG
WHAT COULD BE IMPROVED?
KAIZEN EMPHASISES
TEAMWORK, DISCIPLINE & MORALE
TO LEARN MORE, CHECK OUT
DIRECTING THE AGILE ORGANISATIONBY EVAN LEYBOURN
AVAILABLE AT AMAZON AND ALL GOOD BOOK STORES
CLICK HERE TO DISCOVER MORE