October 2004

Value-based Dependability Analysis based on COCOMO II and COQUALMO models

LiGuo Huang

Wednesday, October 6, 2004

Networking @ 5:45; Bootcamp @ 6:15; Business @ 6:45; Program @ 7:00 PM

at Countrywide, 2900 Madera, Simi Valley, CA 93065

Dependability is an integrative concept consisting of a number of attributes defining software quality. A critical objective of the NASA High Dependability Computing Program is a definition of "dependability" that enables evaluation of the contributions of existing and new computing technologies to the improvement of an information-intensive system's dependability. Such evaluations require one or more evaluation criteria or metrics that enable quantitative comparisons of candidate technologies to be performed. Ideally, one would like to have a single dependability metric. However, in practice, different systems have different success-critical stakeholders and they depend on the system in different ways. Furthermore, in most software applications, investments in software dependability compete for limited resources with proposed investments in software and system functionality, response time, adaptability, speed of development, etc. Investigating the tradeoffs among these sources of investment raises a number of significant questions about the nature of software dependability and its interactions with other desired software capabilities. These questions include:

  • What software capabilities are your various stakeholders really depending on (liveness, responsiveness, quality of service)? What happens when these aspects of dependability conflict?
  • Many current software dependability-related techniques assume that every requirement, use case, test case, and defect is equally important. How cost-effective are such value-neutral methods?
  • Is success in the marketplace a monotone function of achieved dependability?
  • Is quality really free in all situations? How can one determine how much investment in dependability is enough in a given situation?
  • Are there ways to quantify the tradeoffs among schedule, cost, and dependability? Is "faster, cheaper, better" really achievable?

This talk will explore these and related questions from the perspective of the emerging discipline of Value-Based Software Engineering. It will discuss how the cost and quality estimating models such as COCOMO II and COQUALMO can be applied together with stakeholder-supplied value estimating relationships (VERs) to construct a value-based framework for software dependability analysis. It will show that, at least in many cases, reasoning about the economics of software dependability can lead to more satisfactory outcomes than will the application of value-neutral techniques.

LiGuo Huang is a PhD. student in the Computer Science Department in the University of Southern California (USC), and a research assistant in the Center for Software Engineering, USC. She received her M.S. degree in Computer Science from USC. Her primary research interests are value-based software engineering and high dependability computing.