Plano de Projeto - OUTLAY

Plano de Projeto de Software desenvolvido na disciplina de Gerência de Projetos para obtenção de nota O objetivo deste documento é descrever uma visão geral do plano de projeto de software do aplicativo Outlay. Como o nome sugere, trata-se de um aplicativo cujo objetivo é fornecer ao usuário ferramentas para o gerenciamento de suas finanças. Este plano apresenta abordagens de gestão de projetos e da engenharia de software, como os requisitos funcionais, não-funcionais e domínio, casos de uso e stakeholders.

Universidade Federal de Sergipe
Centro de Ciências Exatas e Tecnologia/CCET
Departamento de Computação/DCOMP
Disciplina Gerência de Projetos
Prof.º Dr.º Rogério Patrício Chagas do Nascimento
Aplicativo OUTLAY
Plano de Projeto de Software
Ivan Gomes Ferreira Junior
João Paulo Souza Prado
Jocelino Alves Pereira Neto
Vicente José Santiago Costa Oliveira
São Cristóvão - SE
Fevereiro 2020
1
Universidade Federal de Sergipe
Centro de Ciências Exatas e Tecnologia/CCET
Departamento de Computação/DCOMP
Disciplina Gerências de Projetos
Prof.º Dr.º Rogério Patrício Chagas do Nascimento
Aplicativo OUTLAY
Plano de Projeto de Software
Plano de Projeto de Software
desenvolvido na disciplina de Gerência de
Projetos para obtenção de nota.
São Cristóvão - SE
Fevereiro 2020
2
Sumário
1. INTRODUÇÃO 4
1.1. Âmbito do Projeto 4
1.2. Funções principais do produto de software 4
1.3. Requisitos Comportamentais ou de Performance 11
1.4. Gestão e Restrições Técnicas 13
2. ESTIMAÇÕES DO PROJETO 14
2.1. Técnicas de Estimativas e Resultados 14
2.2. Recursos do projeto 16
3. ANÁLISE E GESTÃO DE RISCOS 17
3.1. Riscos do projeto 17
3.2. Redução e Gestão de Riscos 18
4. PLANEJAMENTO TEMPORAL 21
4.1. Conjunto de tarefas do projeto
4.2. Diagrama de Gantt 22
5. ORGANIZAÇÃO DA EQUIPE 23
5.1. Estrutura da equipe 23
5.2. Mecanismos de comunicação 24
5.3. Uso do Edu-Blog como ferramenta de apoio 24
5.4. Ferramentas de gestão do projeto 25
6. PRECAUÇÕES TOMADAS PARA ASSEGURAR E CONTROLAR A QUALIDADE
DO PRODUTO DE SOFTWARE 25
7. REFERÊNCIAS 26
8. APÊNDICE 1 - DIAGRAMA DE GANTT DO PROJETO DE SOFTWARE 26
3
1. INTRODUÇÃO
O objetivo deste documento é descrever uma visão geral do plano de projeto de
software do aplicativo Outlay. Como o nome sugere, trata-se de um aplicativo cujo objetivo
é fornecer ao usuário ferramentas para o gerenciamento de suas finanças. Este plano
apresenta abordagens de gestão de projetos e da engenharia de software, como os
requisitos funcionais, não-funcionais e domínio, casos de uso e stakeholders.
1.1. Âmbito do Projeto
O aplicativo Outlay tem como público alvo pessoas que gostam ou querem fazer um
controle melhor das suas finanças. Para tanto, entre outras funcionalidades, a aplicação
disponibiliza ao usuário 'carteiras', nas quais se registram informações como saldo,
despesas e histórico de atividades, e acontecem operações relativas ao tratamento desses
dados.
1.2. Funções principais do produto de software
Nesta seção serão listados as principais funcionalidades do Projeto Outlay através
do diagrama de caso de uso, lista de requisitos funcionais e modelo conceitual.
Figura 1: Diagrama de caso de uso - categoria
Fonte: Próprios autores
4
Figura 2: Diagrama de caso de uso - Cadastro/Login
Fonte: Próprios autores
Figura 3: Diagrama de caso de uso - Lançamento Futuros
Fonte: Próprios autores
5
Figura 4: Diagrama de caso de uso - Gerar Relatório
Fonte: Próprios autores
Figura 5: Diagrama de caso de uso - CRUD Receita
Fonte: Próprios autores
6
Figura 6: Diagrama de caso de uso - CRUD Meta de economia
Fonte: Próprios autores
Figura 7: Diagrama de caso de uso - CRUD Carteira
Fonte: Próprios autores
7
Figura 8: Diagrama de caso de uso - Alterar Cadastro
Fonte: Próprios autores
Figura 9: Diagrama de caso de uso - CRUD Despesas
Fonte: Próprios autores
8
Figura 10: Modelo Conceitual
Fonte: Próprios autores
Com base no modelo conceitual
na tabela 1 é descrito as principais funcionalidades do software.
Tabela 1: Descrição dos requisitos funcionais
Requisito Descrição
RF01 O Visitante deve poder realizar o seu cadastro como usuário.
RF02 Usuário poderá atualizar o seu cadastro.
RF03 Usuário deve poder cadastrar suas dívidas.
RF04 O Usuário deve poder atualizar suas despesas.
9
RF05 O Usuário deve poder cadastrar sua receita(valor do dinheiro disponível).
RF06 O usuário deve poder atualizar seu saldo disponível.
RF07 Deve haver o campo “Lançamentos Futuros”, que registra rendas e
despesas futuras.
RF08 O app deve permitir a geração de relatórios, quando requerida pelo
usuário.
RF09 O app deve permitir a criação de categorias de receitas e despesas.
RF10 O app deve permitir verificar rendimentos de valor em poupança
RF11 O app deve permitir gerir gastos por categorias(tags).
RF12 O software deve permitir registro de contas a pagar, incluindo data de
pagamento/vencimento.
RF13 O app deve alertar sobre vencimentos de contas.
RF14 O usuário deve poder imprimir os relatórios.
RF15 O usuário deve manter sua(s) carteira(s).
RF16 O usuário pode favoritar transações recorrentes.
RF17 O app deve permitir a visualização da receita total (por mês/por ano).
RF18 O app deve permitir a visualização da despesa total (por mês/por ano).
RF19 O usuário pode gerenciar metas de economia.
1.3. Requisitos Comportamentais ou de Performance
Nesta seção estão descritos os requisitos não funcionais do sistema, sendo
relacionados ao uso da aplicação em termos de desempenho, usabilidade, confiabilidade,
segurança, disponibilidade, manutenção e tecnologias envolvidas. Estes requisitos dizem
respeito a como as funcionalidades serão entregues ao usuário do software.
1.3.1. Usabilidade
Esse grupo de requisitos estão relacionados com a facilidade com os usuários
podem empregar ao fazer uso do software para realizar uma tarefa.
10
Tabela 2: Requisitos Não Funcionais de Usabilidade
Requisito Descrição
RNF01 O usuário deve conseguir encontrar um função do aplicativo em até 20
segundos.
RNF02 Possuir recurso de acessibilidade.
RNF03 Possuir mecanismos de ajuda com explicação passo a passo.
1.3.2. Confiabilidade
Refere-se à frequência de ocorrência de falhas e recuperabilidade em caso de falha.
Tabela 3: Requisitos Não Funcionais de Confiabilidade
Requisito Descrição
RNF01 Os dados presentes no dashboard devem estar sempre atualizados.
RNF02 O sistema deverá ter histórico de eventos que registra todas as
operações realizadas (logs).
RNF03 O aplicativo deve ter função que funciona meio como uma função
alarmante(o usuário informa a média de que pode gastar no período e
com base nisso o sistema retornará a situação em que ele se
encontra).
1.3.3. Performance
Referem-se ao desempenho do sistema e estão associados à eficiência, uso de
recursos e tempo de resposta da aplicação, como: transações processadas/segundo; tempo
de resposta do usuário/evento, entre outros.
Tabela 4: Requisitos Não Funcionais de Performance
Requisito Descrição
RNF01 Ter capacidade para mais de 5 acessos simultâneos.
RNF02 A emissão do relatório deverá ficar disponível para o usuário em até
10s.
11
1.3.4. Suportabilidade
Este grupo de requisitos estão relacionados a facilidade de alterações no sistema
após a implantação, incluindo os aspectos de adaptabilidade, manutenibilidade e
internacionalização.
Tabela 5: Requisitos Não Funcionais de Suportabilidade
Requisito Descrição
RNF01 Testes de Unidade e de Aceitação deverão ser completamente
automatizados.
RNF02 Integração com o Internet bank.
RNF03 Possuir documentação e clareza no código.
1.3.5. Segurança
Esse grupo refere-se aos requisitos associados à integridade, privacidade e
autenticidade dos dados.
Tabela 6: Requisitos Não Funcionais de Segurança
Requisito Descrição
RNF01 O sistema deve prover controle de acesso para visualizar e manter
custos e carteira.
RNF02 O armazenamento dos dados do usuário deve ser seguro e restrito, só
poderão ser divulgados e consultados com a devida autorização.
RNF03 As informações divulgadas no dashboard para o público externo não
podem conter dados pessoais dos usuários, apenas dados gerais.
1.4. Gestão e Restrições Técnicas
A equipe de desenvolvimento do projeto será composta por alunos dos cursos de
graduação do Departamento de Computação da Universidade Federal de Sergipe, que
passarão por um processo de seleção podendo ter pouca ou média experiência com
desenvolvimento de software.
As restrições técnicas associadas ao desenvolvimento do projeto são:
12
1. Desenvolvimento do aplicativo deverá usar a linguagem JavaScript com framework
ReactNative para o mobile, React.Js para plataforma web, e Node.js para o
back-end. Porém a utilização de Flutter pode ser negociada.
2. Utilização do banco de dados não relacional MongoDB.
Este projeto será desenvolvido baseado no modelo de desenvolvimento
iterativo-incremental, ou seja, deve ser entregue um componente funcional ao final de cada
etapa do processo de desenvolvimento para testes e validação com o cliente. O
gerenciamento da equipe será feito seguindo uma metodologia ágil, o Scrum, que foi
escolhido pela equipe.
2. ESTIMAÇÕES DO PROJETO
Utilizamos a métrica orientada a classe de Lorenz & Kidds para fazer a estimação do
projeto, pois é uma boa métrica quando as classes podem ser bem definidas. Essa
métrica indica pelos seus cálculos uma número definido para o esforço, tempo e
custo do projeto.
2.1. Técnicas de Estimativas e Resultados
Nessa subseção está o passo-a-passo da técnicas de estimativas e o seu
resultado no projeto.
2.1.1. Técnicas de Estimativas
Olhando o modelo conceitual(na Figura 10) podemos encontrar os
dados necessários para fazer a métrica de Lorenz & Kidds(1994).
● Encontrando o número de classes-chaves(são as que fazem parte do
domínio do problema).
● Com isso podemos calcular número das classes de suporte (não
ajudam a resolver o problema mas dão suporte as classes-chave)
necessárias de acordo com a Tabela 2, usa-se o cálculo
classes-chave*multiplicador = classes-suporte.
Interface Multiplicador
Não gráfica 2
Baseada em texto 2,25
GUI 2,5
GUI Complexa 3
Tabela 7: Multiplicador de classe suporte de Lorenz & Kidds(1994)
● Com o números de classes-chave e números de classes de suporte,
encontramos o números de classes totais que é a soma desses dois.
13
● Então, o valor de classe totais são multiplicados pelo número médio
de unidades de trabalho(dias-pessoas) por classe. Lorenz &
Kidds(1994) sugerem entre 15-20 dias-pessoas por classe, a escolha
deve ser feita de acordo com a capacidade da equipe.
● Com isso se determina o esforço necessário para se realizar o
projeto.
● Então, se separa o esforço entre a equipe que irá trabalhar nele.
2.1.2. Resultados
Seguindo as etapas descritas acima temos os resultados:
● Temos ​9 classes-chaves: Login, Usuario, Carteira, Receita,
Despesa, Meta de Economia, Categoria de Entradas,
Relatórios, Lançamentos Futuros.
● Como utilizaremos GUI usaremos o multiplicador 2,5 de
acordo com a Tabela 2, nesse caso, temos 9 * 2,5 = 22,5
classes de suporte.
● Então, 22,5 + 9 = 31,5 como número total de classes.
● Nós decidimos escolher 19 como o número médio de unidades
de trabalho, pois queríamos dar um tempo a mais para os
desenvolvedores aprenderem a se adaptar ao projeto, logo
ficaria 31,5 * 19 = 532 dias-pessoas.
● Lembrando que o mês tem 22 dias úteis com 8 horas diárias,
para encontrar os dias corridos irei fazer esses cálculos: 532 /
22 = 24,18 meses corridos.
● Com uma equipe de 5 pessoas o tempo poderia ser dividido
para: 24,18 / 5 = 4,83 ou 4 meses e 18,26 dias no
total(aproximadamente 106,3 dias corridos)
Usando a distribuição dos dias de trabalho para as etapas do projeto
ficaria assim:
Modelo %Modelo %Projeto Cálculo Dias
Trabalho
Planejamento 2-3% 3% 106,3*3% =3,2
Requisitos
Análise-Desenho
40% 40% 106,3*40% =42,5
Geração de Código 20% 20% 106,3*20% =21,3
Testes 37-38% 37% 106,3*37% =39,3
Total =106,3
Tabela 8: Distribuição dos dias de trabalho entre as etapas
14
2.2. Recursos do projeto
Os recursos utilizados neste projeto serão: humanos, hardware e software.
2.2.1. Recursos Humanos
O projeto será feito por 5 pessoas e será dividido da seguinte forma:
Cargo Responsável
Gerente de Projeto Vicente
Analista de Sistemas Ivan
Analista de Testes Jocelino
Programador João Paulo
Ivan
Vicente
Testador João Paulo
Jocelino
Vicente
Tabela 9: Separação das funções dos membros do projeto
2.2.2. Recursos de Software
● JavaScript, linguagem escolhida para escrever o projeto.
● React Native, como framework para o desenvolvimento do aplicativo
mobile.
● React.Js, como plataforma para construção em web.
● Node.js, para o desenvolvimento do back-end.
● Flutter, como um possível framework para o desenvolvimento.
● MongoDB, como escolha do banco de dados do projeto.
2.2.3. Recursos de Hardware
Serão utilizados os PCs pessoais de cada desenvolvedor para
realizar o projeto.
3. ANÁLISE E GESTÃO DE RISCOS
15
A gestão de riscos é uma atividade que propicia a atuação da organização de forma
preventiva, suprimindo prejuízos de natureza humana ou material. Com esta gestão é
possível selecionar opções para quando os riscos realmente ocorrerem, avaliando a
probabilidade de ocorrência e estimar o impacto destas incertezas.
3.1. Riscos do projeto
Na Tabela a 10, estão listados os riscos, sua probabilidade estimativa para
ocorrer e seus impacto no projeto com sua descrição. Todas estas
informações foram frutos de um ​brainstorm em sala de aula, auxiliados por
uma análise circular. Com isso, também foram definidos os pontos de corte.
Risco Categoria Impacto % Probabilidade Descrição
004 Tecnologia Catastrófico 30% Perda de informação no banco
de dados
006 Equipe Catastrófico 50% Não definição de tecnologias
008 Cliente Catastrófico 30% Problema na definição de
requisitos
002 Equipe Crítico 50% Prazos de entrega muito curto
003 Cliente Crítico 50% Cliente não participou das
validações do projeto
005 Tecnologia Crítico 50% Falha ao integrar com APIs de
câmbio
009 Tecnologia
s
Crítico 60% Não conexão com internet
banking
Ponto de corte
001 Equipe Marginal 75% Desistência de membro da
equipe
010 Tamanho Marginal 30% Evolução do projeto
011 Equipe Marginal 30% Rotatividade da equipe
012 Negócio Crítico 20% Usabilidade de usuário
013 Negócio Crítico 70% Expectativas não satisfeitas
014 Negócio Marginal 50% Conhecimento prévio escasso
dos usuários finais
16
Tabela 10: Riscos do projeto e pontos de corte
3.2. Redução e Gestão de Riscos
Risco: 002 Probabilidade: 50% Impacto: Crítico
Descrição: prazos de entrega muito curto para a rotina da equipe de
desenvolvimento.
Estratégia de Redução: negociar prazos adaptados para a equipe;
melhorar o planejamento para cada entrega; utilizar de reutilização de
funcionalidades.
Plano de contingência: realizar as atividades com maior prioridade;
aumentar a carga de trabalho.
Responsável: Gerente de Projetos.
Status: Concluído.
Tabela 11: Riscos do projeto 002
Risco: 003 Probabilidade: 50% Impacto: Crítico
Descrição: cliente não participou das validações do projeto
Estratégia de Redução: guardar e registrar cada reunião com os
stakeholders.
Plano de contingência: solicitar ao cliente alguém de confiança e com
conhecimentos sólidos sobre a aplicação, possivelmente um ​Product
Owner​.
Responsável: Analista de Sistemas.
Status: Concluído.
Tabela 12: Riscos do projeto 003
Risco: 004 Probabilidade: 30% Impacto: Catastrófico
Descrição: perda de informações no banco de dados
Estratégia de Redução: realizar redundâncias de dados em servidores,
além do uso de ​clusters com backups de todas as transações no banco,
para em caso de defeito em um servidor utilizar de outros já disponíveis.
Plano de contingência: realizar backups diários as informações, possuindo
17
redundâncias das informações que possuem mais solicitações.
Responsável: Analista de Testes.
Status: Concluído.
Tabela 13: Riscos do projeto 004
Risco: 005 Probabilidade: 50% Impacto: Crítico
Descrição: falha ao integrar com APIs de câmbio
Estratégia de Redução: pesquisa sobre APIs proprietárias que retornam as
informações de câmbio.
Plano de contingência: desenvolver um web crawler que captura
informações de sites proprietários sobre o câmbio.
Responsável: Analista de sistemas e Programadores.
Status: Em andamento.
Tabela 14: Riscos do projeto 005
Risco: 006 Probabilidade: 50% Impacto: Catastrófico
Descrição: não definição de tecnologias para a aplicação, ocasionando
problemas de desperdício de tempo com tecnologias não bem utilizadas.
Estratégia de Redução: A pesquisa e o teste de cada tecnologia para
desenvolvimento, além de listagem de prós e contras sobre cada
tecnologia em buscas em outros projetos consolidados.
Plano de contingência: reutilizar módulos disponíveis na Internet para
acelerar o processo de desenvolvimento.
Responsável: Analista de sistemas
Status: Concluído.
Tabela 15: Riscos do projeto 006
Risco: 008 Probabilidade: 30% Impacto: Catastrófico
Descrição: problema na definição de requisitos
Estratégia de Redução: retirar as dúvidas referentes aos requisitos em
reuniões frequentes com o cliente para que erros não ocorram e estudar
como funcionam os processos com aplicações financeiras.
Plano de contingência: contratar consultoria de finanças para auxiliar nos
processos financeiros que não estão corretos, além de trazer o cliente para
18
um acompanhamento mais próximo em cada entrega.
Responsável: Analista de Sistema.
Status: Em andamento.
Tabela 16: Riscos do projeto 008
Risco: 009 Probabilidade: 60% Impacto: Crítico
Descrição: não conexão com internet banking, impossibilitando integração
com informações de gastos e entradas com cartões
Estratégia de Redução: entrar em contato com bancos permitem o uso de
informações do internet banking para o gerenciamento de gastos utilizando
seus cartões e contas bancárias.
Plano de contingência: permitir o usuário de listar cada cartão e os gastos
e receitas manualmente, separados por categorias de banco.
Responsável: Analista de Testes.
Status: Em andamento.
Tabela 17: Riscos do projeto 009
Risco: 012 Probabilidade: 20% Impacto: Crítico
Descrição: Usabilidade de usuário pode prejudicar a utilização do
aplicativo
Estratégia de Redução: implementação de testes A/B com usuários que
estão qualificados na persona do projeto.
Plano de contingência: adoção de réplica da aparência de outras
aplicações, utilizando da aparência de recursos já conhecidos e bem
aceitos.
Responsável: Analista de testes e Testadores
Status: Em andamento.
Tabela 18: Riscos do projeto 012
Risco: 013 Probabilidade: 70% Impacto: Crítico
Descrição: expectativas não satisfeitas com o produto para o stakeholder
Estratégia de Redução: verificar a cada interação sobre quais as
expectativas do cliente e separar por prioridades de requisitos.
Plano de contingência: buscar redução dos problemas no período de
manutenção do software.
19
Responsável: Gerente de Projetos.
Status: Em andamento.
Tabela 19: Riscos do projeto 013
4. PLANEJAMENTO TEMPORAL
4.1. CONJUNTO DE TAREFAS DO PROJETO
O projeto ​Outlay se baseia em desenvolvimento baseado no modelo
iterativo-incremental, no qual as atividades são realizadas sequencialmente, e com
melhorias gradativas em atividades menores, ou atividades incrementais. Este projeto
pretende ser realizado em 115 dias (5 meses e 3 dias), utilizando o modelo de tempo a
seguir, tendo alguns espaços sem desenvolvimento
Tarefas Porcentagem (%) Tempo - dias de trabalho
Planejamento e Análise de
Requisitos
40% 42 dias
Codificação 20% 23.3 dias
Testes/Implementação 40% 42 dias
Total 100% 106.3 dias
Tabela 20: Tempo estimado para tarefas do projeto
A seguir temos um apanhado sobre as etapas do processo:
4.1.1. Planejamento e Análise de Requisitos
Esta etapa está dividida pelas etapas de: Abertura do Projeto,
Definição do escopo, Reuniões com os clientes, Levantamento de
requisitos, Refinamento dos requisitos, Análise dos requisitos, Criação
do plano de projeto, Análise e gestão de riscos, Projeto de arquitetura
e Ajustes no plano de projeto, onde cada uma destas etapas lida com
o planejamento e a análise e refinamento dos requisitos. Nesta etapa
o Analista de Sistemas e o Gerente de Projetos definem as atividades
e verifica os requisitos, para o Analista de Testes definir os testes e os
padrões do projeto.
20
4.1.2. Codificação
Nesta etapa a equipe de programadores e o analista de sistemas
define a arquitetura e o ambiente em que a aplicação será executada.
Além disso, é realizada a cada ciclo de codificação as tarefas de
implementação de funcionalidades descritas nos requisitos funcionais
e não funcionais, além de seguir os casos de uso descritos.
4.1.3. Testes e Implementação
A equipe de testes, acompanhado pelo analista de testes realizam os
testes programados pelo analista no primeiro ciclo do projeto, na
etapa de planejamento e análise de requisitos. É importante frisar
que, no início de cada ciclo de codificação, testes unitários são
escritos para garantir a integridade das funcionalidades.
Após o período de testes, a equipe estará focada em integrar o
ambiente de desenvolvimento para o ambiente de produção, além de
passar o treinamento para os clientes.
4.2. DIAGRAMA DE GANTT
As atividades ao longo do processo são descritas no diagrama de gantt,
encontrado no apêndice 1 deste documento.
5. ORGANIZAÇÃO DA EQUIPE
5.1. ESTRUTURA DA EQUIPE
A tabela a seguir apresenta a composição da equipe e os papéis designados para
cada integrante, bem como uma breve descrição das atribuições de cada função.
Cargo Responsável Descrição
Gerente de projeto Vicente José Santiago
Costa Oliveira
É o responsável pela
elaboração do projeto,
planejamento e revisão.
Além de controlar a
execução dos processos a
fim de indicar o melhor
caminho para toda a equipe.
21
Analista de sistemas Ivan Gomes Ferreira Junior Esse profissional deve atuar
no levantamento dos
requisitos do sistema,
regras de negócio,
modelagem do banco,
dados e arquitetura do
projeto.
Analista de testes Jocelino Alves Pereira Neto Responsável por elaborar e
traçar os diversos tipos de
teste no projeto. Avaliar e
expor os resultados dos
testes para toda a equipe.
Desenvolvedor Ivan Gomes Ferreira Junior O desenvolvedor tem como
responsabilidade todo o
desenvolvimento e
codificação do sistema, bem
como manutenções e
correções providas dos
testes.
Testador
João Paulo Souza Prado
Jocelino Alves Pereira Neto
Vicente José Santiago
Costa Oliveira
Esse profissional é
responsável por codificar os
casos de testes elaborados
pelo analista, avaliar a
cobertura do código e
alertar a equipe
desenvolvimento sobre as
devidas correções.
Tabela 21: Estrutura da equipe
5.2 MECANISMOS DE COMUNICAÇÃO
A fim de manter uma comunicação ativa entre os integrantes da equipe e o
monitoramento das atividades e andamento do projeto, algumas ferramentas foram vitais,
como por exemplo, controle de versionamento, gerência de projetos, ferramentas case,
entre outras. No quadro abaixo serão listadas as ferramentas utilizadas junto a uma breve
descrição:
Ferramenta Descrição
WhatsApp Ferramenta mais utilizada para conversas
rápidas e informais entre todos os membro
da equipe. Pode ser utilizado via
dispositivos mobile ou navegadores web.
Google Drive A ferramenta permite a edição colaborativa
e simultânea de arquivos e elaboração de
22
documentos.
Tabela 22: Ferramentas de comunicação utilizadas
Vale citar que a equipe também contou com reuniões periódicas entre todos os
integrantes na própria Universidade Federal de Sergipe.
5.3 USO DO EDU-BLOG COMO FERRAMENTA DE APOIO
Alinhado com as ferramentas mencionadas acima, não podemos deixar de citar a
ferramenta “Edu-blog”, um blog criado pelo Prof.º Dr.º Rogério Patrício Chagas do
Nascimento, para a disciplina de Gerência de Projetos.
No blog <http://gp-ufs.blogspot.com> é possível acompanhar todos os conteúdos
abordados em sala de aula. Esses conteúdos contribuem para a formação de um projeto de
software de qualidade. Além disso, um dos objetivos da disciplina gerência de projetos é
fazer com que cada grupo de alunos torne-se responsável por abordar um tema em um
blog. De maneira recorrente é incentivado que os alunos realizem postagens referentes a
esses temas.
Essa metodologia foi muito interessante para nós alunos, pois nos fez buscar novos
conhecimentos e curiosidades a respeito dos temas para poder compartilhar com nossos
colegas, e da mesma forma incentivar e conhecer os blog dos outros colegas da disciplina e
de turmas anteriores da disciplina.
5.4 FERRAMENTAS DE GESTÃO DE PROJETO
Para auxiliar no gerenciamento do aplicativo OUTLAY, algumas ferramentas para
controle de reuniões e tarefas foram utilizadas, como mostra a tabela abaixo.
Ferramenta Descrição
Trello O trello é uma ferramenta que permite a
organização de tarefas. O que há para ser
feito, o que estão fazendo e o que já foi
concluído, seguindo a metodologia do
kanban.
Github O GitHub é uma ferramenta de controle de
versionamento de projetos, com ela é
possível verificar alterações e adição de
novas funcionalidades.
SmartSheet É uma ferramenta online capaz de gerar
diagramas e outros dashboards. No projeto
foi utilizado para gerar o diagrama de gantt.
Tabela 23: Ferramentas de gestão de projeto utilizadas
23
6. PRECAUÇÕES TOMADAS PARA ASSEGURAR E
CONTROLAR A QUALIDADE DO PRODUTO DE SOFTWARE
Para assegurar ao máximo a qualidade do nosso produto, foi necessário observar e
seguir alguns caminhos “seguros” da qualidade de software. Alguns desses caminhos são
mais óbvios. Como por exemplo, manter a documentação do produto sempre clara e
atualizada. Permitindo que outros membros da equipe consigam de maneira prática
entender as informações contidas no software.
Outra prática aplicada no nosso projeto foram as reuniões constantes entre os
membros da equipe, reuniões rápidas e objetivas. Onde cada membro colocava seus
pontos, sugestões e dúvidas em questão, formando assim um grande debate democrático.
Nessas reuniões a equipe se atualizava sobre os problemas encontrados e os avanços dos
colegas, além de dialogar frequentemente com os clientes, tornando o desenvolvimento
mais transparente e eficiente.
Uma etapa relevante para a validação da qualidade foram os testes. Os testes
devem ser feitos com atenção redobrada e sempre com um fim específico: encontrar erros.
Dessa forma, a nossa equipe trabalhou com testes ao longo de todo o desenvolvimento do
projeto a fim de garantir uma entrega consistente e livre de falhas. Utilizando o
desenvolvimento de maneira incremental, aplicando técnicas de prototipação foi possível
realizar a validação das fases junto aos clientes, garantindo satisfação e agilidade.
7. REFERÊNCIAS
LORENZ, M.; KIDD, J. ​Object-Oriented Software Metrics.​ Prentice Hall, 1994.
PRESSMAN, Roger; MAXIM, Bruce. ​Engenharia de Software: Uma abordagem
Profissional. ​8ª Edição. Editora McGraw Hill Brasil, 2016.
SOMMERVILLE, Ian. Engenharia de Software​. 8ª Edição. Editora Person
Education, 2007.
24
8. APÊNDICE 1 - DIAGRAMA DE GANTT DO PROJETO DE
SOFTWARE
Figura 12: Diagrama de Gantt - Parte 01
25
Figura 13: Diagrama de Gantt - Parte 02
26
Figura 14: Diagrama de Gantt - Parte 03
27
Figura 15: Diagrama de Gantt - Parte 04
28
Figura 16: Diagrama de Gantt - Parte 05
Para acesso em melhor qualidade, o diagrama em PDF pode ser acessado em
<​https://drive.google.com/file/d/1pBoFCMoTfHOEUgXZbPB-Y61_Dp44nx-K/view?usp=shari
ng​> ou em PNG acessando em
<​https://drive.google.com/file/d/1_YWWkZKCC-JvpaZliaw2rjn786_WXYrm/view?usp=sharin
g​>.
29

Recomendados

Plano de Projeto de Software para produtos da Lacertae SW por
Plano de Projeto de Software para produtos da Lacertae SWPlano de Projeto de Software para produtos da Lacertae SW
Plano de Projeto de Software para produtos da Lacertae SWrafahreis
304 visualizações26 slides
Plano de Projeto - Grupo Ajax por
Plano de Projeto - Grupo AjaxPlano de Projeto - Grupo Ajax
Plano de Projeto - Grupo AjaxPre Amadeus
403 visualizações34 slides
Plano projeto(final) por
Plano projeto(final)Plano projeto(final)
Plano projeto(final)Raul Vilar
42 visualizações17 slides
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW por
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWLays Lopes
647 visualizações25 slides
Plano de Projeto SGS por
Plano de Projeto SGSPlano de Projeto SGS
Plano de Projeto SGSRodrigo Azevedo
845 visualizações15 slides
INTERFACE HOMEM-MÁQUINA VT- Construção de Interfaces por
INTERFACE HOMEM-MÁQUINA VT- Construção de Interfaces INTERFACE HOMEM-MÁQUINA VT- Construção de Interfaces
INTERFACE HOMEM-MÁQUINA VT- Construção de Interfaces Diogo Rocha Ferreira de Menezes
670 visualizações22 slides

Mais conteúdo relacionado

Mais procurados

Resumo Sobre Análise de Pontos de Função por
Resumo Sobre Análise de Pontos de FunçãoResumo Sobre Análise de Pontos de Função
Resumo Sobre Análise de Pontos de FunçãoGustavo Adolfo Alencar
2.4K visualizações3 slides
Medida de Esforço de Software com Análise de Ponto de Função por
Medida de Esforço de Software com Análise de Ponto de FunçãoMedida de Esforço de Software com Análise de Ponto de Função
Medida de Esforço de Software com Análise de Ponto de FunçãoÁlvaro Farias Pinheiro
5.9K visualizações60 slides
Mps.br guia geral_software_2012-c-isbn-1 por
Mps.br guia geral_software_2012-c-isbn-1Mps.br guia geral_software_2012-c-isbn-1
Mps.br guia geral_software_2012-c-isbn-1Diego Dos Anjos
186 visualizações59 slides
Especificação de requisitos por
Especificação de requisitosEspecificação de requisitos
Especificação de requisitosFernando Palma
74.5K visualizações8 slides
Documento de requisitos_-_especificacoes 01 por
Documento de requisitos_-_especificacoes 01Documento de requisitos_-_especificacoes 01
Documento de requisitos_-_especificacoes 01gtiprotec
1.7K visualizações15 slides
Modelo de estrutura_do_plano_de_gerencia por
Modelo de estrutura_do_plano_de_gerenciaModelo de estrutura_do_plano_de_gerencia
Modelo de estrutura_do_plano_de_gerenciaJacqueline Morais
19 visualizações25 slides

Mais procurados(13)

Resumo Sobre Análise de Pontos de Função por Gustavo Adolfo Alencar
Resumo Sobre Análise de Pontos de FunçãoResumo Sobre Análise de Pontos de Função
Resumo Sobre Análise de Pontos de Função
Gustavo Adolfo Alencar2.4K visualizações
Medida de Esforço de Software com Análise de Ponto de Função por Álvaro Farias Pinheiro
Medida de Esforço de Software com Análise de Ponto de FunçãoMedida de Esforço de Software com Análise de Ponto de Função
Medida de Esforço de Software com Análise de Ponto de Função
Álvaro Farias Pinheiro5.9K visualizações
Mps.br guia geral_software_2012-c-isbn-1 por Diego Dos Anjos
Mps.br guia geral_software_2012-c-isbn-1Mps.br guia geral_software_2012-c-isbn-1
Mps.br guia geral_software_2012-c-isbn-1
Diego Dos Anjos186 visualizações
Especificação de requisitos por Fernando Palma
Especificação de requisitosEspecificação de requisitos
Especificação de requisitos
Fernando Palma74.5K visualizações
Documento de requisitos_-_especificacoes 01 por gtiprotec
Documento de requisitos_-_especificacoes 01Documento de requisitos_-_especificacoes 01
Documento de requisitos_-_especificacoes 01
gtiprotec1.7K visualizações
Modelo de estrutura_do_plano_de_gerencia por Jacqueline Morais
Modelo de estrutura_do_plano_de_gerenciaModelo de estrutura_do_plano_de_gerencia
Modelo de estrutura_do_plano_de_gerencia
Jacqueline Morais19 visualizações
Analise de Requisitos por elliando dias
Analise de RequisitosAnalise de Requisitos
Analise de Requisitos
elliando dias9K visualizações
Tcc - Work control por Amanda Ivy Costa
Tcc - Work controlTcc - Work control
Tcc - Work control
Amanda Ivy Costa452 visualizações
Estimativa de software usando pontos de função por Claudio Martins
Estimativa de software usando pontos de funçãoEstimativa de software usando pontos de função
Estimativa de software usando pontos de função
Claudio Martins26K visualizações
01. dinamus-plano-completo-de-gerenciamento-do-projeto1 por Marcelo Aires
01. dinamus-plano-completo-de-gerenciamento-do-projeto101. dinamus-plano-completo-de-gerenciamento-do-projeto1
01. dinamus-plano-completo-de-gerenciamento-do-projeto1
Marcelo Aires92 visualizações
Exemplo de Plano de testes por Leandro Rodrigues
Exemplo de Plano de testes Exemplo de Plano de testes
Exemplo de Plano de testes
Leandro Rodrigues46.1K visualizações
Cepra metrologia por Ana Maria Loreto
Cepra metrologiaCepra metrologia
Cepra metrologia
Ana Maria Loreto1.7K visualizações
Fundamentos APF por humberthomattar
Fundamentos APFFundamentos APF
Fundamentos APF
humberthomattar9K visualizações

Similar a Plano de Projeto - OUTLAY

PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW por
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWInstituto Federal de Sergipe
750 visualizações19 slides
Plano de Projeto de Software do​ Residents Control por
Plano de Projeto de Software do​ Residents ControlPlano de Projeto de Software do​ Residents Control
Plano de Projeto de Software do​ Residents Controlazarael2607
1K visualizações29 slides
Plano de projeto por
Plano de projetoPlano de projeto
Plano de projetoAntonio Carlos Jr.
438 visualizações34 slides
Modelo plano projeto de sw oo por
Modelo plano projeto de sw ooModelo plano projeto de sw oo
Modelo plano projeto de sw oofrancy Mascarenhas
78 visualizações27 slides
Plano do projeto de software por
Plano do projeto de softwarePlano do projeto de software
Plano do projeto de softwareDanilo Gois
1K visualizações25 slides
Plano de projeto - Gerência de Projetos por
Plano de projeto - Gerência de ProjetosPlano de projeto - Gerência de Projetos
Plano de projeto - Gerência de ProjetosJ. Eurique C. Ribeiro Junior
122 visualizações23 slides

Similar a Plano de Projeto - OUTLAY(20)

PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW por Instituto Federal de Sergipe
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
Instituto Federal de Sergipe750 visualizações
Plano de Projeto de Software do​ Residents Control por azarael2607
Plano de Projeto de Software do​ Residents ControlPlano de Projeto de Software do​ Residents Control
Plano de Projeto de Software do​ Residents Control
azarael26071K visualizações
Plano de projeto por Antonio Carlos Jr.
Plano de projetoPlano de projeto
Plano de projeto
Antonio Carlos Jr.438 visualizações
Modelo plano projeto de sw oo por francy Mascarenhas
Modelo plano projeto de sw ooModelo plano projeto de sw oo
Modelo plano projeto de sw oo
francy Mascarenhas78 visualizações
Plano do projeto de software por Danilo Gois
Plano do projeto de softwarePlano do projeto de software
Plano do projeto de software
Danilo Gois1K visualizações
Plano de Projeto de Software NutriBR por affonsosouza
Plano de Projeto de Software NutriBRPlano de Projeto de Software NutriBR
Plano de Projeto de Software NutriBR
affonsosouza678 visualizações
plano_de_projeto_controlart_final por userrx
plano_de_projeto_controlart_finalplano_de_projeto_controlart_final
plano_de_projeto_controlart_final
userrx779 visualizações
Metodologia de desenvolvimento de sistemas por Priscila Stuani
Metodologia  de desenvolvimento de sistemasMetodologia  de desenvolvimento de sistemas
Metodologia de desenvolvimento de sistemas
Priscila Stuani3.7K visualizações
plano_de_projeto_controlart_rascunho por userrx
plano_de_projeto_controlart_rascunhoplano_de_projeto_controlart_rascunho
plano_de_projeto_controlart_rascunho
userrx690 visualizações
Prodemge WTQS - Minicurso técnicas de verificação de requisitos por Gustavo Lopes
Prodemge WTQS - Minicurso técnicas de verificação de requisitosProdemge WTQS - Minicurso técnicas de verificação de requisitos
Prodemge WTQS - Minicurso técnicas de verificação de requisitos
Gustavo Lopes594 visualizações
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW por Matheus Costa
PLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SWPLANO DE PROJETO DE SOFTWARE  para produtos da Lacertae SW
PLANO DE PROJETO DE SOFTWARE para produtos da Lacertae SW
Matheus Costa1K visualizações
Plano do projeto de software SIGEM - Sistema de gestão de materiais por Marcos Pessoa
Plano do projeto de software SIGEM - Sistema de gestão de materiaisPlano do projeto de software SIGEM - Sistema de gestão de materiais
Plano do projeto de software SIGEM - Sistema de gestão de materiais
Marcos Pessoa3K visualizações
Plano de projeto cafis por Jonathas Silva
Plano de projeto cafisPlano de projeto cafis
Plano de projeto cafis
Jonathas Silva426 visualizações
Software para Gerência de Projetos baseado em Metodologias Ágeis [Relatório T... por Anderson Kanegae Soares Rocha
Software para Gerência de Projetos baseado em Metodologias Ágeis [Relatório T...Software para Gerência de Projetos baseado em Metodologias Ágeis [Relatório T...
Software para Gerência de Projetos baseado em Metodologias Ágeis [Relatório T...
Anderson Kanegae Soares Rocha125 visualizações
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2 por Urique Hoffmann
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Projeto de Software - PIC Eletrônico - Gerência de Projetos UFAM 2012/2
Urique Hoffmann827 visualizações
requisitos de software.pptx por AlanCunha14
requisitos de software.pptxrequisitos de software.pptx
requisitos de software.pptx
AlanCunha141 visão
Projeto de sw revisado por Jorge Barreto
Projeto de sw revisadoProjeto de sw revisado
Projeto de sw revisado
Jorge Barreto320 visualizações
Plano de projeto de software - SISCONI por ocfelipe
Plano de projeto de software - SISCONIPlano de projeto de software - SISCONI
Plano de projeto de software - SISCONI
ocfelipe945 visualizações
Gp 2014.2 apresentação 02-plano de projeto modificado por Gladismery Poetisa Poética
Gp 2014.2 apresentação 02-plano de projeto modificadoGp 2014.2 apresentação 02-plano de projeto modificado
Gp 2014.2 apresentação 02-plano de projeto modificado
Gladismery Poetisa Poética387 visualizações

Último

QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen... por
QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...
QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...Prime Assessoria
6 visualizações2 slides
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdf por
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdfATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdf
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdfPrime Assessoria
10 visualizações4 slides
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p... por
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...PrimeEducacional
24 visualizações2 slides
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES) por
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)Danillo Luziano
7 visualizações15 slides
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi... por
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...PrimeEducacional
9 visualizações3 slides
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023 por
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023AaAssessoriadll
8 visualizações2 slides

Último(6)

QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen... por Prime Assessoria
QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...
QUESTÃO 2 Quando se aumenta a temperatura de uma bara metálica, seu comprimen...
Prime Assessoria6 visualizações
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdf por Prime Assessoria
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdfATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdf
ATIVIDADE 3 - CIÊNCIAS DO AMBIENTE - 542023.pdf
Prime Assessoria10 visualizações
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p... por PrimeEducacional
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...
- Cite as cinco categorias de conteúdos de atividades de lazer apresentados p...
PrimeEducacional24 visualizações
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES) por Danillo Luziano
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)
APN - HALV STAK REWARDS - HALVING COIN (PORTUGUES)
Danillo Luziano7 visualizações
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi... por PrimeEducacional
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
PrimeEducacional9 visualizações
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023 por AaAssessoriadll
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023
ATIVIDADE 1 - DESIGN EDUCACIONAL E INOVAÇÕES - 54/2023
AaAssessoriadll8 visualizações

Plano de Projeto - OUTLAY

  • 1. Universidade Federal de Sergipe Centro de Ciências Exatas e Tecnologia/CCET Departamento de Computação/DCOMP Disciplina Gerência de Projetos Prof.º Dr.º Rogério Patrício Chagas do Nascimento Aplicativo OUTLAY Plano de Projeto de Software Ivan Gomes Ferreira Junior João Paulo Souza Prado Jocelino Alves Pereira Neto Vicente José Santiago Costa Oliveira São Cristóvão - SE Fevereiro 2020 1
  • 2. Universidade Federal de Sergipe Centro de Ciências Exatas e Tecnologia/CCET Departamento de Computação/DCOMP Disciplina Gerências de Projetos Prof.º Dr.º Rogério Patrício Chagas do Nascimento Aplicativo OUTLAY Plano de Projeto de Software Plano de Projeto de Software desenvolvido na disciplina de Gerência de Projetos para obtenção de nota. São Cristóvão - SE Fevereiro 2020 2
  • 3. Sumário 1. INTRODUÇÃO 4 1.1. Âmbito do Projeto 4 1.2. Funções principais do produto de software 4 1.3. Requisitos Comportamentais ou de Performance 11 1.4. Gestão e Restrições Técnicas 13 2. ESTIMAÇÕES DO PROJETO 14 2.1. Técnicas de Estimativas e Resultados 14 2.2. Recursos do projeto 16 3. ANÁLISE E GESTÃO DE RISCOS 17 3.1. Riscos do projeto 17 3.2. Redução e Gestão de Riscos 18 4. PLANEJAMENTO TEMPORAL 21 4.1. Conjunto de tarefas do projeto 4.2. Diagrama de Gantt 22 5. ORGANIZAÇÃO DA EQUIPE 23 5.1. Estrutura da equipe 23 5.2. Mecanismos de comunicação 24 5.3. Uso do Edu-Blog como ferramenta de apoio 24 5.4. Ferramentas de gestão do projeto 25 6. PRECAUÇÕES TOMADAS PARA ASSEGURAR E CONTROLAR A QUALIDADE DO PRODUTO DE SOFTWARE 25 7. REFERÊNCIAS 26 8. APÊNDICE 1 - DIAGRAMA DE GANTT DO PROJETO DE SOFTWARE 26 3
  • 4. 1. INTRODUÇÃO O objetivo deste documento é descrever uma visão geral do plano de projeto de software do aplicativo Outlay. Como o nome sugere, trata-se de um aplicativo cujo objetivo é fornecer ao usuário ferramentas para o gerenciamento de suas finanças. Este plano apresenta abordagens de gestão de projetos e da engenharia de software, como os requisitos funcionais, não-funcionais e domínio, casos de uso e stakeholders. 1.1. Âmbito do Projeto O aplicativo Outlay tem como público alvo pessoas que gostam ou querem fazer um controle melhor das suas finanças. Para tanto, entre outras funcionalidades, a aplicação disponibiliza ao usuário 'carteiras', nas quais se registram informações como saldo, despesas e histórico de atividades, e acontecem operações relativas ao tratamento desses dados. 1.2. Funções principais do produto de software Nesta seção serão listados as principais funcionalidades do Projeto Outlay através do diagrama de caso de uso, lista de requisitos funcionais e modelo conceitual. Figura 1: Diagrama de caso de uso - categoria Fonte: Próprios autores 4
  • 5. Figura 2: Diagrama de caso de uso - Cadastro/Login Fonte: Próprios autores Figura 3: Diagrama de caso de uso - Lançamento Futuros Fonte: Próprios autores 5
  • 6. Figura 4: Diagrama de caso de uso - Gerar Relatório Fonte: Próprios autores Figura 5: Diagrama de caso de uso - CRUD Receita Fonte: Próprios autores 6
  • 7. Figura 6: Diagrama de caso de uso - CRUD Meta de economia Fonte: Próprios autores Figura 7: Diagrama de caso de uso - CRUD Carteira Fonte: Próprios autores 7
  • 8. Figura 8: Diagrama de caso de uso - Alterar Cadastro Fonte: Próprios autores Figura 9: Diagrama de caso de uso - CRUD Despesas Fonte: Próprios autores 8
  • 9. Figura 10: Modelo Conceitual Fonte: Próprios autores Com base no modelo conceitual na tabela 1 é descrito as principais funcionalidades do software. Tabela 1: Descrição dos requisitos funcionais Requisito Descrição RF01 O Visitante deve poder realizar o seu cadastro como usuário. RF02 Usuário poderá atualizar o seu cadastro. RF03 Usuário deve poder cadastrar suas dívidas. RF04 O Usuário deve poder atualizar suas despesas. 9
  • 10. RF05 O Usuário deve poder cadastrar sua receita(valor do dinheiro disponível). RF06 O usuário deve poder atualizar seu saldo disponível. RF07 Deve haver o campo “Lançamentos Futuros”, que registra rendas e despesas futuras. RF08 O app deve permitir a geração de relatórios, quando requerida pelo usuário. RF09 O app deve permitir a criação de categorias de receitas e despesas. RF10 O app deve permitir verificar rendimentos de valor em poupança RF11 O app deve permitir gerir gastos por categorias(tags). RF12 O software deve permitir registro de contas a pagar, incluindo data de pagamento/vencimento. RF13 O app deve alertar sobre vencimentos de contas. RF14 O usuário deve poder imprimir os relatórios. RF15 O usuário deve manter sua(s) carteira(s). RF16 O usuário pode favoritar transações recorrentes. RF17 O app deve permitir a visualização da receita total (por mês/por ano). RF18 O app deve permitir a visualização da despesa total (por mês/por ano). RF19 O usuário pode gerenciar metas de economia. 1.3. Requisitos Comportamentais ou de Performance Nesta seção estão descritos os requisitos não funcionais do sistema, sendo relacionados ao uso da aplicação em termos de desempenho, usabilidade, confiabilidade, segurança, disponibilidade, manutenção e tecnologias envolvidas. Estes requisitos dizem respeito a como as funcionalidades serão entregues ao usuário do software. 1.3.1. Usabilidade Esse grupo de requisitos estão relacionados com a facilidade com os usuários podem empregar ao fazer uso do software para realizar uma tarefa. 10
  • 11. Tabela 2: Requisitos Não Funcionais de Usabilidade Requisito Descrição RNF01 O usuário deve conseguir encontrar um função do aplicativo em até 20 segundos. RNF02 Possuir recurso de acessibilidade. RNF03 Possuir mecanismos de ajuda com explicação passo a passo. 1.3.2. Confiabilidade Refere-se à frequência de ocorrência de falhas e recuperabilidade em caso de falha. Tabela 3: Requisitos Não Funcionais de Confiabilidade Requisito Descrição RNF01 Os dados presentes no dashboard devem estar sempre atualizados. RNF02 O sistema deverá ter histórico de eventos que registra todas as operações realizadas (logs). RNF03 O aplicativo deve ter função que funciona meio como uma função alarmante(o usuário informa a média de que pode gastar no período e com base nisso o sistema retornará a situação em que ele se encontra). 1.3.3. Performance Referem-se ao desempenho do sistema e estão associados à eficiência, uso de recursos e tempo de resposta da aplicação, como: transações processadas/segundo; tempo de resposta do usuário/evento, entre outros. Tabela 4: Requisitos Não Funcionais de Performance Requisito Descrição RNF01 Ter capacidade para mais de 5 acessos simultâneos. RNF02 A emissão do relatório deverá ficar disponível para o usuário em até 10s. 11
  • 12. 1.3.4. Suportabilidade Este grupo de requisitos estão relacionados a facilidade de alterações no sistema após a implantação, incluindo os aspectos de adaptabilidade, manutenibilidade e internacionalização. Tabela 5: Requisitos Não Funcionais de Suportabilidade Requisito Descrição RNF01 Testes de Unidade e de Aceitação deverão ser completamente automatizados. RNF02 Integração com o Internet bank. RNF03 Possuir documentação e clareza no código. 1.3.5. Segurança Esse grupo refere-se aos requisitos associados à integridade, privacidade e autenticidade dos dados. Tabela 6: Requisitos Não Funcionais de Segurança Requisito Descrição RNF01 O sistema deve prover controle de acesso para visualizar e manter custos e carteira. RNF02 O armazenamento dos dados do usuário deve ser seguro e restrito, só poderão ser divulgados e consultados com a devida autorização. RNF03 As informações divulgadas no dashboard para o público externo não podem conter dados pessoais dos usuários, apenas dados gerais. 1.4. Gestão e Restrições Técnicas A equipe de desenvolvimento do projeto será composta por alunos dos cursos de graduação do Departamento de Computação da Universidade Federal de Sergipe, que passarão por um processo de seleção podendo ter pouca ou média experiência com desenvolvimento de software. As restrições técnicas associadas ao desenvolvimento do projeto são: 12
  • 13. 1. Desenvolvimento do aplicativo deverá usar a linguagem JavaScript com framework ReactNative para o mobile, React.Js para plataforma web, e Node.js para o back-end. Porém a utilização de Flutter pode ser negociada. 2. Utilização do banco de dados não relacional MongoDB. Este projeto será desenvolvido baseado no modelo de desenvolvimento iterativo-incremental, ou seja, deve ser entregue um componente funcional ao final de cada etapa do processo de desenvolvimento para testes e validação com o cliente. O gerenciamento da equipe será feito seguindo uma metodologia ágil, o Scrum, que foi escolhido pela equipe. 2. ESTIMAÇÕES DO PROJETO Utilizamos a métrica orientada a classe de Lorenz & Kidds para fazer a estimação do projeto, pois é uma boa métrica quando as classes podem ser bem definidas. Essa métrica indica pelos seus cálculos uma número definido para o esforço, tempo e custo do projeto. 2.1. Técnicas de Estimativas e Resultados Nessa subseção está o passo-a-passo da técnicas de estimativas e o seu resultado no projeto. 2.1.1. Técnicas de Estimativas Olhando o modelo conceitual(na Figura 10) podemos encontrar os dados necessários para fazer a métrica de Lorenz & Kidds(1994). ● Encontrando o número de classes-chaves(são as que fazem parte do domínio do problema). ● Com isso podemos calcular número das classes de suporte (não ajudam a resolver o problema mas dão suporte as classes-chave) necessárias de acordo com a Tabela 2, usa-se o cálculo classes-chave*multiplicador = classes-suporte. Interface Multiplicador Não gráfica 2 Baseada em texto 2,25 GUI 2,5 GUI Complexa 3 Tabela 7: Multiplicador de classe suporte de Lorenz & Kidds(1994) ● Com o números de classes-chave e números de classes de suporte, encontramos o números de classes totais que é a soma desses dois. 13
  • 14. ● Então, o valor de classe totais são multiplicados pelo número médio de unidades de trabalho(dias-pessoas) por classe. Lorenz & Kidds(1994) sugerem entre 15-20 dias-pessoas por classe, a escolha deve ser feita de acordo com a capacidade da equipe. ● Com isso se determina o esforço necessário para se realizar o projeto. ● Então, se separa o esforço entre a equipe que irá trabalhar nele. 2.1.2. Resultados Seguindo as etapas descritas acima temos os resultados: ● Temos ​9 classes-chaves: Login, Usuario, Carteira, Receita, Despesa, Meta de Economia, Categoria de Entradas, Relatórios, Lançamentos Futuros. ● Como utilizaremos GUI usaremos o multiplicador 2,5 de acordo com a Tabela 2, nesse caso, temos 9 * 2,5 = 22,5 classes de suporte. ● Então, 22,5 + 9 = 31,5 como número total de classes. ● Nós decidimos escolher 19 como o número médio de unidades de trabalho, pois queríamos dar um tempo a mais para os desenvolvedores aprenderem a se adaptar ao projeto, logo ficaria 31,5 * 19 = 532 dias-pessoas. ● Lembrando que o mês tem 22 dias úteis com 8 horas diárias, para encontrar os dias corridos irei fazer esses cálculos: 532 / 22 = 24,18 meses corridos. ● Com uma equipe de 5 pessoas o tempo poderia ser dividido para: 24,18 / 5 = 4,83 ou 4 meses e 18,26 dias no total(aproximadamente 106,3 dias corridos) Usando a distribuição dos dias de trabalho para as etapas do projeto ficaria assim: Modelo %Modelo %Projeto Cálculo Dias Trabalho Planejamento 2-3% 3% 106,3*3% =3,2 Requisitos Análise-Desenho 40% 40% 106,3*40% =42,5 Geração de Código 20% 20% 106,3*20% =21,3 Testes 37-38% 37% 106,3*37% =39,3 Total =106,3 Tabela 8: Distribuição dos dias de trabalho entre as etapas 14
  • 15. 2.2. Recursos do projeto Os recursos utilizados neste projeto serão: humanos, hardware e software. 2.2.1. Recursos Humanos O projeto será feito por 5 pessoas e será dividido da seguinte forma: Cargo Responsável Gerente de Projeto Vicente Analista de Sistemas Ivan Analista de Testes Jocelino Programador João Paulo Ivan Vicente Testador João Paulo Jocelino Vicente Tabela 9: Separação das funções dos membros do projeto 2.2.2. Recursos de Software ● JavaScript, linguagem escolhida para escrever o projeto. ● React Native, como framework para o desenvolvimento do aplicativo mobile. ● React.Js, como plataforma para construção em web. ● Node.js, para o desenvolvimento do back-end. ● Flutter, como um possível framework para o desenvolvimento. ● MongoDB, como escolha do banco de dados do projeto. 2.2.3. Recursos de Hardware Serão utilizados os PCs pessoais de cada desenvolvedor para realizar o projeto. 3. ANÁLISE E GESTÃO DE RISCOS 15
  • 16. A gestão de riscos é uma atividade que propicia a atuação da organização de forma preventiva, suprimindo prejuízos de natureza humana ou material. Com esta gestão é possível selecionar opções para quando os riscos realmente ocorrerem, avaliando a probabilidade de ocorrência e estimar o impacto destas incertezas. 3.1. Riscos do projeto Na Tabela a 10, estão listados os riscos, sua probabilidade estimativa para ocorrer e seus impacto no projeto com sua descrição. Todas estas informações foram frutos de um ​brainstorm em sala de aula, auxiliados por uma análise circular. Com isso, também foram definidos os pontos de corte. Risco Categoria Impacto % Probabilidade Descrição 004 Tecnologia Catastrófico 30% Perda de informação no banco de dados 006 Equipe Catastrófico 50% Não definição de tecnologias 008 Cliente Catastrófico 30% Problema na definição de requisitos 002 Equipe Crítico 50% Prazos de entrega muito curto 003 Cliente Crítico 50% Cliente não participou das validações do projeto 005 Tecnologia Crítico 50% Falha ao integrar com APIs de câmbio 009 Tecnologia s Crítico 60% Não conexão com internet banking Ponto de corte 001 Equipe Marginal 75% Desistência de membro da equipe 010 Tamanho Marginal 30% Evolução do projeto 011 Equipe Marginal 30% Rotatividade da equipe 012 Negócio Crítico 20% Usabilidade de usuário 013 Negócio Crítico 70% Expectativas não satisfeitas 014 Negócio Marginal 50% Conhecimento prévio escasso dos usuários finais 16
  • 17. Tabela 10: Riscos do projeto e pontos de corte 3.2. Redução e Gestão de Riscos Risco: 002 Probabilidade: 50% Impacto: Crítico Descrição: prazos de entrega muito curto para a rotina da equipe de desenvolvimento. Estratégia de Redução: negociar prazos adaptados para a equipe; melhorar o planejamento para cada entrega; utilizar de reutilização de funcionalidades. Plano de contingência: realizar as atividades com maior prioridade; aumentar a carga de trabalho. Responsável: Gerente de Projetos. Status: Concluído. Tabela 11: Riscos do projeto 002 Risco: 003 Probabilidade: 50% Impacto: Crítico Descrição: cliente não participou das validações do projeto Estratégia de Redução: guardar e registrar cada reunião com os stakeholders. Plano de contingência: solicitar ao cliente alguém de confiança e com conhecimentos sólidos sobre a aplicação, possivelmente um ​Product Owner​. Responsável: Analista de Sistemas. Status: Concluído. Tabela 12: Riscos do projeto 003 Risco: 004 Probabilidade: 30% Impacto: Catastrófico Descrição: perda de informações no banco de dados Estratégia de Redução: realizar redundâncias de dados em servidores, além do uso de ​clusters com backups de todas as transações no banco, para em caso de defeito em um servidor utilizar de outros já disponíveis. Plano de contingência: realizar backups diários as informações, possuindo 17
  • 18. redundâncias das informações que possuem mais solicitações. Responsável: Analista de Testes. Status: Concluído. Tabela 13: Riscos do projeto 004 Risco: 005 Probabilidade: 50% Impacto: Crítico Descrição: falha ao integrar com APIs de câmbio Estratégia de Redução: pesquisa sobre APIs proprietárias que retornam as informações de câmbio. Plano de contingência: desenvolver um web crawler que captura informações de sites proprietários sobre o câmbio. Responsável: Analista de sistemas e Programadores. Status: Em andamento. Tabela 14: Riscos do projeto 005 Risco: 006 Probabilidade: 50% Impacto: Catastrófico Descrição: não definição de tecnologias para a aplicação, ocasionando problemas de desperdício de tempo com tecnologias não bem utilizadas. Estratégia de Redução: A pesquisa e o teste de cada tecnologia para desenvolvimento, além de listagem de prós e contras sobre cada tecnologia em buscas em outros projetos consolidados. Plano de contingência: reutilizar módulos disponíveis na Internet para acelerar o processo de desenvolvimento. Responsável: Analista de sistemas Status: Concluído. Tabela 15: Riscos do projeto 006 Risco: 008 Probabilidade: 30% Impacto: Catastrófico Descrição: problema na definição de requisitos Estratégia de Redução: retirar as dúvidas referentes aos requisitos em reuniões frequentes com o cliente para que erros não ocorram e estudar como funcionam os processos com aplicações financeiras. Plano de contingência: contratar consultoria de finanças para auxiliar nos processos financeiros que não estão corretos, além de trazer o cliente para 18
  • 19. um acompanhamento mais próximo em cada entrega. Responsável: Analista de Sistema. Status: Em andamento. Tabela 16: Riscos do projeto 008 Risco: 009 Probabilidade: 60% Impacto: Crítico Descrição: não conexão com internet banking, impossibilitando integração com informações de gastos e entradas com cartões Estratégia de Redução: entrar em contato com bancos permitem o uso de informações do internet banking para o gerenciamento de gastos utilizando seus cartões e contas bancárias. Plano de contingência: permitir o usuário de listar cada cartão e os gastos e receitas manualmente, separados por categorias de banco. Responsável: Analista de Testes. Status: Em andamento. Tabela 17: Riscos do projeto 009 Risco: 012 Probabilidade: 20% Impacto: Crítico Descrição: Usabilidade de usuário pode prejudicar a utilização do aplicativo Estratégia de Redução: implementação de testes A/B com usuários que estão qualificados na persona do projeto. Plano de contingência: adoção de réplica da aparência de outras aplicações, utilizando da aparência de recursos já conhecidos e bem aceitos. Responsável: Analista de testes e Testadores Status: Em andamento. Tabela 18: Riscos do projeto 012 Risco: 013 Probabilidade: 70% Impacto: Crítico Descrição: expectativas não satisfeitas com o produto para o stakeholder Estratégia de Redução: verificar a cada interação sobre quais as expectativas do cliente e separar por prioridades de requisitos. Plano de contingência: buscar redução dos problemas no período de manutenção do software. 19
  • 20. Responsável: Gerente de Projetos. Status: Em andamento. Tabela 19: Riscos do projeto 013 4. PLANEJAMENTO TEMPORAL 4.1. CONJUNTO DE TAREFAS DO PROJETO O projeto ​Outlay se baseia em desenvolvimento baseado no modelo iterativo-incremental, no qual as atividades são realizadas sequencialmente, e com melhorias gradativas em atividades menores, ou atividades incrementais. Este projeto pretende ser realizado em 115 dias (5 meses e 3 dias), utilizando o modelo de tempo a seguir, tendo alguns espaços sem desenvolvimento Tarefas Porcentagem (%) Tempo - dias de trabalho Planejamento e Análise de Requisitos 40% 42 dias Codificação 20% 23.3 dias Testes/Implementação 40% 42 dias Total 100% 106.3 dias Tabela 20: Tempo estimado para tarefas do projeto A seguir temos um apanhado sobre as etapas do processo: 4.1.1. Planejamento e Análise de Requisitos Esta etapa está dividida pelas etapas de: Abertura do Projeto, Definição do escopo, Reuniões com os clientes, Levantamento de requisitos, Refinamento dos requisitos, Análise dos requisitos, Criação do plano de projeto, Análise e gestão de riscos, Projeto de arquitetura e Ajustes no plano de projeto, onde cada uma destas etapas lida com o planejamento e a análise e refinamento dos requisitos. Nesta etapa o Analista de Sistemas e o Gerente de Projetos definem as atividades e verifica os requisitos, para o Analista de Testes definir os testes e os padrões do projeto. 20
  • 21. 4.1.2. Codificação Nesta etapa a equipe de programadores e o analista de sistemas define a arquitetura e o ambiente em que a aplicação será executada. Além disso, é realizada a cada ciclo de codificação as tarefas de implementação de funcionalidades descritas nos requisitos funcionais e não funcionais, além de seguir os casos de uso descritos. 4.1.3. Testes e Implementação A equipe de testes, acompanhado pelo analista de testes realizam os testes programados pelo analista no primeiro ciclo do projeto, na etapa de planejamento e análise de requisitos. É importante frisar que, no início de cada ciclo de codificação, testes unitários são escritos para garantir a integridade das funcionalidades. Após o período de testes, a equipe estará focada em integrar o ambiente de desenvolvimento para o ambiente de produção, além de passar o treinamento para os clientes. 4.2. DIAGRAMA DE GANTT As atividades ao longo do processo são descritas no diagrama de gantt, encontrado no apêndice 1 deste documento. 5. ORGANIZAÇÃO DA EQUIPE 5.1. ESTRUTURA DA EQUIPE A tabela a seguir apresenta a composição da equipe e os papéis designados para cada integrante, bem como uma breve descrição das atribuições de cada função. Cargo Responsável Descrição Gerente de projeto Vicente José Santiago Costa Oliveira É o responsável pela elaboração do projeto, planejamento e revisão. Além de controlar a execução dos processos a fim de indicar o melhor caminho para toda a equipe. 21
  • 22. Analista de sistemas Ivan Gomes Ferreira Junior Esse profissional deve atuar no levantamento dos requisitos do sistema, regras de negócio, modelagem do banco, dados e arquitetura do projeto. Analista de testes Jocelino Alves Pereira Neto Responsável por elaborar e traçar os diversos tipos de teste no projeto. Avaliar e expor os resultados dos testes para toda a equipe. Desenvolvedor Ivan Gomes Ferreira Junior O desenvolvedor tem como responsabilidade todo o desenvolvimento e codificação do sistema, bem como manutenções e correções providas dos testes. Testador João Paulo Souza Prado Jocelino Alves Pereira Neto Vicente José Santiago Costa Oliveira Esse profissional é responsável por codificar os casos de testes elaborados pelo analista, avaliar a cobertura do código e alertar a equipe desenvolvimento sobre as devidas correções. Tabela 21: Estrutura da equipe 5.2 MECANISMOS DE COMUNICAÇÃO A fim de manter uma comunicação ativa entre os integrantes da equipe e o monitoramento das atividades e andamento do projeto, algumas ferramentas foram vitais, como por exemplo, controle de versionamento, gerência de projetos, ferramentas case, entre outras. No quadro abaixo serão listadas as ferramentas utilizadas junto a uma breve descrição: Ferramenta Descrição WhatsApp Ferramenta mais utilizada para conversas rápidas e informais entre todos os membro da equipe. Pode ser utilizado via dispositivos mobile ou navegadores web. Google Drive A ferramenta permite a edição colaborativa e simultânea de arquivos e elaboração de 22
  • 23. documentos. Tabela 22: Ferramentas de comunicação utilizadas Vale citar que a equipe também contou com reuniões periódicas entre todos os integrantes na própria Universidade Federal de Sergipe. 5.3 USO DO EDU-BLOG COMO FERRAMENTA DE APOIO Alinhado com as ferramentas mencionadas acima, não podemos deixar de citar a ferramenta “Edu-blog”, um blog criado pelo Prof.º Dr.º Rogério Patrício Chagas do Nascimento, para a disciplina de Gerência de Projetos. No blog <http://gp-ufs.blogspot.com> é possível acompanhar todos os conteúdos abordados em sala de aula. Esses conteúdos contribuem para a formação de um projeto de software de qualidade. Além disso, um dos objetivos da disciplina gerência de projetos é fazer com que cada grupo de alunos torne-se responsável por abordar um tema em um blog. De maneira recorrente é incentivado que os alunos realizem postagens referentes a esses temas. Essa metodologia foi muito interessante para nós alunos, pois nos fez buscar novos conhecimentos e curiosidades a respeito dos temas para poder compartilhar com nossos colegas, e da mesma forma incentivar e conhecer os blog dos outros colegas da disciplina e de turmas anteriores da disciplina. 5.4 FERRAMENTAS DE GESTÃO DE PROJETO Para auxiliar no gerenciamento do aplicativo OUTLAY, algumas ferramentas para controle de reuniões e tarefas foram utilizadas, como mostra a tabela abaixo. Ferramenta Descrição Trello O trello é uma ferramenta que permite a organização de tarefas. O que há para ser feito, o que estão fazendo e o que já foi concluído, seguindo a metodologia do kanban. Github O GitHub é uma ferramenta de controle de versionamento de projetos, com ela é possível verificar alterações e adição de novas funcionalidades. SmartSheet É uma ferramenta online capaz de gerar diagramas e outros dashboards. No projeto foi utilizado para gerar o diagrama de gantt. Tabela 23: Ferramentas de gestão de projeto utilizadas 23
  • 24. 6. PRECAUÇÕES TOMADAS PARA ASSEGURAR E CONTROLAR A QUALIDADE DO PRODUTO DE SOFTWARE Para assegurar ao máximo a qualidade do nosso produto, foi necessário observar e seguir alguns caminhos “seguros” da qualidade de software. Alguns desses caminhos são mais óbvios. Como por exemplo, manter a documentação do produto sempre clara e atualizada. Permitindo que outros membros da equipe consigam de maneira prática entender as informações contidas no software. Outra prática aplicada no nosso projeto foram as reuniões constantes entre os membros da equipe, reuniões rápidas e objetivas. Onde cada membro colocava seus pontos, sugestões e dúvidas em questão, formando assim um grande debate democrático. Nessas reuniões a equipe se atualizava sobre os problemas encontrados e os avanços dos colegas, além de dialogar frequentemente com os clientes, tornando o desenvolvimento mais transparente e eficiente. Uma etapa relevante para a validação da qualidade foram os testes. Os testes devem ser feitos com atenção redobrada e sempre com um fim específico: encontrar erros. Dessa forma, a nossa equipe trabalhou com testes ao longo de todo o desenvolvimento do projeto a fim de garantir uma entrega consistente e livre de falhas. Utilizando o desenvolvimento de maneira incremental, aplicando técnicas de prototipação foi possível realizar a validação das fases junto aos clientes, garantindo satisfação e agilidade. 7. REFERÊNCIAS LORENZ, M.; KIDD, J. ​Object-Oriented Software Metrics.​ Prentice Hall, 1994. PRESSMAN, Roger; MAXIM, Bruce. ​Engenharia de Software: Uma abordagem Profissional. ​8ª Edição. Editora McGraw Hill Brasil, 2016. SOMMERVILLE, Ian. Engenharia de Software​. 8ª Edição. Editora Person Education, 2007. 24
  • 25. 8. APÊNDICE 1 - DIAGRAMA DE GANTT DO PROJETO DE SOFTWARE Figura 12: Diagrama de Gantt - Parte 01 25
  • 26. Figura 13: Diagrama de Gantt - Parte 02 26
  • 27. Figura 14: Diagrama de Gantt - Parte 03 27
  • 28. Figura 15: Diagrama de Gantt - Parte 04 28
  • 29. Figura 16: Diagrama de Gantt - Parte 05 Para acesso em melhor qualidade, o diagrama em PDF pode ser acessado em <​https://drive.google.com/file/d/1pBoFCMoTfHOEUgXZbPB-Y61_Dp44nx-K/view?usp=shari ng​> ou em PNG acessando em <​https://drive.google.com/file/d/1_YWWkZKCC-JvpaZliaw2rjn786_WXYrm/view?usp=sharin g​>. 29