Technical Reports


Return to Technical Report System

USC-CSE-96-509 PDF

Lessons Learned on an Early Application Generator

Barry Boehm, USC-Center for Software Engineering

This paper discusses a set of experiences I had in developing ROCKET, an early application generator in the area of rocket flight mechanics at the Rand Corporation. It begins by describing a precursor system I worked on at General Dynamics. It also covers some experiences with the interactive ROCKET followon, and POGO, an early GUI builder. It concludes by relating these to the recent Megaprogramming and Domain Specific Software Architecture programs I was involved in at DARPA.

USC-CSE-96-508 Information on obtaining a copy of this technical report may be found here.

An Open Architecture for Software Process Asset Reuse

Barry Boehm, USC-Center for Software Engineering
Steven Wolf, Rockwell Collins

Beginning with the paper, "Software Processes are Software Too," [Osterweil, 1987], an attractive line of software process research has developed involving the exploitation of a duality between software products and software processes. This duality can be expressed as,

"If a given approach (disciplined programming, requirements definition and validation, reuse, risk management, peformance modeling) is good for software products, then its process counterpart is good for software processes."

Given that differences exist between software products and software processes (software products are executed by machines; software processes are executed by combinations of people and machines), this duality cannot be pushed too hard or applied unthinkingly...


Simulation and Modeling for Software Acquisition (SAMSA):
Air Force Opportunities (Extended Report)

Barry Boehm, USC-Center for Software Engineering
Walt Scacchi, University of Southern California

As indicated in the recent Air Force Scientific Advisory Board "New World Vistas" report [January 1996], "The future force will become effective and efficient through the use of information systems..." This particularly requires the Air Force to master the complexities of the rapidly evolving field of computer software, especially in the front end of the system life-cycle.

The need for better support technology for software acquisition was recognized by Mr. Lloyd Moseman, Deputy Assistant Secretary of the Air Force for Computers, Communications, and Support Systems. He also identified Modeling and Simulation (M&S) technology as a strong candidate for such support. M&S technology has been extremely valuable in the acquisition of the hardware parts of Air Force systems, but appears underutilized for software acquisition. Mr. Moseman commissioned USC-CSE to form a Blue Ribbon Panel to investigate the potential of M&S technology for software acquisition, and to develop a technology roadmap for creating and exploiting any promising technologies identified...

USC-CSE-96-506 Postscript, PDF

System Dynamics Modeling of an Inspection-Based Process

Ray Madachy, USC-Center for Software Engineering and Litton Data Systems

A dynamic simulation model of an inspection-based software life cycle process has been developed to support quantitative process evaluation.

The model serves to examine the effects of inspection processes on cost, schedule, and quality throughout the lifecycle. It uses system dynamics to model the interrelated flows of tasks, errors, and personnel throughout different development phases and is calibrated to industrial data. It extends previous software project dynamics research by examining an inspection-based process with an original model, integrating it with the knowledge-based method for risk assessment and cost estimation, and using an alternative modeling platform.

While specific enough to investigate inspection practices, it is sufficiently general to incorporate changes for other phenomena. It demonstrates the effects of performing inspections or not, the effectiveness of varied inspection policies, and the effects of other managerial policies such as manpower allocation.

The results of testing indicate a valid model that can be used for process evaluation and project planning, and serve as a framework for incorporating other dynamic process factors.

Document characteristics: Accepted for ICSE 18, March 1996.

USC-CSE-96-505 Postscript

Models for Composing Heterogeneous Software Architectures

Ahmed Abd-Allah and Barry Boehm, USC-Center for Software Engineering

A persistent problem in software engineering is the problem of software composition. The emergence of software architectures and architectural styles has focused attention on a new set of abstractions with which we can create and compose software systems. We examine the problem of providing a model for the composition of different architectural styles within software systems, i.e. the problem of composing heterogeneous architectures. We describe a model of pure styles that is based on a uniform representation. We provide a disciplined approach for analyzing some key aspects of architectural composition, and show the conditions under which systems will fail to be composed.

USC-CSE-96-504 Postscript, PDF

Analysis of Software Requirements Negotiation Behavior Patterns

Alexander Egyed and Barry Boehm, USC-Center for Software Engineering

Roughly 35 three-person teams played the roles of user, customer, and developer in negotiating the requirements of a library information system. Each team was provided with a suggested set of stakeholder goals and implementation options, but were encouraged to exercise creativity in expanding the stakeholder goals and in creating options for negotiating an eventually satisfactory set of requirements.

The teams consisted of students in a first-year graduate course in software engineering at USC. They were provided with training in the Theory W (win-win) approach to requirements determination and the associated USC WinWin groupware support system. They were required to complete the assignment in two weeks.

Data was collected on the negotiation process and results, with 23 projects providing sufficiently complete and comparable data for analysis. A number of hypotheses were formulated about the results, e.g. that the uniform set of initial conditions would lead to uniform results. This paper summarizes the data analysis, which shows that expectations of uniform group behavior were generally not realized.

Document Characteristics: Proceedings, INCOSE'97


An Early Applications Generator and Other Recollections

Barry Boehm, USC-Center for Software Engineering

In this paper, I'll focus primarily on a set of experiences I had in developing an early application generator in the area of rocket flight mechanics. But I'll begin with some other recollections to indicate what led up to this work. And I'll end with recollections of some of the software experiences I've had since.

Document characteristics: in R. Glass, In the Beginning: Recollections of Software Pioneers, IEEE, 1998, pp. 67-97

USC-CSE-96-502 Postscript

The WinWin Requirements Negotiation System:
A Model-Driven Approach

Mingjune Lee and Barry Boehm, USC-Center for Software Engineering

Requirements Engineering constitutes an important part of Software Engineering. The USC WinWin requirements negotiation system addresses critical issues in requirements engineering including (1) multi-stakeholder considerations, (2) change management, and (3) groupware support. This paper presents our current research efforts on constructing and reconciling several formal and semi-formal models of the system and its operations, including inter-artifact relationships, artifact life cycles, and equilibrium model. It concentrates on determining the relationships among the various models or views of the WinWin requirements engineering process.

Keywords: concurrent engineering, groupware, model-driven processes, negotiation, requirements engineering, spiral model, Theory W, win condition.

USC-CSE-96-501 Postscript

Foundations of the WinWin Requirements Negotiation System

Mingjune Lee, USC-Center for Software Engineering

Requirements Engineering (RE) constitutes an important part of Software Engineering. The USC WinWin requirements negotiation system addresses critical issues in requirements engineering including (1) multi-stakeholder considerations, (2) change management, and (3) groupware support. The WinWin approach to date has primarily involved exploratory prototyping. The system is now converging on a relatively stable set of artifacts and relationships. This makes it feasible and important to formalize these artifacts and relationships to provide a solid scientific framework for the WinWin system. This is the focused problem addressed by the research presented in this paper.

Ph.D. Dissertation, USC Computer Science Department

USC-CSE-96-500 Postscript

Software Cost Option Strategy Tool (S-COST)

Barry Boehm and Hoh In, USC-Center for Software Engineering

The resolution process of cost conflicts among requirements is complex because of highly collaborative and coordinated processes, complex dependencies, and exponentially increasing option space. This paper describes an exploratory knowledge-based tool (called "S-COST") for assisting stakeholders to surface huge option space and diagnose risks of each option.

The S-COST operates in the context of the USC-CSE WinWin system (a groupware support system for determining software and system requirements as negotiated win conditions), QARCC (a support system for identifying conflicts in quality requirements), and COCOMO® (COnstructive COst estimation MOdel).

Keywords: Software requirements engineering, Software quality, WinWin, Spiral Model, Software Architectures, Concurrent engineering, Software risk analysis, Knowledge based software engineering.

Appeared In: COMPSAC '96 (the 20th International Computer Software and Application Conference).


Return to Technical Report System

Copyright 1995, 1996, 1997, 1998, 1999 The University of Southern California

The written material, text, graphics, and software available on this page and all related pages may be copied, used, and distributed freely as long as the University of Southern California as the source of the material, text, graphics or software is always clearly indicated and such acknowledgement always accompanies any reuse or redistribution of the material, text, graphics or software; also permission to use the material, text, graphics or software on these pages does not include the right to repackage the material, text, graphics or software in any form or manner and then claim exclusive proprietary ownership of it as part of a commercial offering of services or as part of a commercially offered product.