|
| 1 | +# Release Plan |
| 2 | + |
| 3 | +## Release Name: Course_Matrix_V1.5.0 |
| 4 | + |
| 5 | +## 1. Release Objectives for Sprint 4 |
| 6 | + |
| 7 | +### 1.1 Goals |
| 8 | + |
| 9 | +- Refine timetable features |
| 10 | + - Enhance timetable UI |
| 11 | + - Resolve any known bugs |
| 12 | + - Timetable share |
| 13 | + - Timetable compare |
| 14 | + - Cap number of user timetables |
| 15 | + - Timetable favourites |
| 16 | + - Fix timetable generation flow |
| 17 | + |
| 18 | +- Build upon AI-powered assistant: |
| 19 | + - AI Chatbot can various timetable functions |
| 20 | + - AI Chatbot refinement. |
| 21 | + - Resolve any potential bugs in chatbot. |
| 22 | + |
| 23 | +- Project Deployment: |
| 24 | + - Project has a usable dockerfile |
| 25 | + - Project is running on a VM instance |
| 26 | + - Project on update is automatically tested |
| 27 | + - Project auto redeploys on update |
| 28 | +- Unit Testing: |
| 29 | + - Project functions (frontend and backend) will have and pass unit/integration tests written for them |
| 30 | + |
| 31 | +### 1.2 Metrics for Measurement |
| 32 | + |
| 33 | +- **Timetable Management** |
| 34 | + - Users can generate, create, modify, and delete timetables and event entries without errors. |
| 35 | + - Timetable UI has been enhanced with newest design |
| 36 | + - Timetables can be shared between users |
| 37 | + - Timetables can be compared to one another |
| 38 | + - Cap number of times tables per user |
| 39 | + - Timetables can be favourited |
| 40 | + - Timetable generate will not have overlapping timetable entries |
| 41 | + |
| 42 | +- **AI Assistant Features** |
| 43 | + - AI can be queried to generate timetables, delete timetables, show user timetables and more. |
| 44 | + |
| 45 | +- **Deployment Features** |
| 46 | + - Project when deployed is deployed using a docker image |
| 47 | + - Project when deployed is accessible online on a virtual Machine |
| 48 | + - Project when updated is automatically unit tested |
| 49 | + - Project when updated and passing unit tests is auto-redeployed |
| 50 | + |
| 51 | +– **Unit Testing** |
| 52 | + - Project functions are unit/integration tested so that their behaviour is clear and potential bugs are caught |
| 53 | + - Project functions passes unit/integration tests so bug free functionality is ensured |
| 54 | + |
| 55 | +## 2. Release Scope |
| 56 | + |
| 57 | +- **Timetable Management** |
| 58 | + - Share your timetable with other users |
| 59 | + - Favourite timetables for quick access |
| 60 | + - Compare your timetable with other timetables |
| 61 | + - Update and refine timetable UI |
| 62 | + |
| 63 | +- **AI Assistant** |
| 64 | + - AI-Powered timetable generation, deletion, and queries |
| 65 | + |
| 66 | +- **Deployment** |
| 67 | + - Project runs on a docker image |
| 68 | + - Project is accessible on the web while running on a VM instance |
| 69 | + - Project on update is automatically tested |
| 70 | + - Project auto redeploys on update that passes tests |
| 71 | + |
| 72 | +– **Unit Testing** |
| 73 | + - Project functions (frontend and backend) are unit/integration tested |
| 74 | + |
| 75 | +### 2.2 Excluded Features |
| 76 | +- Currently no excluded features this sprint |
| 77 | + |
| 78 | +### 2.3 Bug Fixes |
| 79 | +- Fix text highlight on edit username |
| 80 | +- Creating timetable with same name causes user to be stuck in loading screen |
| 81 | +- Semester button non functional |
| 82 | +- Timetable generation sometimes doesn’t generate all meeting sections (and no error msg) |
| 83 | +- Generate flow cannot edit manually after generation |
| 84 | +- Timetable only generate partially |
| 85 | +- Fix time strings sent to timetable generate |
| 86 | +- Timetable title max char limit |
| 87 | +- Reading week inclusion |
| 88 | +- AI hallucinating courses |
| 89 | +- Favourite not functional |
| 90 | +- Last edited not being updated properly |
| 91 | +- Hide restriction config for manual flow & prevent modification of restrictions in edit flow |
| 92 | +- Add select all button |
| 93 | +- Fix misc. Bugs in generation flow |
| 94 | +- Hotfix 1.0.5 Restriction form type toggle persists old values |
| 95 | +- Deployment timezone being incorrect |
| 96 | +- Fix frontend unit test mocking |
| 97 | + |
| 98 | +### 2.4 Non-Functional Requirements |
| 99 | + |
| 100 | +- **Testing** |
| 101 | + - Further integration and unit tests need to be added for both our frontend and backend |
| 102 | + |
| 103 | +- **CI/CD Workflow** |
| 104 | + - We need a CI/CD pipeline for our application so that only the latest functional version of our application is running at all times. |
| 105 | + |
| 106 | +### 2.5 Dependencies and Limitations |
| 107 | + |
| 108 | +- The AI assistant relies on querying an external vector database and OpenAI. Bothe of these are online resources so if they are down our feature will be down as well. |
| 109 | +- The Timetable relies solely on the internal course database and installed dependencies. It does not fetch web-based content. |
| 110 | +- Unit testing relies solely on internal functions and installed dependencies. It does not fetch any web-based content. |
| 111 | +- The deployment relies on fetching the latest project version from github and (if it passes all unit tests) deploys the latest version on our google cloud virtual machine instance using docker hub storing the various images of our application. |
0 commit comments