Multi-Level Co-Architecting

Summary: Multi-level co-architecting is necessary to ensure the smooth integration of various components, including co-designing AI and non-AI components, as well as co-designing different components within the AI model pipeline.

Type of pattern: Process pattern

Type of objective: Trustworthiness

Target users: Architects

Impacted stakeholders: Developers, data scientists

Lifecycle stages: Design

Relevant AI ethics principles: Human, societal and environmental wellbeing, human-centered values, fairness, privacy protection and security, reliability and safety, transparency and explainability, contestability, accountability

Context: The architecture of AI systems is more complex than that of traditional software due to the multiple levels of integration required. On the one hand, AI models are developed by data scientists and engineers using an AI model pipeline, which typically consists of a series of automated steps such as data collection, cleaning, feature engineering, model training, and evaluation. These steps can be viewed as software components for producing AI models from a software architecture perspective. On the other hand, the resulting AI models cannot function on their own and must be integrated into software systems for deployment in the real world. The decisions made by the AI model need to be executed through actions performed by other software components. For example, after an AI model classifies a plastic bottle, a controller component must instruct a robot arm to dispose of the bottle in the appropriate waste bin.

Problem: What are the ways to ensure the seamless integration of different components in an AI system?

Solution: The architecture of an AI ecosystem is composed of three layers: the AI software supply chain, the AI system, and the operation infrastructure. The focus of the AI software supply chain layer is on the development and management of AI and non-AI components, including components of the AI model pipeline, deployment components, co-versioning components, provenance tracking components, and credential management components. The AI system layer includes AI components that incorporate AI models and non-AI components that utilize the outputs of AI components for overall system functionalities. The operation infrastructure layer primarily supports monitoring and feedback components. Ensuring the seamless integration of different components requires multi-level co-architecting, including co-designing both AI and non-AI components, as well as co-designing different components within the AI model pipeline. Both system-level and model-level (ethical) requirements must be taken into consideration when making design decisions.

Benefits:

  • Consideration of both system and model requirements: Multi-level co-architecting enables the consideration of both system and model requirements in the design decision-making process.
  • Improved system-level design thinking: Data scientists and engineers who may not have expertise in software engineering often iteratively develop and experiment with AI components. Multi-level co-architecting can enhance the system-level design thinking of the data scientists and engineers.

Drawbacks:

  • Cost: Multi-level co-architecting may involve an increase in communication overhead.
  • Productivity: The implementation of multi-level co-architecting may result in a slower development pace.

Related patterns:

Known uses: