Service Provision Layers


© Roel Wieringa (

The GRAAL project ( 

University of Twente, the Netherlands

15 November 2004


This text in pdf format


The highest-level architectural structure applied in all companies that we visited is a setof service-provisioning layers. The followiung diagram shows the greates common denominator of these architectures, and relates it to the three worlds of the alignment problem.


Each layer in this diagram represents a set of entities that provides services to higher-level entities. For example, the physical infrastructure contains physical entities such as computers, cables and user-interface devices that provide services to the software infrastructure, to business systems, to users in the business, and in some cases even to customers of the business.  The layers are defined in GRAAL as follows.

  • Business environment: Actors in the environment to which the business provides services.
  • Business: The organization used to provide business services.
  • Business systems: Software applications and information systems used to support particular business processes.
  • Software infrastructure: Generally available software to support business systems and the business. This includes operating systems, middleware, database management systems, workflow management systems, web servers, file servers, but also may include office software.
  • Physical infrastructure: Generally available physical entities used by any higher layer in the diagram. This includes computers, cables, wireless access points, printers, and user interface devices to support the running of software, but it also includes the electricity network, the central heating system, water supply and disposal,  the road network, buildings, manufacturing plants, machines and all other physical assets of a business. Note that this is the world of  engineering—other than software engineering.


Entities at each level are systems in the general sense of the word. They provide services at a certain quality level. The power of the GRAAL framework becomes apparent if we apply the system aspects of the framework all layers.


Entities at all layers have any of the aspects. In the entries of this table examples of aspects of entities at these layers have been mentioned. Note that the physical world in itself has no semantics, and so the data cell is empty at the physical layer. Note also that the word ``physical'' is used in data management to indicate implementation-level structures.


The entries of this table give examples of  properties of entities at each layer of our framework. Each of the layers in the diagram not only has many kinds of properties, it als has many different aggregation levels—another dimension of the GRAAL framerwork. To use a metaphor from the physical world, we can consider the physical infrastructure at the national level, the city level, the precinct level, the neighborhood level, and at the level of a single building or even a part of a building. Similar differences in scope at which we consider design problems exist at all layers in the diagram.


We can also combine the table with the refinement dimension of the GRAAL framework. At each level, we can describe each entity in a very abstract way (e.g. its mission and broad responsibilities) or in a very detailed way (all its transactions, and the precise data structures exchanged). Which abstraction level is applied depends on the interests of the audience.



  1. F. Buschmann, R. Meunier, H. Rohnert, P. Sommerlad, and M. Stal. A System of Patterns: Pattern-Oriented Software Architecture. Wiley, 1996.