EATSv5 uses a composite pattern framework for the segmentation and control of system facilities involved in interactions between the system and users, and for interaction between components focused on the receipt or delivery of information products.
The three principal patterns used are:
- Observer – “Define a one-to-many dependency between objects so that when one object changes state, all of its dependents are notified and updated automatically.”1GOF: Observer
- Model-View-Controller (MVC) – “The Model-View-Controller architectural pattern (MVC) divides an interactive application into three components. The model contains the core functionality and data. Views display information to the user. Controllers handle user input. A change-propagation mechanism ensures consistency between the user interface and the model.”2POSA Vol 1: Model-View-Controller
- Presentation-Abstraction-Control (PAC) – “The Presentation-Abstraction-Control architectural pattern (PAC) defines a structure for interactive software systems in the form of a hierarchy of cooperating agents. Every agent is responsible for a specific aspect of the applications functionality and consists of three components: presentation, abstraction, and control. This subdivision separates the human-computer interaction aspects of the agent from its functional core and its communication with other agents.”3POSA Vol 1: Model-View-Controller
Between these Observer is primary. On a macroscopic level it frames the human user, owner, observer’s perspective and purpose in the use of cyber as a utilizer of automation’s principal capabilities. The primary purpose of the automation of information is to enhance the utilization of the information in the pursuit of the automation’s human owner/operator’s objectives. Business use is toward economic gain. Personal use is toward self-fulfillment. Automation of mechanics reduces the cost of operations, production, transformations and logistics. Automation of transaction accounting provides efficiencies in accounting and the ability to achieve asymptotic, infinite leverage capabilities for captured information products involving transaction itemized, detail information. This is the Enterprise Information Set realm of computing of Oracle, SAP and SalesForce. An alternative name for the Observer pattern is Publish-Subscribe and the most common pattern of use on a personally understood basis are Reminders and Notifications, including those for which you can’t unsubscribe. The Observer is concerned with awareness of situation and condition.
Presentation-Abstraction-Control is second, and defines the primary pattern for decomposition and federation of resources and capabilities within EATSv5. On a macroscopic level the EATS infrastructure is an N-dimensional, layered facility that uses Chain of Responsibility patterns within Domains to achieve its objectives. The PAC pattern model conforms to a Document Object Model pattern model (DOM). PAC can be used to create a federated DOM, and to define understanding and manage behavior on a distributive basis. PAC is also an Agent-Based Framework that defines a standard protocol for interactive behavior between peer units with role assignments. The PAC pattern is not restricted to “software” systems. EATSv5 implements models for all forms of systems as PAC Agents. The Top Level Agent for EATSv5 cyber processing is the C_AF_Anchor object which instantiates each EATSv5 Singleton instance. An EATSv5 Instance constitutes a unit of “operational cyber” on some hardware device4EATSv5 runs as an instance of an Eclipse Equinox container running in a JVM.. The Top Level Agent for EATSv5 is the EATSv5 Instance’s unique, Individual Human owner; who is also responsible for its safe and secure operation. This is no different than the human-cyber relationship as it exists in most systems in 2021, with certain significant exceptions:
- EATSv5 reverses polarity of a lot of assumptions about who does what, and why. You operate it because it’s useful to you, and all of it’s owners are individuals of their own systems who find it useful themselves, and some of you find it useful for both confidential and shared interactions. It’s a form of personal-cyberAgent-alterEgo.
- It’s a Brave New World and EATSv5 is a Proof of Concept of the capabilities of a Human Borg Hive with Collective Understanding and Intelligence. At the same time, for maximal utilized effectiveness, cyber needs to be 100% trusted as an extension to human thinking; which requires an immersive a shared understanding of concepts and opinions of things; which exposes a critical need for ownership and control of information deemed completely personal, private and confidential – including from schemes of others to force exposure of data.5The consequences around this issue require extreme caution be exercised in the use and distribution of EATSv5 cycber products, it is very easy to burn yourself while learning to harness fire.
EATSv5 is a PAC organized responder to information posed to it by a Human Individual steward who tunes the system to their personal preference of operation. The PAC Model is used consistently across the architecture to implement the cyber components, and to provide for their extension and expansion with customized extensions.
Model-View-Controller is specific to the presentation and delivery tier of cyber operation. This is the interactive surface of exchange between the computer and the human user. It includes “painting the screen”, “printing”, and “keying data” types of exchanges where physical interaction occurs and is recognized or managed as a detail feature and capability of cyber-physical operations. It also includes “flying the plane” or “managing room temperature.”
The Model-View-Controller pattern already identifies Observer’s involvement as the Interested Party concerning the Subject identified as the Domain Model. EATSv5 integrates the MVC and PAC patterns into a consolidated model which is most apparent at the Bottom Level PAC Agent level when implemented as UI controls and utilitarian views or perspectives. The integration scheme is shown is the following diagram taken from the Architected Futures MetaModel diagram set.