-
Notifications
You must be signed in to change notification settings - Fork 0
Project Plan
Revised: 29-09-2024
The project will produce a web application for managing queue that satisfies the requirements as specified in Requirements. The application will be written in Python and runnable on Windows, Linux, or MacOS hosts containing the required software.
Development will use an iterative process. Each iteration has a length of one week starting on Monday and ending on Sunday.
Project documents and technical documents are stored in the project wiki on Github.
Project documents include:
Tasks and other work for each iteration are recorded in a Github Project attached to the repository. The Github Project contains a Task Board for each iteration.
Github issue tracker is used to record defects and other issues.
Each iteration starts on Monday and ends on Sunday.
- At the start of each iteration, the Vision, Project Plan, and Requirements are reviewed and updated.
- A goal for the iteration and at least 1 milestone are defined and written in the Iteration Plan.
- Major work for the iteration is defined and recorded in the Iteration Plan.
- The application design is reviewed and revised (if needed) for new features to be added.
- The Iteration Plan, including the goal, milestone(s), and major work, is added to the wiki.
- Tasks are defined and written in the Project Backlog on Github.
- A Github Task Board for this iteration is created to track work in this iteration.
-
Github Flow is used to manage code.
- For each iteration and person a new branch is created from
mainand work is committed to that branch. - At the end of the iteration, after the work is tested a Pull Request is opened to initiate a final review.
- When the work is satisfactory, the branch is merged into
mainand the Pull Request is closed.
- For each iteration and person a new branch is created from
- Defects and other issues are recorded in a GitHub Issue Tracker.
- Every Sunday, we will have an online meeting to review the process done in this iteration.
- Weekly meeting with TA.
- The application is written in Python using the Django web framework.
- React as front end.
- GitHub for source code management, issue tracking, and automated testing.
- Github Wiki for project documents.
- Github Project for backlog, task planning, and iteration task boards.
- Pycharm IDE for coding and running tests.
- Line application for meetings between members.
- First demo which will be deliverable on 28-29 October.
| Iteration | Major Work and Features |
|---|---|
| 1 | Learn fundamentals of creating a web application. |
| Write up inception documents. | |
| Create a domain model. | |
| Implement starter code. | |
| 2 | Implement home page for customer for tracking their queue. |
| Implement page for business owner to add entry to queue and get the code for customer to track. | |
| Implement page for business owner to see all entry categorize by queue. | |
| Business owner can edit existing queue. | |
| 3 | Create Business profile. |
| Business owner can edit their profile. | |
| Customer can see estimate waiting time of business that have more than 10 queues in queue history. | |
| Customers will receive a reminder notification when there are 5 entry ahead of them in the queue. | |
| 4 | Customers can view businesses that are currently open and see how many people are in their queue. |
| Iteration | Milestone |
|---|---|
| 1 | Domain model established and recorded in wiki as a UML diagram. |
| 2 | |
| 3 | |
| 4 |