Keywords

1 Introduction

Cloud solutions and use of business intelligence tools have transformed the landscape of information systems from relatively rigid internal architectures to more flexible and open structures of information handling [1, 2]. This refers to more flexible distribution of physical devices as well as possibility to acquire real time data that can be used for introducing changes in business and information technology solutions. The question arises how these abilities of information technology solutions can be represented in information systems architectures so that complexity that increases with the introduction of higher variability and flexibility could be embraced and managed.

While business, software, and hardware systems are very different, the mechanisms used in their analysis and management do not differ so much. For instance, similarities can be found in the actor based approaches in business analysis and actor based approaches in parallel programming. Moreover, according to our experience [3, 4] - data acquisition and analysis methods for big data analysis in social networks can be compared with similar methods in computer networks. These similarities suggest to seek for common architecture patterns that could be used in business and information technology domains, since the information systems processes cross both domains.

In this paper we propose to use the work systems paradigm introduced by St. Alter [5], and several types of architecture frames as the basis for reflecting architecture of information systems. St. Alter has suggested the work systems paradigm after analyzing more than 20 different information systems definitions. He defines a work system as a system in which human participants and/or machines perform work (processes and activities) using information, technology, and other resources to produce specific products and/or services for specific internal or external customers. This paradigm gives an opportunity to focus on common structural features of handling information at business, software application, and technical device levels as well as to use inclusion relationship between work systems belonging to aforementioned levels. These structural commonalities of information handling at different levels of abstraction are rarely addressed in contemporary research of information systems engineering. Therefore the aim of this paper is to discuss usage of them in information systems engineering, especially in the context of information systems for viable enterprises.

The paper is structured as follows. We discuss related work in Sect. 2. In Sect. 3 we propose several frames for analyzing information system issues in viable enterprises. In Sect. 4 we discuss the benefits of viewing information system architecture as a fractal architecture composed of multiple work systems. Brief conclusions and directions of further research are presented in Sect. 5.

2 Related Work

The approach proposed in this paper is based on three main sources of related work, namely, on the work systems theory [5], contemporary applications of viable systems model [68], and use of fractal paradigm in information systems development [9, 10].

According to Steven Alter [5] “an information system is a work system whose processes and activities are devoted to processing information, that is, capturing, transmitting, storing, retrieving, manipulating, and displaying information. A work system is a system in which human participants and/or machines perform work (processes and activities) using information, technology, and other resources to produce specific products and/or services for specific internal or external customers”. The customers can be external customers of the enterprise as well as internal customers (one sub-work system has produced information valuable for another sub-work system). The work system is embedded in its environment, and depends on organizational strategy and infrastructure (see Fig. 1). The goal(s) of the work system (or the results produced by the work system) depend on the organizational strategy; while the way how they are achieved mainly depends on the enterprise environment and available infrastructure.

Fig. 1.
figure 1

Work system behind the process (the triangle in the figure is adopted from [5])

Thus, we can state that behind each organizational process there is a work system. From the modeling perspective, there is a real or virtual work system behind of each business process at any level of abstraction or decomposition. On another hand, for each business process there can be identified an information processing sub-process (or activities that themselves perform the transformation of inputs into outputs and therefore can be regarded as processes, which produce information). Thus, using Alter’s work system paradigm it is possible to identify information systems architecture that consists of work systems that are structured according to the chosen model of representation of business processes. This issue will be discussed in more detail in the next section.

Contemporary applications of viable systems model show that an enterprise has to handle its internal work systems as well as it has to have good environment scanning capabilities [68]. For the enterprise to be viable, its internal units have to have a measure of autonomy and it should be organized as fractals [9]. Figure 2 shows traditional outlook of viable systems model consisting of five so-called Systems. Each “ONE” in System 1 corresponds to processes that bring value to enterprise customers. According to viable systems model, the “ONE” recursively can be represented by similar viable systems model of a smaller scale. Such structure enables flexibility that is essential to ensure agility of enterprises. More details about Systems of viable systems model are given in Sect. 3.

Fig. 2.
figure 2

Viable systems model (adapted from http://www.wikipedia.org): a process perspective. Dotted lines with arrowheads show the algedonic channel in viable systems model. Interrupted lines without arrowheads refer to the highest level of abstraction of viable systems model

Thus, according to the viable systems model, for the value adding (System 1) and strategic processes (System 4) of the enterprise, i.e., processes that are directly related to the external environment, we can distinguish at least three sub-processes: production (transforming given inputs into given outputs), environment scanning, and internal control or management (see Fig. 2). In this paper we extrapolate that such three sub-processes are applicable to any process in an enterprise, because also other processes (e.g., enabling processes and different management processes) have to scan their environment inside the enterprise.

The application of viable systems model for contemporary enterprises is a multidisciplinary research topic, which is out of the scope of this paper. Hereby we just borrow the idea of necessity to be aware of external environment, to produce the value, and to be able to manage itself (quality management, change management, etc.) for each autonomous unit (we regard the process as an autonomous unit here). Another issue is that while the viable systems model has a fractal architecture, the fractal architecture of information systems proposed in this paper is viewed from the point of view of an information system as a subsystem of an enterprise, not just from the point of view of operational fractals of the viable systems model.

‘Fractality’ has been introduced as a watchword for a new way of thinking about the collective behavior of many basic but interacting units. Fractality, thus, is regarded as the study of the behavior of macroscopic units that are endowed with the potential to evolve in time. Their interactions lead to coherent collective phenomena, so-called emergent properties that can be described only at higher levels than those of the individual units. Fractal theory is based on relationships, emergence, patterns and iterations [11]. It is used to describe structure and processes of flexible, adaptive and evolving systems. Fractal theory is applied in biomedicine, fractal geometry, mathematics, statistical analysis, signal analysis, image analysis [12], manufacturing [13], product design [14] enterprise development [1517], software development [18], and other areas. The above-discussed variety of applications of fractal paradigm suggests that it can be suitable for information systems engineering in the context of viable enterprises, on which we focus in this paper [19], because the main peculiarity of information systems is interplay of many different natural and artificial systems that influence each other from various viewpoints and at different levels of scale. Computerized part of the information systems may consist of different software and hardware (sub)systems that are related by supporting various organizational processes and individual requests. This computerized information (sub)system may be directly or indirectly used by other components of the information system, namely, particular human actors and components (software and hardware) of other information systems [18].

The most common properties of fractal systems are self-similarity, self organization, goal-orientation, and dynamics and vitality [13]. These properties well align with the viable systems paradigm.

Selfsimilarity may manifest in different ways. For instance, fractals are called “self-similar” if they can produce the same (at a particular level of conceptual abstraction) outputs with the same inputs regardless of their internal structure. However, self similarity may be observed also in the architecture of components at different levels of abstraction, e.g., the same architecture patterns can emerge at smaller and larger granularities in information systems architecture. Further in this paper we will not use the concept “pattern” (commonly applied in literature on fractal systems) regarding the architecture. We will use the concept “frame” instead or the concept “pattern” to avoid misunderstandings with respect to the way how particular architecture constructs are derived.

Self-organization means ability to apply methods for controlling processes and workflows within fractals, and optimizing the composition of fractals in the system.

Goal-orientation means that fractals perform a goal-formation process to generate their own goals by coordinating processes with participating fractals and by modifying the goals as necessary. To coherently achieve their goals, goal consistency supported by an inheritance mechanism should be maintained.

Dynamics and vitality is a property that characterizes high individual dynamics and ability to adapt to a dynamically changing environment by cooperation and coordination between self-organizing fractals.

Besides these properties there are some other properties of fractal systems that are essential in the context of information systems of viable enterprises. One of such properties is emergence. Information systems depend on user requirements, organizational structure of enterprises, relationships between enterprise partners, suppliers, and clients. All of them are influenced by external environment, therefore requirements change in apparently random rather than planned way which in turn introduces the same type of changes in the information systems. Requisite variety is also mentioned among the properties of fractal systems. This property is very important for embracing the variety by providing appropriate variability in information systems services [20]. Connectivity is an essential property, too. The very existence of an information system is needed because of information it can provide. The components of the information system are related by physical or virtual information channels. Without these channels the information system does not exist. Simple rules is one more property often related to fractal systems. With passing of time we can see how very complex structures and processes (e.g., centralized databases, ERP) are gradually replaced by simpler, more loosely coupled alternatives e.g., data warehouses, distributed databases, service oriented architectures, etc.).

In this paper we focus our discussion to self-similarity issues. And we handle this property from the point of view of structure of processes and architecture components behind of these processes. We use concept “frames” to refer to these structures. The architecture frames and sub-frames here are regarded as work systems that perform different types of processes.

3 Self-similarity via Frames

In this section we discuss several frames that can be used to implement continuous changes in information systems that support viable enterprises. The frames represent structural (self)similarities. We assume, that utilization of these similarities can simplify identification and implementation of changes continuously. We start with information flow frames of viable systems, then proceed to information flow frames using constructs of three level enterprise architecture, and we conclude with process and agent frames for viable systems.

The frames of information flows in the viable systems model are identified on the basis of the viable systems model communication channels described in [8]. They represent the minimum of information flows prescribed by the viable systems model. The flows are reflected using ArchiMate enterprise architecture language [21] by dotted lines with arrowheads. Solid lines as well as placement of one box into another one show the aggregation relationships. Two alternative ways of representing aggregation are used to achieve better view on information flows. The representation is made solely from the functional perspective. The information flows here are shown for one only fractal level of the viable systems model. The channels between different fractal levels will not be fully reflected [8]. In the most of cases the representation is limited to one-step flows and one flow in one direction only to keep the models as simple as possible. The content of the flows is not considered in this paper. In the presentation of frames the viable systems model’s Systems are briefly described to provide the context for the flows.

System 1 (S1) in the viable systems model is responsible for such functions as production and delivery of the enterprise’s goods or services to the pertinent environment. It may consist of several operational units which in turn consist of smaller scale operational and managing units. Figure 3 reflects information flows around the functions of the S1.

Fig. 3.
figure 3

Frame for flows in System 1 (adopted from [22])

Figure 3 shows that functions of S1 are strongly dependent on various information flows inside and outside the S1 [22]. According to [8] these are information flows that concern the Management System (System 3 (S3) and its information System 3* (S3*) for receiving instructions (from S3 and S3* to Operational Unit i (OUi ) of S1), for accountability (from OUi to S3 and S3*), and resource bargaining; the flows to and from specific environment (including market of products and addressees of services of OUi); the flows to and from regulatory units of OUi from the System 2 (S2) - coordination for OUi and coordination for other units OUj of S1; the information flows to and from other operational functions of S1; the flows to and from managerial functions of other operational units of S1; and the flows to and from the Meta-system (the next fractal level). It is essential that all abovementioned units (except of the Meta-system) are represented as functions, i.e., they are performer free at the particular perspective of consideration. This applies also to all other viable systems model Systems, which are discussed in the remainder of this section.

Typical functions of System 2 (S2) are associated to personnel policies, accounting policies, legal requirements, programming of production, organizational norms, etc. [8]. Here the decisions concerning particular structure of S1 can be made. Information flows for S2 are reflected in Fig. 4.

Fig. 4.
figure 4

Frame for information flows for System 2

System 3 (S3) functions as an operational management of the enterprise. System 3* (S3*) supports S3. S3 has to integrate operational units of S1, ensure that S1 functions harmoniously and exploits synergies that might appear in S1. S3 assigns goals for each operational unit of S1 in cooperation with System 4 and in conformity with System 5 [4]. The main function of S3* is ensuring the completeness of information, which reaches S3. Information flows for S3 and S3* are reflected in Fig. 5. S3 is threefold supported by information about S1: directly from S1, via S2, and via S3*. This shows high importance of information completeness in managerial decisions. S3 has also information flows with System 4 and System 5. The information is used in tasks where several management system functions interact.

Fig. 5.
figure 5

Frame for information flows for System 3, System 3*, System 4, and System 5

The principal responsibility of System 4 (S4) is to identify and carry out, in a timely manner, internal changes necessary for the enterprise to remain viable. This system may exploit different tools for analyzing the environment and the impact of its changes on an enterprise (business intelligence tools, simulation, Delphi studies, etc.). The decisions made by S4 are produced in cooperation with S3 and under the approval of System 5. Functions of System 5 (S5) possess the highest authority in the enterprise. They must balance the present and future of the enterprise, establish and maintain the “identity” of the enterprise by, e.g., determining vision, mission, and strategic goals of the enterprise. The information flows for S5 are also reflected in Fig. 5.

The most complex information flows are for S1. Here we have to take into consideration that at the next fractal level the S1, being a viable system, may include all information flows reflected in Figs. 3, 4, and 5. One more issue to be taken into consideration is the necessity to have the information system support for each interaction reflected in Figs. 2, 3, and 4, i.e., specific interaction facilities are to be available to ensure needed exchange of information.

The distinction between different information flows in the enterprise architecture is done on the basis of the way of information processing and accessibility of the meaning of the data. The basic architectural constructs used in the frame for the analysis of information flows in the enterprise architecture are represented in Fig. 6.

Fig. 6.
figure 6

Frame for reflecting information flows by enterprise architecture (adopted from [22])

The frame for flow analysis is represented at three levels of abstraction according to ArchiMate language [21]. It is made for reflecting information flows between any two information processing elements, e.g., from Actor on the left to Actor on the right. At the technology level the information processing elements are Nodes; at the application level – Application Components; at the business level – Actors. The frame shows three Representations – one human and two application made ones, as well as three Meanings, the one for Actor on the left, the one for Actor on the right, and the official meaning which corresponds to organizational ontology, database schemes, or other codified shared organizational knowledge.

When considering any process, which includes information handling activities, there will be information flow between the natural or artificial elements handling the information in each couple of related activities. Depending on the information processing entity substance (human, software, or hardware), the flow will correspond to one of the sub-structures of the frame reflecting information flows (Fig. 6). The application of the frame gives an opportunity to ensure that all relevant architecture elements are in place for each case of information flow inside and between the processes.

As described in previous section, the viable systems model indirectly prescribes that each value producing unit has to handle sub-processes for being aware of its environment, for value production, and self-management. (see Fig. 2). Each of these sub-processes certainly needs information that, in turn, is supported by the information systems sub-processes (see View A in Fig. 7). These information systems sub-processes have to be supported by particular human or artificial information handling units that represent a specific part of information systems architecture. Thus there will be an information systems process behind of each business process as its sub-process (View B in Fig. 7). This information systems process may include information system sub-processes for environment scanning, value production, and self-management similarly as processes reflected in Fig. 2.

Fig. 7.
figure 7

Frame for information systems process as a sub-process of business process (View A - sub-process level dependency, View B - process level dependency)

The information systems processes are part of work systems that are handling them. Thus behind each information systems process, that supports business process, there is a work system capable of information handling for the particular process (see Fig. 8). The work system in Fig. 8 is a part of work system reflected in Fig. 1.

Fig. 8.
figure 8

Information systems work system behind the business process (via corresponding information systems process)

From the process point of view, all work systems behind information system processes are self-similar (according to the definition and explanation of notion ‘work system’ given at the beginning of Sect. 2); they have to have a measure of autonomy; and they are a part of a whole work system that supports all information processes in a an enterprise. Thus work systems that support business processes form a fractal architecture [7, 9] that can expose a high level of flexibility needed for agile and viable enterprises.

On another hand, information systems management also is a business process, thus the scanning of information systems environment, information production, and management of information system are sub-processes to be supported (recursively) by the information system. This applies to information systems processes at a high level of abstraction as well as to physical processes, such as cloud management or software development process management, or hardware cluster management [1, 2]. In all these cases the same type work system processes are present, just at different levels of scale and using information systems architecture elements of different substance (see Figs. 2, 6, 7, and 8).

The proposed fractal elements of the information systems architecture can be recognized at two dimensions: at the value production dimension and the work systems substance dimension. At the value production dimension we consider all business processes including their variants and value production oriented decompositions. Value production oriented decomposition is different from business process sub-process types reflected in Figs. 2 and 7. Value production decomposition means product oriented decompositions, e.g., the process “educate students” can be decomposed into sub-processes “educate students in chemistry” and “educate students in physics” (alternatively these can be viewed as process variants, too), the process “manufacture cars” can be decomposed into sub-processes “manufacture sport cars” and “manufacture city cars”, or, alternatively - “manufacture engine” and “manufacture navigation system”, etc. We use the value production dimension from the business perspective. From information system perspective, we use work systems substance dimension, where the work system can be considered as a virtual agent composed from human participants and computer systems: software, and hardware elements (Fig. 9). Thus, using inclusion relationship between systems of different substance, the virtual agent at the business level of enterprise architecture can be represented by a combination of elements of all substances (including different variants and decompositions still reflecting human actors as part of the work system); at the application level - as software (application software and/or systems software) together with hardware systems; as well as it can be represented as pure hardware systems with embedded information handling functions. Systems software (such as operating systems or data base management systems) can be attributed to application level or, as prescribed by enterprise architecture description language ArchiMate [21], at technology level (where hardware entities are considered as information processing elements). In other words, in virtual agent, we can distinguish between two types of sub-agents - human actors and computer systems. Computer systems include all different information handling entities excluding human actors; i.e. application and technology level elements of the frame reflected in Fig. 6.

Fig. 9.
figure 9

Frame for virtual actor: the related performers in the work system behind the process

Thus the virtual agent is composed of arbitrary structured human actors and computer systems. We assume that each human actor possesses at least partly identifiable natural knowledge and each computer system (arbitrary network of application and systems software, and hardware) possesses artificial knowledge. Artificial knowledge can be (1) built-in artificial knowledge that is transferred from human being to software or hardware component, e.g., by programming; and (2) artificially learned artificial knowledge, as computer systems with built-in machine learning capabilities can obtain knowledge without human assistance. Combination of this natural and artificial knowledge is an emergent knowledge of a virtual agent, which performs a process. Virtual agent that possesses particular emergent knowledge is capable to perform a particular information handling activity if it can do the following: It can perceive (recognize) input information; it can extract data from the input information; it can interpret the extracted data (turn it into the internally interpreted information); it “knows”, what information is expected to be produced; and it is able to produce output information in case relevant input information is available.

At the given level of abstraction the model presented in Fig. 9 does not prescribe any methods for detecting knowledge models of human actors and computer systems. We acknowledge also that obtaining models of human knowledge is only partly possible. However, the frame in Fig. 9 clearly shows that it is necessary to consider knowledge models built into computer systems to understand the capabilities of virtual agents. The frame has morphological flexibility, as it can represent any combinations of enterprise human actors and computer systems. It is applicable also in situations where the virtual agent consists of human actors only or computer systems only. The frame is applicable for use in fractal and viable systems, as the frame of virtual agent supports autonomy and self-organization and it does not change due to scaling or switching to another viewpoint of modeling [7].

4 Discussion

There are the following benefits from viewing information systems architecture as a fractal architecture composed of multiple work systems:

  • This helps to ensure that all business processes are supported by information system services (sub-processes for environment scanning, value production, and self-management). These services or sub-processes are essential for agile and viable companies as these companies have to cope with unpredictable changes in their environments.

  • Consideration of information systems architecture as a fractal system of work systems gives an opportunity to, at least, recognize (and if possible - manage) all actual virtual information system’s work systems supporting the business system regardless of ownership of software and hardware and regardless of functional boundaries of the enterprise.

  • Since the work system can be considered as a virtual system, the changes in the architecture can be introduced on a regular basis by combining the work systems or introducing their new versions at the needed level of abstraction or granularity, based on self-similarity principles of fractal systems [7].

  • While the particular concept of work system is introduced on the basis of viable systems model (Fig. 2) by considering its operational and strategic processes that have to directly analyze the external environment of an enterprise, still the concept is applicable also for business processes that do not belong to two abovementioned categories. Such approach enables to look beyond not only functional boundaries of an enterprise, but also to consider customers of the enterprise as partners and switch between physical and virtual boundaries of enterprises in modeling of information systems.

On the basis of frames discussed in the previous section it is possible to define the procedure for requirements acquisition for continuous changes of information systems (Fig. 10). The procedure consists of the following steps:

Fig. 10.
figure 10

Use of frames for requirements identification (VSM - viable systems model)

  1. 1.

    Identify all Systems prescribed by viable systems model (VSM) in the enterprise. This mainly concerns analysis of organizational functions and processes. Usually enterprises have at least part of functions prescribed by VSM. It is necessary to map these processes to VSM systems explicitly. Further the processes have to be classified according to the process frame reflected in Fig. 7. This is done in order to ensure that viable systems properties are preserved in the smaller granularity sub-processes.

  2. 2.

    Check information flows in the identified processes and identify existing or potential information processing elements that relate to these information flows. For this purpose the enterprise architecture frame reflected in Fig. 6 can be used.

  3. 3.

    Identify virtual agents behind of each System of VSM. The processes corresponding to each System of VSM have to be performed by human actors and/or software and hardware systems. These performers not necessarily belong to one and the same structural unit of the enterprise. The virtual agents can be represented using the frame reflected in Fig. 9.

  4. 4.

    Check whether the virtual agents are capable to handle the information prescribed by frames of information flows in viable systems (Figs. 3, 4 and 5). As we assume that the virtual agent possesses some emergent knowledge; each human actor possesses at least partly identifiable natural knowledge; and each computer system (arbitrary network of application and systems software and hardware) possesses built-in and possibly also artificially learned knowledge; it is essential that the agent can receive and handle all information flows inside the agent and among the agent and other related agents. For each two information processing elements the information flows may be identified using the frames for information flows in viable systems and enterprise architecture (Figs. 3, 4, 5 and 6) [22]. If any flow cannot be identified it is necessary to perform Step 5.

  5. 5.

    Define new requirements for information systems development [23].

Currently the proposed approach of considering information systems architecture as a fractal system of work systems is applied to two library processes at Riga Technical University. Library processes do not directly belong to System 1 or System 4, which are related to the external environment in viable systems model. Nevertheless the library processes may have a direct relationship with external environment of the library and the external environment of the university. Therefore frames of processes discussed in previous section are applicable in this situation. We consider two processes - book ordering and acquisition of electronic resources. The information system’s work systems for both processes cross several functional units of the university and for both processes environment scanning, value production, and self-management sub-processes are relevant. Similar information technology support is used for external environment scanning and internal environment scanning (e.g., acquisition of usage statistics and acquisition of popularity statistics).

The analysis of information flows in identified processes and related elements of enterprise architecture uncovered new information requirements and necessity to cooperate between different organizational units to handle the information in order to improve the process behavior. Actually the need for changes in the network of activities in book ordering and acquisition of electronic resources was identified. Information flows were analyzed with respect to the to-be network of the activities. The perspective taken in the analysis did not identify the library as a System 1 of viable systems model. Therefore frames of flows in viable systems model reflected in Figs. 3, 4 and 5 could not be fully utilized. The frame for information flow analysis in enterprise architecture (Fig. 6) was applied and found to be useful for identification of the virtual agents and for identification of new information systems requirements.

The results obtained so far show that a specific, organizational processes and work systems based, information systems architecture management system is needed to fully benefit from the application of work systems based fractal information systems architecture. The results also show also that the approach can be extended to the processes, which do not correspond to specific Systems of VSM, i.e., it can be used in enterprises, which do not fully operate according to viable systems model.

5 Conclusions

The paper proposes to use the concept of a work system for designating virtual and physical components of fractal information systems architecture. The proposal roots in related work on work systems by St. Alter [5] and contemporary applications of viable systems model [68]. Fractality of an enterprise and information systems is considered from the point of view of the value production dimension and the work systems substance dimension. The value production dimension concerns value for external customers as well as value for internal customers. The approach allows to consider customers as partners and switch between physical and virtual boundaries of enterprises in modeling of information systems. The work systems paradigm supports fractality as it allows to view the basic information system sub-processes at the level of virtual agents composed of human actors and computer systems; as well as at the levels of business, applications, and systems software and hardware by using inclusion relationship.

The work system is suggested to be considered as an architectural component that for each given business process supports environment scanning, value production, and self-management processes. The main contributions of the paper are the following:

  • The paper integrates work systems, viable systems, and fractal systems concepts

  • The paper proposes several frames for handling continuous changes in viable enterprises

  • The paper proposes simplified method for information systems requirements identification based on the proposed frames and viable, fractal, and work systems paradigms

The paper is limited to the introduction of the concepts and methods at a high level of abstraction. The fractal properties are mainly analyzed only regarding structural self-similarity, connectivity, and emergence. Two experiments are currently in progress to clarify the details and prepare the ground for defining requirements for work systems based fractal information systems architecture management system. A number of case studies in varieties of contexts is a part of further research for providing domain specific guidelines for application of the proposed approach.