Categories: Agile
Crystal is a family of methodologies that I have not been able to find a wealth of information about. I've found a few books by Alistair Cockburn:
- Crystal Clear: A Human-Powered Methodology for Small Teams (used as a reference for some of the content on this post)
- Crystal Orange: Surviving Object-Oriented Projects
- Crystal Orange/Web: Agile Software Development
…and there is a website, where Alistair Cockburn indicates that Crystal predates the Agile Manifesto:
http://alistair.cockburn.us/Crystal+methodologies
…but I haven't been able to find comprehensive coverage of all members of the family.
There are several members of the Crystal family, with the intent to scale up from a small project to large, complex projects. The Crystal Family is divided as follows, with Crystal Clear being the smallest (1-6 team members) and, as best as I can tell, the largest is the last three, with Crystal Diamond and Crystal Sapphire including additional complexities, such as risk to human life:
- Crystal Clear
- Crystal Yellow
- Crystal Orange
- Crystal Orange Web
- Crystal Red
- Crystal Maroon
- Crystal Diamond
- Crystal Sapphire
I know, a link to wikipedia… this is not meant to be a scholarly article; please bear with me.
Each member of the Crystal family is built on what is referred to as a 'genetic code' made up of:
- The economic-cooperative game model, which says that, "software development is a series of resource limited games whose moves consist of nothing else besides inventing and communicating
- Selected priorities
- Safety in the Project Outcome
- Efficiency in Development
- Habitability of the conventions
- Selected properties
- Frequent delivery
- Reflective improvement
- Personal safety
- Focus
- Easy access to expert users
- Technical environment with automated testing, configuration management, and frequent integration
- Selected principles
- Exploratory 360
- Early victory
- Walking skeleton
- Incremental rearchitecture
- Information radiators
- Selected sample techniques
- Methodology shaping
- Reflection workshop
- Blitz planning
- Delphi estimation using expertise rankings
- Daily standup meetings
- Essential interaction design
- Process miniature
- Side-by-side programming
- Burn charts
- Project examples
Notice the use of the word "selected?" I find it interesting that, while there are several members of the Crystal family, there are few hard and fast rules. You are not expected to use each item in the list, above, on every project. Using the properties as an example, Crystal Clear only requires the first three. Furthermore, Crystal (the family) is not opposed to using principles and practices from other project management methodologies.
As you dig in to Crystal Roles and Work Products, you'll find artifacts that you expect to see in a waterfall project, that don't get a lot of attention in some of the other Agile flavors. I wouldn't call it the perfect marriage of Agile and Waterfall, maybe more of an evolutionary step between Waterfall and more recently evolved flavors of Agile. I don't know. What do you think?



