A technical map of the software.
This document describes (only) the technical aspects of the KITT4SME architecture through a set of interlocked architectural viewpoints. As such, it is only aimed at developers who need to understand the big picture before modifying the architecture or extending the code with new functionality. Read the executive summary.
WIP!!
- See: https://github.com/c0c0n3/kitt4sme/projects/1
- Partner contribs wanted!
- Introduction. The basic ideas are summarised here and then
further developed in subsequent sections.
- Project background. Motivation and value proposition, or why we're doing this.
- KITT4SME workflow. Delivering AI to the manufacturing industry through the famed KITT4SME workflow :-)
- Platform concept. Lunar-orbit, conceptual view of how we're thinking of supporting the KITT4SME workflow in software. (Notice there's more to the KITT4SME workflow than just software, but here we're only focusing on software.)
- About this document. Scope of this document, the approach followed to write it and its intended audience.
- Document overview.
- Platform requirements. An account of functional requirements and system quality attributes which shape the architecture.
- System decomposition. Subsystems and components, modularity.
- Information model. What information the system handles and how it is represented and processed, with an emphasis on interoperability.
- Interaction mechanics. Distributed communication protocols and synchronisation, message routing and manipulation.
- Persistence.
- Time series. How to take advantage of NGSI pub/sub to implement IoT time-series services.
- ...
- Security.
- Istio & OPA (~> document prototype's code)
- IdM (Keycloak?)
- ...
- Performance.
- scalability
- HA
- ...
- Deployment and operation. Platform deployment and operation.
- Cloud instance. Software placement & execution on a cluster, including the instantiation of platform services within the computing infrastructure.
- IoT provisioning. Connecting the shop floor IoT environment to the running platform instance.
- Continuous integration and GitOps. Continuous delivery of platform functionality through an infrastructure-as-code (IaC) approach.
- Marketplace.
- Quality assurance.
- Architecture validation. Verifying we've designed a viable solution
especially w/r/t pilots & open calls.
- Platform prototype. Demo cluster we've built to test out our ideas and try out scenarios to validate the architecture.
- Scenarios. A sketch of the scenarios we think are representative of how the platform will be used and how we tested them with the prototype.
- Conclusion.
- Appendix: Software catalogue. Overview of the software KITT4SME partners are integrating into the platform, role in the architecture, purpose and value proposition.
If we flesh out all those sections above we'll definitely wind up with more content than we're expected to deliver, IMHO. Well at least if we get judged by what we promised to deliver in the Dead on Arrival (DoA). In fact, this is what's in the DoA
- consider WP1 requirements
- build on proposed arch sketch
- integration of partners' software
- guidelines for ref implementation
- APIs to access/exchange data
- CI of platform components