Technical Reports


Return to Technical Report System

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

Feature-Based Modeling of Software Component Interactions

Prasanta Bose, Carnegie Mellon University

Complex software-based system design poses significant tractability problems that can be addressed by using higher level abstractions of the design such as architecture level abstractions. The architecture-level design distinguishes coarse-grain components and interactions between them. This paper develops approximate modeling of the interactions between the components in terms of a set of features in order to facilitate limited types of consistency checking of the designs at the conceptualizing stage.

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

Software Requirements Negotiation and Renegotiation Aids:
A Theory-W Based Spiral Approach

Barry Boehm and Ming-June Lee, USC Center for Software Engineering
Prasanta Bose, Carnegie Mellon University
Ellis Horowitz, University of Southern California

A major problem in requirements engineering is obtaining requirements that address the concerns of multiple stakeholders. An approach to such a problem is the Theory-W based Spiral Model. One key element of this model is stakeholder collaboration and negotiation to obtain win-win requirements. This paper focuses on the problem of developing a support system for such a model. In particular, it identifies needs and capabilities required to address the problem of negotiation and renegotiation that arises when the model is applied to incremental requirements engineering. The paper formulates elements of the support system, called WinWin, for providing such capabilities. These elements were determined by experimenting with versions of WinWin and understanding their merits and deficiencies. The key elements of WinWin are described and their use in incremental requirements engineering are demonstrated, using an example renegotiation scenario from the domain of software engineering environments for satellite ground stations.

USC-CSE-94-502 Postscript

Humans and Process Frameworks: Some Critical Process Elements

Barry Boehm and Prasanta Bose, USC-Center for Software Engineering

Successful engineering of complex software systems require humans to engage collaboratively in multiple critical process elements. This paper identifies those necessary process elements and defines WinWin, a collaborative process model that addresses the process elements. It briefly describes a process support system for the WinWin model.

Appeared in: Proceedings, Software Process Workshop, 1994.

USC-CSE-94-501 Postscript

A Collaborative Spiral Software Process Model Based on Theory W

Barry Boehm and Prasanta Bose, USC-Center for Software Engineering

A primary difficulty in applying the spiral model has been the lack of explicit process guidance in determining the prospective system's objectives, constraints, and alternatives that get elaborated in each cycle. This paper presents an extension of the spiral model, called the Next Generation Process Model (NGPM), which uses the Theory W (win-win) approach [Boehm-Ross, 1989] to converge on a system's next-level objectives, constraints, and alternatives. The refined Spiral Model explicitly addresses the need for concurrent analysis, risk resolution, definition, and elaboration of both the software product and the software process in a collaborative manner. This paper also describes some of the key elements of the support system developed based on the model and refined through experiments with it.

Appeared in: Proceedings, Third International Software Process Conference, 1994.


Critical Success Factors for Knowledge Based Software Engineering Applications

Barry Boehm and Prasanta Bose, USC-Center for Software Engineering

Ten prototype knowledge based software engineering (KBSE) applications were recently developed in a USC graduate course. These were expert-system applications falling into the Activity Coordination portion of the KBSA paradigm [Green et. al.,1983] rather than into the automatic program generation portion. The KBSE development guidelines for the prototypes included the primary critical success factor (CSF) heuristics cited in such references as [Waterman, 1986], [Jackson, 1990], and [Kelly, 1991] for identifying potentially successful expert systems applications. The resulting applications could be grouped into three categories, as follows:

  • i)Knowledge based process assistance
  • ii) Knowledge based software architecture and reuse assistance

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

User Interface Design Assistance for Large-Scale Software Development

Gregory Bolcer, University of California, Irvine

The User Interface Design Assistant (UIDA) addresses the specific design problems of style and integration consistency throughout the user interface development process and aids in the automated feedback and evaluation of a system's graphical user interface according to knowledge-based rules and project specific design examples. The UIDA system is able to quickly identify inconsistent style guide interpretations and UI design decisions resulting from distributed development of multiple UI sub-systems. This case arises when each sub-system conforms to the general style guide rules, but when integrated together, may appear inconsistent.

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

Software Technology Risk Advisor

Gregory Toth, USC Center for Software Engineering and Northrop Corporation

This paper describes the Software Technology Risk Advisor (STRA), a knowledge-based software engineering tool that provides assistance in identifying and managing software technology risks. The STRA contains a knowledge base of software product and process needs, satisfying capabilities, and capability maturity factors. After a user ranks the importance of relevant needs to his or her project, the STRA automatically infers risk areas by evaluating disparities between project needs and technology maturities. Identified risks are quantitatively prioritized and the user is given risk reduction advice and rationale for each conclusion. This paper presents methods used in the STRA, along with discussions of knowledge acquisition, experimental results, current status, and related work.


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.