Crystal Methodology COS 730


Published on

A presentation on crystal methodology. Introduction of the crystal agile method is described.

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Crystal Methodology COS 730

  1. 1. COS 730 groupassignmentCrystalmethodologiesMB Mauch 29007552K Bassuday 29233412J van Zyl 29112690K le Roux 29021872
  2. 2. Crystal Crystal methods are part of the Crystal family developed by Alistair Cockburn in the mid-1990s Based on observations of many teams that did not follow formal methodologies yet had successful projects These are “lightweight methodologies”  Avoids strict/rigid processes found in other methodologies
  3. 3. Crystal Name crystal comes from gemstones  The faces are a different view on the underlying core of principles and values of each method.  In terms of software, the faces represent techniques, tools, standards and roles for each method.
  4. 4. Crystal Crystal methods focus on:  People  Interaction  Community  Skills  Talents  Communications
  5. 5. Crystal Scaled according to team size, different colours denote the weight Crystal Clear lightweight, not mission critical Crystal Yellow Crystal Orange Crystal Orange Web Crystal Red Crystal Maroon Crystal Diamond Crystal Sapphire heavy, mission critical
  6. 6. Crystal common propertiesCrystal family methods have 7 commonproperties:1. Frequent delivery2. Reflective improvement3. Close or osmotic communication4. Personal safety5. Focus6. Easy access to expert users7. Automated tests, configuration management, frequent integration
  7. 7. Frequent delivery Iterationsof the software program should be released regularly (from weekly up to quarterly) Problems can be found and fixed early on Customers can ensure that the project is going the way they want it to go
  8. 8. Reflective improvement Developers dedicate time to improving the development process Reflection workshops are held every few weeks to help find processes that are working and which ones need to be modified Iteration helps determine if a process is working or not
  9. 9. Close or osmoticcommunication Development teams must be in the same room This aids communication  Developers do not need to break concentration to move somewhere else Information flows quickly through the team Communication overhead is reduced
  10. 10. Personal safety Team members must be able to speak freely in a group without being ridiculed
  11. 11. Focus1. Focus on a task long enough for progress to be made  2 hour period where the developer should have no interruptions  Developer assigned to a project for at least 2 days2. Clear definition and goals of the project
  12. 12. Easy access to expert users Developers work with experts in the field of the project who will also be end-users Expert will answer questions and suggest solutions or improvements Minimum: meet once a week for 2 hours and be reachable by phone
  13. 13. Automated tests,configuration management,frequent integration Spot errors and problems that arise from changes being made Done regularly  Problems spotted early on  Problems are less likely to grow
  14. 14. Crystal Clear Lightest methodology that will still lead to successful projects Supports fixed price contracts Teams using Crystal Clear can use techniques from other methodologies and vice versa Requires documentation  Does not prescribe what documentation but leaves that up to the judgment of the team
  15. 15. Crystal Clear Priorities:  Project safety (deliver the system in adequate time and budget)  Effective and habitable (people can live with the system and use it) Focuses on people, not processes or artifacts  One small team of 2 - 6 people in the same office working on not life-critical systems
  16. 16. Crystal Clear The difference between CrystalClear andExtremeProgramming is that XP is muchmore disciplined, CrystalClear is much moretolerant, even sloppy-looking. I would sayXP is more productive, CrystalClear morelikely to get followed. -- AlistairCockburn
  17. 17. Crystal Yellow Suitable for teams of 7 to 20 members Crystal yellow has key characteristics such as easy communication, clear ownership of code areas , feedback from real users, automated testing, mission statement and monthly increments of improvements. Easy communication replaces the need for detailed designed documentation and ensures everyone is comfortable with communicating the needs of the project.
  18. 18. Crystal Yellow Clear ownership of code areas; helps with defined code areas being made so that changes do not have to be explained or granted by everyone. It also emphasises ownership and responsibility for each section of code. Feedback is needed from “real users” where it eliminates the need of long process requirements collection. Mission statements provide the goal and general achievements needed to be reached.
  19. 19. Crystal Yellow Monthly improvements include making lists of what needs to be done and achieving small improvements within each list made. Automated testing helps resolve errors quickly. It should be established before new functions are fully finished.
  20. 20. Crystal Orange Incremental development. The idea is for agile development. There needs to be a release every 3-4 months. Each release is called an “increment”.
  21. 21. Crystal Orange Designed for medium size projects (10 – 40 team members) Duration ranging from 1 – 2 years Split up in teams with cross functional skills
  22. 22. Crystal OrangeActivities of Crystal Orange Staging: Planning for releases. In this phase the developers gather the requirements, evaluate technical feasibility, and prioritise the tasks. Review: This is the phase where the objectives of the increment is reviewed, to make sure that it was met accordingly. Increments consist of iterations – Construction → Demonstration → Review. Tracking: Tracking the project at different stages of development ensures that fluctuations are picked up and handled correctly. The increments are measured at each milestone, including start, review, test and deliver.
  23. 23. Crystal OrangeActivities of Crystal Orange (cont) Parallelism: This is the phase where monitoring teams review stability, work plans and synchronisation. Holistic Diversity: This is an activity where large functional groups are split up into cross functional groups, creating a diversity of specialised people to handle certain parts of the project. Tuning: This is the phase where interviews and workshops are used to find solutions. Workshops: This helps to drive team attention to project goals.
  24. 24. Crystal Orange Web Used in projects that have a continually evolving code base that is being used by the public Used for category D40 projects. Used in teams with 21-40 members
  25. 25. Crystal Orange Web Consists of a set of conventions grouped into five categories:  Regular heartbeat, with Learning  Basic process  Maximum Progress, minimum distractions  Maximally defect free  A community, aligned in conversation
  26. 26. Crystal Orange Web1. Regular heartbeat, with Learning:  Consist of twee week development life cycles  It has a post-reflection workshop  Suggestions are made at these workshops2. Basic Processes:  Organizes what work will be done by whom  Organizes what decisions will be made by whom
  27. 27. Crystal Orange Web3. Maximum progress, minimum distractions  Gives the people enough time to work on deliverables that are the most important.  Work is broken into two week cycles and then further broken down into cycles for components that that can be developed in 1-3 days.  Developers have whiteboards outside their offices on which they post the status of their current work for the week.
  28. 28. Crystal Orange Web4. Maximally defect free  Strive to develop code that is bug free.  Done by intensive testing and overlooking of code5. A community, aligned in conversation  Focused on the long term target of the company  All roles in the company should participate in cross functional teams.  This means that teams with different expertise should all work towards a common goal
  29. 29. References methodology/ ogy.html#Crystal http://www.e- _Agile_Software_Development.html Development-Methodologies-Scrum-Kanban-Lean- XP/ y
  30. 30. References 8software_development%29 Gorakavi P.K. What You Should Know about Crystal Orange Methodology #6 of a Series, 2009 Coffin. R and Lane.D, 2010 /1954 l_Yellow.ppt