Home   Contact Us    
Center for Systems and Software Engineering

About us
News
History
People
Events
Upcoming
Highlights
Past
Tech. Report
By Author
Research
Projects
Tools
Courses
Education
Degrees
Admissions
Affiliates
List of Affiliates
Private Area
Other Resources


Technical Reports

USC-CSE-96-510

Ellis Horowitz, "WinWin Reference Manual: A System for Collaboration and Negotiation," version 1.1, 1996 (pdf)

WmWin is a computer program that aids in the capture, negotiation and coordination of requirements for a large system. It assumes that a group of people, called stakeholders, their proposed system. The system can be of any type. WinWin contains facilities for:
capturing the desires (win conditions) of the stakeholders
organizing the terminology so that stakeholders are using the same terms in the same way
expressing disagreements or issues needing resolution
offering options as potential solutions
negotiating agreements which resolve the issues
using third party tools to enlighten or resolve issues
producing a requirements document that summarizes the current state of the proposed system
creating documents that support multimedia and hyperlinks
tracing the ways by which requirements decisions were reached
checking the completeness and consistency of requirements

Version 2.0 available at (ftp://ftp.usc.edu/pub/soft_engineering/winwin2.0/wwmanual2.0.pdf)

Added June 25th, 2008


USC-CSE-96-509

Barry Boehm, "Lessons Learned on an Early Application Generator" (pdf)

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

Barry Boehm, Steven Wolf, "An Open Architecture for Software Process Asset Reuse," ISPW, 10th International Software Process Workshop (ISPW '96), p. 2 (pdf)

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.


USC-CSE-96-507

Barry Boehm, Walt Scacchi, "Simulation and Modeling for Software Acquisition (SAMSA): Air Force Opportunities (Extended Report)," http://www.usc.edu/dept/ATRIUM/Papers/SAMSA/samcover.html (pdf)

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

Ray Madachy, "System Dynamics Modeling of an Inspection-Based Process," accepted for ICSE 18, March 1996 (pdf)

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.


USC-CSE-96-505

Ahmed Abd-Allah, Barry Boehm, "Models for Composing Heterogeneous Software Architectures" (pdf)

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

Alexander Egyed, Barry Boehm, "Analysis of Software Requirements Negotiation Behavior Patterns," Proceedings, INCOSE '97 (pdf)

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.


USC-CSE-96-503

Barry Boehm, "An Early Applications Generator and Other Recollections," In the Beginning: Recollections of Software Pioneers, R. Glass, IEEE, 1998, pp. 67-97 (pdf)

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.


USC-CSE-96-502

Ming June Lee, Barry Boehm, "The WinWin Requirements Negotiation System: A Model-Driven Approach" (pdf)

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.


USC-CSE-96-501

Ming June Lee, "Foundations of the WinWin Requirements Negotiation System," Ph.D. Dissertation, USC Computer Science Department (pdf)

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.


USC-CSE-96-500

Barry Boehm, Hoh In, "Software Cost Option Strategy Tool (S-COST)," COMPSAC '96, the 20th International Computer Software and Application Conference, 1996, pp. 15-20 (pdf)

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).


Copyright 2008 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.