Crystal

3,323 views

Published on

Published in: Technology, Business
0 Comments
14 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,323
On SlideShare
0
From Embeds
0
Number of Embeds
39
Actions
Shares
0
Downloads
0
Comments
0
Likes
14
Embeds 0
No embeds

No notes for slide
  • Crystal Clear title was a mistake.
  • Solutions must be at least as varied and variable as the problems they are trying to solve
  • Meta framework or meta methodology Main foundation or basis – Co-operative game
  • Scrum uses this analogy –
  • You plan and map Plan changes once you see the terrain
  • Habitability may run against efficiency but they often converge in the end. Upfront modelling to avoid recoding, refactoring  Enough code to discover a model worth documenting You will know when you reach the point of diminishing return.
  • Unrealistic for many projects Scrum treats a project as a black box with complexity ready to be discovered Question How many practice scrum How many deal work with projects that have Fixed-Deadlines, Fixed-Scope, Both, Scrum
  • Team enforces
  • Business accepts empirical nature of Scrum Business accepts impossibility of fixed-scope within a fixed-price and fixed-date
  • Scrum is the art of what is possible How can you make this possible? Through efficiency – minimizing waste
  • Efficiency is a 5 th variable Deficient or Barely Sufficient – for project safety Processes, Strategies and Techniques The point of too much process, too many strategies and techniques
  • Efficiency is a 5 th variable Deficient or Barely Sufficient – for project safety The point of too much process
  • The point of too much process Sensitive to the point of diminishing returns
  • Lighter methodologies are better until they run out of steam The sweet spot
  • Habitability may run against efficiency but they often converge in the end. Upfront modelling to avoid recoding, refactoring  Enough code to discover a model worth documenting You will know when you reach the point of diminishing return.
  • Not in priority Grouped to Primary and
  • Properties can be measured. Properties are the point Use properties as a ubiquitous language
  • Increased frequency of delivery - how often – versus “We are doing three week sprints” How many new practices have we added or old practices removed - versus – “Are we holding retrospective meetings (process)” How long does it take for me to get a question answered by someone on my team? – versus – “Are we doing have daily standup” How much turnover? How many interruptions per day? How long does it take for me to get a definitive answer to a user-oriented question? How many bugs per.. How much time between when the bug is created and when it is reported?
  • Think of strategies
  • Think of techniques
  • Techniques Work product examples Strategies
  • Establish a lead to avoid the “wrong” type of conflict. Necessary to outline responsibility and accountability
  • Crystal

    1. 1. Crystal A Remedy for Prescriptive Agile Abid Quereshi [email_address]
    2. 2. What other have said <ul><ul><li>“ .. is beyond ‘Agile’ ..I think that Crystal Clear is Agile + Flexible + Practical” </li></ul></ul>
    3. 3. The Death of Agile <ul><ul><li>Time line </li></ul></ul><ul><ul><li>Who killed it? </li></ul></ul><ul><ul><li>We did. The agile process police </li></ul></ul>
    4. 4. The Death of Agile <ul><ul><li>Yet sometimes reluctant to accept variability and complexity in the processes we use to develop them </li></ul></ul>Agile practitioners (developers, and non-developers) are willing to accept variability and complexity in the products we are developing
    5. 5. The Death of Agile <ul><li>Solutions must be at least as varied and variable as the problems they are trying to solve </li></ul>
    6. 6. Alistair Cockburn <ul><li>An original signatory of the Agile Manifesto </li></ul><ul><li>Creator of Crystal family of methodology </li></ul><ul><li>Runs Scrum Courses </li></ul><ul><li>Use cases reformer </li></ul><ul><li>Authored books: </li></ul><ul><ul><li>Agile Software Development </li></ul></ul><ul><ul><li>Writing Effective Use Cases </li></ul></ul><ul><ul><li>Patterns For Effective Use Cases </li></ul></ul><ul><ul><li>Surviving Object Oriented Projects </li></ul></ul>
    7. 7. Items for discussion <ul><li>Crystal Family </li></ul><ul><li>Priorities </li></ul><ul><li>Properties </li></ul><ul><li>Strategies </li></ul><ul><li>Techniques </li></ul><ul><li>Crystal Clear </li></ul><ul><li>Process </li></ul><ul><li>Instances to Copy </li></ul>
    8. 8. The Crystal Family A Specific Family of Self-Adapting Methodologies with a common structure (or DNA) Related by adherence to common philosophy and principles
    9. 9. Some principles The Crystal Family <ul><li>Level of detail in requirements, design and plan must vary with potential for damage caused by undetected defects </li></ul><ul><li>Number of required work products or project artifacts is inversely proportional to the amount of informal communication paths </li></ul><ul><li>Variations in team personalities and local working environment necessitate adjustment of working conventions. </li></ul>
    10. 10. DNA The Crystal Family <ul><li>Co-operative Game Mindset </li></ul><ul><li>Set of priorities and principles for making decisions </li></ul><ul><li>Selected properties to steer towards </li></ul><ul><li>Sample strategies </li></ul><ul><li>Sample techniques </li></ul><ul><li>Sample work product instances to copy </li></ul>
    11. 11. Strategic, Economic, Co-operative Co-operative Game Resource constrained series of activities involving Invention and Communication Goals are to deliver software in this game and to set up for the next
    12. 12. Co-operative Game
    13. 13. Priorities The Crystal Family <ul><li>Project Safety </li></ul><ul><li>Development Efficiency </li></ul><ul><li>Habitability of Conventions </li></ul>
    14. 14. Project Safety Priorities <ul><li>On time </li></ul><ul><li>On budget (fixed team size) </li></ul><ul><li>Guaranteed Quality </li></ul><ul><li>On spec (agreed scope) </li></ul>
    15. 15. Safety in a Scrum Sprint Priorities Quality Team size & Resources Fixed Time Safe Zone iterations
    16. 16. Safety in a Project using Scrum Priorities Quality Team size & Resources Fixed Scope Safe Zone
    17. 17. Project Safety Crystal and Fixed-scope Fixed-Time Quality Team size & Resources Fixed Time Fixed Scope Safe Zone
    18. 18. Efficiency Efficiency Cross Functional Teams More Continuous Integration Robust Definition of Done More Frequent Releases High Resolution User Cases Quality Team size & Resources Fixed Time Fixed Scope Integration Tests Automated Acceptance Tests Value stream mapping Feature prioritization
    19. 19. Priorities Efficiency Cross Functional Teams More Continuous Integration Robust Definition of Done More Frequent Releases High Resolution User Cases Quality Team size & Resources Fixed Time Fixed Scope Integration Tests Automated Acceptance Tests Value stream mapping Feature prioritization Check-in Dance Code Reviews Config Management Fixed amount of WIP Change Management Reusable Templates BDD TDD Daily Stand-up
    20. 20. Habitability Priorities Team members must be able to live with constraints, conventions and policies
    21. 21. Habitability Priorities Crystal teams measure their condition by their mood as much as by the rate of delivery
    22. 22. Priorities Efficiency and Habitability priorities tend to drive Crystal methodologies towards two characteristics <ul><li>Strong on communication </li></ul><ul><li>Light on work products </li></ul>
    23. 23. Priorities The Crystal Family <ul><li>Project Safety </li></ul><ul><li>Development Efficiency </li></ul><ul><li>Habitability of Conventions </li></ul>
    24. 24. DNA The Crystal Family <ul><li>Co-operative Game Mindset </li></ul><ul><li>Set of priorities and principles for making decisions </li></ul><ul><li>Selected properties to steer towards </li></ul><ul><li>Sample strategies </li></ul><ul><li>Sample techniques </li></ul><ul><li>Sample work product instances to copy </li></ul>
    25. 25. Properties of Successful Projects Properties <ul><li>Frequent Delivery – to users ! </li></ul><ul><li>Reflective Improvement </li></ul><ul><li>Close Communication </li></ul><ul><li>Personal Safety </li></ul><ul><li>Focus </li></ul><ul><li>Easy access to expert users </li></ul><ul><li>Environment with automated testing, config. management & frequent integration </li></ul>Crystal’s Core
    26. 26. Why Properties ? Properties Do you have ..? (properties and outcomes) rather than Do you do .. ? (processes and methods) Properties can be measures qualitatively and quantitatively
    27. 27. Properties Process viewpoint Measurable Outcomes or Properties viewpoint We are doing 3 week sprints We deliver software to the user every 3 weeks We hold retrospectives at the end of every iteration We’ve implemented 2 processes removed 1 process, and tried 1 new technique We have daily stand-ups We’ve had 4 breakdowns in communication and 3 impediments removed We have a grievance procedure We’ve had 0 turnover in the past year Requirements can not be added once the sprint has started Team member has 3 interruption per day on average We hold planning meetings at the start of an iteration It takes me 3 days to get an answer to a user oriented question We do continuous integration How many regression bugs were introduced during the last sprint
    28. 28. DNA The Crystal Family <ul><li>Co-operative Game Mindset </li></ul><ul><li>Set of priorities and principles for making decisions </li></ul><ul><li>Selected properties to steer towards </li></ul><ul><li>Sample strategies </li></ul><ul><li>Sample techniques </li></ul><ul><li>Sample work product instances to copy </li></ul>
    29. 29. Set of Strategies The Crystal Family <ul><li>Examples: </li></ul><ul><ul><li>Cross-functional teams </li></ul></ul><ul><ul><li>Incremental architecture </li></ul></ul><ul><ul><li>Walking Skeleton </li></ul></ul><ul><ul><li>Under-promise/Over -deliver </li></ul></ul><ul><ul><li>Easiest first, worst second </li></ul></ul><ul><ul><li>Small reversible steps </li></ul></ul><ul><ul><li>Early victory </li></ul></ul><ul><ul><li>Worst First </li></ul></ul><ul><ul><li>Divide and conquer </li></ul></ul><ul><ul><li>Radiate Information </li></ul></ul>
    30. 30. Set of Techniques The Crystal Family <ul><li>Examples: </li></ul><ul><ul><li>Side-by-side programming </li></ul></ul><ul><ul><li>Daily stand-up </li></ul></ul><ul><ul><li>Various estimation techniques </li></ul></ul><ul><ul><li>TDD </li></ul></ul><ul><ul><li>BDD </li></ul></ul><ul><ul><li>DDD </li></ul></ul><ul><ul><li>CRC </li></ul></ul>
    31. 31. Work Product Examples The Crystal Family <ul><li>Instances of project artifacts to copy </li></ul><ul><li>Use case templates </li></ul><ul><li>Project Initiation Document </li></ul><ul><li>Project Charter </li></ul><ul><li>Test Examples </li></ul><ul><li>Change Request </li></ul><ul><li>… </li></ul>
    32. 32. The Crystal Family Safe Zone Cross Functional Teams More Continuous Integration Robust Definition of Done More Frequent Releases High Resolution User Cases Quality Team size & Resources Fixed Time Fixed Scope Integration Tests Automated Acceptance Tests Document templates
    33. 33. Crystal Processes
    34. 34. Processes
    35. 35. Summary The Crystal Family <ul><li>Co-operative Game Mindset </li></ul><ul><li>Set of priorities and principles for making decisions </li></ul><ul><li>Selected properties to steer towards </li></ul><ul><li>Sample strategies </li></ul><ul><li>Sample techniques </li></ul><ul><li>Sample work product instances to copy </li></ul>
    36. 36. Crystal Clear
    37. 37. Crystal Clear in the Crystal Spectrum <ul><li>Spectrum maps: </li></ul><ul><li>Size of team </li></ul><ul><li>(points of failure and co-ordination effort) </li></ul><ul><li>Criticality </li></ul><ul><li>(graveness in the consequences of failure) </li></ul>
    38. 38. Crystal Clear in the Crystal Spectrum 6 people (3 to 8) 20 people 40 people 80 people Clear Yellow Orange Red more people Darker Colour Team Size
    39. 39. Crystal Clear in the Crystal Spectrum C Loss of Comfort (awe.. shucks) D Loss of Discretionary Money, (e.g. system errors have manual fix) E Loss of Essential Money. (e.g. system errors cause bankruptcy) L Loss of Life
    40. 40. Crystal Clear in the Crystal Spectrum L 6 E6 D6 C6 L 20 E 20 D 20 C 20 L 40 E 40 D 40 C 40 L 80 E 80 D 80 C 80 Clear Yellow Orange Red Criticality Team Size
    41. 41. Crystal Clear in the Crystal Spectrum <ul><li>Characteristics </li></ul><ul><li>Osmotic communication </li></ul><ul><li>Defined roles </li></ul><ul><li>Defined work products </li></ul>
    42. 42. Dedicated Team Roles Expert User Lead Designer Executive Sponsor The rest Designer Programmer
    43. 43. <ul><li>Process are meant to compensate for lack of discipline </li></ul><ul><li>Sweet spot: </li></ul><ul><ul><li>Two to eight people in one room </li></ul></ul><ul><ul><li>Onsite user experts </li></ul></ul><ul><ul><li>One month increments </li></ul></ul><ul><ul><li>Fully automated regression tests </li></ul></ul><ul><ul><li>Experienced developers </li></ul></ul>Processes
    44. 44. Processes must evolve to improved Efficiency and Habitability Reflection is a vital part of building experience Processes should be nested in natural cycles and accompanied with refelction Processes
    45. 45. <ul><li>Acknowledges Natural Cycles corresponding Rituals </li></ul><ul><ul><li>Project </li></ul></ul><ul><ul><li>Delivery to user </li></ul></ul><ul><ul><li>Iteration </li></ul></ul><ul><ul><li>Weeks and Days </li></ul></ul><ul><ul><li>Integration </li></ul></ul><ul><ul><li>Episode </li></ul></ul>Formal Reflection Mandated Processes
    46. 46. Processes <ul><li>Project: Unit of funding </li></ul><ul><li>Delivery to user (1 -12 weeks) </li></ul><ul><li>Iteration: Unit of estimation, dev and celebration (1 -12 weeks) </li></ul><ul><li>Weeks and Days (daily standup, weekly demo…) </li></ul><ul><li>Integration: Unit of dev, integration and system testing </li></ul><ul><li>Episode: Design and Check-in </li></ul>
    47. 47. Processes Project Delivery Iteration Day Integration Episode Charter Plan Plan Standup Design & Check-in Design & Check-in Build and test Design & Check-in Design & Check-in Build and test Standup … . …. …. …. Plan Deliver Plan Reflect
    48. 48. Grow your own.. The Crystal Family <ul><li>Economic (limited resources) </li></ul><ul><li>Co-operative Game (Strategic) </li></ul><ul><li>Set of priorities and principles for making choices </li></ul><ul><li>Selected properties to steer towards </li></ul><ul><li>Sample strategies </li></ul><ul><li>Sample techniques </li></ul><ul><li>Sample work product instances to copy </li></ul>
    49. 49. Work Products <ul><li>Not Optional </li></ul><ul><li>Crystal includes a suggested default set </li></ul><ul><li>Can be added to or subtracted from </li></ul><ul><li>Specified team member responsible for each artifact </li></ul>
    50. 50. Work Products <ul><li>Mission statement </li></ul><ul><li>Trade-off priorities </li></ul><ul><li>Team Structure </li></ul><ul><li>Team Conventions </li></ul><ul><li>Reflection Results </li></ul><ul><li>Project Map </li></ul><ul><li>Release Plan </li></ul><ul><li>Project Status </li></ul><ul><li>Iteration Plan </li></ul><ul><li>System Architecture </li></ul><ul><li>Risk List </li></ul><ul><li>Viewing Schedule </li></ul><ul><li>Requirements File </li></ul><ul><li>Use Cases </li></ul><ul><li>User Role Model </li></ul><ul><li>Domain Model </li></ul><ul><li>Screen Drafts </li></ul><ul><li>Design Sketches </li></ul><ul><li>Bug Report </li></ul>
    51. 51. Reviving Agile Comparisons <ul><li>Just-In-Time methodology </li></ul><ul><li>Methodology is a draft formula </li></ul><ul><li>Processes are draft processes </li></ul><ul><li>With a language describing properties, techniques and strategies </li></ul>
    52. 52. Why formal methodologies Comparisons <ul><li>Sweet spot rare </li></ul><ul><li>Starting point with a common language </li></ul>
    53. 53. Why formal methodologies Comparisons <ul><li>Shu - learn </li></ul><ul><li>Ha - detach </li></ul><ul><li>Ri - transcend </li></ul>
    54. 54. Summary <ul><li>.. a highly optimized way for small, co-located teams to develop efficiency and habitability, thereby achieve projects safely </li></ul><ul><li>Safety is achieved with the following properties, the first three of which are mandated. </li></ul><ul><ul><li>Frequent Delivery </li></ul></ul><ul><ul><li>Reflective Improvement </li></ul></ul><ul><ul><li>Osmotic Communication </li></ul></ul><ul><ul><li>Personal Safety </li></ul></ul><ul><ul><li>Focus </li></ul></ul><ul><ul><li>Easy Access to Expert Users </li></ul></ul><ul><ul><li>Environment with Automated Tests, Configuration Management and Frequent integration </li></ul></ul>
    55. 55. Method Survey <ul><li>XP - </li></ul><ul><li>RUP - </li></ul><ul><li>Scrum - </li></ul><ul><li>Prince 2 - </li></ul><ul><li>MSF – </li></ul><ul><li>Lean/Kanban - </li></ul><ul><li>Crystal - </li></ul><ul><li>DSDM </li></ul><ul><li>CMMI - </li></ul><ul><li>Others - </li></ul>

    ×