The final CS-AWARE solution is a combination of a generalized model of interconnected technologies, the framework, and their individualised implementation at a local public administration (LPA). In Software Architecture Design frameworks build the foundation for such structures of components, as Pree (1994) states frameworks are ‘reusable semi-finished architectures for various application domains‘. While the main domain remains the same throughout all CS-AWARE implementations, the specifics alter between LPAs.
Since CS-AWARE is an agglomeration of existing technologies provided by the various Consortium partners, it was essential to define a coherent and holistic framework, which defines the main components of the final CS-AWARE solution as well as each of the interdependencies between them.
The framework was developed based on the Soft Systems Methodology Workshops conducted in the two piloting local public administrations, Larissa and Rome, as well as the given preconditions of the technologies.
Diagram 1: CS-AWARE Framework
To further facilitate the general understanding of the framework, the components were divided into three layers. Typically, the ETL (Extraction, Transformation and Load) structure is used when designing data warehouses, but after the minor modification of renaming the last layer to Data Provisioning Layer it can also be applied to CS-AWARE. The first layer combines all components responsible for providing data and/or extracting it, the second all technologies which transform or adapt the collected data and the last shows components which provide awareness information and/or recommended actions.
As can be seen in Diagram 1, the Data Extraction Layer consists of the System Dependency Analysis, the Data Collection module and each of the Source categories. The Data Transformation Layer is divided into the Data Pre-Processing, Multi-Language Support and Data Analysis and Pattern Recognition components. Finally, the Data Provisioning Layer covers the Self-Healing, Visualisation and Information Sharing component.
Relations are divided into three categories – data flow (data is transferred from one component to another), control flow (logic and/or rules are initiated or defined by one component for another) and guidance (conceptualization of one component is guided by composition of another). Additionally, they are divided into whether the relation is an automated or manual process, latter requiring
This model will be used as basis for all further software development, ensuring all partners share the same understanding of how their technologies must interact with each other.
University of Vienna
Pree (1994) Pree, Wolfgang. “Meta patterns—A means for capturing the essentials of reusable object-oriented design.” European Conference on Object-Oriented Programming. Springer, Berlin, Heidelberg, 1994.