Add architecture documentation and functional requirements for Calminer project - Created Building Block View (05_building_block_view.md) detailing system architecture and component interactions. - Developed Runtime View (06_runtime_view.md) outlining key user scenarios and interactions within the system. - Established Deployment View (07_deployment_view.md) describing the infrastructure and mapping of building blocks to deployment components. - Added README.md for architecture documentation structure. - Introduced functional requirements (FR-001 to FR-010) covering scenario management, data import/export, reporting, user management, and collaboration features. - Included templates for documenting requirements to ensure consistency across the project.
131 lines
5.6 KiB
Markdown
131 lines
5.6 KiB
Markdown
# Context and Scope
|
|
|
|
## Table of Contents
|
|
|
|
- [Context and Scope](#context-and-scope)
|
|
- [Table of Contents](#table-of-contents)
|
|
- [Business Context](#business-context)
|
|
- [Users](#users)
|
|
- [Systems](#systems)
|
|
- [Technical Context](#technical-context)
|
|
- [Communication Channels and Protocols](#communication-channels-and-protocols)
|
|
|
|
## Business Context
|
|
|
|
The business context for the system includes various stakeholders such as end-users, business analysts, and regulatory bodies. Each of these stakeholders has specific needs and expectations regarding the system's functionality and data handling.
|
|
|
|
### Users
|
|
|
|
```mermaid
|
|
graph TD
|
|
User[Users]
|
|
System[System]
|
|
System -->|Outputs| User
|
|
User -->|Inputs| System
|
|
```
|
|
|
|
- Executive Management: Reviews high-level reports generated by the system for strategic planning.
|
|
- Project Managers: Use the system to plan projects and monitor progress.
|
|
- Business Analysts: Utilize system outputs for decision-making and strategy formulation.
|
|
- Financial Analysts: Analyze financial data produced by the system to guide investment decisions.
|
|
- Administrators: Manage system configurations and user access.
|
|
- DevOps: Oversee deployment and integration processes, ensuring system reliability and performance.
|
|
|
|
| User | Inputs | Outputs |
|
|
| -------------------- | ----------------------- | -------------------------- |
|
|
| Executive Management | Strategic data requests | High-level reports |
|
|
| Project Managers | Project plans | Progress updates |
|
|
| Business Analysts | Data queries | Analytical insights |
|
|
| Financial Analysts | Financial data | Investment reports |
|
|
| Administrators | Configuration changes | System status |
|
|
| DevOps | Deployment scripts | System performance metrics |
|
|
|
|
```mermaid
|
|
graph LR
|
|
subgraph CalMiner
|
|
System[System]
|
|
end
|
|
EM[Executive Management]
|
|
PM[Project Managers]
|
|
BA[Business Analysts]
|
|
FA[Financial Analysts]
|
|
|
|
EM -->|Strategic data requests| System
|
|
System -->|High-level reports| EM
|
|
|
|
PM -->|Project plans| System
|
|
System -->|Progress updates| PM
|
|
|
|
BA -->|Data queries| System
|
|
System -->|Analytical insights| BA
|
|
|
|
FA -->|Financial data| System
|
|
System -->|Investment reports| FA
|
|
|
|
```
|
|
|
|
### Systems
|
|
|
|
- Database Systems: Store and retrieve data used and generated by the system.
|
|
- Data Warehouse: Provides historical data for analysis and reporting.
|
|
- External APIs: Supplies real-time data inputs for scenario analysis.
|
|
- Authentication Service: Manages user authentication and authorization.
|
|
- Reporting Tools: Integrates with the system to generate customized reports.
|
|
- Monitoring Systems: Tracks system performance and health metrics.
|
|
- CI/CD Pipeline: Facilitates automated deployment and integration processes.
|
|
- Logging Service: Collects and stores system logs for auditing and troubleshooting purposes.
|
|
- Backup System: Ensures data integrity and recovery in case of failures.
|
|
- Notification Service: Sends alerts and notifications to users based on system events.
|
|
|
|
| Systems | Inputs | Outputs |
|
|
| ---------------------- | -------------------------- | --------------------- |
|
|
| Database Systems | Data read/write requests | Stored/retrieved data |
|
|
| Data Warehouse | Historical data queries | Historical datasets |
|
|
| External APIs | Real-time data requests | Real-time data feeds |
|
|
| Authentication Service | Login requests | Authentication tokens |
|
|
| Reporting Tools | Report generation requests | Customized reports |
|
|
| Monitoring Systems | Performance data | Health metrics |
|
|
| CI/CD Pipeline | Code commits | Deployed applications |
|
|
| Logging Service | Log entries | Stored logs |
|
|
| Backup System | Backup requests | Restored data |
|
|
| Notification Service | Alert triggers | User notifications |
|
|
|
|
```mermaid
|
|
graph LR
|
|
subgraph CalMiner
|
|
System[System]
|
|
end
|
|
DB[Database Systems]
|
|
DW[Data Warehouse]
|
|
API[External APIs]
|
|
Auth[Authentication Service]
|
|
|
|
DB -->|Data read/write requests| System
|
|
System -->|Stored/retrieved data| DB
|
|
|
|
DW -->|Historical data queries| System
|
|
System -->|Historical datasets| DW
|
|
|
|
API -->|Real-time data requests| System
|
|
System -->|Real-time data feeds| API
|
|
|
|
Auth -->|Login requests| System
|
|
System -->|Authentication tokens| Auth
|
|
|
|
```
|
|
|
|
## Technical Context
|
|
|
|
### Communication Channels and Protocols
|
|
|
|
| Communication Partner | Channel/Protocol | Description |
|
|
| ---------------------- | ------------------ | ------------------------------------------------- |
|
|
| Database Systems | TCP/IP, SQL | Standard database communication protocols |
|
|
| Data Warehouse | ODBC/JDBC | Database connectivity protocols |
|
|
| External APIs | RESTful HTTP, JSON | Web service communication protocols |
|
|
| Authentication Service | OAuth 2.0, HTTPS | Secure authentication and authorization protocols |
|
|
| Reporting Tools | HTTP, PDF/Excel | Report generation and delivery protocols |
|
|
| Monitoring Systems | SNMP, HTTP | System monitoring and alerting protocols |
|
|
| CI/CD Pipeline | Git, SSH | Code versioning and deployment protocols |
|
|
| Notification Service | SMTP, Webhooks | Alert and notification delivery protocols |
|