Stability Model
# Stability Model

In software development, the Stability Model (SM) is a method for designing and modelling software. It is an extension of Object Oriented Software Design (OOSD) methodology, such as Unified Modeling Language (UML), but adds its own set of rules, guidelines, procedures, and heuristics to achieve more advanced object-oriented (OO) software.

The motivation is to achieve a higher level of OO features, such as

* Stability: the objects will be stable over time and will not need changes
* Reusability: the objects can be reused for various kind of applications
* Maintainability: the objects will need the least amount of maintenance

## Examples

The Stability Model has been seen and used in an array of different use-cases. One of such is in the Bravery model, where AnyEvents such as 9/11 terrorist attacks may cause AnyImpact such as economic impacts, psychological impacts, and physical/health impacts.

## Principles

The design tries to make use of common sense while guiding through the process of SM based design. It will need minimum amount of rampup time for people to understand new applications and objects once the process and methodology is kept in mind.

The Stability Model is built using three main concepts -

* Enduring Business Themes (EBT)
* Business Objects (BO)
* Industrial Objects (IO)

## History

The SM method of OOSD was formulated by Dr Mohamed Fayad. He has been the editor in chief of the Computer Magazine of the IEEE for many years. He has taught OOSD in two US universities and has written and currently writing few books on this subject.

