Introduction
The properties of a project will always change depending on the level of criticality and the participants involved. In this regard, small teams can handle projects without the need for reporting and paperwork as there will be less communication (Vijayasarathy & Butler, 2015). However, bigger teams require frequent cooperation when working on large-scale projects. In other words, more participants create the need for more complex approaches to task management. The Crystal family of methods focuses on three aspects of project management: reflective improvement, close communication, and frequent delivery (Hamed & Abushama, 2013). Being an agile software development approach, the primary focus is on interactions between the people working on a project as opposed to the processes involved. According to Kumar and Bhatia (2012), the skills and talents possessed by team members have the greatest impact on project outcomes. In developing the Crystal methodologies, Cockburn (2000) proposed the view of product development as an interactive game, in which everyone is allowed to be creative. Rather than focusing on the accuracy of the model, the focus should be on its ability to meet the needs of the customers.
Research Questions
The research questions to be addressed in this study are:
- What is the history of the Crystal family of methods?
- What principles are they based upon?
- How do the different methodologies differ depending on team size and other factors?
Structure of Research
This paper is organized into six sections: introduction, theoretical background, methods, findings, discussion, and conclusion. In the next part, an overview of the core terms and background information on the topic is provided as used in current publications. The method section follows with a description of the research methodology used to derive the findings. The findings chapter presents the results upon execution of the research method. In the discussion section, the findings are analyzed in light of the theoretical background and lessons learned. Finally, the conclusion summarizes the paper, identifies the limitations of the research, and gives ideas for future research.
Theoretical Background
The Crystal Family
The Crystal family comprises several methodologies, from which the most suitable is selected for individual projects. Within the Crystal approach are principles that tailor the methodologies to be used in different projects (Despa, 2014). The individual methodologies in the Crystal family are distinguished by colors based on the weight of the method. In this regard, heavier methods are denoted by darker colors (Cockburn, 2000). According to Alam et al. (2017), an appropriate color of methodology suiting the target project is chosen depending on its size and criticality. Hamed and Abushama (2013) also add that larger projects requiring more coordination will call for heavier methods compared to smaller ones. Similar to the sentiments of these authors, Anwer et al. (2017) state that as a system becomes more critical, it requires more rigor. On the other hand, Cockburn (2000) suggested that risky projects require the use of validation and verification rules as well as an added hardness in the methodology.
Project Categories
The Crystal approach categorizes projects according to the size and the level of criticality of the outcomes of the project. Sunner (2016) outlined comfort (C), discretionary money (D), essential money (E), and life (L) as the four levels of criticality and defined them based on the loss associated with a failure in the system. The maximum number of team members involved in a project is the secondary factor. Hence, Keshta and Morgan (2017) argued that all parameters must be factored in when deciding the right method to follow. A category L40 project, for example, requires the input of up to 40 people. However, the four levels of criticality have to be considered before determining the date of release. Here, comfort refers to the number of hours each resource will work without strain; discretionary money is the funds available to fulfill the project; and essential money is the minimum amount that can see the project to completion (Cockburn, 2000). In cases when the three criticality levels are inadequate, the project life, which refers to the team size and scope, can be adjusted accordingly and the most feasible method is selected.
Features of the Crystal Family
All methodologies in the Crystal family share specific features, rules, and values. First, Davies and Mueller (2020) state that projects employing these methods use incremental development cycles lasting up to four months. Also, Crystal methodologies have no restriction on the nature of development practices or tools used in projects (Vijayasarathy & Butler, 2015). Furthermore, Unhelkar (2016) indicates that the Crystal approach encompasses objectives that seek to reduce intermediate work products, bring together individual projects, and develop them in the course of the execution. However, Anwer et al. (2017) argue that while there are five Crystal methodologies constructed, which are clear, yellow, orange, red, and maroon, only the first three have been tested in practice.
Knowledge Gap
Despite increasing interest in the Crystal family methods, there is yet to be a clear agreement on how the differences in all the methodologies affect their application in project development. However, not one method can be applied in all settings. Despite these findings, there has been a minimal emphasis on the analysis of the situations that best suit the individual methods in the Crystal family (Atawneh, 2019). It means that there is yet to be a systematic review of Crystal family methodologies, hence the lack of procedures for practitioners to decide on the method with the greatest benefit. This paper, therefore, characterizes the different methods based on the principles upon which they are based while identifying the differences that are likely to affect their application in various settings.
Method
Research Approach
This paper used a systematic literature review method, which is a comprehensive synthesis of existing literature. In this regard, vom Brocke et al. (2015) state that the quality of evidence used in the review is determined by the relevance of the articles from which the results are derived. It was, therefore, important to identify information-rich resources about the research topic. Having formulated the research questions, studies were searched using the keywords ‘The Crystal family,’ or ‘Crystal methods’ alongside ‘history of,’ ‘principles of,’ and ‘characteristics of.’ The Google and Google Scholar search engines were used for this research to help identify the most appropriate literature.
Search Strategy and Analysis
The two search engines produced hundreds of sources with information about the Crystal family methodologies. Besides, a manual search of printed literature was also conducted. Nonetheless, not every source had information relevant enough to answer the research questions. Consequently, inclusion and exclusion criteria were applied to approve the most appropriate literature. Considering the availability of limited literature on the Crystal methodologies, literature developed within ten years was considered for the review. However, only peer-reviewed books and articles were selected. In this regard, all other gray literature and websites were excluded. Upon completion of the search process, 10 sources were identified for review. The researcher summarized and synthesized the results of the review. The systematic analysis involved identifying and comparing the content of the publications. The themes were then developed based on the research questions, including the relevant content from the results used to elaborate on selected themes.
Findings
The History of the Crystal Family of Methods
The history of the Crystal family of methodologies is discussed in all the publications. Whereas Bhuvaneswari and Prabaharan (2013) provide an overview, Abrahamsson et al. (2017) go into the details of its history. In 1991, Alistair Cockburn was asked by International Business Machines Corporation (IBM) to develop a method that would oversee object-oriented projects considering that the methodologies of the time were ineffective. Cockburn realized that every successful team followed a common pattern to success even in cases when they used a different project methodology (Aitken & Ilango, 2013). This was achieved by the team members adding value to aspects such as communication and morale, and others not specific to any methodology. These realizations guided the construction of the Crystal family of methods, which were categorized based on the size and criticality of the project to match the color and hardness of minerals (Abrahamsson et al., 2017). Essentially, the families point to the notion that every project is likely to require a specific set of processes, practices, and policies to fulfill the characteristics of the project.
Common Properties of the Crystal Family
All methods in the Crystal family have seven prevailing properties. Furthermore, the more a project portrays its properties, the higher are the chances of its success. All seven characteristics are discussed by Ibrahim et al. (2020) but to different extents. Frequent delivery is said to allow project developers to deliver the work in stages while testing its applicability to the users. It means that the team will invest time in products that are proven by the public, hence avoiding the risk of losses. Another property is reflective improvement, in which a product is always open to improvement regardless of its nature. Besides, Ashmore and Runyan (2014) also state that teams are always open to implementing new techniques and methods to improve their practices in the future. Osmotic communication also stands out among the characteristics of the methods (Abrahamsson et al., 2017). Here, teams are expected to work in the same location, which facilitates a smooth flow of information amongst the members. Communication encourages gradual absorption of ideas, and the work atmosphere requires minimal leadership structures.
The methods have an aspect of personal safety, which is responsible for the healthy working atmosphere. This can only be achieved through a culture of open and honest communication (Ibrahim et al., 2020). In this case, team members are allowed to express their views without fear. Focus is also an essential component in projects implemented using Crystal methods. Each team member focuses their attention on a specific task, therefore, avoiding cases of switching in-between tasks. Furthermore, this level of focus ensures that the team works towards a common goal (Abrahamsson et al., 2017). Considering that there is open communication, the methods have easy access to expert users (Bhuvaneswari & Prabaharan, 2013). It means that Crystal’s methods make it easier for the team to get constant feedback from the users of the products. Finally, the methods create an environment with tests being conducted rapidly, easier management of configurations, and frequent integration to identify potential errors within minutes, which is specific to software projects.
Methodological Differences
All methods in the Crystal family come with personalized tools, standards, and roles that have to be followed in projects. However, it was identified that only clear, yellow, and orange variants have been constructed and used. Gorschek et al. (2017) discuss the Crystal family methodologies with a focus on their contextual differences and the impact on processes and activities. While Crystal clear is meant for the smallest projects requiring teams of a maximum of eight people, yellow, orange, and red accommodate a maximum of 20, 50, and 100 members, respectively (Zamudio et al., 2017). In this regard, teams using Crystal clear and orange can share office space as they have limited communication structures.
The crystal clear method is meant for small-sized projects based on the minimal number of team members. However, Crystal orange projects tend to be medium-sized and may be split up into several functional groups (Pressman & Maxim, 2015). Still, the Crystal orange method does not meet the requirements for a distributed development environment, which would only be possible in Crystal red (Stoica et al., 2013). The emphasis on Crystal orange and yellow is the time-to-market concept. However, unlike in the case of Crystal clear and yellow, it would be difficult to achieve a trade-off between rapid change in project design and extensive deliverables in Crystal orange and red (Kulkarni et al., 2017). This is because of the difficulty in maintaining an efficient communication system between the groups.
The main roles required in Crystal clear can be held by individuals such as a sponsor, coordinator, business expert, designer, and user (Bhuvaneswari & Prabaharan, 2013). In this case, one business expert is enough to complete the designed plan. However, each role in Crystal orange and red suggest the need for a wide range of subordinates required to fulfill the project. These subordinates are, therefore, put in several smaller teams to undertake different functions such as system architecture and project mentoring (Ozkan et al., 2020). Accordingly, these teams can be further divided to form cross-functional groups with related roles.
Discussion
In the creation of the Crystal family of methods, the focus was to develop guidelines that would encourage team collaboration and communication. This marked a shift from step-by-step project strategies, used in the past. The results, therefore, agree with Unhelkar’s (2016) argument that Cockburn’s Crystal methods are all team-based. There are three features of Crystal methods that are evident in both the literature review and the results of this study: human-powered, adaptive, and ultralight. In the case of being human-powered, people are presented as an important part of the processes and tools involved in Crystal methods. The finding that project development is human activity is supported by Vijayasarathy and Butler (2015) who state that processes should be designed to fit the needs of the team members and not in the opposite manner. It, therefore, means that teams should be self-organizing and self-sufficient to become more competent.
Another feature of Crystal methods that is evident in both the results and previous literature is adaptiveness. From, Abrahamsson et al.’s (2017) perspective, Crystal is more of an approach than prescribed tools and techniques for fulfilling projects. It means that the said processes and tools can be adjusted depending on the needs of an individual project. These findings support Alam et al.’s (2017) argument that each project is unique, and that the choice of method must meet both business and technical requirements. The last feature of the Crystal method is being ultra-light. According to the results, the Crystal family comprises lightweight methodologies. This observation is a reflection of Cockburn’s (2000) statement that Crystal advocates for less documentation and reporting. Things have to be kept light with much focus put on producing a business-valued project.
For every project using the Crystal methods, the project’s business and technical requirements are used in the determination of the appropriate processes and tools. Sunner’s (2016) list of the determinants of project size and criticality, guides the project needs. Due to methodological differences in the Crystal family, Zamudio et al.’s (2017) argument that the methods have different weights represented by different colors stands valid. To clarify, Crystal clear is used in smaller projects requiring up to six team members. On the other hand, Crystal orange can be applied in projects requiring teams of between 10 and 40 members (Kulkarni et al., 2017). The extent of these requirements increases from Crystal clear to Crystal red and higher variants. Therefore, both the literature review and the findings agree that the weight of the Crystal method relies on the team size and project environment.
For practitioners, the Crystal family of methods tends to be more flexible and agile. One of the advantages that come with using these methods is effective team communication, which is an important component of successful projects. The methodologies also guide teams in the management of communication regardless of the team sizes, therefore providing sufficient risk control. In this sense, it is best suited for organizations seeking to empower crew members to work in whichever way they find effective (Flora & Chandle, 2014). However, the notion of direct staff collaboration and less documentation and reporting should not result in less visibility of some members in the team’s progress.
Conclusion
Crystal methodologies are designed for projects with varying team sizes. Given the attention put on the size of the team, smaller teams adopt the clear variant as larger teams use yellow, orange, or red variants depending on the specifications of the project. Crystal methodologies focus on ensuring that project developers use the lightest method with the capability of producing excellent outcomes. The Crystal family methods for project development are widely discussed in the literature as a model with the potential of meeting the needs of today’s fast-paced projects. This study adds to the available research, therefore, helping project developers to make informed decisions regarding project life cycles and the roles to be undertaken by team members.
The limitations of this research are that it is a literature review, not able to assess the use of the methodologies in practical settings. The studies were not anyhow analyzed for validity or categorized thematically. Crystal methods have proven to be successful for project management. It is however important for the developer to assess the project requirements before settling on the most suitable approach, which is not constraining or intrusive. There is no best technique; instead, teams tend to shape and put the best approach to use depending on the goal of the project. It can be an area of future research to find either universal applications to the Crystal methods or develop frameworks that are more fitting to modern-day project requirements. Another concept to consider is adoption costs and challenges since the research is limited and the gap between traditional methods and agile development is still far apart in practice.
References
Abrahamsson, P., Salo, O., Ronkainen, J., & Warsta, J. (2017). Agile software development methods: Review and analysis [PDF document].
Aitken, A., & Ilango, V. (Eds.) (2013). A comparative analysis of traditional software engineering and agile software development. In 2013 46th Hawaii International Conference on System Sciences (pp. 4751-4760). IEEE.
Alam, S., Nazir, S., Asim, S., & Amr, D. (2017). Impact and challenges of requirement engineering in agile methodologies: A systematic review. International Journal of Advanced Computer Science and Applications, 8(4), 411-418.
Anwer, F., Aftab, S., Waheed, U., & Muhammad, S. S. (2017). Agile software development models tdd, fdd, dsdm, and crystal methods: A survey. International Journal of Multidisciplinary Sciences and Engineering, 8(2), 1-10.
Ashmore, S., & Runyan, K. (2014). Introduction to agile methods. Addison-Wesley Professional.
Atawneh, S. (2019). The analysis of current state of agile software development. Journal of Theoretical and Applied Information Technology, 97(22), 3197-3208.
Bhuvaneswari, T., & Prabaharan, S. (2013). A survey on software development life cycle models. International Journal of Computer Science and Mobile Computing, 2(5), 262-267.
Cockburn, A. (2000). Selecting a project’s methodology. IEEE Software, 17(4), 64-71.
Davies, A., & Mueller, J. (2020). Project development methodologies, management, and data modelling. In Developing medical apps and mhealth interventions: A guide for researchers, physicians and informaticians (pp. 25-73). Springer.
Despa, M. L. (2014). Comparative study on software development methodologies. Database Systems Journal, 5(3), 37-56.
Flora, H. K., & Chande, S. V. (2014). A systematic study on agile software development methodologies and practices. International Journal of Computer Science and Information Technologies, 5(3), 3626-3637.
Hamed, A. M., & Abushama, H. (Eds.) (2013). Popular agile approaches in software development: Review and analysis. In 2013 International Conference on Computing, Electrical and Electronic Engineering (pp. 160-166). IEEE.
Ibrahim, M., Aftab, S., Bakhtawar, B., Ahmad, M., Iqbal, A., & Aziz, N. I. (2020). Exploring the agile family: A survey. International Journal of Computer Science and Network Security, 20(10), 163-179.
Keshta, N., & Morgan, Y. (Eds.) (2017). Comparison between traditional plan-based and agile software processes according to team size & project domain (A systematic literature review). In 2017 8th IEEE Annual Information Technology, Electronics and Mobile Communication Conference (IEMCON) (pp. 567-575). IEEE.
Kulkarni, R. H., Padmanabham, P., Harshe, M., Baseer, K. K., & Patil, P. (2017). Investigating agile adaptation for project development. International Journal of Electrical & Computer Engineering, 7(3), 1278-1285.
Kumar, G., & Bhatia, P. K. (2012). Impact of agile methodology on software development process. International Journal of Computer Technology and Electronics Engineering (IJCTEE), 2(4), 46-50.
Ozkan, N., Gök, M. Ş., & Köse, B. (Eds.) (2020). Towards a better understanding of agile mindset by using principles of agile methods. In 2020 15th Conference on Computer Science and Information Systems (pp. 721-730). IEEE.
Pressman, R., & Maxim, B. R. (2015). Software engineering: A practitioner’s approach. McGraw-Hill.
Stoica, M., Mircea, M., & Ghilic-Micu, B. (2013). Software development: Agile vs. traditional. Informatica Economica, 17(4), 64-76.
Sunner, D. (Ed.) (2016). Agile: Adapting to need of the hour: Understanding agile methodology and agile techniques. In 2016 2nd International Conference on Applied and Theoretical Computing and Communication Technology (pp. 130-135). IEEE.
Unhelkar, B. (2016). The art of agile practice: A composite approach for projects and organizations. CRC Press.
Vijayasarathy, L. R., & Butler, C. W. (2015). Choice of software development methodologies: Do organizational, project, and team characteristics matter? IEEE Software, 33(5), 86-94.
vom Brocke, J., Simons, A., Riemer, K., Niehaves, B., Plattfaut, R., & Cleven, A. (2015). Standing on the shoulders of giants: Challenges and recommendations of literature search in information systems research. Communications of the Association for Information Systems, 37(9), 205-224. Web.
Zamudio, L., Aguilar, J. A., Tripp, C., & Misra, S. (Eds.) (2017). A requirements engineering techniques review in agile software development methods. In International Conference on Computational Science and Its Applications (pp. 683-698). Springer.