Tailoring an Analysis Approach for Developing Evolvable Software Systems: Experiences from Three Case Studies
The analysis, design and implementation of information systems in a changing environment poses significant challenges. Normalized Systems (NS) theory specifically aims to develop software which can cope with these challenges by strictly adhering to theoretically proven design principles and expanding a large part of the code in a highly structured way. One practical implication is that initial prototypes created during the analysis phase can evolve into production-ready applications using incremental refinements. However, little guidance is available on how to perform a (non-technical) functional analysis in a way which leverages the specific advantages of NS software. This paper therefore proposes an NS-specific analysis approach in terms of modeling aspects, project milestones, and stakeholder management. This approach is based upon the inductive analysis of three real-life NS cases performed in different industries. Based on the experiences in these cases, we reflect on the benefits and challenges of our approach. Further, we highlight how our approach can be supplemented by existing analysis and project management frameworks (such as domain-driven design, prototyping and agile development) and how NS software development facilitates the actual realization of these trends.