Open Systems and Open Architecture Bibliography

Peter Henderson

revised 3rd September 2011

keywords: Open Systems, Open System Architecture, Modular Open Systems, MOSA

The references cover both Architecture and Open Systems, where Open Systems includes both Open Standards and Open Source. The reason for this is that, in contemporary approaches to software architecture, many of the architecture lessons from Open Source are applicable even in the case where a solution does not make use of Open Source components.

Articles, Papers, Websites and Books (alphabetic order) . See also same articles in reverse chronological order bibliogChrono.htm

Erik Aslaksen, Designing Complex systems – Foundations of Design in the Functional domain, 2009
Presents a conceptual design approach for complex systems - TR
Laurent Balmelli, An overview of SysML , 2006
A short paper from IBM covering the extensions to UML through examples
Luciano Baresi et al, Towards Open-World Software, 2006
Len Bass et al, Software Architecture in Practice (Second Edition) , 2003
A revised version of a 1996 book giving SEI wisdom on architecture, comprehensive
Konstantin Beznoskov and PhilippeKruchten, Towards Agile Security Assurance, 2004
Agile development methods and security assurance don't mix - or do they?
Norbert Bieberstein et al, Service-Oriented Architecture - Compass , 2006
Largely about Web Services (its an IBM book) but does discuss the broader issues of SOA
John Boardman and Brian Sauser, Systems Thinking – Coping with 21st Century Problems, 2008
Systems thinking about complex issues and using systemigrams - TR
Maarten Boassan, The Artistry of Software Architecture, 1998
Interesting arguments about function-oriented versus data-oriented architecture
Boer et al, A logical viewpoint on architectures, 2004
A formal model of some architectural concepts related to 1471
Grady Booch, The Irrelevance of Architecture, 2007
A short essay in which Booch argues that architecture is relevant to many stakeholders. Also argues that while architecture and implementation are different, they are closely related.
Jan Bosch, Software product lines and software architecture design , 2001
Jan Bosch, Design and use of software architectures: adopting and evolving a product-line approach , 2000
Lars G Bratthall et al, Integrating Hundred's of Products through One Architecture- The Industrial IT architecture, 2002
Describes an architecture that supports integration of huge amounts of products, from different product lines. The architecture is illustrated integrating new and old products in diverse integration projects.
Chris Britton and Peter Bye, IT Architecture and Middleware – Strategies for Building Large, Integrated Systems, 2004
Overview of IT architectures and distributed systems - TR
Fred Brookes, The Mythical Man-Month, 1995
Classic advice on how to avoid problems on large projects, again read for the architectural insight
Eric Bruneton, An Open Component Model and Its Support in Java, 2004
Not really an architecture paper, but one which directly tackles reflection in an interesting way that has clear architectural aspects
Ron Brunt et al, OpenFramework - The Systems Architecture, an Introduction, 1992
Something from my background, so something I will refer to often
Dennis Buede, The Engineering Design of Systems – Models and Methods, 2009
Much emphasis on modelling of systems with chapters also covering functional architecture, architecture allocation, physical architecture and interface definition
Christopher Alexander, Sara Ishikawa and Murray Siverstein (with others), A Pattern Language - Towns, Buildings, Construction, 1977
Christopher Alexander has thought deeply about the design of complex systems, in his case the urban living environment. More importantly, from our point-of-view, he has documented these studies extensively and his ideas and methods are applicable more widely than the architecture of the built environment. All Systems Architects can learn Systems Thinking, Systems Description and Abstraction from his books. The problem is,there are many books by Christopher Alexander on the Architectural design of Towns, Buildings and Urban Environments in general. This one is probably the central book, although it must be read in conjunction with "The Timeless Way of Building" (this is stated by the authors). Basically, "A Pattern Language" gives Alexander's rules (patterns) for combining components into systems, while "The Timeless Way" gives examples and generally exemplifies the method. The approach may seem philosophical, but it is severely practical. It's one of those books (actually, a pair of books) where you really have to know what its all about before you start reading it, and you can only know what its all about when you've finished.
Patrick Y. K. Chau and Kar Yan Tam, Factors affecting the adoption of open systems: an exploratory study, 1997
Peter Checkland, Systems Thinking, Systems Practice, 1981
Systems Engineering the British way, another classic
Henry Chesbrough , Open Innovation, 2006
One of many books by Chesborough discussing how organisations can profit from the enhanced innovation inherent in a judicious application of the principles of open systems
Paul Clements et al, Evaluating Software Architectures, 2002
Presents architecture analysis methods - TR
Paul Clements et al, Documenting Software Architectures , 2002
The SEI approach to software architecture from a documentation viewpoint (there is also a book with same title, see below)
Paul Clements et al, Documenting Software Architectures, 2002
SEI view of architecture, presented from the documentation angle, important
Eric M Dashofy et al, A comprehensive approach for the development of modular software architecture description languages, 2005
A useful overview of contempory approaches to ADLs and an introduction to an XML-based ADL
Hans de Bruin and Hans van Vliet, Quality-Driven Software Architecture Composition, 2002
Vivianne Deering et al, Open Architecture as an enabler of ForceNet, 2000?
C. E. Dickerson and D. N. Marvis, Architecture and Principles of Systems Engineering, 2010
Addresses most of the issues of Systems Engineering, but from an Architecture-centric point of view. In particular, introduces MDA, SysML, DoDAF and MODAF.
Ed Dunphy, The UNIX Industry and Open Systems in Transition, 1994
Unix is where Open Systems began, for us at least
Omer Ishag Eldai et al, Towards a Generic Building Block for Component-Based Open Hypermedia Systems, 2000?
Paul England, A Trusted Open Platform, 2003
A neat security architecture proposal, from Microsoft (inc Butler Lampson)
Peter H. Feiler, David P. Gluch and John J. Hudak , The Architecture Analysis and Design Language (AADL) - An Introduction , 2006
From the Abstract: The AADL is especially effective for model-based analysis and specification of complex realtime embedded systems. This technical note is an introduction to the concepts, language structure, and application of the AADL.
Joseph Feller (ed) , Perspectives on Free and Open Source Software, 2005
A collection of essays on the success of Open Source, in particular from a business perspective.
Martin Fowler, Patterns of Enterprise Application Architecture, 2008
Proposes Architecture patterns commonly found in distributed ?inter-enterprise systems based on Web Servers and Database Servers. Also covers Object/Relational mapping patterns, inherent in building contemporary Enterprise Systems.
Martin Fowler, UML Distilled (Third Edition) , 2003
An earlier favourite of mine on UML
Martin Fowler, Analysis Patterns - Reusable Object Models, 1997
Some non-trivial patters at the application level
A. Fresa et al, Assessment of Software Architectures: A Case Study, 2002
Quality prediction in the context of architecture choice
Sanford Friedenthal et al, A Practical Guide to SysML, 2008
Probably the best contemporary guide to the developing SysML language
Erich Gamma, Richard Helm, Ralph Jonson and John Vlissides Design Patterns , Elements of Reusable Object-Oriented Software, 1995
The classic Patterns book, which introduced the familiar patterns (e.g. Factory, Adaptor, Facade) with which we are all now familia.
David Garlan et al, The ACME Architecture Description Language, 1997-2007
A typical and contemporary ADL
Giampaolo Garzarelli, Open Source Software and The Economics of Organisation, 2002
John Gibson et al, How to Do Systems Analysis, 2007
Covers systems thinking/analysis including devising concepts, evaluating concepts and trading-off requirements - TR
Tom Gilb, Competitive Engineering, 2005
Gilb's unique approach to Systems Engineering Requirements. The product of vast experience. A comprehensive reference to his Planguage (Planning Language) a specification language for Systems Engineering.
Robert L. Glass, Software Conflict - The art and science of Software Engineering (Second Edition) , 2002
One of Robert Glass's more recent books, always thought-provoking
Pamela Gray, Open Systems - a business strategy for the 90s, 1991
Still relevant insight into to issues of Openness in Enterprise systems
Defence Engineering Group/Ken Hambleton et al, Conquering Complexity – Lessons for defence systems acquisition,
Overview of MSc course from a defence perspective and outlining key issues such as acquisition, cost estimation, operational analysis and test and evaluation - TR
Harald Heinecke et al, AUTOSAR Automotive Industries Open Systems, 2006
An Open Systems approach to architecture for automobile systems.
Peter Henderson, Modular Open Systems Architecture, 2009
First of two companion papers setting out the scope of Open Systems Architecture. Addresses benefits, cost, principles and methods.
Peter Henderson, Openness and Open Systems, 2007
A short essay to seed early discussions of openness (May 07, revised Oct 07)
Peter Henderson, Notes on Architecture Description for Open Systems, 2007
Peter Henderson, Why Large IT Projects Fail, 2006
A recent paper of mine that summarises some experiences from observing project failure, for discussion
OMII-Europe, The Open Middleware Infrastructure Institute for Europe, 2004-2007
The Open Systems project that is integrating Open Grid middleware for European scientists, a good architecture for us to study
Peter Henderson, Laws for Dynamic Systems, 1998
My old paper on some issues of enterprise level plug 'n' play, for discussion
John Hennessy and David Patterson, Computer Architecture – A Quantitative Approach, 2007
Low-level computer architecture with coverage of performance parameters etc.- TR
James H. Hill and Aniruddha Gokhale, Model-driven Engineering for Early QoS Validation, 2007
Introduces various notations for architecture description, where the emphasis is on modelling for quality of service. Nice detail of relationship betwen behavioural and structural models
Derek Hitchins, Systems Engineering – A 21st Century Methodology, 2007
Development of thinking from Hitchins’ earlier books presenting ‘universal’ systems methodology and containing a number of brief case studies - TR
Derek Hitchins, Advanced systems thinking, engineering and management, 2003
Considerable expansion of ideas from 1992 book presenting a 5 layer classification of systems engineering and advocating use of a generic reference model - TR
Derek Hitchins, Putting Systems to Work, 1992
Mixture of soft and hard systems engineering building upon General Systems Theory and including chapter on functional architecting using N2 charts
HL7 , A basic overview of Clinical Document Architecture, 2007
Allen Holub, UML 2.0 concise reference card, 2005
You may need this to remind yourselves about UML before you study SysML
OSOA , Open Service Oriented Architecture, 2009
An architecture for SOA, including the Service Component Architecture SCA (see also
IEEE, 1220 for Practical Systems Engineering, 2005
Standard for Application and Management of the System Engineering Process, gives us a system-level perspective
INCOSE/Celia Haskins (ed) , Systems Engineering Handbook, 2006
Brief but comprehensive treatment of systems engineering which is compatible with ISO15288:2002 - TR
Scott Jackson, Architecting Resilient Systems – Accident Avoidance and Survival and Recovery from Disruptions, 2010
Largely case-based approach to identifying approaches to achieving resilient systems - TR
Mo Jamshidi (ed), System of Systems Engineering, 2009
Edited book with varied coverage including a chapter on system of systems architecting - TR
Mehdi Jayazeri et al, Software Architecture for Product Families – Principles and Practice, 2000
Approach to implementing a product line architecture; also discusses ADLs and architectural issues - TR
Justin Pappas Johnson, Economics of Open Source Software, 2001
Thomas Juan, ROADMAP: Extending the Gaia Methodology for Complex Open Systems, 2002
Agent based architecture, with a motivating example of an intelligent home network
Agnes Kaposi and Margaret Myers, System Models and Measures, 1994
Covers software quality factors and metrication leading into the use of models, specifications and formal methods - TR
Minseong Kim et al, From Product Lines to Self-Managed Systems: An Architecture-Based Runtime Reconfiguration Framework, 2005
Dynamic architecture allowing reconfiguration at runtime. Discusses the issues.
Stephen Kline, Conceptual Foundations for Multidisciplinary Thinking, 1995
Addresses case for multi-disciplinary analysis and describes evolution of technical disciplines - TR
Alexander Kossiakoff and William Sweet, Systems Engineering Principles and Practice, 2003
Overview of systems engineering including material on integration, test, installation, operation and support - TR
Ken Krechmer, The meaning of Open Standards, 2005
General overview, from a telecomms angle.
Ivan Krechetov et al, Towards an Integrated Aspect-Oriented Modeling Approach for Software Architecture Design, 2006
Aspects, architecture, UML, an interesting mix
Philippe Kruchten et al, The Past, Present, and Future for Software Architecture , 2006
Philippe Kruchten, What Do Software Architects Do, 2006
Roles and responsibilities of an architecture team. See also
Philippe Kruchten , An Ontology of Architectural Design Decisions in Software Intensive Systems, 2004
Recommendations for recording design decisions during the architectural development process, including definitions of what to record. Somewat based on the Rational Unified Process (RUP)
Christian F.J. Lange, UML Software Architecture and Design Description, 2006
Studies a number of projects that used UML in the architectural stages and publishes some metrics about what they found. Interesting, but not clear
Richard N. Langlois et al, Of Hackers and Hairdressers, Modularity and the Organisational Economics of Open Source, 2005
Josh Lerner et al, The Simple Economics of Open Source, 2001
Alessandro Maccari, Experiences in assessing product family software architecture for evolution, 2002
Two assessment case studies in the mobile telephone software domain
Mark W Maier , The Art of System Architecting, 2009
A classic. This is the Third Edition of a book originally written with Eberhardt Rechtin. I have the Second Edition, which is excellent. It mostly takes a process oriented view.
Mark W. Maier et al, Software Architecture - introducing IEEE 1471, 2001
Short paper describing the IEEE standard for architecture description, distinguishes views and viewpoints.
Neno Medvidovic and Edward Colbert, USC (CSE) Lecture on Architecture Description Languages, 2003
Enumerates and compares ADL's circa 2003
Nenad Medvidovic and Richard N. Taylor, A Classification and Comparison Framework for Software Architecture Description Languages, 2000
Marija Mikic-Rakic and Nenad Medvidovic, Software Architectural Support for Disconnected Operation in Highly Distributed Environments, 2004
An interesting middleware architecture description
Lajos Moczar, The Open Source Monopoly and The Economics of Commercial Open Source, 2005 +++
Henri Muccini et al, Software Architecture-based Regression Testing, 2005
How to determine what to retest when a software architecture evolves
NASA, Systems Engineering Handbook, 1995
Peter G Neumann, Computer Related Risks , 1995
Examples of computer systems failing, beautifully written, see also the associated website
Robert L. Nord et al, SEI Integrating the Architecture Methods of ATAM and CBAM, 2003
Covers SEI's Architecture Tradeoff Analysis Method and Cost Benefit Analysis Method
OAGi and OAGIS, OAGi and OAGIS, 1994-2007
The Open Applications Group inc and their canonical model for B2B integration
OASIS, Organisation for the Advancement of Structured Information Standards, 1993-2007
The standards body for Web Services for Enterprise Systems
Mike O'Docherty, Object-Oriented Analysis and Design, 2005
This is my preferred reference for UML 2.0, but any UML 2.0 source would do
Open Geospacial Consortium, OGC , Sensor Web Enablement: Overview And High Level Architecture, 2006
OMG, SysML Specification , 2006
Extensions to UML 2.0 to cover broader Systems Engineering domain - (see also -
Open group, The Open Group, 1995-2007
A forum for Open Standards in the Enterprise domain - publishes TOGAF The Open Group Architecture Framework and much more
Gerhard Pahl et al, Engineering Design – A Systematic Approach, 2007
Addresses mechanical design but some interesting material on modularity - TR
Bruce Perens, The Emerging Ecomomic Paradigm of Open Source, 2005
Michael E. Porter , Competitive Advantage, 2004
Describes how businesses cooperate and compete to enhance their market position. Introduces the concept of a "value chain" which can be used to describe the business models that have developed around Open Source and Open Systems.
Simon Ramo and Robin St Clair, The Systems Approach, 1998
Distillation of experience gained within TRW, one of the pioneering US systems engineering firms - TR
Eric Raymond, The Cathedral and the Bazaar, musings on Linux and Open Source, 2001
Don't let the title put you off. This is an important book of essays by one of the leaders in the field. Presents the arguments in favour of Open Source, including quality and business models. See supporting The Cathedral and the Bazaar Website, where all the essays can be found. I particular, see The Magic Cauldron, where the various business models behind Open Source success are discussed
Eberhardt Rechtin, Systems Architecting of Organisations – Why Eagles Can’t Swim, 2000
Treatment of organisations as systems and the application of systems architecting principles - TR
Nick Rozanski and Eoin Woods , Software Systems Architecture, 2005
IEEE Standard 1471 (Recommended Standard for Architectural Description) explained, elaborated and put in context
Jothy Rozenberg et al , Securing Web Services with WS-Security, 2004
An good example of an Open Architecture.
Richard Rushton et al, Open Architecture, The Critical network Centric Warfare Enabler, 2000?
Andrew Sage and William Rouse (editors), Handbook of Systems Engineering and Management, 1999
Comprehensive coverage of breadth of systems engineering with summary chapters on many topics; includes a chapter by Alexander Levis on System Architectures- TR
Robert W. Schwanke and Robyn R. Lutz, Experience with the architectural design of a modest product family �, 2004
SEI, Software Engineering Institute, Open Systems - Frequently Asked Questions, 1996?
Some definitions, basic stuff, not all of which you will agree with, so good for an initial discussion (see also their main Open Systems page). Date estimated from date of most recent reference in their bibliography
David Sharp, Reducing Avionics Software Cost Through Component Based Product Line Development, 1998
A component-based architecture for aircraft mission control
Mary Shaw and Paul Clements, The Golden Age of Software Architecture, 2006
A summing up ... and where next, from two of the originators in the field
Mary Shaw and Paul Clements, A Field Guide to Boxology: Preliminary Classification of Architectural Styles for Software Systems, 2000?
Mary Shaw et al, Software Architecture: Perspectives on an Emerging Discipline , 1996
Another classic, but somewhat old now
Lars Skyttner, General Systems Theory – An Introduction, 1996
Covers basic ideas of general systems theory and specific systems theories - TR
Andrew M. St Laurent, Understanding Open Source and Free Software Licencing, 2004
One major aspect of Open Source is licensing, copyright and ownership, all covered here
Richard Stevens et al. , Systems Engineering - coping with complexity, 1998
An early book on Systems Engineering - taking a largely process oriented approach
Timothy Sturgeon, Modular Production Networks, 2002
Mikael Svahnberg et al, A Method for Understanding Quality Attributes in Software Architecture Structures, 2002
Driving choice of architecture with due consideration of quality attributes, with metrics.
Peter Sydenham, Systems Approach to Engineering Design, 2004
Covers systems engineering management and system design, including ‘ilities’ - TR
Andrew Tannenbaum and Maarten van Steen, Distributed Systems - Principles and Paradigms (Second Edition) , 2007
Recent revision of standard text on distributed systems, our principle domain of interest. In particular covers details of the layering structures in operating systems and networking stacks as well as higher-level middleware.
Alliance for Telecommunications Industry Solutions (ATIS), ATIS Telecom Glossary (definition of Open System), 2007
Directly quoting the Glossary ? Open System 1. A system with characteristics that comply with specified, publicly maintained, readily available standards and that therefore can be connected to other systems that comply with these same standards. 2. A system that implements sufficient open specifications for interfaces, services, and supporting formats to enable properly engineered applications software: - to be ported with minimal changes across a wide range of systems - to interoperate with other applications on local and remote systems - to interact with users in a style that facilitates user portability [POSIX.0].
Andrey A.Terekhov, Dealing with Architectural Issues: a Case Study, 2004
Architecture recovery and software re-engineering, some comments
Jeff Tyree and Art Akerman, Architecture Decisions: Demystifying Architecture, 2005
An illustration of making hard choices in architecture using an example from financial services
Andre van der Hoek, Design-time product line architectures for any-time variability , 2004
Charles Wasson, Systems Analysis, Design and Development – Concepts, Principles and Practices, 2006
Addresses systems engineering issues entailed in moving from problem space to solution space, including design and development; chapters cover aspects of systems architecting - TR
Steven Weber, The Success of Open Source, 2004
A comprehensive look at the technical, historical and business aspects of Open Source - from a political scientist
Sanjiva Weeawarana et al, Web Services Platform Architecture, 2005
How the WS Web Services from OASIS fit together to form solutions for Enterprise systems
Tim Weilkiens , Systems Engineering with SysML/UML, 2008
see also the free download quick-reference card
Gerald Weinberg, An Introduction to General Systems Thinking , 2001
A revised version of a book from the seventies, accessible, thought-provoking
Paul Wiese and Philip John, Engineering Design in the Multi-Discipline Era – A Systems Approach, 2003
Addresses role, evolution and developments in engineering design from a high-level perspective - TR
Rob Williams, Computer Systems Architecture – A Networking Approach, 2006
Bottom-up approach to computer system architecting - TR
Lihua Xu et al, Towards Supporting the Architecture Design Process Through Evaluation of Design Alternatives, 2006
An architecture based approach to looking at some non-functional requirements
Arie Yavnai, Architecture for an autonomous reconfigurable intelligent control system, 1996
Edward Yourdon, Modern Structured Analysis, 1989
Classic textbook summarising the now somewhat dated Yourdon approach to Structured Analysis and System Design - TR
The Zachman Institute, Zachman Architecture Framework, 1987-2007
Established approach to organising an architecture project, organises architecture descriptions into a matrix of 5 viewpoints by 6 concerns. See the Framework Overview and their Bibliography