Skip to content

Commit

Permalink
Merge pull request #17 from mdsreq-fga-unb:hotfix/imagens
Browse files Browse the repository at this point in the history
Corrige erro na url das imagens
  • Loading branch information
luciano-freitas-melo authored Sep 28, 2023
2 parents f977c3a + 65e2d56 commit 1ee9d71
Showing 1 changed file with 114 additions and 1 deletion.
115 changes: 114 additions & 1 deletion docs/doc-visao/4.processo-requisitos.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,120 @@

| **Data** | **Versão** | **Descrição** | **Autor** |
| --------- | ---------- | -------------------- | ------------------------------------------------------------- |
| 26/9/2023 | 0.1 | Criação do documento | [Luciano de Freitas](https://github.com/luciano-freitas-melo) |
| 26/9/2023 | 0.1 | Criação do documento | [Luciano de Freitas](https://github.com/luciano-freitas-melo) |
| 26/9/2023 | 0.2 | Documentação dos processos de Engenharia de Requisitos | [Artur Rodrigues](https://github.com/ArturRSA19) e [João Barreto](https://github.com/JoaoBarreto03)|
| 27/9/2023 | 0.3 | Refatoração e correção da documentação dos processos de Engenharia de Requisitos | [Artur Rodrigues](https://github.com/ArturRSA19), [João Barreto](https://github.com/JoaoBarreto03) e [Luciano de Freitas](https://github.com/luciano-freitas-melo)|

## Processos de Engenharia de Requisitos

*Segundo [MARSICANO (2023)¹](#referencias-bibliograficas), o Processo de Engenharia de Requisitos define quais são as etapas essenciais para a construção de um software, sendo aplicado em metodologias ágeis ou em processos dirigidos a plano. A Figura 1 mostra as atividades pertencentes à ER:*

<p style="display: flex; justify-content: center; font-size: 0.8em">Figura 1 - Atividades da Engenharia de Requisitos</p>

![Processos Engenharia de Requisitos](../assets/processos_ER.jpg)

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: MARSICANO, George (2023)</p>

*No desenvolvimento do projeto, utilizam-se o Scrum e o XP (Extreme Programming) que são duas metodologias ágeis populares para o desenvolvimento de software. Embora o Scrum se concentre principalmente na gestão de projetos ágeis e no planejamento de sprints, e o XP coloque uma ênfase maior em práticas de engenharia de software, ambos os métodos têm abordagens específicas para a engenharia de requisitos. A seguir serão descritos os processos de Engenharia de Requisitos nos rituais do Scrum/XP:*

### Scrum

*Os processos da metodologia Scrum que serão utilizados durante o desenvolvimento do projeto serão:*

- Product Backlog - Este processo é responsável por manter os requisitos do projeto em uma evolução constante e atribuir uma prioridade maior aos requisitos mais importantes, permitindo ajustes durante o desenvolvimento do produto a cada Sprint.
- Sprint Backlog - Com esse processo, é possível planejar quais requisitos deverão ser trabalhados naquela iteração, além de permitir o acompanhamento dos requisitos que já foram concluídos ou que estão em andamento.
- Definition of Done (DoD) - Esse processo é crucial para garantir que os requisitos sejam implementados de forma adequada e completa. Ela estabelece os critérios que um incremento de trabalho deve atender para ser considerado pronto para entrega. Isso ajuda a garantir que os requisitos tenham sido atendidos completamente e que o trabalho tenha alta qualidade.

### Extreme Programing (XP)

*No XP, os processos de Engenharia de Requisitos utilizados serão:*

- User Story (US) - Este processo auxilia na compreensão dos requisitos do projeto e pode ser utilizado para rastrear o ponto de desenvolvimento em que a equipe se encontra, a medida que as histórias são concluídas. Além disso, este processo pode ser muito utilizado no quesito de recebimento do Feedback do cliente a cada entrega, permitindo a atualização e melhoria dos requisitos.
- Tasks - Desempenham um papel importante no desenvolviemtno de software ágil. As Tasks são basicamente subdivisôes de itens do Product Backlog que descrevem o trabalho específico necessário para implementar um requisito. As Tasks estão relacionadas com à Engenharia de Requisitos justamente pela sua capacidade de detalhamento de requisitos, atribuição de trabalho, acompanhamento de progresso além da sinalização da conclusão de requisitos.

## Facetas do processo

*Uma vez que definidas as tarefas da Engenharia de Requisitos, é necessário estabelecer uma abordagem ou procedimento para realizá-las. No Handbook for the CPRE Foundation Level according to the IREB Standard, publicado pelo International Requirements Engineering Board (IREB), é apresentado um método para definir um processo de Engenharia de Requisitos com base na análise das diversas dimensões desse processo. É preciso analisar quais características extremas de cada aspecto se relacionam com o conhecimento atual e as expectativas em relação ao produto a ser desenvolvido. Com base nessa análise, juntamente com as definições previamente estabelecidas sobre o ciclo de vida e o processo de desenvolvimento de software, é possível estabelecer um processo a ser seguido para a execução das atividades de Engenharia de Requisitos. A **Figura 2** ilustra as diferentes dimensões desse processo:*

<p style="display: flex; justify-content: center; font-size: 0.8em">Figura 2 - Facetas da Engenharia de Requisitos.</p>

![Facetas Engenharia de Requisitos](../assets/facetas_ER.jpg)

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Handbook IREB CPRE Foundation Level, 2022</p>


*A partir da descrição das facetas, é possível definir qual o melhor processo a ser utilizado no processo, sendo então escolhido o modelo Participativo, que engloba as facetas: iterativo, exploratório e cliente específico. Essa escolha foi baseada nos seguintes requisitos:*

- O projeto será desenvolvido em etapas de curto ciclo com um feedback contínuo por parte do cliente;
- Os requisitos do projeto não são totalmente conhecidos no início, havendo a necessidade de explorá-los ao longo de seu desenvolvimento;
- O projeto está sendo feito para atender às necessidades de um cliente específico. Logo, a participação do mesmo é de extrema importância no desenvolvimento do produto.

## Ferramentas

*As ferramentas foram selecionadas de modo a facilitar a comunicação entre os membros da equipe e alavancar, na medida do possível, a produtividade e criatividade. Nesse sentido, as ferramentas são as seguintes, listadas na **Tabela 1**:*

<p style="display: flex; justify-content: center; font-size: 0.8em">Tabela 1 - Ferramentas utilizadas no projeto.</p>

Logo | Ferramenta | Finalidade |
|---|---|---|
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/discord.svg" width="40" height="40"> | Discord | Realizar as Sprints e Dailies |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/chrome.svg" width="40" height="40"> | Google Chrome | Ferramenta de pesquisa e estudos |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/github.svg" width="50" height="50">| Github e Gitpages | Armazenar e apresentar a documentação do projeto, bem como o código-fonte do produto |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/microsoft-teams.svg" width="50" height="50"> | Microsoft Teams | Realizar as reuniões semanais e gravar os vídeos das apresentações |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/mkdocs.svg" width="50" height="50"> | Mkdocs | Criação do template da github pages |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/visual-studio-code.svg" width="50" height="50"> | VSCode | Programação e edição da github pages |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/wpp.svg" width="50" height="50"> | WhatsApp | Manter a comunicação entre os integrantes |
| <img src="/2023-2-BeachTennisCoordiMate/assets/icones/youtube.svg" width="50" height="50"> | Youtube | Compartilhar apresentações e disponibilizar as reuniões semanais |

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Autores, 2023</p>

## Atividades de Engenharia de Requisitos

*As **tabelas 2 a 5** mostram a relação entre as atividades do Processo de Engenharia de Requisitos, os métodos do Scrum e do XP utilizados, as ferramentas necessárias e a definição do que será entregue naquela etapa.*


### Sprint Planning e Release Planning


<p style="display: flex; justify-content: center; font-size: 0.8em">Tabela 2 - Processos da Engenharia de Requisitos (ER) envolvidos na Sprint Planning e Release Planning</p>

| Atividades | Métodos | Ferramentas | Entrega
| --- | --- | --- | ---
| Elicitação e descoberta | User Story, Brainstorming e Observação | Microsoft Teams, Discord, Whatsapp e Google Chrome | Conjunto de User Story, lista de necessidades e Visão de Produto
| Análise e consenso | User Story Mapping | Microsoft Teams, Discord, Whatsapp e GitHub | User Stories priorizadas e funcionalidades que serão entregues na release.

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Autores, 2023</p>

### Sprint

<p style="display: flex; justify-content: center; font-size: 0.8em">Tabela 3 - Processos de ER envolvidos na Sprint</p>

| Atividades | Métodos | Ferramentas | Entrega
| --- | --- | --- | ---
| Validação e Verificação | Definition of Done (DoD), Revisão e Testes | Discord, Github e Whatsapp| DoD, Resultado da revisão, testes aceitos e passando
| Organização e atualização | User Story Mapping | Discord, Github e Whatsapp| Mapa das User Story

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Autores, 2023</p>

### Sprint Review

<p style="display: flex; justify-content: center; font-size: 0.8em">Tabela 4 - Processos de ER envolvidos na Sprint Review</p>

| Atividades | Métodos | Ferramentas | Entrega
| --- | --- | --- | ---
| Verificação e Validação | Product Backlog | Microsoft Teams, Discord, Whatsapp e GitHub | Revisão das atividades e do feedback gerado pelo cliente
| Organização e atualização | Definition of Done (DoD), Revisão e Testes | Discord, Github e Whatsapp| DoD, Resultado da revisão, testes aceitos e passando
<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Autores, 2023</p>

### Interation Planning

<p style="display: flex; justify-content: center; font-size: 0.8em">Tabela 5 - Processos de ER envolvidos na Interation Planning</p>

| Atividades | Métodos | Ferramentas | Entrega
| --- | --- | --- | ---
| Elicitação de Requisitos | Entrevistas com o Cliente, Revisão de Documentação Existente | Microsoft Teams, Discord, Whatsapp | Lista de Requisitos Priorizados para a Iteração |

<p style="display: flex; justify-content: center; font-size: 0.8em">Fonte: Autores, 2023</p>


## Referências Bibliográficas
Expand Down

0 comments on commit 1ee9d71

Please sign in to comment.