Chapter 9 Architecture Alignment. 9 – Architecture Alignment 9.1 Introduction 9.2 The GRAAL Alignment Framework  9.2.1 System Aspects  9.2.2 The Aggregation.

Slides:



Advertisements
Similar presentations
Chapter 7 System Models.
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
© Gerald Kotonya and Ian Sommerville Viewpoint-Oriented Requirements Methods.
Design Concepts and Principles
CS540 Software Design Lecture 1 1 Lecture 1: Introduction to Software Design Anita S. Malik Adapted from Budgen (2003) Chapters 1.
An Integrated Approach to Enterprise Architecture LIACS, Martijn Wiering 23 juni ‘04.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 5: Restaurant.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
7M701 1 Software Engineering Systems Models Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 7 (some items)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
©Ian Sommerville 2000Software Engineering, 6/e, Chapter 71 System models l Abstract descriptions of systems whose requirements are being analysed.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
7M822 Software Engineering: System Models 14 September 2009.
Foundations This chapter lays down the fundamental ideas and choices on which our approach is based. First, it identifies the needs of architects in the.
Course Instructor: Aisha Azeem
Introduction to Computer Technology
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Why Analysis Process Refer to earlier chapters Models what the system will do makes it easier for understanding no environment considered (hence, system.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Chapter 8 Architecture Analysis. 8 – Architecture Analysis 8.1 Analysis Techniques 8.2 Quantitative Analysis  Performance Views  Performance.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
An Introduction to Software Architecture
ArchiMate Authors : eSchoolink Group - ITNLU. Contents 1. What’s ArchiMate ? 2. Why ArchiMate ? 3. Main Benefits of ArchiMate 4. Layers of ArchiMate 5.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Architecting Web Services Unit – II – PART - III.
©Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
SOFTWARE DESIGN.
Copyright 2002 Prentice-Hall, Inc. Chapter 2 Object-Oriented Analysis and Design Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
Chapter 6 – Architectural Design CSE-411, Dr. Shamim H Ripon.
Chapter 7 System models.
Slide 1 System models. Slide 2 Objectives l To explain why the context of a system should be modelled as part of the RE process l To describe behavioural.
System models l Abstract descriptions of systems whose requirements are being analysed.
Pertemuan 19 PEMODELAN SISTEM Matakuliah: D0174/ Pemodelan Sistem dan Simulasi Tahun: Tahun 2009.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 05. Review Software design methods Design Paradigms Typical Design Trade-offs.
Object-Oriented Software Engineering - The professional Developer’s Guide(on OMG’s OOA/OOD proposal) George Wilkie.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Chapter 6 – Architectural Design Lecture 1 1Chapter 6 Architectural design.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
1 Software Design Lecture What’s Design It’s a representation of something that is to be built. i.e. design  implementation.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
 To explain why the context of a system should be modelled as part of the RE process  To describe behavioural modelling, data modelling and object modelling.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Wrap up. Structures and views Quality attribute scenarios Achieving quality attributes via tactics Architectural pattern and styles.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Design Concepts ch-8
Object-Oriented Analysis and Design
Architecting Web Services
Architecting Web Services
Lecture 9- Design Concepts and Principles
Software Quality Engineering
Abstract descriptions of systems whose requirements are being analysed
Chapter 20 Object-Oriented Analysis and Design
Lecture 9- Design Concepts and Principles
An Introduction to Software Architecture
Presentation transcript:

Chapter 9 Architecture Alignment

9 – Architecture Alignment 9.1 Introduction 9.2 The GRAAL Alignment Framework  System Aspects  The Aggregation Hierarchy  The System Process  Refinement Levels  Comparison with Other Frameworks 9.3 Alignment Phenomena  Service Provisioning Layers  Infrastructure Architecture

9 – Architecture Alignment Architecture alignment is the problem of designing architectures at the infrastructure, application, and business levels such that each fits optimally with the other architectures.

9.1 Introduction Our goal is to derive operational guidelines for aligning IT architecture with business architecture. At the time of writing, we have performed six case studies in various organisations. The idea at the start of the project was to derive guidelines in the form of patterns of well-aligned software applications that occur in different organisations.

In order to be able to do a comparative analysis, we need a conceptual framework that allows us to describe in a uniform manner any alignment phenomena we find in different organisations 9.2 The GRAAL Alignment Framework

A conceptual framework is a collection of concepts and relations among them that can be used to describe phenomena. After almost ten years of using the framework in describing IT architectures, the framework is now reduced to four simple dimensions. System aspects: externally observable properties. System aggregation: the composition of complex systems from simplersystems. Systems process: the life of a system from creation to disposal. Description levels: refinement.

9.2.1 System Aspects An analysis of a large number of software design techniques has resulted in a simple classification of relevant software aspects, shown in Fig. 9.1 (Wieringa 1998b). A system offers services to its environment; quality properties characterise the value that the system provides for stakeholders by the services it offers.

9.2.2 The Aggregation Hierarchy

Rethinking the concept of aggregation, we identify the following two characteristic features : Rethinking the concept of aggregation, we identify the following two characteristic features (Wieringa 2003, p. 234). Consider a component C of an aggregate A. To say that C is a component of A means the following:

Service provisioning: C provides a service to A. In other words, C plays a role in the realisation of the services of A itself. Encapsulation: An external entity, i.e., an entity that is not a component of A, can only interact with C through the interface of A. In the physical world, this means that A provides a protective cover for C. In the social world, this means that C is ‘owned’ by A, so that an interaction with C is always also an interaction with A. In the symbolic world of software, this means that an interaction with C requires interaction with the interface offered by A to its environment.

9.2.3 The System Process The third dimension of the GRAAL framework consists of the stages that a system goes through in its life, from conception to creation, use, and disposal

9.2.4 Refinement Levels

9.2.5 Comparison with Other Frameworks Zachman distinguishes three kinds of descriptions, the data, process, and network description which correspond, roughly, to our meaning, behaviour, and communication aspects. Kruchten’s 4+1 model (Kruchten 1995), described in Sect , defines the logical and process views of a software system, which correspond roughly with our aggregation dimension and behaviour view, respectively. The two basic abstraction operations of focusing on aspect systems and focusing on a subsystem correspond to the two semantic data modelling operations of generalisation (reducing the number of aspects considered) and aggregation (considering an overall system)

9.3 Alignment Phenomena In the various case studies we have carried out, we have attempted to identify general alignment phenomena. In the next subsections, we present our observations. We formulate a number of propositions that try to generalise from these observations.

9.3.1 Service Provisioning Layers All cases studied by us use a layered architecture that distinguishes at least software applications from software infrastructure. Our generalisation of the many different examples that we saw is shown in Fig. 9.6.

This figure gives a three-dimensional classification of system views, which we used in all our case studies. The success in using this framework to analyse IT architectures in different organisations leads us to our first proposition:

9.3.2 Infrastructure Architecture

9.3.3 Business System Architecture

9.3.4 Strategic Misalignment

The result is a strategic misalignment that is hard to repair. This misalignment is aggravated because the business system development process is usually out of phase with the infrastructure development process. Business systems are (re)developed when the business calls for it; for example, because users ask for it.

9.3.5 Conway’s Law

9.3.6 The FMO Alignment Pattern

9.4 The Architecture Process Alignment is not just a matter of correctly coupling the diverse types of systems in the social, symbolic, and physical worlds of an enterprise, but also a matter of adjusting the development and management processes re- sponsible for these systems.

9.4.1 Methods The architecture design methods in the organisations studied by us were all based on information engineering, itself a method developed in the 1970s (Martin 1982, 1989, van der Sanden and Sturm 1997).

9.4.2 IT Governance IT governance is the activity of controlling IT. It consists of making decisions about acquisition, change, and disposal of IT, as well as monitoring IT performance data in order to be able to control IT more effectively and efficiently. IT governance is part of corporate governance.

The architecture of a business system layer is designed with global cost reduction in mind. This always requires reuse of components in different systems, or the imposition of standards that globally make sense but locally may seem awkward to follow. When an individual system is designed, the project manager or business unit manager responsible for the project will always find good reasons why this globally optimal design is not optimal for his or her system, and will try to get around the global architecture. The only way around this tension is to make the project manager directly accountable to someone responsible for maintaining the global architecture, such as the chief CIO in Fig

9.5 Summary We presented a framework for describing alignment phenomena consisting of three system dimensions: system aspects (services, behaviour, communication, semantics, and quality), system aggregation, and system life cycle states. In all these organisations, IT architecture has a layered service provision structure. The infrastructure layer contains systems that must be available for all users; the business system layer contains systems available for particular business processes.

9.5 Summary Business systems have a tendency to gravitate towards the infrastructure layer. Because infrastructure is driven, among others, by the business strategy, and the business system layer is driven primarily by the actual business operations, there is usually a misalignment between these two layers. Most organisations structure their infrastructure layer into a number of technology domains, and structure their business system layer into a number of business domains. This roughly corresponds to a front/mid/back-office structure where the front office contains the business-specific systems and the back office contains generic, white-label systems.