Osnova predmetu PV179
Milestone 2
Milestone 2 Requirements:
- Introduce a business layer to the application.
- Ensure every team member:
- Creates at least 1 meaningful service.
- Tests at least 1 service from another member using mocking. Ensure tests are meaningful.
- Set up a CI/CD pipeline for Merge requests.
- Update GitLab settings to:
- Allow only successful merge requests to be merged.
- Require 1 approval for merging (effective from the start of working on 2nd milestone).
- Integrate an Identity Framework:
- Develop a separate MVC application for this.
- For the current milestone, only implement authentication using the Identity Framework.
- Develop Middleware to:
- Transform API response to XML or JSON.
- Default format should be JSON unless specified
in the query parameterin the HTTP Accept header or in the query parameter (using only one of the options is sufficient).
- Ensure that MVC and WebAPI are set up as separate projects, allowing them to:
- Operate under different configurations.
- Use different database setups.
- Maintain clear boundaries, ensuring API endpoints are not accessible from MVC, and vice versa.
- Merge request procedures:
- All Merge Requests for Milestone 2 should merge to a "Milestone 2" branch.
- Post milestone completion, request a merge from "Milestone 2" to master.
- "Milestone 2" branch should merge to master only with teacher's approval.
- Update Documentation:
- Update the readme to match the current codebase.
- Implement Audit Logging:
- Track information about who edited the Product entity and how many times it was edited overall.
- Change Request:
- Client requests that data seeding be modified to use Bogus (or a similar NuGet package).
- Client requests the ability to use images associated with products on the website and prefers that they be saved directly to the hard drive for easy access and management.
- Client requests that log data from LogMiddleware be saved into a database.
- Hint: A different database more suited for storing logs can be used.
- Client requests that data seeding be modified to use Bogus (or a similar NuGet package).
Deadline:
- Milestone 2 - 20.11.2024
- Milestone 2 Review - 28.11.2024