Milestone 1
Milestone ID: 615
-
Create a project in a GitLab repository on https://gitlab.fi.muni.cz publicly accessible (reading permission). Select a short and descriptive name. To publish additional information for your project use a README.md (see an example https://gitlab.fi.muni.cz/xradvan/pa165-green-gepards/-/blob/master/README.md ).
-
In the project README you will show: a project description, a use case diagram and a class diagram for the DTO classes. There will be at least two user roles in the use case diagram. Associations between DTOs will be shown in the class diagram.
-
Analyze the domain and design the system with at least 4 services.
-
Implement the services as at least 4 Spring Boot applications each in a separate Maven module.
-
Each student creates a skeleton for one service (that is create the REST controllers).
-
(UPDATED) Annotate the Java classes to generate OpenAPI specifications or generate Java classes from the OpenAPI specification (as seen during the seminars).
-
Create tests for each service (one student takes responsibility of a test class for one different service).
-
Externalize configuration using Spring Boot’s application.yml file (doc).
-
(UPDATED) Use validation of inputs for the DTOs (this is OPTIONAL).
-
Show that you have been using pull requests in this milestone. The team leader will be responsible for managing pull requests.
-
The project must be buildable using Maven through a command line: make sure you have all dependencies correctly configured, so it will be possible to run “mvn clean install“ and “mvn spring-boot:run” in executable modules. List the executable modules in the README.
-
(NEW) Please note that JPA is not required in this milestones, will be part of M2 after two lectures about persistence.