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.
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
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
Agile COCOMOÂ® II
Stakeholder win-winÂ – Hasan Kitapci
Stakeholder value modelingÂ – Apurva Jain, LiGuo Huang
Model clash identification and analysisÂ – Mohammed Al-Said
MBASE and CeBASE methodsÂ – Apurva Jain