The software architecture of systems contains vital information for both functional and nonfunctional requirements of system stakeholders. Software systems are designed and implemented with respect to their architectures in mind. Hence, architecture conformance analysis is important to ensure that the implemented system has not deviated from the intended architecture and thus the requirements.Software architectures can be used when guiding software development, communicating between stakeholders, deciding on organizational structures and analysing software systems. Therefore, deviating from intended software architecture can create both organizational and system-wise flaws.
Domain Driven AnalysisIn order to answer RQ3 in chapter 5, we adopted a domain-driven analysis methodology. A well-known process for analysing and modelling the current state of the art of a particular domain is domain analysis. Domain analysis is the process of identifying and capturing domain knowledge about the problem domain with the purpose of making it reusable when creating new systems [41][46][53][84]. The aforementioned domain refers to "an area of knowledge or activity characterized by a set of concepts and terminology understood by practitioners in that area". Like many application domains Big Data has become a very important driver for innovation and growth for e-government which aims to automate the public services to citizens. In general, e-government systems are often characterized as big data systems in which data storage and processing is one of the business-critical concerns. However, different features are required for different e-government systems, and likewise the corresponding big data architectures will need to be different as well. In this chapter, we present a systematic approach for the design of various big data architectures within the e-government domain. In this context, we adopt a big data reference architecture with a variability model for big data systems and e-government systems. We discuss the design decisions, the experiences and the lessons learned for deriving application architectures for different e-government systems.