Component models are frequently used as a central view of architectural descriptions of software systems. Even though architectural components are a major research topic in the software architecture field, rigorous studies on the design of component models and their use in architectural descriptions of software systems have not yet been conducted. Such foundational research is however essential to provide guidelines and tools to software architects, based on sound evidence, to help them understand how to design component models that are appropriate for the architectural understanding of a software system and how to best map them to software design models (such as class diagrams) and code.
In the ARCS project, we are interested in better understanding factors that influence the understandability of component models and how to best realize the refinements by and relationships to the implementation classes. This will be studied by systematically investigating which kinds of metrics can be used to assess the understandability of an architectural component model and in how far explicit trace links from architectural component models to code models (in form of class diagrams) are beneficial for architectural understanding of a software system.
We will perform a series of four empirical experiments in which both research questions will be studied with both professional expert software architects and students of software architecture with little professional experience as subjects of the experiments. The results of the experiments will be used to create a catalogue of component design guidelines (best practices), a formalization of those design guidelines using formal constraints, and a realization of the design guideline constraints and the positively assessed metrics in a model-driven software development tool.
ARCS is funded by the Austrian Science Fund (FWF), grant no. P 24345-N23.
|R&D projects, public funding|
|2012 - 2016|
|Research Group Software Architecture|