This repository is used for managing deliverables of SWEN90007.
All deliverables will be uploaded and managed here.
Lu Wang |
Jianjing Yao |
Xueling Liu |
- | - | - |
- | - | - |
Online-Exam-Application: https://frontend-react-test-01.herokuapp.com/
-
Domain Logic
-
Data-source layer
-
Object-to-relational behavioural design
Lazy load: question list in the Exam and answer list in the Submission.
Identity Field: all tables
-
Presentation layer:
Implemented with React: frontend
-
Concurrency:
Pessimistic lock: ExclusiveWriteLock editingExamLockController editingMarkLockController
-
Security:
Authorization: checking the user role in every controller before handling the request, for example, admin request controller for viewing and add subjects
Secure Pipe: AESCrypto
Backend: JavaEE - Java SE 14.0.2; Tomcat v9.0;
Frontend: React v16.13.1; Node 11.0.0; npm: 6.14.8
Database: PostgreSql
.
βββ LICENSE
βββ Procfile
βββ README.md
βββ WebContent
βΒ Β βββ META-INF
βΒ Β βΒ Β βββ MANIFEST.MF
βΒ Β βββ WEB-INF
βΒ Β βΒ Β βββ lib
βΒ Β βΒ Β βΒ Β βββ fastjson-1.1.6.jar
βΒ Β βΒ Β βΒ Β βββ postgresql-42.2.14.jar
βΒ Β βΒ Β βββ web.xml
βΒ Β βββ test.jsp
βββ build
βΒ Β βββ classes
βΒ Β βββ database
βΒ Β βΒ Β βββ DatabaseConnection.class
βΒ Β βββ domain
βΒ Β βΒ Β βββ Admin.class
βΒ Β βΒ Β βββ Answer.class
βΒ Β βΒ Β βββ DomainObject.class
βΒ Β βΒ Β βββ Exam.class
βΒ Β βΒ Β βββ Instructor.class
βΒ Β βΒ Β βββ Question.class
βΒ Β βΒ Β βββ Student.class
βΒ Β βΒ Β βββ Subject.class
βΒ Β βΒ Β βββ Submission.class
βΒ Β βΒ Β βββ User.class
βΒ Β βββ enumeration
βΒ Β βΒ Β βββ ExamStatus.class
βΒ Β βΒ Β βββ QuestionType.class
βΒ Β βΒ Β βββ Role.class
βΒ Β βββ mapper
βΒ Β βΒ Β βββ AnswerMapper.class
βΒ Β βΒ Β βββ DataMapper.class
βΒ Β βΒ Β βββ ExamMapper.class
βΒ Β βΒ Β βββ QuestionMapper.class
βΒ Β βΒ Β βββ SubjectMapper.class
βΒ Β βΒ Β βββ SubmissionMapper.class
βΒ Β βΒ Β βββ UserMapper.class
βΒ Β βββ service
βΒ Β βΒ Β βββ CreateNewExam.class
βΒ Β βΒ Β βββ CreateNewExamImp.class
βΒ Β βΒ Β βββ ViewExam.class
βΒ Β βΒ Β βββ ViewExamImp.class
βΒ Β βββ servlet
βΒ Β βΒ Β βββ ExamController.class
βΒ Β βΒ Β βββ HelloServlet.class
βΒ Β βββ shared
βΒ Β βββ IdentityMap.class
βΒ Β βββ LazyLoad.class
βΒ Β βββ UnitOfWork.class
βββ docs
βΒ Β βββ Part2_Figures
βΒ Β βΒ Β βββ Figure\ 1\ Domain\ Model.png
βΒ Β βΒ Β βββ Figure\ 2\ οΏ½\200\2344+1οΏ½\200\235\ Framework.png
βΒ Β βΒ Β βββ Figure\ 3\ UML\ Class\ Diagram\ Relationships.png
βΒ Β βΒ Β βββ Figure\ 4\ Class\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 5\ Sequence\ Diagram\ of\ Instructor.png
βΒ Β βΒ Β βββ Figure\ 6\ Sequence\ Diagram\ of\ Student.png
βΒ Β βΒ Β βββ Figure\ 7\ Component\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 8-1\ Deployment\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 8-2\ Deployment\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 9\ Use\ Case\ Diagram.png
βΒ Β βββ architecture
βΒ Β βΒ Β βββ SWEN90007_CIS-TMPLT-ARCH-1.docx
βΒ Β βββ meetings
βΒ Β βΒ Β βββ README.md
βΒ Β βΒ Β βββ Week\ 2\ Minutes_Aug\ 10_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 3\ Minutes_Aug\ 17_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 4\ Minutes_Aug\ 24_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 5\ Minutes_Aug\ 31_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 6\ Minutes_Sep\ 07_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 7\ Minutes_Sep\ 14_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 8\ Minutes_Sep\ 21_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 9\ Minutes_Sep\ 28_Team\ Super\ Girls.pdf
βΒ Β βββ part1
βΒ Β βΒ Β βββ README.md
βΒ Β βΒ Β βββ SWEN90007_2020_Part1_SuperGirls.pdf
βΒ Β βΒ Β βββ [01.00-D05]SWEN90007_2020_Part1_SuperGirls.doc
βΒ Β βΒ Β βββ [01.00-D06]SWEN90007_2020_Part1_SuperGirls(1).doc
βΒ Β βββ part2
βΒ Β βββ SWEN90007_2020_Part2_SuperGirls.pdf
βββ frontend
βΒ Β βββ LICENSE
βΒ Β βββ LICENSE.md
βΒ Β βββ README.md
βΒ Β βββ jsconfig.json
βΒ Β βββ nginx.conf
βΒ Β βββ package-lock.json
βΒ Β βββ package.json
βΒ Β βββ public
βΒ Β βΒ Β βββ _redirects
βΒ Β βΒ Β βββ favicon.ico
βΒ Β βΒ Β βββ index.html
βΒ Β βΒ Β βββ manifest.json
βΒ Β βΒ Β βββ static
βΒ Β βΒ Β βββ images
βΒ Β βΒ Β βΒ Β βββ auth.jpeg
βΒ Β βΒ Β βΒ Β βββ avatars
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_1.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_10.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_11.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_2.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_3.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_4.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_5.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_6.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_7.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_8.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_9.png
βΒ Β βΒ Β βΒ Β βββ not_found.png
βΒ Β βΒ Β βΒ Β βββ products
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_1.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_2.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_3.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_4.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_5.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_6.png
βΒ Β βΒ Β βΒ Β βββ undraw_page_not_found_su7k.svg
βΒ Β βΒ Β βΒ Β βββ undraw_resume_folder_2_arse.svg
βΒ Β βΒ Β βββ logo.svg
βΒ Β βββ server.js
βΒ Β βββ setupProxy.js
βΒ Β βββ src
βΒ Β βΒ Β βββ App.js
βΒ Β βΒ Β βββ api
βΒ Β βΒ Β βΒ Β βββ examAPI.js
βΒ Β βΒ Β βΒ Β βββ instructorAPI.js
βΒ Β βΒ Β βββ components
βΒ Β βΒ Β βΒ Β βββ GlobalStyles.js
βΒ Β βΒ Β βΒ Β βββ Logo.js
βΒ Β βΒ Β βΒ Β βββ Page.js
βΒ Β βΒ Β βββ icons
βΒ Β βΒ Β βΒ Β βββ Facebook.js
βΒ Β βΒ Β βΒ Β βββ Google.js
βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ layouts
βΒ Β βΒ Β βΒ Β βββ DashboardAdmin
βΒ Β βΒ Β βΒ Β βΒ Β βββ NavBar
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ NavItem.js
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ DashboardLayout
βΒ Β βΒ Β βΒ Β βΒ Β βββ NavBar
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ NavItem.js
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ MainLayout
βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ mixins
βΒ Β βΒ Β βΒ Β βββ chartjs.js
βΒ Β βΒ Β βββ routes.js
βΒ Β βΒ Β βββ serviceWorker.js
βΒ Β βΒ Β βββ setupProxy.js
βΒ Β βΒ Β βββ theme
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ shadows.js
βΒ Β βΒ Β βΒ Β βββ typography.js
βΒ Β βΒ Β βββ util
βΒ Β βΒ Β βΒ Β βββ GetJson.java
βΒ Β βΒ Β βββ utils
βΒ Β βΒ Β βΒ Β βββ getInitials.js
βΒ Β βΒ Β βΒ Β βββ loading.js
βΒ Β βΒ Β βΒ Β βββ setAuthToken.js
βΒ Β βΒ Β βββ views
βΒ Β βΒ Β βββ admin
βΒ Β βΒ Β βΒ Β βββ SubjectManagement
βΒ Β βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ SubjectManagement.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ UserTransferList.js
βΒ Β βΒ Β βΒ Β βββ UserManagement
βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βββ UserManagement.js
βΒ Β βΒ Β βββ auth
βΒ Β βΒ Β βΒ Β βββ LoginView.js
βΒ Β βΒ Β βΒ Β βββ RegisterView.js
βΒ Β βΒ Β βββ exam
βΒ Β βΒ Β βΒ Β βββ EditExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ ExamBasicInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ NewQuestion.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ ExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ ExamBasicInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ NewQuestion.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ MarkExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ SubmissionInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ TakeExam
βΒ Β βΒ Β βΒ Β βββ ExamInfo.js
βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ student
βΒ Β βΒ Β βΒ Β βββ UserListView
βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βββ data.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ subject
βΒ Β βΒ Β βββ SubjectListView
βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βββ ResultsforStudent.js
βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βββ data.json
βΒ Β βΒ Β βββ index.js
βΒ Β βββ tree.text
βΒ Β βββ yarn.lock
βββ pom.xml
βββ src
βΒ Β βββ database
βΒ Β βΒ Β βββ ConnectionPool.java
βΒ Β βΒ Β βββ DBMaintain.java
βΒ Β βΒ Β βββ DatabaseConnection.java
βΒ Β βΒ Β βββ QueryExecutor.java
βΒ Β βββ domain
βΒ Β βΒ Β βββ Answer.java
βΒ Β βΒ Β βββ DomainObject.java
βΒ Β βΒ Β βββ Exam.java
βΒ Β βΒ Β βββ Instructor.java
βΒ Β βΒ Β βββ InstructorList.java
βΒ Β βΒ Β βββ InstructorListImp.java
βΒ Β βΒ Β βββ InstructorListProxyImp.java
βΒ Β βΒ Β βββ Question.java
βΒ Β βΒ Β βββ Relationship.java
βΒ Β βΒ Β βββ Student.java
βΒ Β βΒ Β βββ Subject.java
βΒ Β βΒ Β βββ Submission.java
βΒ Β βΒ Β βββ User.java
βΒ Β βββ enumeration
βΒ Β βΒ Β βββ ExamStatus.java
βΒ Β βΒ Β βββ QuestionType.java
βΒ Β βΒ Β βββ Role.java
βΒ Β βββ mapper
βΒ Β βΒ Β βββ AnswerMapper.java
βΒ Β βΒ Β βββ DataMapper.java
βΒ Β βΒ Β βββ ExamMapper.java
βΒ Β βΒ Β βββ ExclusiveWriteLockManager.java
βΒ Β βΒ Β βββ LockManager.java
βΒ Β βΒ Β βββ QuestionMapper.java
βΒ Β βΒ Β βββ RelationshipMapper.java
βΒ Β βΒ Β βββ SubjectMapper.java
βΒ Β βΒ Β βββ SubmissionMapper.java
βΒ Β βΒ Β βββ UserMapper.java
βΒ Β βββ service
βΒ Β βΒ Β βββ ExamService.java
βΒ Β βΒ Β βββ StudentService.java
βΒ Β βΒ Β βββ SubjectService.java
βΒ Β βΒ Β βββ SubmissionService.java
βΒ Β βΒ Β βββ UserService.java
βΒ Β βββ serviceImp
βΒ Β βΒ Β βββ ExamServiceImp.java
βΒ Β βΒ Β βββ StudentServiceImp.java
βΒ Β βΒ Β βββ SubjectServiceImp.java
βΒ Β βΒ Β βββ SubmissionServiceImp.java
βΒ Β βΒ Β βββ UserServiceImp.java
βΒ Β βββ servlet
βΒ Β βΒ Β βββ AddExamController.java
βΒ Β βΒ Β βββ AdminSubjectsController.java
βΒ Β βΒ Β βββ AdminUserInSubjectController.java
βΒ Β βΒ Β βββ AdminUsersController.java
βΒ Β βΒ Β βββ DeleteExamController.java
βΒ Β βΒ Β βββ DeleteQuestionController.java
βΒ Β βΒ Β βββ EditExamController.java
βΒ Β βΒ Β βββ ExamController.java
βΒ Β βΒ Β βββ InstructorEditMarkController.java
βΒ Β βΒ Β βββ LockEditExamController.java
βΒ Β βΒ Β βββ LockMarkExamController.java
βΒ Β βΒ Β βββ LoginController.java
βΒ Β βΒ Β βββ LogoutController.java
βΒ Β βΒ Β βββ MarkExamController.java
βΒ Β βΒ Β βββ StudentController.java
βΒ Β βΒ Β βββ SubjectController.java
βΒ Β βΒ Β βββ TakeExamController.java
βΒ Β βββ shared
βΒ Β βΒ Β βββ UnitOfWork.java
βΒ Β βββ util
βΒ Β βββ AESCrypto.java
βΒ Β βββ JsonToObject.java
βΒ Β βββ ResponseHeader.java
βΒ Β βββ SSOLogin.java
βββ system.properties
βββ target
βΒ Β βββ classes
βΒ Β βΒ Β βββ database
βΒ Β βΒ Β βΒ Β βββ ConnectionPool.class
βΒ Β βΒ Β βΒ Β βββ DBMaintain.class
βΒ Β βΒ Β βΒ Β βββ DatabaseConnection.class
βΒ Β βΒ Β βΒ Β βββ QueryExecutor.class
βΒ Β βΒ Β βββ domain
βΒ Β βΒ Β βΒ Β βββ Answer.class
βΒ Β βΒ Β βΒ Β βββ DomainObject.class
βΒ Β βΒ Β βΒ Β βββ Exam.class
βΒ Β βΒ Β βΒ Β βββ Instructor.class
βΒ Β βΒ Β βΒ Β βββ InstructorList.class
βΒ Β βΒ Β βΒ Β βββ InstructorListImp.class
βΒ Β βΒ Β βΒ Β βββ InstructorListProxyImp.class
βΒ Β βΒ Β βΒ Β βββ Question.class
βΒ Β βΒ Β βΒ Β βββ Relationship.class
βΒ Β βΒ Β βΒ Β βββ Student.class
βΒ Β βΒ Β βΒ Β βββ Subject.class
βΒ Β βΒ Β βΒ Β βββ Submission.class
βΒ Β βΒ Β βΒ Β βββ User.class
βΒ Β βΒ Β βββ enumeration
βΒ Β βΒ Β βΒ Β βββ ExamStatus.class
βΒ Β βΒ Β βΒ Β βββ QuestionType.class
βΒ Β βΒ Β βΒ Β βββ Role.class
βΒ Β βΒ Β βββ mapper
βΒ Β βΒ Β βΒ Β βββ AnswerMapper.class
βΒ Β βΒ Β βΒ Β βββ DataMapper.class
βΒ Β βΒ Β βΒ Β βββ ExamMapper.class
βΒ Β βΒ Β βΒ Β βββ ExclusiveWriteLockManager.class
βΒ Β βΒ Β βΒ Β βββ LockManager.class
βΒ Β βΒ Β βΒ Β βββ QuestionMapper.class
βΒ Β βΒ Β βΒ Β βββ RelationshipMapper.class
βΒ Β βΒ Β βΒ Β βββ SubjectMapper.class
βΒ Β βΒ Β βΒ Β βββ SubmissionMapper.class
βΒ Β βΒ Β βΒ Β βββ UserMapper.class
βΒ Β βΒ Β βββ service
βΒ Β βΒ Β βΒ Β βββ ExamService.class
βΒ Β βΒ Β βΒ Β βββ StudentService.class
βΒ Β βΒ Β βΒ Β βββ SubjectService.class
βΒ Β βΒ Β βΒ Β βββ SubmissionService.class
βΒ Β βΒ Β βΒ Β βββ UserService.class
βΒ Β βΒ Β βββ serviceImp
βΒ Β βΒ Β βΒ Β βββ ExamServiceImp.class
βΒ Β βΒ Β βΒ Β βββ StudentServiceImp.class
βΒ Β βΒ Β βΒ Β βββ SubjectServiceImp.class
βΒ Β βΒ Β βΒ Β βββ SubmissionServiceImp.class
βΒ Β βΒ Β βΒ Β βββ UserServiceImp.class
βΒ Β βΒ Β βββ servlet
βΒ Β βΒ Β βΒ Β βββ AddExamController.class
βΒ Β βΒ Β βΒ Β βββ AdminSubjectsController.class
βΒ Β βΒ Β βΒ Β βββ AdminUserInSubjectController.class
βΒ Β βΒ Β βΒ Β βββ AdminUsersController.class
βΒ Β βΒ Β βΒ Β βββ DeleteExamController.class
βΒ Β βΒ Β βΒ Β βββ DeleteQuestionController.class
βΒ Β βΒ Β βΒ Β βββ EditExamController.class
βΒ Β βΒ Β βΒ Β βββ ExamController.class
βΒ Β βΒ Β βΒ Β βββ InstructorEditMarkController.class
βΒ Β βΒ Β βΒ Β βββ LockEditExamController.class
βΒ Β βΒ Β βΒ Β βββ LockMarkExamController.class
βΒ Β βΒ Β βΒ Β βββ LoginController.class
βΒ Β βΒ Β βΒ Β βββ LogoutController.class
βΒ Β βΒ Β βΒ Β βββ MarkExamController.class
βΒ Β βΒ Β βΒ Β βββ StudentController.class
βΒ Β βΒ Β βΒ Β βββ SubjectController.class
βΒ Β βΒ Β βΒ Β βββ TakeExamController.class
βΒ Β βΒ Β βββ shared
βΒ Β βΒ Β βΒ Β βββ UnitOfWork.class
βΒ Β βΒ Β βββ util
βΒ Β βΒ Β βββ AESCrypto.class
βΒ Β βΒ Β βββ JsonToObject.class
βΒ Β βΒ Β βββ ResponseHeader.class
βΒ Β βΒ Β βββ SSOLogin.class
βΒ Β βββ m2e-wtp
βΒ Β βΒ Β βββ web-resources
βΒ Β βΒ Β βββ META-INF
βΒ Β βΒ Β βββ MANIFEST.MF
βΒ Β βΒ Β βββ maven
βΒ Β βΒ Β βββ SWEN90007_2020_SuperGirls
βΒ Β βΒ Β βββ SWEN90007_2020_SuperGirls
βΒ Β βΒ Β βββ pom.properties
βΒ Β βΒ Β βββ pom.xml
βΒ Β βββ test-classes
βββ test
βΒ Β βββ SWEN90007-CIS-SW-TSTD.doc
βββ tree.text
82 directories, 292 files
.
βββ LICENSE
βββ Procfile
βββ README.md
βββ WebContent
βΒ Β βββ META-INF
βΒ Β βΒ Β βββ MANIFEST.MF
βΒ Β βββ WEB-INF
βΒ Β βΒ Β βββ lib
βΒ Β βΒ Β βΒ Β βββ fastjson-1.1.6.jar
βΒ Β βΒ Β βΒ Β βββ postgresql-42.2.14.jar
βΒ Β βΒ Β βββ web.xml
βΒ Β βββ test.jsp
βββ build
βΒ Β βββ classes
βΒ Β βββ database
βΒ Β βΒ Β βββ DatabaseConnection.class
βΒ Β βββ domain
βΒ Β βΒ Β βββ Admin.class
βΒ Β βΒ Β βββ Answer.class
βΒ Β βΒ Β βββ DomainObject.class
βΒ Β βΒ Β βββ Exam.class
βΒ Β βΒ Β βββ Instructor.class
βΒ Β βΒ Β βββ Question.class
βΒ Β βΒ Β βββ Student.class
βΒ Β βΒ Β βββ Subject.class
βΒ Β βΒ Β βββ Submission.class
βΒ Β βΒ Β βββ User.class
βΒ Β βββ enumeration
βΒ Β βΒ Β βββ ExamStatus.class
βΒ Β βΒ Β βββ QuestionType.class
βΒ Β βΒ Β βββ Role.class
βΒ Β βββ mapper
βΒ Β βΒ Β βββ AnswerMapper.class
βΒ Β βΒ Β βββ DataMapper.class
βΒ Β βΒ Β βββ ExamMapper.class
βΒ Β βΒ Β βββ QuestionMapper.class
βΒ Β βΒ Β βββ SubjectMapper.class
βΒ Β βΒ Β βββ SubmissionMapper.class
βΒ Β βΒ Β βββ UserMapper.class
βΒ Β βββ service
βΒ Β βΒ Β βββ CreateNewExam.class
βΒ Β βΒ Β βββ CreateNewExamImp.class
βΒ Β βΒ Β βββ ViewExam.class
βΒ Β βΒ Β βββ ViewExamImp.class
βΒ Β βββ servlet
βΒ Β βΒ Β βββ ExamController.class
βΒ Β βΒ Β βββ HelloServlet.class
βΒ Β βββ shared
βΒ Β βββ IdentityMap.class
βΒ Β βββ LazyLoad.class
βΒ Β βββ UnitOfWork.class
βββ docs
βΒ Β βββ Part2_Figures
βΒ Β βΒ Β βββ Figure\ 1\ Domain\ Model.png
βΒ Β βΒ Β βββ Figure\ 2\ οΏ½\200\2344+1οΏ½\200\235\ Framework.png
βΒ Β βΒ Β βββ Figure\ 3\ UML\ Class\ Diagram\ Relationships.png
βΒ Β βΒ Β βββ Figure\ 4\ Class\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 5\ Sequence\ Diagram\ of\ Instructor.png
βΒ Β βΒ Β βββ Figure\ 6\ Sequence\ Diagram\ of\ Student.png
βΒ Β βΒ Β βββ Figure\ 7\ Component\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 8-1\ Deployment\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 8-2\ Deployment\ Diagram.png
βΒ Β βΒ Β βββ Figure\ 9\ Use\ Case\ Diagram.png
βΒ Β βββ architecture
βΒ Β βΒ Β βββ SWEN90007_CIS-TMPLT-ARCH-1.docx
βΒ Β βββ meetings
βΒ Β βΒ Β βββ README.md
βΒ Β βΒ Β βββ Week\ 2\ Minutes_Aug\ 10_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 3\ Minutes_Aug\ 17_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 4\ Minutes_Aug\ 24_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 5\ Minutes_Aug\ 31_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 6\ Minutes_Sep\ 07_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 7\ Minutes_Sep\ 14_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 8\ Minutes_Sep\ 21_Team\ Super\ Girls.pdf
βΒ Β βΒ Β βββ Week\ 9\ Minutes_Sep\ 28_Team\ Super\ Girls.pdf
βΒ Β βββ part1
βΒ Β βΒ Β βββ README.md
βΒ Β βΒ Β βββ SWEN90007_2020_Part1_SuperGirls.pdf
βΒ Β βΒ Β βββ [01.00-D05]SWEN90007_2020_Part1_SuperGirls.doc
βΒ Β βΒ Β βββ [01.00-D06]SWEN90007_2020_Part1_SuperGirls(1).doc
βΒ Β βββ part2
βΒ Β βββ SWEN90007_2020_Part2_SuperGirls.pdf
βββ frontend
βΒ Β βββ LICENSE
βΒ Β βββ LICENSE.md
βΒ Β βββ README.md
βΒ Β βββ jsconfig.json
βΒ Β βββ nginx.conf
βΒ Β βββ package-lock.json
βΒ Β βββ package.json
βΒ Β βββ public
βΒ Β βΒ Β βββ _redirects
βΒ Β βΒ Β βββ favicon.ico
βΒ Β βΒ Β βββ index.html
βΒ Β βΒ Β βββ manifest.json
βΒ Β βΒ Β βββ static
βΒ Β βΒ Β βββ images
βΒ Β βΒ Β βΒ Β βββ auth.jpeg
βΒ Β βΒ Β βΒ Β βββ avatars
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_1.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_10.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_11.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_2.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_3.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_4.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_5.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_6.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_7.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_8.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ avatar_9.png
βΒ Β βΒ Β βΒ Β βββ not_found.png
βΒ Β βΒ Β βΒ Β βββ products
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_1.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_2.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_3.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_4.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_5.png
βΒ Β βΒ Β βΒ Β βΒ Β βββ product_6.png
βΒ Β βΒ Β βΒ Β βββ undraw_page_not_found_su7k.svg
βΒ Β βΒ Β βΒ Β βββ undraw_resume_folder_2_arse.svg
βΒ Β βΒ Β βββ logo.svg
βΒ Β βββ server.js
βΒ Β βββ setupProxy.js
βΒ Β βββ src
βΒ Β βΒ Β βββ App.js
βΒ Β βΒ Β βββ api
βΒ Β βΒ Β βΒ Β βββ examAPI.js
βΒ Β βΒ Β βΒ Β βββ instructorAPI.js
βΒ Β βΒ Β βββ components
βΒ Β βΒ Β βΒ Β βββ GlobalStyles.js
βΒ Β βΒ Β βΒ Β βββ Logo.js
βΒ Β βΒ Β βΒ Β βββ Page.js
βΒ Β βΒ Β βββ icons
βΒ Β βΒ Β βΒ Β βββ Facebook.js
βΒ Β βΒ Β βΒ Β βββ Google.js
βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ layouts
βΒ Β βΒ Β βΒ Β βββ DashboardAdmin
βΒ Β βΒ Β βΒ Β βΒ Β βββ NavBar
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ NavItem.js
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ DashboardLayout
βΒ Β βΒ Β βΒ Β βΒ Β βββ NavBar
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ NavItem.js
βΒ Β βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ MainLayout
βΒ Β βΒ Β βΒ Β βββ TopBar.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ mixins
βΒ Β βΒ Β βΒ Β βββ chartjs.js
βΒ Β βΒ Β βββ routes.js
βΒ Β βΒ Β βββ serviceWorker.js
βΒ Β βΒ Β βββ setupProxy.js
βΒ Β βΒ Β βββ theme
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ shadows.js
βΒ Β βΒ Β βΒ Β βββ typography.js
βΒ Β βΒ Β βββ util
βΒ Β βΒ Β βΒ Β βββ GetJson.java
βΒ Β βΒ Β βββ utils
βΒ Β βΒ Β βΒ Β βββ getInitials.js
βΒ Β βΒ Β βΒ Β βββ loading.js
βΒ Β βΒ Β βΒ Β βββ setAuthToken.js
βΒ Β βΒ Β βββ views
βΒ Β βΒ Β βββ admin
βΒ Β βΒ Β βΒ Β βββ SubjectManagement
βΒ Β βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ SubjectManagement.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ UserTransferList.js
βΒ Β βΒ Β βΒ Β βββ UserManagement
βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βββ UserManagement.js
βΒ Β βΒ Β βββ auth
βΒ Β βΒ Β βΒ Β βββ LoginView.js
βΒ Β βΒ Β βΒ Β βββ RegisterView.js
βΒ Β βΒ Β βββ exam
βΒ Β βΒ Β βΒ Β βββ EditExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ ExamBasicInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ NewQuestion.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ ExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ ExamBasicInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ NewQuestion.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ MarkExamView
βΒ Β βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ SubmissionInfo.js
βΒ Β βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βΒ Β βββ TakeExam
βΒ Β βΒ Β βΒ Β βββ ExamInfo.js
βΒ Β βΒ Β βΒ Β βββ QuestionCard.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ student
βΒ Β βΒ Β βΒ Β βββ UserListView
βΒ Β βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βΒ Β βββ data.js
βΒ Β βΒ Β βΒ Β βββ index.js
βΒ Β βΒ Β βββ subject
βΒ Β βΒ Β βββ SubjectListView
βΒ Β βΒ Β βββ Results.js
βΒ Β βΒ Β βββ ResultsforStudent.js
βΒ Β βΒ Β βββ Toolbar.js
βΒ Β βΒ Β βββ data.json
βΒ Β βΒ Β βββ index.js
βΒ Β βββ tree.text
βΒ Β βββ yarn.lock
βββ pom.xml
βββ src
βΒ Β βββ database
βΒ Β βΒ Β βββ ConnectionPool.java
βΒ Β βΒ Β βββ DBMaintain.java
βΒ Β βΒ Β βββ DatabaseConnection.java
βΒ Β βΒ Β βββ QueryExecutor.java
βΒ Β βββ domain
βΒ Β βΒ Β βββ Answer.java
βΒ Β βΒ Β βββ DomainObject.java
βΒ Β βΒ Β βββ Exam.java
βΒ Β βΒ Β βββ Instructor.java
βΒ Β βΒ Β βββ InstructorList.java
βΒ Β βΒ Β βββ InstructorListImp.java
βΒ Β βΒ Β βββ InstructorListProxyImp.java
βΒ Β βΒ Β βββ Question.java
βΒ Β βΒ Β βββ Relationship.java
βΒ Β βΒ Β βββ Student.java
βΒ Β βΒ Β βββ Subject.java
βΒ Β βΒ Β βββ Submission.java
βΒ Β βΒ Β βββ User.java
βΒ Β βββ enumeration
βΒ Β βΒ Β βββ ExamStatus.java
βΒ Β βΒ Β βββ QuestionType.java
βΒ Β βΒ Β βββ Role.java
βΒ Β βββ mapper
βΒ Β βΒ Β βββ AnswerMapper.java
βΒ Β βΒ Β βββ DataMapper.java
βΒ Β βΒ Β βββ ExamMapper.java
βΒ Β βΒ Β βββ ExclusiveWriteLockManager.java
βΒ Β βΒ Β βββ LockManager.java
βΒ Β βΒ Β βββ QuestionMapper.java
βΒ Β βΒ Β βββ RelationshipMapper.java
βΒ Β βΒ Β βββ SubjectMapper.java
βΒ Β βΒ Β βββ SubmissionMapper.java
βΒ Β βΒ Β βββ UserMapper.java
βΒ Β βββ service
βΒ Β βΒ Β βββ ExamService.java
βΒ Β βΒ Β βββ StudentService.java
βΒ Β βΒ Β βββ SubjectService.java
βΒ Β βΒ Β βββ SubmissionService.java
βΒ Β βΒ Β βββ UserService.java
βΒ Β βββ serviceImp
βΒ Β βΒ Β βββ ExamServiceImp.java
βΒ Β βΒ Β βββ StudentServiceImp.java
βΒ Β βΒ Β βββ SubjectServiceImp.java
βΒ Β βΒ Β βββ SubmissionServiceImp.java
βΒ Β βΒ Β βββ UserServiceImp.java
βΒ Β βββ servlet
βΒ Β βΒ Β βββ AddExamController.java
βΒ Β βΒ Β βββ AdminSubjectsController.java
βΒ Β βΒ Β βββ AdminUserInSubjectController.java
βΒ Β βΒ Β βββ AdminUsersController.java
βΒ Β βΒ Β βββ DeleteExamController.java
βΒ Β βΒ Β βββ DeleteQuestionController.java
βΒ Β βΒ Β βββ EditExamController.java
βΒ Β βΒ Β βββ ExamController.java
βΒ Β βΒ Β βββ InstructorEditMarkController.java
βΒ Β βΒ Β βββ LockEditExamController.java
βΒ Β βΒ Β βββ LockMarkExamController.java
βΒ Β βΒ Β βββ LoginController.java
βΒ Β βΒ Β βββ LogoutController.java
βΒ Β βΒ Β βββ MarkExamController.java
βΒ Β βΒ Β βββ StudentController.java
βΒ Β βΒ Β βββ SubjectController.java
βΒ Β βΒ Β βββ TakeExamController.java
βΒ Β βββ shared
βΒ Β βΒ Β βββ UnitOfWork.java
βΒ Β βββ util
βΒ Β βββ AESCrypto.java
βΒ Β βββ JsonToObject.java
βΒ Β βββ ResponseHeader.java
βΒ Β βββ SSOLogin.java
βββ system.properties
βββ target
βΒ Β βββ classes
βΒ Β βΒ Β βββ database
βΒ Β βΒ Β βΒ Β βββ ConnectionPool.class
βΒ Β βΒ Β βΒ Β βββ DBMaintain.class
βΒ Β βΒ Β βΒ Β βββ DatabaseConnection.class
βΒ Β βΒ Β βΒ Β βββ QueryExecutor.class
βΒ Β βΒ Β βββ domain
βΒ Β βΒ Β βΒ Β βββ Answer.class
βΒ Β βΒ Β βΒ Β βββ DomainObject.class
βΒ Β βΒ Β βΒ Β βββ Exam.class
βΒ Β βΒ Β βΒ Β βββ Instructor.class
βΒ Β βΒ Β βΒ Β βββ InstructorList.class
βΒ Β βΒ Β βΒ Β βββ InstructorListImp.class
βΒ Β βΒ Β βΒ Β βββ InstructorListProxyImp.class
βΒ Β βΒ Β βΒ Β βββ Question.class
βΒ Β βΒ Β βΒ Β βββ Relationship.class
βΒ Β βΒ Β βΒ Β βββ Student.class
βΒ Β βΒ Β βΒ Β βββ Subject.class
βΒ Β βΒ Β βΒ Β βββ Submission.class
βΒ Β βΒ Β βΒ Β βββ User.class
βΒ Β βΒ Β βββ enumeration
βΒ Β βΒ Β βΒ Β βββ ExamStatus.class
βΒ Β βΒ Β βΒ Β βββ QuestionType.class
βΒ Β βΒ Β βΒ Β βββ Role.class
βΒ Β βΒ Β βββ mapper
βΒ Β βΒ Β βΒ Β βββ AnswerMapper.class
βΒ Β βΒ Β βΒ Β βββ DataMapper.class
βΒ Β βΒ Β βΒ Β βββ ExamMapper.class
βΒ Β βΒ Β βΒ Β βββ ExclusiveWriteLockManager.class
βΒ Β βΒ Β βΒ Β βββ LockManager.class
βΒ Β βΒ Β βΒ Β βββ QuestionMapper.class
βΒ Β βΒ Β βΒ Β βββ RelationshipMapper.class
βΒ Β βΒ Β βΒ Β βββ SubjectMapper.class
βΒ Β βΒ Β βΒ Β βββ SubmissionMapper.class
βΒ Β βΒ Β βΒ Β βββ UserMapper.class
βΒ Β βΒ Β βββ service
βΒ Β βΒ Β βΒ Β βββ ExamService.class
βΒ Β βΒ Β βΒ Β βββ StudentService.class
βΒ Β βΒ Β βΒ Β βββ SubjectService.class
βΒ Β βΒ Β βΒ Β βββ SubmissionService.class
βΒ Β βΒ Β βΒ Β βββ UserService.class
βΒ Β βΒ Β βββ serviceImp
βΒ Β βΒ Β βΒ Β βββ ExamServiceImp.class
βΒ Β βΒ Β βΒ Β βββ StudentServiceImp.class
βΒ Β βΒ Β βΒ Β βββ SubjectServiceImp.class
βΒ Β βΒ Β βΒ Β βββ SubmissionServiceImp.class
βΒ Β βΒ Β βΒ Β βββ UserServiceImp.class
βΒ Β βΒ Β βββ servlet
βΒ Β βΒ Β βΒ Β βββ AddExamController.class
βΒ Β βΒ Β βΒ Β βββ AdminSubjectsController.class
βΒ Β βΒ Β βΒ Β βββ AdminUserInSubjectController.class
βΒ Β βΒ Β βΒ Β βββ AdminUsersController.class
βΒ Β βΒ Β βΒ Β βββ DeleteExamController.class
βΒ Β βΒ Β βΒ Β βββ DeleteQuestionController.class
βΒ Β βΒ Β βΒ Β βββ EditExamController.class
βΒ Β βΒ Β βΒ Β βββ ExamController.class
βΒ Β βΒ Β βΒ Β βββ InstructorEditMarkController.class
βΒ Β βΒ Β βΒ Β βββ LockEditExamController.class
βΒ Β βΒ Β βΒ Β βββ LockMarkExamController.class
βΒ Β βΒ Β βΒ Β βββ LoginController.class
βΒ Β βΒ Β βΒ Β βββ LogoutController.class
βΒ Β βΒ Β βΒ Β βββ MarkExamController.class
βΒ Β βΒ Β βΒ Β βββ StudentController.class
βΒ Β βΒ Β βΒ Β βββ SubjectController.class
βΒ Β βΒ Β βΒ Β βββ TakeExamController.class
βΒ Β βΒ Β βββ shared
βΒ Β βΒ Β βΒ Β βββ UnitOfWork.class
βΒ Β βΒ Β βββ util
βΒ Β βΒ Β βββ AESCrypto.class
βΒ Β βΒ Β βββ JsonToObject.class
βΒ Β βΒ Β βββ ResponseHeader.class
βΒ Β βΒ Β βββ SSOLogin.class
βΒ Β βββ m2e-wtp
βΒ Β βΒ Β βββ web-resources
βΒ Β βΒ Β βββ META-INF
βΒ Β βΒ Β βββ MANIFEST.MF
βΒ Β βΒ Β βββ maven
βΒ Β βΒ Β βββ SWEN90007_2020_SuperGirls
βΒ Β βΒ Β βββ SWEN90007_2020_SuperGirls
βΒ Β βΒ Β βββ pom.properties
βΒ Β βΒ Β βββ pom.xml
βΒ Β βββ test-classes
βββ test
βΒ Β βββ SWEN90007-CIS-SW-TSTD.doc
βββ tree.text
git clone git@github.com:Olivia0012/SWEN90007_2020_SuperGirls.git
git branch <new-branch>
git checkout <new-branch>
git push origin <new-branch>
<end>/<tag>/<description>
Β· <application> can be one of backend or frontend.
Β· <tag> element matches the tags for the commit standards.
Β· <description> should be limited to a small number of works.
Examples:γfrontend/feature/student-login
backend/test/instructor-logout
backend/fix/view-exams
Tag | Description |
feature | A new feature |
fix | Fix a bug |
test | Unit testing/ integration testing |
Β· Create a pull request
Β· Do code review with team members
Β· Merge the change
Part 1 : 23/08/2020
Part 2 : 04/10/2020
Part 3 : 01/11/2020
- A report, in pdf format, including
- teamβs name, team membersβ names, student ids, unimelb usernames and emails.
- A use case diagram
- A detailed description (see Appendix B for a sample template) of each use case. Each use case must contain: the list of actors associated with the use case, a high-level description of the use case, the typical course of events, and the main alternative courses of action.
- A link to your private Git repository. Before the submission deadline, all the teaching team must have read and write access to your repository. A copy of this stageβs report should already be stored in your repository.
- A Git release tag:
- create a release tag in your Git repository for this deliverable in the following format:
SWEN90007_2020_Part1_<team name>
- The created release tag must be added to your report.
- create a release tag in your Git repository for this deliverable in the following format:
- The application coded and deployed.
- The source code of your application must be committed to your Git repository.
- The application must be deployed in Heroku.
- You must create a tag in your Git repository for this deliverable in the following format: SWEN90007_2020_Part2_. The tag must be created before the submission deadline as this will be used to assess your deliverable (no exceptions).
- A Software Architecture Design (SAD) report with the following items:
- The domain model of your application.
- The class diagram of your application.
- A description of all patterns used. The description must be contextualized, this means it must include details of how the pattern was implemented as part of your particular application design. A sequence diagram illustrating the use of the pattern in your application must be included as part of your description.
- Design rationale for unit of work and lazy load: an explanation on where the patterns were used and why.
- A link to your Heroku deployed app, including a populated database with a range of realistic data samples/information that are necessary for the teaching team to test your application. You also need to provide additional instructions on how to use the existing data that you created in your system, for example: the administrator username and password. We do not expect to create any test data from scratch. Again, this is your project. Make sure you test your deliverable before your submission and that you have real/appropriate data in the deployed system. Meaningless data such as abc, 123, blah blah, subject ASDFG and so on will compromise the assessment of your project (and your final marks). See Appendix D for more details.
- The Git release tag.
- The application coded and deployed. The source code of your application must be committed to your Git repository. The application must be deployed in Heroku.
- You must create a tag in your Git repository for this deliverable in the following format: SWEN90007_2020_Part3_. The tag must be created before the submission deadline as this will be used to assess your deliverable (no exceptions).
- A Software Architecture Design (SAD) report with the following items:
- The updated class diagram of your application, with any updates made to it highlighted.
- A description of all patterns used. The description must be contextualized, this means it must include details of how the pattern was implemented as part of your particular application design. A sequence diagram illustrating the use of the pattern in your application must also be included as part of your description.
- An explanation and justification supporting your choice of concurrency pattern(s).
- A link to your Heroku deployed App including data/information that we need in order to be able to test your application.
- The Git release tag.