The project aims to change the way digital assets are managed by transitioning from a manual, tedious update and management process to a dynamic, user-centric platform. This platform will enable flexible data updates, feature acquisitions, and reduced dependency on centralized updates, improving efficiency and user autonomy.
Scope
The project will implement an "app store" model, supporting both central and tactical networks. It will allow for both push and pull update mechanisms, application lifecycle management, version "inventory management" across devices, and personalization based on device specifics such as location and communication status. First "app" – GetMap.
Functional Requirements
End-User Actions: Ability for users to manage updates, access new information, and receive dynamic data.
System Capabilities: Management of application lifecycles, inventory of software versions, and adaptation to device personalization and security requirements.
Non-functional Requirements
Emphasis on security and reliability, with the project utilizing SAST and STRIDE methodologies to ensure robustness and protect against vulnerabilities.
Risks
DevOps challenges that could complicate implementation.
Maintenance burden of supporting viable prototypes at all stages (ex. Getmap)
Communication Plan
Communication tools include a public GitHub for code management, WhatsApp for informal communication, Monday.com for project management, and Swagger for API documentation.
Potential Issues and Recommendations
Enhance DevOps Capabilities: Enable wider ability to handle implementation bugs and issues through increased DevOps support.
Strengthen Communication Protocols: Clarify the use of protocols to enhance collaboration of external partners.
Continuous Security and Reliability Focus: Maintain vigilance in security practices and operational reliability (SLA) while maintaining simplicity and ease of service.
Readiness for Readiness VS Product expansion: Manage the need for progression vs ability to maintain a viable product (as of now – GetMap) at all times.