This dissertation summarizes the results of applying several formal modeling capabilities to the WinWin system, and identifies the system improvements resulting from the analysis. WinWin is a groupware support system driven by the WinWin spiral process model. It enables multiple stakeholders to collaborate and negotiate requirements in an incremental and evolutionary way. It uses "win conditions" to capture individual stakeholder objectives. "Issues" are provided by the system to capture sets of conflicting win conditions along with "options", which are possible resolutions to issues. An "agreement" adopts options chosen by stakeholders to resolve an issue and to reconcile the win conditions involved in that issue. These artifacts provide scalable structure for a groupware tool and accommodate changes to requirements.Initial use of WinWin uncovered several anomalous usage situations. These made it feasible and important to formally model these artifacts and operations to provide solid foundations of the system. The research described in this thesis models the WinWin requirements negotiation infrastructure and dynamics. It involves formal descriptions of multiple views for the WinWin requirements negotiation system, including win condition interaction in the requirements space view, artifacts and their relationships, artifact life cycles and the equilibrium model. The results showed that these models improved the system in three primary ways: (1) fully understand the lower-level interactions of the system's features; (2) prevent aberrant behavior of the system; and (3) provide process guidance for the users to avoid problem situations and efficiently reach win-win solutions. While these models are formulated, a big challenge for a multi-view framework is to maintain consistency. This thesis also presents how the relationships among the various views of WinWin are determined in order to reconcile them into an integrated model. The reconciliation methodology can be generalized and applied to other multi-view frameworks.
Cited By
- Mistrik I, Bahsoon R, Kazman R and Zhang Y (2014). Economics-Driven Software Architecture, 10.5555/2671146, Online publication date: 2-Jul-2014.
- Aroonvatanaporn P, Koolmanojwong S and Boehm B COTIPMO Proceedings of the International Conference on Software and System Process, (28-37)
- Jain A and Boehm B Developing a theory of value-based software engineering Proceedings of the seventh international workshop on Economics-driven software engineering research, (1-5)
- Jain A and Boehm B (2005). Developing a theory of value-based software engineering, ACM SIGSOFT Software Engineering Notes, 30:4, (1-5), Online publication date: 1-Jul-2005.
- Horowitz E, Lee J and Lee J WinWin Proceedings of the 21st international conference on Software engineering, (646-649)
- Boehm B (2019). Escaping the software tar pit, ACM SIGSOFT Software Engineering Notes, 24:1, (36-48), Online publication date: 1-Jan-1999.
- Heckel J The Virtual Workspace System (VWS) Proceedings of the 6th Workshop on Enabling Technologies on Infrastructure for Collaborative Enterprises, (10-16)
Recommendations
Quantitative WinWin: a new method for decision support in requirements negotiation
SEKE '02: Proceedings of the 14th international conference on Software engineering and knowledge engineeringDefining, prioritizing, and selecting requirements are problems of tremendous importance. In this paper, a new approach called Quantitative WinWin for decision support in requirements negotiation is studied. The difference to Boehm's WinWin groupware-...
Collaborative Requirements Negotiation with EasyWinWin
DEXA '00: Proceedings of the 11th International Workshop on Database and Expert Systems ApplicationsThe EasyWinWin methodology supports collaborative elaboration, prioritization, and negotiation of system requirements. The approach enhances the WinWin negotiation model by integrating group productivity techniques and collaborative tools. EasyWinWin ...
Negotiation in the Requirements Elicitation and Analysis Process
ASWEC '08: Proceedings of the 19th Australian Conference on Software EngineeringRequirements elicitation and analysis is the most crucial process in requirements engineering since it moulds the shape of the desired end product. In dealing with a system’s stakeholders in a process to elicit the requirements, conflicts are ...