Skip to content

Latest commit

 

History

History
100 lines (66 loc) · 6.1 KB

03-Metodologia.md

File metadata and controls

100 lines (66 loc) · 6.1 KB

Metodologia

Pré-requisitos: Documentação de Especificação

A aplicação será desenvolvida com base no protocolo HTTP, utilizando a linguagem de marcação HTML5 com formatação em CSS. A programação da aplicação será feita em javascrip com a utilização da ferramenta Visual Studio Code. Todo o versionamento do projeto será feito via Git com repositório GitHub. Quanto ao método de gestão, será utilizada a metodologia ágil SCRUM.

Relação de Ambientes de Trabalho

Os artefatos do projeto são elaborados a partir de diversas plataformas e a relação dos ambientes com seu respectivo propósito é apresentada conforme a tabela a seguir:

Ambiente Plataforma Link de Acesso
Repositório de código fonte GitHub https://github.com/ICEI-PUC-Minas-PMV-ADS/crypto-conversor
Documentos do projeto GitHub https://github.com/ICEI-PUC-Minas-PMV-ADS/crypto-conversor/projects
Projeto de Interface e Wireframes Figma https://www.figma.com/file/SIyHLd7Ac93NYTJUTCdpuw/Crypto-Project?node-id=0%3A1
Gerenciamento do Projeto GitHub - Projects https://github.com/ICEI-PUC-Minas-PMV-ADS/crypto-conversor/projects

Controle de Versão

A ferramenta de controle de versão adotada no projeto foi o Git, sendo que o Github foi utilizado para hospedagem do repositório.

O projeto segue a seguinte convenção para o nome de branches:

  • main: versão estável já testada do software;
  • unstable: versão já testada do software, porém instável;
  • testing: versão em testes do software;
  • dev: versão de desenvolvimento do software.

A branch main será utilizada para versões que estão prontas para produção. Ela será replicada na branch dev, que conterá versões em desenvolvimento e ainda passíveis de teste. A branch teste será usada para a realização de testes nos código para preparaçao para produção. Caso problemas sejam identificados, as correções serão isoladas na branch unstable de modo a estabilizar a versão que entrará em produção.

Quanto à gerência de issues, o projeto adota a seguinte convenção para etiquetas:

  • documentation: melhorias ou acréscimos à documentação;
  • bug: uma funcionalidade encontra-se com problemas;
  • enhancement: uma funcionalidade precisa ser melhorada;
  • feature: uma nova funcionalidade precisa ser introduzida.

Gerenciamento de Projeto

Conforme citado, a equipe utilizará a metodologia scrum, de modo que haverá esforços concentrados e incrementais divididos em sprints que durarão, como regra, 2 semanas.

A equipe está organizada da seguinte forma:

  • Scrum master: Aaron Duarte Dalla
  • Product owner: Iago José Silva Ferreira
  • Equipe de desenvolvimento:
    • Gabriel Miranda Cangussu
    • Matheus Henique Rodrigues
    • Thiago Costa Prates
  • Equipe de design:
    • Tafarel Luis de Mello
    • Renan Costa Cunha

A metodologia scrum foi conjugada com o método kanban de forma a tornar visual a distribuição de tarefas, o que está sendo feito por meio da ferramenta projects do github. As raias existentes são:

  • Backlog: contém as tarefas identificadas e necessárias para a criação do produto;
  • To do: contém as tarefas que serão incluídas na sprint;
  • In progress: contém as tarefas que foram iniciadas e estão em desenvolvimento;
  • Test: contém as tarefas que foram concluídas e serão checadas, de forma a se controlar a qualidade do desenvolvimento;
  • Done: contém as tarefas que foram concluídas e testadas;
  • Locked: nesta coluna são colocadas tarefas que foram paralisadas em razão de algum motivo impeditivo que precisa de solução.

A figura abaixo ilustra a utilização do kanboard:

Kanboard cryptoconversor

Ferramentas

As ferramentas utilizadas no projeto estão abaixo enumeradas:

Editores de Código:

  • Github: Ferramenta utilizada tanto como editor de código quanto como ferramenta de organização, serve como local síncrono de armazenamento e edição do repositório do projeto.
  • Visual Studio Code: Ferramenta utilizada em conjunto com o Github para a confecção de códigos mais complexos.

Ferramentas de Comunicação e Organização:

  • Microsoft Teams: Ferramenta utilizada para realizar as reuniões de equipe, assim como as reuniões semanais em conjunto com a coordenadora do projeto.
  • Microsoft Office: Ferramenta utilizada em suas diversas funcionalidades. O Microsoft Word foi usado para a confecção da documentação do projeto, o Power Point foi a ferramenta escolhida para a apresentação da proposta de projeto. O próprio sistema Office serviu como local de compartilhamento de documentos.
  • GitHub Projects: Ferramenta utilizada para a organização e separação de tarefas no projeto.

Ferramentas de Desenho de Tela (wireframing):

  • Canva: Ferramenta utilizada como um protótipo na realização do design do projeto de interface.
  • Figma: Ferramenta utilizada na versão final do projeto de interface.
  • Draw.io: Ferramenta utilizada na confecção dos wireframes.

O editor de código foi escolhido porque possui uma integração com o sistema de versão. As ferramentas de comunicação utilizadas possuem integração semelhante e por isso foram selecionadas. Por fim, para criar diagramas utilizamos essa ferramenta por melhor captar as necessidades da nossa solução.