Welcome to the ECSE 321 Project of Group 17

Setup to run the application locally

See Setup.md

Scope of Project

This project aims to develop a website for a museum such that it offers better services for the community. The museum software system allows visitors to browse all of the museum's artworks and create an account where they can purchase museum passes and request items on loan. The application also assists the manager in managing the museum through their account. For instance, it allows the manager to schedule opening hours, make employee schedules, price visit and rental fees, manage tasks, and hire/fire employees. Each employee will also have a unique account where they can decide where artwork should be displayed and move artwork from storage to rooms and vice-versa.

For more information, you can access our wiki!

Group Members

We are 6 McGill University students in the ECSE department.

Name Github Major Year
Siger Ma sigerma88 Software Engineering U2
Victor Zhao telmaq Software Engineering U2
Zahra Landou ZahraLandou Software Engineering U2
Eric Joung Don-Barista Software Engineering U2
Kieyan Mamiche Afara kieyanmamiche Computer Engineering U3
Kevin Luo Luo-Kevin Software Engineering U2

Overview Table

Name Sprint 1 Efforts (hours) Sprint 2 Efforts (hours) Sprint 3 Efforts (hours) Total Effort (hours)
Siger Ma 35 49 47 131
Victor Zhao 19 55 24 98
Zahra Landou 18 47 5 70
Eric Joung 16 34 21 71
Kieyan Mamiche Afara 18 36 23 77
Kevin Luo 26 41 43 110

Deliverable Reports

Deliverable 1

Click here to view the project report for Deliverable 1.

Roles

Name Roles
Siger Ma Manager, Modeling, Testing, Reviewing, Documenting
Victor Zhao Modeling, Testing, Reviewing, Documenting
Zahra Landou Modeling, Testing
Eric Joung Modeling, Testing
Kieyan Mamiche Afara Modeling, Testing
Kevin Luo Modeling, Testing, Reviewing

Contributions

Name Contributions Effort (hours)
Siger Ma Requirements, use-case diagram and scenario for FR5, UML class diagram, setup for Gradle, Spring, database and CI workflow, JPA annotations, CRUD repos, persistence testing for Schedule, TimePeriod and ScheduleOfTimePeriod repositories. 35
Victor Zhao Requirements, use-case diagram/FR8 scenario, UML diagram, setup for database, CRUD repos, JPA annotations, persistence tests for Room and Ticket. 19
Zahra Landou Requirements, use-case diagram and scenario for FR7, UML diagram, CRUD repos, persistence testing for Loan. 18
Eric Joung Requirements, use-case diagram and scenario for FR3, UML diagram, persistence testing for Manager and Employee. 16
Kieyan Mamiche Afara Requirements, use-case diagram and scenario for FR10, UML diagram, persistence testing for Museum and Visitor 18
Kevin Luo Requirements, use-case diagram and scenario for FR1, UML diagram, Umple, testing artwork repository, worked on the museum system repository but we decided to remove at the end. 26

Deliverable 2

Click here to view the project report for Deliverable 2.

Roles

Name Roles
Siger Ma Manager, Reviewer, Testing, Merging
Victor Zhao Manager, Testing, Documenting
Zahra Landou Testing
Eric Joung Testing
Kieyan Mamiche Afara Testing, Documenting
Kevin Luo Testing, Documenting

Contributions

Name Contributions Effort (hours)
Siger Ma Responsible for pull requests, Room, parts of Artwork, parts of Employee. Wrote service classes, controller classes, unit tests and integration tests. 49
Victor Zhao Responsible for Museum, Employee and Scheduling. Wrote service classes, controller classes, unit tests and integration tests. Documented. 55
Zahra Landou Responsible for parts Artwork and Ticket. Wrote service classes, controller classes, unit tests and integration tests. 47
Eric Joung Responsible for Loan. Wrote service classes, controller classes, units tests and integration tests. 34
Kieyan Mamiche Afara Responsible for parts of Artwork and Room. Wrote service classes, controller classes, unit tests and integration tests. Documented. 36
Kevin Luo Responsible for Authentication and Registration. Wrote service classes, controller classes, unit tests and integration tests. Documented. 41

Deliverable 3

Click here to view the project report for Deliverable 3.

Name Roles
Siger Ma Manager, Reviewer, Documenting, Developer
Victor Zhao Developer, Documenting
Zahra Landou Documenting
Eric Joung Developer, Documenting
Kieyan Mamiche Afara Developer, Documenting
Kevin Luo Manager, Reviewer, Developer

Contributions

Name Contributions Effort (hours)
Siger Ma Designed UI pages organization. Creating issues and managing Kanban board. Responsible for multiple UI components (see project board), backend improvements for artwork, room, loan and ticket RESTful APIs. Integration of software and SQL dump. 47
Victor Zhao Learn React and JS, responsible for manager viewing all employees and viewing/editing the employee's schedule, employee viewing their own schedule, documented 24
Zahra Landou Documented 5
Eric Joung Learn React and JS, did most of the UI for loan page and some of manager home page, documented 21
Kieyan Mamiche Afara Learn React and JS, did most of the UI for edit room, edit artwork loan info, edit artwork info and move artwork, documented the system architecture 23
Kevin Luo Frontend setup. Account authorization management and restricting RESTful endpoints. Responsible for login, editing Profile (manager, visitor, employee), sign up page for visitors, creating employee accounts from manager account, navigation bar, visitor home page, employee home page. Helping in debugging. 43