Model-Based Architecture and Software Engineering (MBASE) in software engineering is a software development process developed by Barry Boehm and Dan Port in the late 1990s. MBASE focuses on ensuring that a project’s product models (architecture, requirements, source code, etc.), process models (tasks, activities, milestones), property models (cost, schedule, performance, dependability), and success models (stakeholder win-win, IKIWISI - I’ll Know It When I See It, business case) are consistent and mutually enforcing.
MBASE is an approach to the development of software systems that integrates the system’s process (PS), product (PD), property (PY) and success (SS) models, models that are documented in the following system definition elements (also referred to as “artifacts” or “deliverables”):
- Operational Concept Description (OCD)
- System and Software Requirements Definition (SSRD)
- System and Software Architecture Description (SSAD)
- Life Cycle Plan (LCP)
- Feasibility Rationale Description (FRD)
- Construction, Transition, Support (CTS) plans and reports
- Risk-driven prototypes
The essence of the LeanMBASE approach is to develop the system definition elements concurrently, through iterative refinement, using the risk-driven, three-anchor point, Win–Win Spiral approach defined in Boehm's Anchoring the Software Process.
Over the three years (1995 to 1998) of developing digital library products for the libraries at University of Southern California (USC), Barry Boehm and Dan Port had been evolving an approach called Model-Based (System) Architecture and Software Engineering (MBASE).
- Model-driven engineering (i.e. OMG's MDA applied in the Platform/Technology-Independent Model (PIM/TIM) and Platform/Technology-Specific Model (PSM/TSM) in MBASE's SSAD)
- USC Center for Software Engineering (CSE) MBASE Research
- Barry Boehm: Anchoring the Software Process
- Barry Boehm and Dan Port: Conceptual Modeling Challenges for Model-Based Architecting and Software Engineering (MBASE)
- Barry Boehm, et al.: Guidelines for Lean Model-Based (System) Architecting and Software Engineering (LeanMBASE)