Exploring architectural analysis credibility from a developer perspective

Mathias Ekstedt, Pontus Johnson · 2002

Software engineering has during its short life as an academic discipline experienced a continuous shift of its domain of interest towards higher-level abstractions. During the last decade, the term software architecture has been the reference term for the most abstracted engineering model of a software system. A model is, however, of limited use if it cannot be used as a base for reasoning. Therefore, a number of methods have been proposed for architectural analysis. There are currently architecture-based methods for prediction of such diverse issues as performance, usability, reliability, modifiability and maintainability, security, and more. The relationship between an architectural specification and the implemented system is, however, a complicated relationship; it can be described as a number of transformations between different specification languages. These languages include architecture description languages, modeling languages, programming languages, machine languages, etc. This article claims that there is a risk that a distortion between two specifications is involuntarily introduced in software development projects in at least one of these transformations that is grave enough to corrupt the results of architectural analyses.

Read the paper · More papers on PaperTik