Abstract
This study outlines in some detail the semantic variety of the notion of ‘software architecture’ in the field of software engineering since the early 1970s. This paper shows that there are two schools of thought in software architecture, namely a material-substantialist and a formal-structuralist one. In the former school of thought, software architecture is basically regarded as a thing (device) on its own, whereas in the latter one, software architecture is basically considered a property, not a thing (device). From an ontological point of view, these two opinions are mutually exclusive. In their mutual exclusivity, however, they coincide with non-formalist versus formalist philosophies and interpretations of informatics or computer science in general, wherein software engineering –and, by implication, software architecture– is embedded. In this way, the field of software architecture mirrors an ongoing science-philosophical dispute about the characteristics and foundations of computer science or informatics as a scholarly and practical discipline. In summary it seems fair to say that the metaphor of ‘architecture’, with its distinct fine arts connotations, has been particularly attractive to software engineers because this metaphor has helped software engineers to circumvent the notorious scientific immaturity and shortage of classical engineering methods in the field of software engineering.
Highlights
Well-known texts by Thomas Kuhn have described how young scientific disciplines typically go through the pre-paradigmatic phase of a proto-science,2 which is characterized
In search of explanations of the observed historic-semantic variance in the notion of software architecture, the authors suggested: One thing that is obvious from the review of the literature is that the community’s understanding of software architecture has evolved based on analogies with the largescale structure of traditionally engineered systems
On the basis of this intuition, we present a model of software architecture that consists of three components: elements, form and rationale. (...) Form is defined in terms of the properties of, and the relationships among, the elements (...)
Summary
The useage of the term ‘architecture’ as a metaphor outside the field of material buildings is not new. In search of explanations of the observed historic-semantic variance in the notion of software architecture, the authors suggested: One thing that is obvious from the review of the literature is that the community’s understanding of software architecture has evolved based on analogies with the largescale structure of traditionally engineered systems – such as, for example, between software construction and house construction– though we believe this understanding is the source of many problems in software architecture research [9]. The authors attacked the role model of hardware engineering, to which software engineers have always aspired in order to get (eventually) recognized and acknowledged as proper engineers, too: The historical development of the research community’s understanding of these terms highlights their derivation from analogies with more traditional engineering disciplines [9], though – with a normative slant– Their failure to adequately consider the differences between software development and those other disciplines requires them to be replaced [9]. The main purpose of that paper, was to promote its author’s own notion of ‘software architecture’, not to search for the reasons of the variations in the historical semantics of the notion itself
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: The Journal for Transdisciplinary Research in Southern Africa
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.