Desafio | Escopo | Metodologia | MVP | Sprints | Backlog do Produto | Personas | Histórias de usuário | Equipe | Focal Point
Status do Projeto: Concluído! ✅
Desenvolver um Sistema Web para Controle de Ordens de Serviço (SOS) para automatizar o processo de informação de equipamentos com mau funcionamento de Hardware e Software. Para isto, criar um mapa de localização (Layout) e uma legenda com possíveis defeitos. Os desenvolvedores deverão através da experiência adquirida sinalizar esses defeitos e sugerir ao cliente possibilidades visuais dessas indicações. Mudanças de layout, nomenclatura do computador, características do hardware e software, bem como outras situações similares são funcionalidades que deverão ser contemplados no sistema. Bem como toda a documentação de desenvolvimento deverá ser lastreado no GitHub com todos os processos necessários para a fidelização do cliente.
Pré-requisitos:
Requisitos Funcionais
- Linguagem Python (Requisito Fatec)
- Linguagem HTML e CSS (Requisito Fatec)
- Uso do framework Bootstarp
- Apresentação via Github.
- O sistema web deverá ser intuitivo e não ter poluições de informações, isso deverá ser uma preocupação constante dos desenvolvedores sugestões de controles serão bem-vindas e bem avaliadas.
Requisitos Não Funcionais
- Github
O framework de Metodologia Ágil utilizado no produto foi o Scrum, um método ágil adaptativo, iterativo, flexível e eficaz. Este método possui os seguintes princípios norteadores:
- Controle empírico
- Auto organização
- Colaboração
- Priorização da criação de valor
- Time-boxing
- Desenvolvimento iterativo
Entre as ferramentas utilizadas no Scrum, uma é a divisão do projeto em Sprints. Para selecionar quais seriam as entregas do nossas Sprints, primeiro definimos nosso MVP, priorizando as tarefas que trariam maior entrega de valor para o cliente. Então, a partir das Tarefas foi construído o Backlog do Produto, o qual foi aprovado pelo cliente e dividido em 4 Backlog de Sprint.
Para embasar a tomada de decisão e priorizar as tarefas com maior entrega de valor, utilizamos a construção de Personas. Através delas, tivemos mais clareza sobre o direcionamento das nossas Histórias de Usuários. Traçadas as Tarefas, Personas e Histórias de Usuários, utilizamos a ferramenta de Planning Poker para definir a quantidade de tempo necessária para cada Tarefa e dividimos da maneira mais otimizada entre os Desenvolvedores do time.
A definição do nosso Minimal Viable Product (MVP) é uma versão sintética, porém funcional, de um sistema web para Controle de Ordens de Serviços. Nele o usuário poderá abrir um chamado para alertar um equipamento com mau funcionamento, no qual conterá as seguintes informações:
- Identificação do Laboratório
- Identificação do Computador
- Problema de Hardware ou Software
- Descrição do Problema
Este chamado será automaticamente gerado e organizado em uma tabela na qual o técnico terá acesso às informações fornecidas pelo usuário, bem como um número de identificação da Ordem de Serviço (OS) e dois botões:
- Um para apagar a OS;
- Outro para atualizar a OS.
A seguir um teste do MVP com a automatização dos dados sendo preenchidos, atualizados e apagados:
As instruções de como instalar e rodar a aplicação estão na documentação detalhada da Sprint 1.
🔖 SPRINT 1 (Link da Pasta): Concluído ✅
🔖 SPRINT 2 (Link da Pasta): Concluído ✅
🔖 SPRINT 3 (Link da Pasta): Concluído ✅
🔖 SPRINT 4 (Link da Pasta): Em construção ✅
Tarefa | Descrição | Histórias de Usuários | Prioridade | Sprint | Estimativa de Esforço | Status |
---|---|---|---|---|---|---|
Identificação dos computadores | Levantamento de quantos computadores existem nos laboratórios da Fatec e como eles estão distribuídos por laboratório | US01, US02 | Média | 1 | 4h | ✅ |
Página de abertura de chamados em HTML | Prototipagem e criação da página de abertura de chamados funcional e testável para possíveis problemas em HTML. Tópicos da página: Número do laboratório; Número do computador; Hardware ou Software. | US03 | Alta | 1 | 16h | ✅ |
Página de visualização dos chamados em HTML | Prototipagem e criação da página de visualização de chamados em HTML. Tópicos da página: Chamados abertos; Data dos chamados; Botão de conclusão dos chamados | US04 | Alta | 1 | 20h | ✅ |
Conexão das páginas no Flask | Conectar a página de abertura de chamado e de visualização de chamados utilizando o framework Flask. | US05 | Alta | 1 | 10h | ✅ |
Criação, aprovação e entrega do Wireframe | Criação do protótipo das páginas de abertura de chamado e visualização de chamado com base na identidade visual do cliente. | US06 | Média | 1 | 3h | ✅ |
Levantamento e listagem dos tipos de danos | Listagem dos hardware integrantes das máquinas dos laboratórios passíveis de erros e mau funcionamento . | US07 | Baixa | 2 | 3h | ✅ |
Inserção dos principais tipos de danos de hardware no sistema | Inserção dos principais tipos de danos no sistema contendo os problemas de hardware com maior probabilidade de ocorrência. | US07 | Alta | 2 | 9h | ✅ |
Criação da Modelagem Conceitual do Banco de Dados | Modelagem que descreva como os dados serão armazenados no banco e também seus relacionamentos. Esse modelo adota alguma tecnologia, pode ser: relacional, orientado a objetos, orientado a colunas, entre outros. | US08 | Alta | 2 | 8h | ✅ |
Criação do Esquema Conceitual através do Diagrama Estrutural de Entidade Relacionamento (DEER) | Elaboração do modelo de mais alto nível, ou seja, que esta mais próximo da realidade dos usuários. O nível conceitual é desenvolvido com alto nível de abstração, a partir dos requisitos do sistema, extraídos na fase de levantamento de requisitos. | US08 | Alta | 2 | 1h | ✅ |
Criação do Banco de Dados | Criação do Banco de Dados funcional baseado no esquema aprovado. | US20 | Alta | 2 | 13h | ✅ |
Funções de ligação da aplicação com o banco de dados | Criação de funções em Python que levem os dados preenchidos pelos usuários nos campos de abertura de chamado até o banco de dados, e assim salvem esses dados de uma maneira persistida. | US21 | Alta | 2 | 12h | ✅ |
Criação da área do Técnico | Criar uma área para o técnico administrar esses chamados recebidos com a entrada em ordem cronológica | US09 | Alta | 2 | 12h | ✅ |
Login simplificado para o técnico e diferenciação da interface dependendo de quem está utilizando | Possibilidade de criar usuários para o sistema de ordem de serviço para que os técnicos tenham uma maneira segura e privada de visualizar, deletar, procurar, filtrar e atualizar os chamados criados pelos usuários. | US09 | Alta | 2 | 9h | ✅ |
Implementar facilitações visuais | Utilização de cores, ícones e outras soluções gráficas que facilitem o entendimento das informações dos sistemas para os usuários que desejem utilizá-lo. | US17 | Baixa | 2 | 3h | ✅ |
Confirmação de solicitação enviada | Sinalizar ao usuário solicitante da abertura do chamado quando esse chamado tiver sido recebido pelo sistema. | US12 | Alta | 3 | 7h | ✅ |
Criação do layout de todos os laboratórios | Implementação de todos layouts dos laboratórios utilizando o levantamento feito em sprints anteriores. | US13, US14 | Alta | 3 | 20h | ✅ |
Tornar o layout dos laboratórios editável | Fazer com que o layout do laboratório possa ser editável em relação ao design e disposição de todos os itens: computadores, mesa, servidores e lousa. | US15, US22 | Alta | 3 | 13h | ✅ |
Possibilitar a edição das características das máquinas | Possibilitar que detalhes do computador sejam alterados e armazenados: processador, RAM e sistema operacional. | US23 | Alta | 3 | 10h | ✅ |
Conectar o Banco de Dados com o layout do laboratório e informações das máquinas | Criar funções para que o banco de dados consulte e persista o que o técnico salvar durante as edições de layout do laboratório, bem como as alterações das carecterísticas dos computadores. | US10 | Alta | 3 | 20h | ✅ |
Finalizar identificações visuais | Criar possibilidades visuais dessas indicações sinalizar esses defeitos e sugerir ao cliente. | US13 | Alta | 4 | 30h | ✅ |
Criação de uma página de contatos | Criar página de detalhamento da funcionalidade do sistema e uma página de contato | US17 | Baixa | 4 | 5h | ✅ |
Função de alteração do status do chamado na área do tecnico | Página home clicável com detalhamentos e página de contatos também clicável com os meios de contato (telefone e e-mail) | US18 | Média | 4 | 13h | ✅ |
Testes e correções | Testes em todas as funcionalidades do sistema para identificação e correção de qualquer possível erro. | Alta | 4 | 20h | ✅ |
Natália, 19 anos, estudante da Fatec de São José dos Campos |
---|
Natália estuda no período da manhã e, ocasionalmente, usa a biblioteca e o laboratório da Fatec durante a tarde para estudar e fazer os trabalhos. Como está em seu primeiro semestre e não tem muita experiência com computadores, às vezes ela enfrenta alguns problemas para usar as máquinas e geralmente não sabe o que fazer. Natália gostaria de ter uma forma simples, prática e rápida de avisar o corpo técnico da Fatec quando não consegue usar o computador como quer, seja por algum problema de hardware ou de software. |
Pedro, 35 anos, técnico de suporte da Fatec São José dos Campos |
---|
Pedro trabalha na Fatec há 2 anos e na área de técnico de computadores há mais de 5 anos. Ele tem considerável experiência na área de manutenção, mas pouco conhecimento na parte administrativa. Como Pedro fica parte do expediente sozinho, ele precisa de um sistema que gere e organize as ordens de serviço de manutenção de uma maneira simples e intuitiva, para que ele possa organizar melhor os afazeres do seu dia-a-dia. |
Andréia, 59 anos, professora de logística da Fatec São José dos Campos |
---|
Andréia é professora do curso de logística há quase uma década. Apesar de ter vasta experiência na disciplina que leciona, Direito Comercial, às vezes Andréia encontra algumas dificuldades para usar os computadores e programas disponíveis na Fatec. Como é de outra geração e começou a ter acesso aos PCs muito mais tarde na vida, ela ocasionalmente precisa de ajuda técnica durante as aulas. Por isso, seria muito cômodo que ela conseguisse abrir um chamado para o pessoal responsável e eles conseguissem saber se essa ajuda é urgente, se ela está dando aula e precisa de algo agora, por exemplo, ou se é um problema que eles têm um prazo maior para resolver. |
PO² | M² |
---|---|
Prof. Antonio Egydio São Thiago Graça | Prof. Jean Carlos Lourenço Costa |