2.1. What is Architecture?

Software architecture is a hot topic that has been palpably growing in importance since at least 1992, with a clear separation in schools of thought surrounding its nature appearing only more recently. However, the metaphor has a much longer genealogy than the modern debate is sometimes prepared to admit. The notion of software architecture has a pedigree at least as long as those of 'software engineering' and the 'software crisis'. These latter two terms are commonly accepted to have originated in the historic NATO conference of 1968 (Naur and Randall, 1969). Fred Brooks referred in a number of influential articles to architecture (Brooks, 1975) but credits Blaauw (1970) with the first use of the term in 1970. According to one attendee at that conference, the idea of 'software architecture' and the rôle of 'software architects' were common currency in its deliberations - the analogy was, however, considered by the proceedings' editors too fanciful a notion to be reflected in the official minutes. It is symbolic indeed that the idea was co-nascent with that of the software crisis and that it was largely discarded in the intervening period, while the discipline of software engineering, as it has been practised, has manifestly failed to cure the malaise it was ushered in to redress.

2.1.1. Architecture as High Level Structure

Most contemporary discussions of architecture reach conclusions such as these.

  • Architecture is about the gross structure of a system. ...

Get Requirements Modelling and Specification for Service Oriented Architecture now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.