Models, Model Integration and Empirical Methods

Models and Model Integration

Software is an invisible product. This is one of the main reasons that it is hard to design, develop, and integrate.

To help ourselves visualize software and the process of developing it, we frequently use models. The most frequently used models are:

Process models: where the software project should be going and is going (waterfall, incremental, spiral).

Product models: what the product should be doing and how it should be and is constructed (requirements, architecture, design).

Property models: how well the process and the product should be and is performing in various dimensions (cost, schedule, response time, dependability, usability).

Success models: what will distinguish a successful project from a failed project. Success models vary by project stakeholder. They may manifest themselves as process, product, or property models, or as more general models (balanced scorecard, stakeholder win-win, business case).

Models help us focus, visualize, and reason by abstracting away parts of the overall software situation and by making simplifying assumptions. These assumptions are often unstated or hidden. They are also often in conflict with each other. We call such situations model clashes. They are a major source of project frustrations, rework, overruns, and rejected products.

Below we identify our major research activities in developing, experimenting with, refining, and integrating these software models. Each activity has a key person or persons, and a title that you can click on to find out more about it. The description will summarize the activity’s objectives, approach, results to date, and future plans, with links to more detailed information.

Process Models

ICM – Barry Boehm, Jo Ann Lane
LeanMBASE – Suppanika Koolmanojwong
Value Based processes: VBSE -Apurva Jain
Processes for COTS-based systems – Ye Yang, Jesal Bhuta
Agile methods - Monvorath Phongpaibul, Dan Ingold
Continuous process models – Ray Madachy

Property Models

Software cost and schedule: COCOMO® II , COCOTS , CORADMO , COPROMO , COPLIMO, COSYSMO – Ricardo Valerdi, Ye Yang
COSOSIMO – Jo Ann Lane
Software dependability – LiGuo Huang
Costing Software security – Ed Colbert, Danni Wu, Yue Chen
Value, ROI models – LiGuo Huang
System Engineering cost and schedule – Ricardo Valerdi
Software sizing – Yue Chen
Security Economics, COTS Security – Yue Chen

Success Models

Stakeholder win-win – Hasan Kitapci
Stakeholder value modeling – Apurva Jain, LiGuo Huang

Model Integration

Model clash identification and analysis – Mohammed Al-Said
MBASE and CeBASE methods – Apurva Jain