Architectural dependency analysis and modelling

Download files
Access & Terms of Use
open access
Copyright: Brondum, John
Altmetric
Abstract
Software development is an information and knowledge intensive activity requiring communication and coordination. Two design principles; information hiding (by Parnas), and the separation of relevant concerns (by Dijkstra) are core to software architecture. The design principles enable us to separate the design knowledge into discrete and (more) manageable units even if it cannot always be a perfect separation leading to the shared architectural information between two or more software elements. The precise understanding and modelling of this shared information is critical for successful software development and is generally referred to as architectural dependencies . Previous research has focused on the identification of dependencies through analysis of artefacts derived from source code, design models, and other environmental information. Within heterogeneous technology and team environments constrained by intellectual property rights, contractual and legal concerns, it can be very challenging to obtain sufficient data to apply previous techniques, or they only become applicable after or very near the completion of the architectural design process. Secondly, my research also found that dependencies are not always reflected within connector designs or element interactions, and therefore can be difficult to detect through current dependency analysis techniques. I have developed a new approach to support the modelling of architectural dependencies within heterogeneous technology environments (that is diverse in character and content) and as part of the architectural design process itself. This includes the ability to model the architectural concerns and attributes affected by dependencies. I propose a novel architectural dependency taxonomy, as well as identification and evaluation techniques. I evaluated the model through a series of qualitative case studies on open source projects and industry software development projects. The findings show that the proposed approach can develop a model description of architectural dependencies within heterogeneous environments that correlate with observed project issues, without the need for source code or restricting the architect(s) to a single modelling language.
Persistent link to this record
Link to Publisher Version
Link to Open Access Version
Additional Link
Author(s)
Brondum, John
Supervisor(s)
Zhu, Liming
Creator(s)
Editor(s)
Translator(s)
Curator(s)
Designer(s)
Arranger(s)
Composer(s)
Recordist(s)
Conference Proceedings Editor(s)
Other Contributor(s)
Corporate/Industry Contributor(s)
Publication Year
2013
Resource Type
Thesis
Degree Type
PhD Doctorate
UNSW Faculty
Files
download whole.pdf 1.97 MB Adobe Portable Document Format
Related dataset(s)