Company Viewpoint of CO-OP-ERATOR
There are already several co-op programs offered by McGill University, and the number of such co-op programs may increase in the future. In a co-op program, students need to take multiple semesters at companies as an integral part of their curriculum in so-called co-op terms. The scope of the software engineering group project of the Winter 2019 ECSE321 course is to develop a software system for managing co-op terms for such co-op programs.
In a team of five students, our goal is to gather requriements, design a multi-tier software solution to satisfy those requirements, implement the system, validate that the system is satisfying the requirements, and develop a release pipeline to automate the software delivery process. Viewpoints (Student, Company, Co-op Administrator, and Academic manager) developed by multiple teams will be integrated with each other via service calls.
Our team focuses on company (employer) viewpoint. An employer can do the following actions in the CO-OPERATOR System:
- Confirm when a student has started the co-op position
- Complete a student evaluation form as a confirmation of completion
- Download a proof of co-op placement and access taxk credit forms with instructions
- Be notified about or invited to upcoming events
Heroku is a cloud service platform that is easy to use for many development projects. It enables application development and deployment. Heroku platform manages hardware and servers, so developer using Heroku are able to focus on perfecting their applications. With the benefit of offloading many of the concerns around application deployment and operation, our project is deloyed on Heroku.
- backend:
https://cooperator-backend-060606.herokuapp.com/
- frontend:
https://cooperator-frontend-060606.herokuapp.com/
- User Documentation
- User Experience
- Integrated System: Web Frontend with Backend Services
- Code Quality
- Build System, Continuous Integration and Delivery
-
Reports
-
Minutes
-
Effort Table
The following table shows the individual efforts of each team members in Deliverable 4.
Team's Member Name | Web Frontend Implementation & Improvements | Android Mobile Frontend Development | Integration of Web Frontend with Backend Services | Build System, Continuous Integration and Delivery | Documentations | Total |
---|---|---|---|---|---|---|
Lily Li | 10 | 0 | 15 | 3 | 1 | 29 |
Yin Zhang | 10 | 15 | 3 | 0 | 1 | 29 |
Irene Huang | 10 | 0 | 14 | 0 | 5 | 29 |
Zhuzhen Li | 16 | 0 | 5 | 2 | 5 | 28 |
Xinquan Wang | 17 | 0 | 4 | 2 | 4 | 27 |
- Architecture Modeling
- Implementation of Web Frontend
- Integration of Web Frontend with Backend Services
- Build System, Continuous Integration and Delivery
- Architecture Model
- Report
- Minutes
- Effort Table
The following table shows the individual efforts of each team members in Deliverable 3.
Team's Member Name | Total Hours | Update backend | Architecture Modeling | Web Frontend Implementation | Integration of Web Frontend with Backend Services | Documentation |
---|---|---|---|---|---|---|
Lily Li | 30 | 5 | 0 | 20 | 5 | 0 |
Yin Zhang | 30 | 10 | 0 | 15 | 5 | 0 |
Irene Huang | 29 | 1 | 0 | 25 | 2 | 1 |
Zhuzhen Li | 29 | 10 | 0 | 16 | 2 | 1 |
Xinquan Wang | 27 | 1 | 10 | 15 | 1 | 0 |
- Backend Implementation and Evolution of Persistence Layer
- Software Quality Assurance Plan and Report
- Unit Testing of Backend
- Integration Testing of Backend Services
- Build System, Continuous Integration and Delivery
- Deliverable 2 Reports
- Minutes
- Effort Table
The following table shows the individual efforts of each team members in Deliverable 2.
Team's Member Name | Total Hours | RESTful endpoints Implementation | Unit Testing of Backend | Integration Testing of Backend | Documentation | Meeting |
---|---|---|---|---|---|---|
Lily Li | 22 | 5 | 10 | 5 | 0 | 2 |
Yin Zhang | 20 | 0 | 0 | 18 | 0 | 2 |
Irene Huang | 20.5 | 5 | 7.5 | 0 | 6 | 2 |
Zhuzhen Li | 21 | 5 | 8 | 0 | 6 | 2 |
- Requirement model: Functional & Non functional Requirements, Use cases, Use case specification
- Domain model
- Database design
- Test cases for persistence layer
-
Requirements Model
-
Domain Model
-
Reports
-
Minutes
-
Effort Table
Team's Member Name | Total Hours | Requirements Model | Domain Model | Persistence Layer | Testing of Persistence Layer | Build System and Continuous Integration | Documentation | Meeting |
---|---|---|---|---|---|---|---|---|
Lily Li | 23.5 | 3.5 | 4 | 0.5 | 3 | 8 | 1.5 | 3 |
Yin Zhang | 19.5 | 2.5 | 8 | 2 | 3 | 1 | 0 | 3 |
Irene Huang | 19.5 | 3.5 | 2 | 0 | 8 | 1 | 2 | 3 |
Xinquan Wang | 19.5 | 3.5 | 2 | 0 | 10 | 1 | 0 | 3 |
Zhuzhen Li | 19.5 | 3.5 | 2 | 0 | 8 | 1 | 2 | 3 |