What is the Crystal Method?
The Crystal Method is a lightweight, scalable, agile software development technique developed by Alistair Cockburn in 1998. It focuses more on people and their interactions when managing a project rather than on processes and resources.
In other words, this structure is a direct outgrowth of one of the main principles expressed in the Agile Manifesto.
The Crystal Method is build on two fundamental assumptions:
- Teams may find ways to develop and refine their workflows on their own.
- Projects are special and complex, requiring specific techniques
The Crystal family members
Alistair noticed that small teams were able to develop and deliver projects without a lot of paperwork or reports. Whereas the larger teams, operating on large-scale projects, required a lot of documentation, regular updates and a lot of contact.
So basically, it all depends on the project size and how complicated it will be. He therefore developed the Crystal form, which had different strategies for particular project sizes.
The suitability of the Crystal approach is based on three dimensions:
- Team size
- The priority of the project
They are usually defined by colors, depending on the number of people engaged in the project:
- Crystal Clear – for teams of 1-6 people
- Crystal Yellow – Teams of 7-20 people
- Crystal Orange – Teams of 21 to 40 people
- Crystal Red – Teams of 40-80 people
- Crystal Maroon – Teams of 80-200 people
- Crystal Diamond and Crystal Sapphire – Very large size
Roles and Responsibilities
The basic distinction between Crystal Clear and other Crystal approaches is the fact that only one team in the Crystal Clear project exists. Whilst the remaining of the Crystal methods have various players to follow through.
Crystal methods have several positions, including Executive Sponsor, Executive, Lead Designer, Programmer, Ambassador User, and Tester. These are the leading or Real Roles.
There are several other sub-roles also called Virtual roles, such as Project Coordinator, Business Expert, Technical Writer, and Business Tester.
Crystal Method Characteristics
Main characteristics of Crystal methodology are:
- Human-powered: This indicates that those involved in the project are important and that the procedures need to be tailored to suit people’s needs. It also stresses that people are and can become more organized and efficient as systems evolve.
Adaptive: Crystal is a stretch to fit methodology, indicating that procedures and tools are not set, but must be modified to suit the demands of the team and the mission at hand.
Ultra-light: Crystal should not require very much paperwork, supervision and reporting. It keeps things light by working on a straightforward approach between the company and the customer and by direct collaboration between the members of the team.
The 7 properties of Crystal method
- Frequent delivery
It helps you to deliver functional, tested code regularly to real users. This way, you don’t have to confront the fact that you’ve spent your resources and time in a product that nobody wishes to purchase.
- Reflective improvement
There are always methods and techniques with which the team can develop the product, no matter how well or how poor it has been.
- Osmotic communication
Allows teams to collect relevant information without being personally engaged in the conversation of a particular matter. Cockburn believes that this kind of working environment can function with very little structure.
- Personal Safety
In order to create a safe working environment and a true team community, team members should participate in open and honest communication. They should feel safe to speak freely about ideas, without fear of criticism. There are no wrong answers or bad ideas on the Crystal squad.
Each team member knows exactly what to do so that they can focus their energy and stop switching roles consecutively.
- Easy access to expert users
Team members must be able to obtain feedback from actual customers and experts when needed.
- A technical environment with automated tests, configuration management, and frequent integration
Very unique tools for development teams that rely on continuous integration so that errors can be found within moments.
What are the Pros and Cons of Crystal?
Benefits of using the Crystal Agile Framework
- Allows teams to have autonomy and to operate the way they deem most effective
- Encourages direct team communication, honesty and accountability, and reduces overhead management
- The adaptive approach helps teams to better react to changing requirements.
Limitations of using the Crystal Agile Framework
- Lack of cohesion can slow down beginner teams which can lead to a scope creep
- Insufficient documentation may lead to confusion and lack of attention.
Is Crystal right for your team?
The Crystal Approach is one of the most flexible agile systems since it is built around the project’s people and does not rely on any particular set of processes or resources. In that sense, it can be a feasible methodology for companies that want their teams to be motivated to function, however productive they might be.
However since Crystal focuses on team coordination around the product being constructed and discourages needless documentation and monitoring, it is hard for other areas of the company to have viability about how the product is progressing.