| SEI Independent Research and Development Projects |
SEP 2003 |
|
| Authors:
Felix Bachmann; Len Bass; David Carney; Sven Dietrich; Peter Feiler; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | Each year, the Software Engineering Institute (SEI) undertakes several Independent Research and Development (IR&D) projects. These projects serve to: (a) support feasibility studies investigating whether further work by the SEI would be of potential benefit and (b) support further exploratory work to determine if there is sufficient value in eventually funding the feasibility study work as an SEI initiative. Projects are chosen based on their potential to mature and/or transition ... |
|
| Preliminary Design of ArchE: A Software Architecture Design Assistant |
SEP 2003 |
|
| Authors:
Felix Bachmann; Len Bass; Mark Klein; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report presents a procedure for moving from a set of quality attribute scenarios to an architecture design that satisfies those scenarios. This procedure is embodied in a preliminary design for an architecture design assistant named ArchE (Architecture Expert), which will be implemented on a rule-based platform. This report includes the theory and rationale precipitating the design of ArchE and then describes this design in detail. |
|
| Deriving Architectural Tactics: A Step Toward Methodical Architectural Design |
MAR 2003 |
|
| Authors:
Felix Bachmann; Len Bass; Mark Klein; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This is one of several reports that provide the current status on the work being done by the Software Engineering Institute (SEIsm) to understand the relationship between quality requirements and architectural design. The ultimate objective of this work is to provide analysis-based guidance to designers so that the quality attributes of generated designs are more predictable and better understood. Currently, four distinct problems must be solved to achieve that |
|
| Supporting the CANCEL Command Through Software Architecture |
DEC 2002 |
|
| Authors:
Len Bass; Bonnie E. John; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | A system that supports the user's ability to cancel a command should be designed to achieve particular results. These results include the responses the system should make to the user, such as providing feedback to the user about the command's receipt, predicting the time the cancellation should take (for long-running cancellations), and indicating the state to which the system was returned after the completion of the cancellation. To support a ... |
|
| Illuminating the Fundamental Contributors to Software Architecture Quality |
AUG 2002 |
|
| Authors:
Felix Bachmann; Len Bass; Mark Klein; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | An architectural tactic is a design decision that helps achieve a specific quality-attribute response. Such a tactic must be motivated by a quality-attribute analysis model. This report presents the basic concepts of analysis models for two quality attributes-modifiability and performance, identifies a collection of tactics that can be used to control responses within those models, and discusses how to analyze the models in terms of these tactics. This report also ... |
|
| Documenting Software Architecture: Documenting Interfaces |
JUN 2002 |
|
| Authors:
Felix Bachmann; Len Bass; Paul Clements; David Garlan; James Ivers; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This is the fourth in a series of SEI reports on documenting software architectures. This report details guidance for documenting the interfaces to software elements. It prescribes a standard organization (template) for recording semantic as well as syntactic information about an interface. Stakeholders of interface documentation are enumerated, available notations for specifying interfaces are described, and three examples are provided. |
|
| Documenting Software Architecture: Documenting Behavior |
JAN 2002 |
|
| Authors:
Felix Bachmann; Len Bass; Paul Clements; David Garlan; James Ivers; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report represents another milestone of a work in progress: a comprehensive handbook on how to produce high-quality documentation for software architectures. The handbook, tentatively titled Documenting Software Architectures, will be published in early 2002 by Addison-Wesley as part of the Software Engineering Institute (SEI) Series on Software Engineering. The book is intended to address a lack of language-independent guidance about how to capture an architecture in a written form ... |
|
| Analyzing Enterprise JavaBeans Systems Using Quality Attribute Design Primitives |
OCT 2001 |
|
| Authors:
Anna Liu; Len Bass; Mark Klein; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | Quality attribute requirements such as those for performance, security, modifiability, reliability, and usability have a significant influence on the software architecture of a system. At the Software Engineering Institute, we are studying and codifying the relationship between quality attribute requirements and the architectural design strategies that impact their achievement. In CMU/SEI-2000-TN-017 Bass 00, we introduced the notion of quality attribute design primitives. Quality attribute design primitives (or attribute primitives) are ... |
|
| Applicability of General Scenarios to the Architecture Tradeoff Analysis Method |
OCT 2001 |
|
| Authors:
Len Bass; Mark Klein; Gabriel Moreno; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The SE has been developing a list of scenarios to characterize quality attributes. The SEl has also been conducting Architecture Trade Off Analysis Method (ATAM) evaluations. One output of an ATAM evaluation is a collection ot scenarios that relate to quality attribute requirements for the specific system being evaluated. In this report, we compare the scenarios elicited from five ATAM evaluations with the scenarios used to characterize the quality attributes. ... |
|
| Documenting Software Architectures: Organization of Documentation Package |
AUG 2001 |
|
| Authors:
Felix Bachmann; Len Bass; Paul Clements; David Garlan; James Ivers; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report represents a milestone of a work in progress. That work is a comprehensive handbook on how to produce high-quality documentation for software architectures. The handbook, tentatively entitled Documenting Software Architectures, will be published in early 2002 by Addison Wesley Longman as part of the SEI Series on Software Engineering. Since this report is a snapshot of current work, the material described here may change before the handbook is ... |
|
| Achieving Usability Through Software Architecture |
MAR 2001 |
|
| Authors:
Len Bass; Bonnie E. John; Jesse Kates; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | In this report, we present an approach to improving the usability of software systems by means of software architectural decisions. We identify specific connections between aspects of usability, such as the ability to "undo, " and software architecture. We also formulate each aspect of usability as a scenario with a characteristic stimulus and response. For every scenario, we provide an architecture pattern that implements its aspect of usability. We then ... |
|
| Quality Attribute Design Primitives |
DEC 2000 |
|
| Authors:
Len Bass; Mark Klein; Felix Bachmann; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report focuses on the quality attribute aspects of mechanisms. An architectural mechanism is a 'structure whereby objects collaborate to provide some behavior that satisfies a requirement of the problem'. The authors identity mechanisms that significantly affect quality attribute behavior and have sufficient content for analysis. Codifying such mechanisms will enable architects to identify the choices necessary to achieve quality attribute goals. |
|
| An Application of the Architecture-Based Design Method to the ElectronicHouse |
SEP 2000 |
|
| Authors:
Felix Bachmann; Len Bass; Mark Klein; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The Architecture-Based Design (ABD) Method is a method for designing the software architecture of a product line of systems. It has previously been described in the technical report, The Architecture Based Design Method (CMU/ SEI-2000-TR-001) Bachmann 00. This report elaborates an example of the application of this method to designing the software architecture. The example is the house of the future. The house of the ... |
|
| Volume 1: Market Assessment of Component-Based Software Engineering |
MAY 2000 |
|
| Authors:
Len Bass; Charles Buhman; Santiago Comella-Dorda; Fred Long; John Robert; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | To assess the market for component-based software engineering, the Software Engineering Institute (SEI) studied industry trends in the use of software components. The study, conducted from September 1999 to February 2000, examined software components from both technical and business perspectives. The results of this study are summarized in the following technical notes and reports: Volume I: Market Assessment of Component-Based Software Engineering Volume II: Technical Concepts of Component-Based Software Engineering ... |
|
| Technical Concepts of Component-Based Software Engineering, Volume 2 |
MAY 2000 |
|
| Authors:
Felix Bachman; Len Bass; Charles Buhman; Santiago Comella-Dorda; Fred Long; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The Software Engineering Institute is undertaking a feasibility study of "component-based software engineering" (CBSE). The objective of this study is to determine whether CBSE has the potential to advance the state of software engineering practice and, if so, whether the SEI can contribute to this advancement. This report is the second part of a three-part report on the study. Volume I contains a market assessment for CBSE. Volume ... |
|
| Software Architecture Documentation in Practice: Documenting Architectural Layers |
MAR 2000 |
|
| Authors:
Felix Bachmann; Len Bass; Jeromy Carriere; Paul Clements; David Garlan; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report represents the first milestone of a work in progress. That work is a comprehensive handbook on how to produce high-quality documentation for software architectures. The handbook, tentatively entitled Software Architecture Documentation in Practice, will be published in mid- to late-2000 by Addison Wesley Longman as a book in the SE series on software engineering. Aimed squarely at the practitioner, the handbook is intended ... |
|
| Fourth Product Line Practice Workshop Report |
FEB 2000 |
|
| Authors:
Len Bass; Paul Clements; Patrick Donohoe; John McGregor; Linda Northrop; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The Fourth Software Engineering Institute (SEI) Product Line Practice Workshop was a hands-on meeting held in December 1999 to share industry practices in the area of tool support for software product lines, to explore the technical and non-technical issues involved, and to evolve the SEI Product Line Practice Framework. This report synthesizes the workshop presentations and discussions, which described practices and issues associated with tool support ... |
|
| The Architecture Based Design Method |
JAN 2000 |
|
| Authors:
Felix Bachmann; Len Bass; Gary Chastek; Patrick Donohoe; Fabio Peruzzi; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This paper presents the Architecture Based Design (ABD) method for designing the high-level software architecture for a product line or long-lived system. Designing an architecture for a product line or long-lived system is difficult because detailed requirements are not known in advance. The ABD method fulfills functional, quality, and business requirements at al level of abstraction that allows for the necessary variation when producing specific ... |
|
| Architecture-Based Development |
APR 1999 |
|
| Authors:
Len Bass; Rick Kazman; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This report presents a description of architecture-centric system development. In an architecture-centric process, a set of architecture requirements is developed in addition to functional requirements. This report describes the source of these architecture requirements and how they are elaborated into a design. In addition to design, the documentation, evaluation, realization, and maintenance of an architecture are also described. |
|
| Third Product Line Practice Workshop Report |
MAR 1999 |
|
| Authors:
Len Bass; Grady Campbell; Paul Clements; Linda Northrop; Dennis Smith; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The Third Software Engineering Institute Product Line Practice Workshop was a hands-on meeting held in December 1998 to share industry practices in software product lines, to explore the technical and non-technical issues involved, and to evolve the SEl Product Line Practice Framework. This report synthesizes the workshop presentations and discussions, which described product line practices and analyzed issues in the areas of software engineering, technical ... |
|
| Second Product Line Practice Workshop Report |
APR 1998 |
|
| Authors:
Len Bass; Gary Chastek; Paul Clements; Linda Northrop; Dennis Smith; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The second Software Engineering Institute Product Line Practice Workshop was a hands-on meeting held in November 1997 to share industry practices in software product lines and to explore the technical and non- technical issues involved. This report synthesizes the workshop presentations and discussions, which identified factors involved in product line practices and analyzed issues in the areas of software engineering, technical management, and enterprise management. ... |
|
| Product Line Practice Workshop Report |
JUN 97 |
|
| Authors:
Len Bass; Paul Clements; Sholom Cohen; Linda Northrop; James Withey; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The first Software Engineering Institute Product Line Practice Workshop was a hands-on meeting held in December 1996 to share industry and government practices in software product lines and to explore the technical and nontechnical issues involved. This report synthesizes the workshop presentations and discussions, which identified factors involved in product line practices and analyzed issues in the areas of architecture, people-organization-management and business models. |
|
| Recommended Best Industrial Practice for Software Architecture Evaluation |
13 JAN 97 |
|
| Authors:
Gregory Abowd; Len Bass; Paul Clements; Rick Kazman; Linda Northrop; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | Architectural decisions have a great impact on the consequent quality of software systems. As a result, it is important to evaluate how a software architecture meets its quality demands. Though much focus has been placed on modeling and describing the software architecture as a design artifact, we found that relatively little is known about the current experience with software architecture evaluation. This report details the results of two workshops on ... |
|
| Toward Deriving Software Architectures from Quality Attributes |
AUG 94 |
|
| Authors:
Rick Kazman; Len Bass; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | A method for deriving software architectures from a consideration of the non-functional qualities of the system is presented. The method is based on identifying a set of six 'unit operations' and using those operations to partition the functionality of the system. These unit operations were derived from the literature and from expert practice. The relationship between the unit operations and a set of eight non-functional qualities is explored. Evidence is ... |
|
| Analyzing the Properties of User Interface Software |
OCT 93 |
26 pages |
| Authors:
Rick Kazman; Len Bass; Gregory Abowd; Mike Webb; CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE
|
 | Software architecture is an increasingly important research topic and in this report we investigate the potential role of architecture in evaluating the properties of a system built to a particular architecture. Currently such architectural analysis is complicated for two main reasons: authors of new architectures describe their creations in idiosyncratic terms; and there is no clear way of understanding an architecture with respect to an organization's life cycle concerns-efficiency, maintainability, ... |
|
| Structural Modeling: An Application Framework and Development Process for Flight Simulators |
AUG 93 |
|
| Authors:
Gregory D. Abowd; Len Bass; Larry Howard; Linda Northrop; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | In this paper, we present the structural modeling approach, an application framework and development process for the construction of flight simulators. Structural modeling was developed to address functional, nonfunctional, and process requirements for flight simulators. It has been successfully use in the development of large scale (one million lines of Ada code) flight simulators for the United States Air Force. A structural model promotes a simple and coherent software architecture ... |
|
| Human-Machine Interaction Considerations for Interactive Software |
FEB 89 |
|
| Authors:
Len Bass; Joelle Coutaz; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | This document introduces current concepts and techniques relevant to the design and implementation of user interfaces. A user interface refers to those aspects of a system that the user refers to, perceives, knows and understands. A user interface is implemented by code that mediates between a user and a system. This document covers both aspects. The first chapter is an introduction to the psychology of human-computer interaction. It presents the ... |
|
| The Serpent Runtime Architecture and Dialogue Model |
MAY 88 |
|
| Authors:
Len Bass; Erik Hardy; Kurt Hoyt; Reed Little; Robert Seacord; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | The separation of the user interface portion of a software system from the functional portion is intended to enable the production of tools to deal with the user interface, and to raise the quality and modularity of resulting software systems. One class of such separation tools that have been developed is a software architecture known as the User Interface Management System (UIMS). This paper describes the runtime architecture and dialogue ... |
|
| Introduction to the Serpent User Interface Management System |
MAR 88 |
|
| Authors:
Len Bass; Erik Hardy; Kurt Hoyt; M. R. Little Jr.; Robert Seacord; CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST
|
 | Serpent (Software Engineering Rapid Prototyping Environment) is an example of the class of systems known as User Interface Management System (UIMS) . It uses the X window system to interact with the end user, and is useful both as a portion of a production system and as a separate prototyping tool. Serpent supports the development and execution of the user interface of a system. It provides an editor with ... |
|