Software Engineering Experiment - Practical Knowledge Integralization
Pontificial Catholic University of Minas Gerais - PUC Minas
Post Graduation - Software Engineering Specialization
2023
Pontificial Catholic University of Minas Gerais - PUC Minas
Post Graduation - Software Engineering Specialization
2023
The Kanban board is a tool for workflow visualization, designed to help you bring clarity to your work process and enhance efficiency by limiting work in progress. With this new level of transparency, you will quickly identify problematic work stages, and by improving those, your team will soon work more efficiently.
Running locally with predefined settings:
> BUILD & RUN:
docker compose -f ./compose.local.yml up
> DESTROY & CLEAN:
docker compose -f ./compose.local.yml down
Running in production environments:
- Ensure that you have a MySQL or a MariaDB with version 8.0.31 configured and accessible by the environment in wich the service will be deployed;
- Use the init.sql script to initialize a new database schema;
- Ensure that the target environment has a variable
CONNECTION_STRING
with the following sintax:
server=server_address;user=database_user;password=user_password;database=database_schema
- Run the application Dockerfile with the command docker run
Id | Description | System Domain |
---|---|---|
Functional Requirements | ||
FR01 | When created, a Board should be given an 'Active' status | Board Management |
FR02 | An active Board should allow the user finishing all children Tasks at once; | Board Management |
FR03 | When an active Board is deleted, all children Tasks are deleted also; | Board Management |
FR04 |
When a Board receives an 'Inactive' status:
|
Board Management |
FR05 | Tasks must be related to a single board, meaning that they belong to a specific context; | Task Management |
FR06 | When created, tasks must be given a status of "New Task", meaning that it still waits for an interaction; | Task Management |
FR07 | Each and every interaction in tasks must change it's 'lastUpdate' field; | Task Management |
FR08 | Tasks waiting to be done and ongoing tasks should allow adding comments; | Task Management |
FR09 | Finished tasks should not allow adding comments; | Task Management |
FR10 |
Tasks can be Finished in two ways:
|
Task Management |
Non-Functional Requirements | ||
NFR01 | App must be optimed to work in small screens (mobile devices); | User Experience |
NFR02 | App data must be persisted in a free Relational database; | Implementation |
NFR03 | System must be built using Onion Architecture in order to set a standard of maintanence and growth overtime. | Implementation |
Reference | |
---|---|
Label | Description |
FR | Function Requirement |
NFR | Non-Function Requirement |