mirror of
https://github.com/dat515-2025/Group-8.git
synced 2026-03-22 06:57:47 +01:00
feat(docs): finalized checklist.md
This commit is contained in:
@@ -20,7 +20,7 @@ This means that you must get at least 2 points for each item in this category.
|
||||
| | Clear build/deployment instructions | 5 | 5 | Should be clear |
|
||||
| | Troubleshooting guide | 5 | 3 | When it comes to troubleshooting, there is never enough documentation |
|
||||
| | Completed self-assessment table | 5 | 5 | Completed. |
|
||||
| 30 | Hour sheets for all members | 5 | 5 | Filled. |
|
||||
| 32 | Hour sheets for all members | 5 | 5 | Filled. |
|
||||
| Presentation Video | Project demonstration | 5 | 5 | Yes |
|
||||
| | Code walk-through | 5 | 3 | There was not enough time to go through all of our code, so we just mentioned some parts of it. |
|
||||
| 13 | Deployment showcase | 5 | 5 | Yes |
|
||||
@@ -29,33 +29,33 @@ This means that you must get at least 2 points for each item in this category.
|
||||
| | Advanced features implemented | 10 | 5 | OAuth, BankAPI connection (not only mock bank) |
|
||||
| | Error handling & robustness | 10 | 5 | App notifies user about errors, errors in code are also logged by sentry and we get notified |
|
||||
| 24 | User-friendly interface | 5 | 4 | Responsive interface with dark mode support, should by user friendly enough |
|
||||
| Backend & Architecture | Stateless web server | 5 | 5 | Yes, the web server is stateless - authentification uses JWT, not sessions. |
|
||||
| Backend & Architecture | Stateless web server | 5 | 5 | Yes, the web server is stateless - authentication uses JWT, not sessions. |
|
||||
| | Stateful application | 10 | 10 | Yes, the app is stateful - data are persistently stored in database |
|
||||
| | Database integration | 10 | 10 | We have deployed 3 MariaDB nodes with replication, MaxScale proxy and periodic backups. Connection app with this setup is same as with standalone db. |
|
||||
| | API design | 5 | 5 | Backend APIs are implemented with public Swagger docs |
|
||||
| 28 | Microservices architecture | 10 | 3 | We have separated API deployment and worker deployment. Worker process slow tasks - emails, payment scraping. There is no need for another service in current state but adding it is easy. |
|
||||
| 33 | Microservices architecture | 10 | 3 | We have separated API deployment and worker deployment. Worker process slow tasks - emails, payment scraping. There is no need for another service in current state but adding it is easy. |
|
||||
| Cloud Integration | Basic cloud deployment | 10 | 10 | Yes (In private cluster), using GH Actions and self-hosted runner. |
|
||||
| | Cloud APIs usage | 10 | 8 | GH Actions deploys frontend to Cloudflare Pages, deployment creates CF tunnel record automatically |
|
||||
| | Serverless components | 10 | 10 | We are using CF pages for frontend deployment |
|
||||
| 10 | Advanced cloud services | 5 | 5 | Using CF provides us with DDOS protection, access rules, it hides our IP |
|
||||
| 33 | Advanced cloud services | 5 | 5 | Using CF provides us with DDOS protection, access rules, it hides our IP |
|
||||
| **DevOps & Deployment** | | | | |
|
||||
| Containerization | Basic Dockerfile | 5 | 5 | Yes |
|
||||
| | Optimized Dockerfile | 5 | 5 | Rootless Dockerfile |
|
||||
| | Docker Compose | 5 | 5 | For development environment |
|
||||
| 15 | Persistent storage | 5 | 5 | Yes, using Longhorn. |
|
||||
| 20 | Persistent storage | 5 | 5 | Yes, using Longhorn. |
|
||||
| Deployment & Scaling | Manual deployment | 5 | 5 | Yes, possible by using Helm manually |
|
||||
| | Automated deployment | 5 | 5 | Yes, with Github actions |
|
||||
| | Multiple replicas | 5 | 5 | Yes, 3 pods with API, 3 pods with workers, 3 database pods |
|
||||
| 25 | Kubernetes deployment | 10 | 10 | Yes |
|
||||
| **Quality Assurance** | | | | |
|
||||
| Testing | Unit tests | 5 | 4 | All workflows is covered by tests |
|
||||
| Testing | Unit tests | 5 | 4 | All workflows are covered by tests |
|
||||
| | Integration tests | 5 | 5 | Yes |
|
||||
| | End-to-end tests | 5 | 5 | Yes |
|
||||
| 12 | Performance testing | 5 | 0 | No |
|
||||
| 14 | Performance testing | 5 | 0 | No |
|
||||
| Monitoring & Operations | Health checks | 5 | 5 | Yes |
|
||||
| | Logging | 5 | 2 | Logs can be accessed easily using Grafana |
|
||||
| | Logging | 5 | 4 | Logs can be accessed easily using Grafana |
|
||||
| | Metrics/Monitoring | 2 | 2 | Yes, visualised in Grafana |
|
||||
| 12 | Custom Metrics for your project | 3 | 3 | Yes, API has /metrics endpoint providing information about FastAPI itself and custom information such as number of users or transactions. |
|
||||
| 14 | Custom Metrics for your project | 3 | 3 | Yes, API has /metrics endpoint providing information about FastAPI itself and custom information such as number of users or transactions. |
|
||||
| Security | HTTPS/TLS | 5 | 5 | Yes |
|
||||
| | Authentication | 5 | 5 | Yes |
|
||||
| 15 | Authorization | 5 | 5 | Yes |
|
||||
@@ -64,8 +64,8 @@ This means that you must get at least 2 points for each item in this category.
|
||||
| Technical Excellence | Real-time features | 10 | 0 | No |
|
||||
| | Creative problem solving | 10 | 4 | Cron jobs for bank scraping |
|
||||
| | Performance optimization | 5 | 4 | Delegating emails and scraping to workers, hosting frontend on CF |
|
||||
| 7 | Exceptional user experience | 5 | 3 | |
|
||||
| **Total** | | **255** | **214** | |
|
||||
| 11 | Exceptional user experience | 5 | 3 | |
|
||||
| **Total** | | **255** | **257** | |
|
||||
|
||||
## Grading Scale
|
||||
|
||||
|
||||
Reference in New Issue
Block a user