Paul C. Clements
Software Engineering Institute
Publications by Paul C. Clements
-
Software Architecture in Practice, 4th Edition
August 03, 2021 • Book
Len BassPaul C. ClementsRick Kazman
Software Architecture in Practice, 4th Edition, explains what software architecture is, why it's important, and how to design, analyze, evolve, and manage it.
read -
A Framework for Software Product Line Practice, Version 5.0
December 31, 2012 • White Paper
Linda M. NorthropReed LittleJohn McGregor
This document describes the activities and practices in which an organization must be competent before it can benefit from fielding a product line of software systems.
read -
Software Architecture in Practice, 3rd Edition
September 25, 2012 • Book
Len BassPaul C. ClementsRick Kazman
If you design, develop, or manage large software systems (or plan to do so), you will find "Software Architecture in Practice, Third Edition" to be a valuable resource for getting up to speed on the state of the art.
read -
Documenting Software Architectures: Views and Beyond, 2nd Edition
October 05, 2010 • Book
Paul C. ClementsFelix BachmannLen Bass
This book provides the most complete and current guidance on how to capture a software architecture in a commonly understandable form.
read -
Relating Business Goals to Architecturally Significant Requirements for Software Systems
May 01, 2010 • Technical Note
Paul C. ClementsLen Bass
The purpose of this report is to facilitate better elicitation of high-pedigree quality attribute requirements. Toward this end, we want to be able to elicit business goals reliably and understand how those business goals influence quality attribute requirements and architectures.
read -
A Structured Approach for Reviewing Architecture Documentation
December 01, 2009 • Technical Note
Robert NordPaul C. ClementsDavid Emery
This technical note proposes a structured approach for reviewing architecture documentation that is centered on the documentation's stakeholders and engages them in a guided manner so as to ensure that the documentation will be ultimately useful to them.
read -
Results of SEI Independent Research and Development Projects (FY 2009)
December 01, 2009 • Technical Report
Len BassLutz WragePaul C. Clements
In this report, the authors describe the SEI independent research and development (IRAD) projects conducted during fiscal year 2009.
read -
An Everyday Example of Architecture Documentation: Subway Maps
November 30, 2009 • White Paper
Paul C. Clements
This white paper explores the idea that subway maps provide a good, common example of architecture documentation and that they might be instructive about good software architecture documentation.
read -
Documenting Software Architectures Podcast
June 28, 2009 • Audio
Paul C. Clements
Paul Clements talks about best practices for communicating (documenting) software architectures and summarizes key points from the book Documenting Software Architectures: Views and Beyond and the related two-day course, Documenting Software Architectures
listen -
A Workshop on Architecture Competence
April 01, 2009 • Technical Note
Len BassPaul C. ClementsRick Kazman
This report summarizes a June 2008 architecture competence workshop where practitioners discussed key issues in assessing architecture competence in organizations.
read -
U.S. Army Workshop on Exploring Enterprise, System of Systems, System, and Software Architectures
March 01, 2009 • Technical Report
John K. BergeyStephen Blanchette, Jr.Paul C. Clements
This report confirms that various architectural genres enjoy more commonalities than differences. Each one has its own important knowledge base, and openness among the various architectural tasks within an organization is growing in importance.
read -
Models for Evaluating and Improving Architecture Competence
March 01, 2008 • Technical Report
Len BassPaul C. ClementsRick Kazman
This report outlines the concepts of software architecture competence and describes four models for explaining, measuring, and improving the architecture competence of an individual or a software-producing organization.
read -
Classifying Architectural Elements as a Foundation for Mechanism Matching
November 01, 2007 • White Paper
Len BassPaul C. ClementsRick Kazman
This paper presents a set of well known but informally described software architectural elements used in system composition, and taxonomizes them under a basic set of characteristic features.
read -
Improving Software Architecture Competence (SATURN 2007)
May 16, 2007 • Presentation
Paul C. Clements
In this May 2007 presentation - delivered at SATURN 2007 - Paul Clements (SEI) discusses how to improve software architecture competence through the usage of competency models and other research.
read -
Working Session: Software Architecture Competence
May 15, 2007 • Presentation
Paul C. Clements
Presentation made by Paul Clements at the SATURN 2007 Working Session "Architecture Competence," May 15, 2007.
read -
Improving Software Architecture Competence
March 01, 2007 • Audio
Paul C. Clements
Improving Software Architecture Competence by Paul Clements, International Association of Software Architects (IASA), March 2007.
listen -
Attribute-Driven Design (ADD), Version 2.0
November 01, 2006 • Technical Report
Rob WojcikFelix BachmannLen Bass
This report revises the steps of the Attribute-Driven Design (ADD) method and offers practical guidelines for carrying out each step.
read -
A Comparison of Requirements Specification Methods from a Software Architecture Perspective
August 01, 2006 • Technical Report
Len BassJohn K. BergeyPaul C. Clements
In this report, five methods for the elicitation and expression of requirements are evaluated with respect to their ability to capture architecturally significant requirements.
read -
Best Practices in Software Architecture
July 26, 2006 • Presentation
Paul C. Clements
This presentation on best practices in software architecture was delivered by Paul C. Clements of the Software Engineering Institute (SEI) on July 26, 2006.
read -
Best Practices in Software Architecture
June 01, 2006 • Audio
Paul C. Clements
Best Practices in Software Architecture by Paul Clements.
listen -
A Comparison of Requirements Specification Methods from a Software Architecture Perspective (SATURN 2006)
April 25, 2006 • Presentation
Ipek OzkayaLen BassJohn K. Bergey
Ipek Ozkaya talks about an approach developed by Fergus O'Brien that is used to assess how well different requirement specification methods serve an architect's goals and needs.
read -
The Duties, Skills, and Knowledge of Software Architects
January 09, 2006 • Conference Paper
Paul C. ClementsRick KazmanMark H. Klein
This paper focuses on the human aspects of architecting software-in particular, the duties, skills, and knowledge of software architects.
read -
Future Trends of Software Technology and Applications: Software Architecture
January 02, 2006 • Presentation
Paul C. Clements
This Software Engineering Institute (SEI) presentation on future trends of software technology and applications for software architecture was delivered by Paul Clements in January 2006.
read -
Using the SEI Architecture Tradeoff Analysis Method to Evaluate WIN-T: A Case Study
September 01, 2005 • Technical Note
Paul C. ClementsJohn K. BergeyDave Mason
This report describes the application of the SEI ATAM (Architecture Tradeoff Analysis Method) to the U.S. Army's Warfighter Information Network-Tactical (WIN-T) system.
read -
Proceedings of the First Software Architecture Technology User Network (SATURN) Workshop
September 01, 2005 • Technical Note
Robert NordLen BassPaul C. Clements
This report describes the format, discussion, and results of the first SATURN workshop, and outlines the plans for future SATURN workshops.
read -
Variability in Software Product Lines
September 01, 2005 • Technical Report
Felix BachmannPaul C. Clements
This 2005 report describes the concepts needed when creating core assets with included variability. These concepts provide guidelines to core asset creators on how to model the variability explicitly, so it is handled consistently throughout the product line and managing the variability becomes feasible.
read -
The U.S. Army's Common Avionics Architecture System (CAAS) Product Line: A Case Study
September 01, 2005 • Technical Report
Paul C. ClementsJohn K. Bergey
This report offers a case study of organizations that have adopted a software product line approach for developing a family of software-intensive systems.
read -
Comparing the SEI's Views and Beyond Approach for Documenting Software Architectures with ANSI-IEEE 1471-2000
July 01, 2005 • Technical Note
Paul C. Clements
This report summarizes the V&B and 1471 approaches to architecture description, and shows how a software architecture document prepared using V&B can be made compliant with 1471.
read -
Software Product Lines: Past, Present, and Future
May 02, 2005 • Presentation
Paul C. Clements
Presented: May 2005
read -
Software Architecture in DoD Acquisition: An Approach and Language for a Software Development Plan
February 01, 2005 • Technical Note
John K. BergeyPaul C. Clements
This report discusses the Software Development Plan (SDP), providing an example approach and corresponding SDP language that enable software architecture to play a central role in the technical and organizational management of a software development effort.
read -
Software Architecture in DoD Acquisition: A Reference Standard for a Software Architecture Document
February 01, 2005 • Technical Note
John K. BergeyPaul C. Clements
This report provides a reference standard for a Software Architecture Document (SAD). Acquisition organizations can use this to acquire documentation needed for communicating the architecture design and conducting software architecture evaluations.
read -
The Structured Intuitive Model for Product Line Economics (SIMPLE)
February 01, 2005 • Technical Report
Paul C. ClementsJohn McGregorSholom G. Cohen
This 2005 report presents SIMPLE, a general-purpose business model that supports the estimation of the costs and benefits in a product line development organization.
read -
Integrating the Quality Attribute Workshop (QAW) and the Attribute-Driven Design (ADD) Method
July 01, 2004 • Technical Note
Robert NordWilliam G. WoodPaul C. Clements
This technical note reports on a proposal to integrate the SEI Quality Attribute Workshop (QAW) and the SEI Attribute-Driven Design (ADD) method.
read -
Documenting Component and Connector Views with UML 2.0
April 01, 2004 • Technical Report
James IversPaul C. ClementsDavid Garlan
This 2004 report explores how changes in UML 2.0 affect UML's suitability for documenting component and connector views.
read -
Integrating the Architecture Tradeoff Analysis Method (ATAM) with the Cost Benefit Analysis Method (CBAM)
December 01, 2003 • Technical Note
Robert NordMario R. BarbacciPaul C. Clements
This technical note reports on a proposal to integrate the SEI ATAM (Architecture Tradeoff Analysis Method) and the CBAM (Cost Benefit Analysis Method).
read -
Using the Architecture Tradeoff Analysis Method (ATAM) to Evaluate the Software Architecture for a Product Line of Avionics Systems: A Case Study
July 01, 2003 • Technical Note
Mario R. BarbacciPaul C. ClementsAnthony J. Lattanze
This 2003 technical note describes an ATAM evaluation of the software architecture for an avionics system developed for the Technology Applications Program Office (TAPO) of the U.S. Army Special Operations Command Office.
read -
Documenting Software Architectures in an Agile World
July 01, 2003 • Technical Note
Paul C. ClementsJames IversReed Little
This report compares the Software Engineering Institute's Views and Beyond approach for documenting software architectures with the documentation philosophy embodied in agile software-development methods.
read -
Software Architecture in Practice, 2nd Edition
April 09, 2003 • Book
Len BassPaul C. ClementsRick Kazman
This book provides an easily accessible overview of software architecture. Anyone requiring a comprehensive overview of the software architecture field will benefit from this book.
read -
DoD Architecture Framework and Software Architecture Workshop Report
March 01, 2003 • Technical Note
William G. WoodLyn UzzleJohn Weiler
This report summarizes the activities of the Workshop on the Department of the 2003 Defense Architecture Framework and Software Architecture workshop.
read -
Salion, Inc.: A Software Product Line Case Study
November 01, 2002 • Technical Report
Paul C. ClementsLinda M. Northrop
This 2002 case study outlines the efforts of Salion, Inc., an enterprise software company providing Revenue Acquisition Management solutions tailored to the unique needs of automotive suppliers.
read -
Documenting Software Architecture: Documenting Interfaces
June 01, 2002 • Technical Note
Felix BachmannLen BassPaul C. Clements
This report provides guidance for documenting the interfaces to software elements.
read -
Documenting Software Architecture: Documenting Behavior
January 01, 2002 • Technical Note
Felix BachmannLen BassPaul C. Clements
This report describes ways to document the behavior of systems, subsystems, and components of software architecture.
read -
Evaluating Software Architectures: Methods and Case Studies
October 22, 2001 • Book
Paul C. ClementsRick KazmanMark H. Klein
This book is a comprehensive guide to software architecture evaluation, describing specific methods that can quickly and inexpensively mitigate enormous risk in software projects.
read -
Control Channel Toolkit: A Software Product Line Case Study
October 01, 2001 • Technical Report
Paul C. ClementsSholom G. CohenPatrick Donohoe
This 2001 report is a case study of the Control Channel Toolkit (CCT), a software asset base for a software product line of ground-based spacecraft command and control systems built under the direction of the NRO.
read -
Fifth Product Line Practice Workshop Report
September 01, 2001 • Technical Report
Paul C. ClementsPatrick DonohoeKyo C. Kang (Pohang University of Science and Technology)
This report synthesizes the workshop presentations and discussions from the Fifth Software Engineering Institute Product Line Practice Workshop, held in December 2000.
read -
Software Product Lines: Practices and Patterns
August 20, 2001 • Book
Paul C. ClementsLinda M. Northrop
This book provides a framework of specific practices, with detailed case studies, to guide the implementation of product lines in your organization.
read -
Documenting Software Architectures: Organization of Documentation Package
August 01, 2001 • Technical Note
Felix BachmannLen BassPaul C. Clements
This comprehensive handbook outlines how to produce high-quality documentation for software architectures.
read -
SEI Workshop on Software Architecture Representation, 16-17 January 2001
May 01, 2001 • Special Report
Felix BachmannPaul C. ClementsDavid Garlan
This report summarizes the discussions from the 2001 Architecture Representation Workshop, where five leading software architects and practitioners were invited to discuss aspects of the architecture representation with senior members of the SEI technical staff.
read -
Active Reviews for Intermediate Designs
August 01, 2000 • Technical Note
Paul C. Clements
This 2000 technical note describes Active Review for Intermediate Designs (ARID), a piloted software design review technique.
read -
ATAM: Method for Architecture Evaluation
August 01, 2000 • Technical Report
Rick KazmanMark H. KleinPaul C. Clements
This report presents technical and organizational foundations for performing architectural analysis, and presents the SEI's ATAM, a technique for analyzing software architectures.
read -
Software Architecture Documentation in Practice: Documenting Architectural Layers
March 01, 2000 • Special Report
Felix BachmannLen BassJeromy Carriere
The 2000 report lays out our approach and organization for the book-in-planning titled Software Architecture Documentation in Practice, and provides guidance for the layer diagram.
read -
Fourth Product Line Practice Workshop Report
February 01, 2000 • Technical Report
Len BassPaul C. ClementsPatrick Donohoe
This report synthesizes the presentations and discussions from the 1999 Product Line Practice Workshop, which described practices and issues associated with tool support for software product lines.
read -
Second DoD Product Line Practice Workshop Report
October 01, 1999 • Technical Report
John K. BergeyGrady CampbellPaul C. Clements
This report synthesizes the workshop presentations and discussions of the Second DoD Product Line Practice Workshop, held in March 1999.
read -
Third Product Line Practice Workshop Report
March 01, 1999 • Technical Report
Len BassGrady CampbellPaul C. Clements
This report synthesizes the workshop presentations and discussions, which described product line practices and analyzed issues in the areas of software engineering, technical management, and organizational management.
read -
Report on the Second International Workshop on Development and Evolution of Software Architectures for Product Families
May 01, 1998 • Special Report
Paul C. ClementsNelson W. Weiderman
This report summarizes the discussions and outcomes of the Second International Workshop on Development and Evolution of Software Architectures for Product Families, held in February 1998.
read -
DoD Product Line Practice Workshop Report
May 01, 1998 • Technical Report
John K. BergeyRobert W. Krut, Jr.Paul C. Clements
This report synthesizes the 1998 product line workshop presentations and discussions that described selected product line practices and identified barriers and enablers to achieving these practices within the DoD.
read -
Second Product Line Practice Workshop Report
April 01, 1998 • Technical Report
Len BassGary ChastekPaul C. Clements
This report synthesizes the presentations and discussions from the Second SEI Product Line Practice Workshop, held in November 1997. Workshop participants identified factors involved in product line practices and analyzed issues in the areas of software engineering, technical management, and enterprise management.
read -
Report of the Reuse and Product Lines Working Group of WISR8
August 01, 1997 • Special Report
Paul C. Clements
This 1997 report summarizes the discussions held by the Reuse and Product Lines working group at the Eighth Workshop on Software Reuse (WISR8).
read -
Product Line Practice Workshop Report
June 01, 1997 • Technical Report
Len BassPaul C. ClementsSholom G. Cohen
This 1997 report synthesizes the presentations and discussions from the 1996 SEI Product Line Practice Workshop. In this workshop, participants identified factors involved in product line practices and analyzed issues in the areas of architecture, people-organization-management, and business models.
read -
Recommended Best Industrial Practice for Software Architecture Evaluation
January 13, 1997 • Technical Report
Gregory AbowdLen BassPaul C. Clements
This report details the results of two workshops on software architecture evaluation, held at the SEI in 1996.
read -
Scenario-Based Analysis of Software Architecture
November 01, 1996 • White Paper
Gregory AbowdLen BassPaul C. Clements
This paper presents an experiential case study illustrating the methodological use of scenarios to gain architecture-level understanding and predictive insight into large, real-world systems in various domains.
read -
A Case Study in Successful Product Line Development
October 01, 1996 • Technical Report
Lisa BrownswordPaul C. Clements
This report describes the experience of a company that builds large, complex, embedded, real-time shipboard command-and-control systems as a product line.
read -
The Gadfly: An Approach to Architectural-Level System Comprehension
March 01, 1996 • White Paper
Paul C. ClementsEdwin J. MorrisKurt C. Wallnau
This paper describes the Gadfly, an approach for developing narrowly-focused, reusable domain models that can be integrated and (re)used to aid in the process of top-down system comprehension.
read -
The Gadfly: An Approach to Architectural-Level System Comprehension
March 01, 1996 • White Paper
Paul C. ClementsRobert W. Krut, Jr.Edwin J. Morris
This paper describes the Gadfly, an approach for developing narrowly-focused, reusable domain models that can be integrated and (re)used to aid in the process of top-down system comprehension.
read -
A Survey of Architecture Description Languages
March 01, 1996 • White Paper
Paul C. Clements
This paper summarizes a taxonomic survey of ADLs that is in progress. Preliminary results allow conclusions to be drawn about what constitutes an ADL, and how contemporary ADLs differ.
read -
Software Architecture: An Executive Overview
February 01, 1996 • Technical Report
Paul C. ClementsLinda M. Northrop
This report summarizes software architecture for an intended audience of mid to senior level management.
read -
Coming Attractions in Software Architecture
January 01, 1996 • Technical Report
Paul C. Clements
This 1996 report identifies a set of promising lines of research related to software architecture and architecture-based system development.
read -
From Subroutines to Subsystems: Component-Based Software Development
November 01, 1995 • White Paper
Paul C. Clements
This whitepaper provides a conceptual overview of component-based software development (CBSD) and discusses how CBSD is changing the way large software systems are developed.
read -
The Unified Information Security (INFOSEC) Architecture (UIA) Gadfly Project
October 01, 1995 • Technical Report
Fred Maymir-DucharmePaul C. ClementsKurt C. Wallnau
This 1995 report discusses the results of a collaborative research and development activity between the Comprehensive Approach to Reusable Defense Software (CARDS) Program, the Department of Defense (DoD), and the Software Engineering Institute (SEI).
read -
Assessing the Quality of Large, Software-Intensive Systems: A Case Study
September 01, 1995 • White Paper
Alan W. BrownDavid J. CarneyPaul C. Clements
This paper presents a case study in carrying out an audit of a large, software-intensive system.
read -
Formal Methods in Describing Architectures
September 01, 1995 • White Paper
Paul C. Clements
This paper presents Modechart, a specification language for hard-real-time embedded computer systems developed at the University of Texas at Austin. It presents the Modechart paradigm as an example of a fruitful trend for ADL research.
read -
An Architectural Analysis Case Study: Internet Information Systems
April 01, 1995 • White Paper
Gregory AbowdLen BassPaul C. Clements
This paper presents a method for analyzing systems for nonfunctional qualities from the perspective of their software architecture and applies this method to the field of Internet information systems (IISs).
read -
Features of Architecture Description Languages
April 01, 1995 • White Paper
Paul C. ClementsPaul Kogut
This 1995 whitepaper provides an overview of Architecture description languages (ADLs), an emerging notation for software architecture models.
read -
Understanding Architectural Influences and Decisions in Large-System Projects
April 01, 1995 • White Paper
Paul C. Clements
This paper discusses the approach taken in a pilot study to uncover the correlation, if any, between architectural influences and architectural decisions in large-scale, software-intensive development projects.
read -
An Architectural Analysis Case Study:Internet Information Systems
April 01, 1995 • White Paper
Gregory AbowdLen BassPaul C. Clements
This paper presents a method for analyzing systems for nonfunctional qualities from the perspective of their software architecture and applies this method to the field of Internet information systems (IISs).
read -
A Case Study in Assessing the Maintainability of Large, Software-Intensive Systems
March 01, 1995 • White Paper
Alan W. BrownDavid J. CarneyPaul C. Clements
This paper presents a case study in assessing the maintainability of a large, software intensive system. The techniques used are described, and their strengths and weaknesses discussed.
read -
A Case Study in Assessing the Maintainability of Large, Software-Intensive Systems
March 01, 1995 • White Paper
Alan W. BrownDavid J. CarneyPaul C. Clements
This paper presents a case study in assessing the maintainability of a large, software intensive system. The techniques used are described, and their strengths and weaknesses discussed.
read -
The Software Architecture Renaissance
November 01, 1994 • White Paper
Paul C. ClementsPaul Kogut
The increasing importance of software in systems is also driving the software architecture renaissance. This article provides a brief overview of some important architecture related efforts.
read -
From Domain Models to Architectures
January 01, 1994 • White Paper
Paul C. Clements
This whitepaper was presented at the Workshop on Software Architecture, USC Center for Software Engineering, Los Angeles, 1994, by Paul Clements.
read