Trabalho Prático Engenharia de Software 2
Grupo:
- Francisco Bonome Andrade
- Lucas Caetano Lopes Rodrigues
- Lucas Starling de Paula Salles
- Yasmin Araújo
FastTask
O FastTask é um sistema para gestão de tarefas. O sistema é capaz de gerenciar diferentes boards, nos quais o usuário pode criar tarefas, com nomes, descrições, e prioridade.
Para executar o sistema, instale-o através do pip: pip install fasttask
O usuário pode interagir com o sistema utilizando a CLI:
$ fasttask board create UFMG --label Pessoal
$ fasttask task list
On Default (id=1):
$ fasttask board list
Default (id=1)
UFMG (id=2)
$ fasttask board checkout 2
$ fasttask task create projeto_es2_entrega_1 --label "ES2"
$ fasttask task list
On UFMG (id=2):
projeto_es2_entrega_1
$ fasttask task describe projeto_es2_entrega_1
Task details:
Id: 1
Name: projeto_es2_entrega_1
Status: ToDo
Creation date: 29/05/2022
Label: ES2
Priority: 0
Time Worked in this task: 0
Tecnologias utilizadas
O sistema foi desenvolvido utilizando Python 3.7+ para construção da CLI e das classes principais do sistema, e SQLite para armazenar os boards e as tarefas criadas. A ferramenta Unittest também foi utilizada para criar testes unitários para os componentes do sistema.
Relatórios do Lizard
Para gerar os relatórios, utilizamos a seguinte configuração para o Lizard:
- Threshold para
cyclomatic_complexityé 5 - Ordenar por: 1) cyclomatic_complexity; 2) length
- Para os arquivos do sistema em
src/
Você pode encontrar todos os relatórios na pasta lizard_reports.
O comando utilizado foi:
$ lizard -T cyclomatic_complexity=5 -s cyclomatic_complexity -s length paths src/main.py src/modules/dbhandler.py src/modules/clicontroller.py src/modules/command.py src/modules/board.py src/modules/task.py
Após finalizar o projeto inicial do sistema, esses eram os warnings gerados:
==========================================================================================
!!!! Warnings (cyclomatic_complexity > 5 or length > 1000 or nloc > 1000000 or parameter_count > 100) !!!!
================================================
NLOC CCN token PARAM length location
------------------------------------------------
24 7 145 1 24 parse@82-105@src/modules/command.py
16 7 93 1 16 shell@110-125@src/modules/command.py
17 6 107 1 17 parse_flags@136-152@src/modules/command.py
==========================================================================================
Total nloc Avg.NLOC AvgCCN Avg.token Fun Cnt Warning cnt Fun Rt nloc Rt
------------------------------------------------------------------------------------------
491 6.6 1.5 43.2 72 3 0.04 0.12
Com as refatorações, as três funções mais complexas pararam de gerar warnings:
==========================================================================================
No thresholds exceeded (cyclomatic_complexity > 5 or length > 1000 or nloc > 1000000 or parameter_count > 100)
==========================================================================================
Total nloc Avg.NLOC AvgCCN Avg.token Fun Cnt Warning cnt Fun Rt nloc Rt
------------------------------------------------------------------------------------------
518 6.6 1.5 42.6 76 0 0.00 0.00
Release files for fasttask 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fasttask-1.0.1.tar.gz | 10.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fasttask-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.5 kB
Release files / fasttask-1.0.1.tar.gz
| Download URL | fasttask-1.0.1.tar.gz |
|---|---|
| Size | 10.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9a87606d4d1b111546d1387905ae03605c889ef09fe0f5cdfcb7e2022ac76a17
|
|
BLAKE2b-256 checksum How to use checksums |
79c9afff193ab0132548c1b1d4a26a5de7e920e8fe679e49afc927e7459df674
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.8.10
|
Release files / fasttask-1.0.1-py3-none-any.whl
| Download URL | fasttask-1.0.1-py3-none-any.whl |
|---|---|
| Size | 11.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6be43cc18d1aa1aa1ab1a43e4c35053e07b9644869821d6178ae97da38faeb52
|
|
BLAKE2b-256 checksum How to use checksums |
f15889b2f276ab3b9eecf550d025fef26c8ec99961ce80749487b59a35f6d671
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.8.10
|