Decouple application logic from infrastructure
Description
Simpl-Open shall ensure that application logic remains independent of underlying infrastructure technologies, enabling portability, flexibility, and easier deployment across diverse environments without requiring significant code changes.
SMART Breakdown
- Specific: The application logic must be independent and decoupled from infrastructure layers (e.g., compute, storage, network), enabling deployments across various environments such as cloud, hybrid, and edge infrastructures.
- Measurable: Evaluated by demonstrating the successful deployment and operation of application services across multiple different infrastructure platforms without substantial changes or adaptations to the application codebase.
- Achievable: Achievable through using abstraction layers, standardised interfaces, APIs or infrastructure as code (IaC) practices, leveraging containerisation and orchestration technologies (e.g., Docker, Kubernetes) to manage this abstraction effectively.
- Realistic: Decoupling application logic from infrastructure is widely adopted as a best practice in modern cloud-native architecture design, significantly facilitating portability, scalability, and maintainability.
- Timely: Integrated from the initial design and architectural planning phases and validated throughout development, deployment and operational lifecycle stages.
Detailed Non-Functional Requirement | Issue ID: SIMPL-9947 | Status: Proposed |