Information technology has had a profound influence on business and society. Decades of software implementation have created complex IT landscapes which are less flexible than current business needs require. New technologies and the increased use of technology in social traffic both add possibilities and create challenges to the evolvement and governance of IT.
The field of architecture provides a way to manage complexity and risk and presents views of the problem and solution that can be understood by various parties. This book describes an architectural approach and a reference architecture to address these possibilities and challenges.
Organizations who want to introduce new business models and technologies (i.e. create a stable innovation platform) need an IT landscape supporting both flexibility as well as regulatory demands. In this chapter this is explained in more detail based upon two existing models, the Architectural maturity by means of the Ross model and Governance by means of the Crown model. Both models provide the foundation for the layering of the CORA model.
In a lot of cases the IT landscape is very rigid and strictly based upon (locally implemented) business processes and organizational structures. Changing both to support new business models and technology is not easily met and has major impact on the organization as well as in the IT landscape and accordingly on IT budgets.
Architecture defines an integrated and highly structured instrument to align Business & IT and keep them aligned. This helps organizations to make decisions based on requirements, through visioning them into a coherent style or structure.
The CORA model is needed to adapt new technologies and concepts in a controlled way because it guides the necessary connections between an Enterprise Architecture, a Software Architecture at Enterprise level and Software Architecture(s) at project level.
This is especially important when software from more than one vendor is being used. This is because many vendors deliver reference architectures crafted to their own solutions and/or platforms. It counts even more when a mixture of Package Based and non-Package Based Solutions is used to deliver a solution.
The CORA model delivers a reference model for grouping application capabilities on Enterprise level and a detailed description of each capability on Software Architecture level. When designing a specific organizational Enterprise Architecture the CORA model can be used as a basis for selecting the relevant logical capabilities and translating them into needed physical capabilities.
The CORA model can be used for an IT landscape consisting of both Package Based solutions (PBS) as well as non PBS components. Special care must be taken when a PBS needs to be integrated in a multi-vendor and multi-component solution because a PBS can be implemented using a mixture of capabilities which might support varying architecture styles (Client-Server, SOA and/or ROA).
One of the main aspects of the CORA model is the vendor agnostic approach that is needed to design and deliver integrated IT solutions successfully. This approach does not only apply to enterprise architecture but also to the level of projects. The software engineering process needs to take into account the fact that components from different vendors and technologies can/must be used to implement the requested functionality.
The start of a new IT project is the result of the need for changed or new functionality. Different roles in the project team interact to make a feasible solution, which aligns with the needs as required by the business. Within this context it is shown how the CORA can be used within an IT project.
In the previous chapters it is explained how the CORA model can be used as an instrument describing architecture assets on Enterprise Architecture level which are input for the Software Architecture on Enterprise level as well as on project level. These assets needs to be governed in a proper way.
After introducing different types of governance is it described how architecture design, project implementation and governance are connected. Next some additional governance and project management aspects with regard to the SOA/ROA architecture styles are briefly mentioned including the way the CORA can be extended to support these.