The viable system model (VSM) is a model of the organisational structure of any autonomous system capable of producing itself - wikipedia

The VSM provides us with an excellent and well thought through starting point for the design of such a system. Pattern Language is another approach which we can learn from in the implementation of the software. Both the VSM and pattern language have particular relevance to the design of the Governance Interface to these systems.

An exemplary model of a viable system. Assumption: There is one System 1 purchasing external resources and one System 1 which produces the value, delivered to the customers.  - wikimedia