I recently re-read Mark Maier’s now classic systems engineering paper ‘ ‘Architecting Principles for Systems of Systems’. In that paper, Maier suggests that the difference between a general system and a system of systems are that some of the elements of an SoS are operationally and managerially independent. This means that these systems can operate and provide useful services outside of the SoS and that the management of these systems is undertaken by separate organisations according to their own policies and rules.
Maier also suggests a classification scheme for SoS, with three classes:
Directed. The system is built and managed to fulfil specific purposes. It is centrally managed during long-term operation to continue to fulfil these purposes.
Collaborative. In a collaborative system, the central management organisation does not have coercive power to run the system. The controlled system must voluntarily collaborate to fulfil the agreed upon central purposes.
Virtual. Virtual systems of systems lack both a central management authority and centrally agreed upon purposes.
However, if you read his paper, he makes the point himself that collaboration is important in all of these types of system and it is not clear to me how he gets from there to his classification. While I agree with Maier’s classification in general, I have always felt that the names he chose for these system classes did not reflect the reality of SoS.
The term directed implies that there is some authority who controls the management of the SoS. In reality, there are no organisations where there is this kind of authority. Management is always a process of negotiation and agreement.
All systems of systems require some management collaboration – it is impossible to run an SoS without this.
There is a potential for confusion as the term ‘virtual’ has now come to mean ‘implemented by software’ as in virtual machines and virtual reality. This is certainly not what is meant here.
I also was a bit uncomfortable with his use of the term ‘managed’ – this has many possible interpretations. In fact, I think it is helpful in this context to distinguish between management and governance.
Governance: The decision making processes that set out a framework of goals, policies and constraints for the management of a system.
Management: The implementation of organisational policies to ensure that an operational system delivers services that support the organisation’s goals.
I believe that the different classes of SoS are best distinguished by their models of governance rather than the ways in which they are managed. This leads to the following classification:
Organizational systems of systems are SoSs where the governance and management of the system lies within the same organization or company. Collaboration between system owners is managed by the organization. The SoS may be geographically distributed with different parts of the system subject to different national laws and regulations.
Federated systems are SoSs where the governance of the SoS depends on a voluntary participative body in which all of the system owners are represented. The system owners agree to collaborate and that decisions made by the governance body are binding. They implement these decisions in their management policies although implementations may differ because of national laws, regulations and culture.
System coalitions are SoSs where there are no formal governance mechanisms but where the organizations involved informally collaborate and manage their own systems to maintain the system as a whole. For example, if one system provides a data feed to others, the managers of that system would not change the format of the data without notice.
In organisational SoS, there is a governance authority within the organisation that sets policies and these are implemented in different ways by system managers. As the individual systems may be in different jurisdictions, the ways in which the constituent systems are managed may be quite different.
In federated systems, there is a formal governance body but participation is voluntary and there can be no guarantee when and if governance policies are implemented. However, all of the organisations involved benefit from working collaboratively so are unlikely to take actions that may damage the system.
In system coalitions, there is no governance authority. However, the reality is that there needs to be some collaboration for the system to deliver value to its users and this is likely to be at the management rather than the governance level. For example, managers may agree that several months notice will be given of changes to interfaces.
The value of this classification scheme is that it helps understand what governance mechanisms are needed when you are assembling a system of systems. These mechanisms take a long time to establish and if you don’t address the issue early in the development process, it is very likely to delay the deployment of the system.