TODO
Project description
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file fasttask-1.0.1.tar.gz
.
File metadata
- Download URL: fasttask-1.0.1.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
9a87606d4d1b111546d1387905ae03605c889ef09fe0f5cdfcb7e2022ac76a17
|
|
MD5 |
e409a51db0c266712aaff46c006097b8
|
|
BLAKE2b-256 |
79c9afff193ab0132548c1b1d4a26a5de7e920e8fe679e49afc927e7459df674
|
File details
Details for the file fasttask-1.0.1-py3-none-any.whl
.
File metadata
- Download URL: fasttask-1.0.1-py3-none-any.whl
- Upload date:
- Size: 11.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
6be43cc18d1aa1aa1ab1a43e4c35053e07b9644869821d6178ae97da38faeb52
|
|
MD5 |
9acb06cf3fb39a284d7b6eec748e309a
|
|
BLAKE2b-256 |
f15889b2f276ab3b9eecf550d025fef26c8ec99961ce80749487b59a35f6d671
|