Skip to content

Commit

Permalink
Merge pull request #24 from mdsreq-fga-unb/21-estratégia
Browse files Browse the repository at this point in the history
Alterações na estrategia.
  • Loading branch information
JoseViniciusQueiroz authored Nov 23, 2024
2 parents 23799b5 + 4207711 commit cc95008
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 108 deletions.
Binary file added docs/imagens/GUPTA1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/imagens/GUPTA2.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
83 changes: 45 additions & 38 deletions docs/unidade1/sessao3.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,100 +2,107 @@

## **3.1 Estratégia Priorizada**

- **Abordagem**: Dirigida por plano
- **Ciclo de Vida**: Iterativo
- **Processo**: Processo Unificado
- **Abordagem**: Ágil
- **Ciclo de Vida**: Iterativo e incremental
- **Processo**: Scrum/XP

## **3.2 Quadro Comparativo**

<table border="1">
<thead style="background-color: #D3D3D3;">
<tr>
<th><strong>Características</strong></th>
<th><strong>Spiral</strong></th>
<th><strong>Processo Unificado</strong></th>
<th><strong>RAD</strong></th>
<th><strong>Scrum/XP</strong></th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Abordagem geral</strong></td>
<td>Iterativa, baseada em riscos e adaptável.</td>
<td>Iterativa, estruturada e orientada a objetos.</td>
<td>Adota formas rápidas com objetivos bem definidos e análise de requisitos extremamente bem alinhada, assim tendo uma abordagem iterativa e incremental.</td>
<td>Adota uma abordagem iterativa, entregando continuamente pequenas partes do projeto, o que permite ajustes rápidos e feedbacks constantes.</td>
</tr>
<tr>
<td><strong>Foco em arquitetura</strong></td>
<td>Interativa e adaptável.</td>
<td>Fortemente definida e validada antecipadamente.</td>
<td>Possui um foco na arquitetura nas fases iniciais, mas o RAD permite flexibilidade ao longo do projeto. </td>
<td>Possui um foco mais ágil, a arquitetura é evoluída ao longo do projeto. </td>
</tr>
<tr>
<td><strong>Estrutura de Processo</strong></td>
<td>Baseada em ciclos iterativos, chamados de espirais, cada uma representando uma fase do projeto.</td>
<td>Organizada em fases e disciplinas.</td>
<td>O RAD segue fases de desenvolvimento </td>
<td>Sprints curtas e fases. </td>
</tr>
<tr>
<td><strong>Flexibilidade de requisitos</strong></td>
<td>Altamente flexível em relação aos requisitos, devido à sua ênfase na gestão de riscos e interações contínuas.</td>
<td>Oferece flexibilidade, mas dentro de uma estrutura mais controlada e disciplinada. Ele adota uma abordagem iterativa e incremental, mas busca definir os requisitos principais nas fases iniciais.</td>
<td>Permite adaptações e alterações mesmo em fases avançadas do projeto.</td>
<td>O scrum XP permite uma alta flexibilidade de requisitos, permitindo uma adaptabilidade rápida.</td>
</tr>
<tr>
<td><strong>Colaboração com cliente</strong></td>
<td>Colaboração ativa e contínua com o cliente, permitindo feedback frequente e ajustes iterativos.</td>
<td>Colaboração estruturada e planejada com o cliente, envolvendo-o principalmente nas revisões de fase e no gerenciamento de requisitos.</td>
<td>Feedback de maneira constante. Os protótipos são apresentados antecipadamente e com frequência.</td>
<td>A comunicação é aberta e frequente. Feedback do cliente e da equipe garante que o software esteja no caminho certo.</td>
</tr>
<tr>
<td><strong>Complexidade do processo</strong></td>
<td>Considerado complexo devido ao foco intenso em riscos, planejamento iterativo e necessidade de adaptação contínua.</td>
<td>Altamente complexo devido à sua estrutura formal, necessidade de documentação extensa e curva de aprendizado alta.</td>
<td>Esforço nas fases iniciais para definir os requisitos, protótipos e gestão do projeto. </td>
<td>Busca soluções simples para os problemas de desenvolvimento, facilitando a manutenção e a evolução do software.</td>
</tr>
<tr>
<td><strong>Qualidade Técnica</strong></td>
<td>Ideal para projetos com alto nível de incerteza, requisitos em constante mudança e necessidade de rápida adaptação.</td>
<td>Mais adequado para projetos de grande porte, com requisitos bem definidos e que exigem um alto nível de qualidade e conformidade com padrões.</td>
<td>Pode ser afetada devido ao foco em velocidade e flexibilidade.</td>
<td>Alta ênfase na qualidade técnica, com práticas como TDD (Test-Driven Development), pair programming e integração contínua para garantir um código limpo e funcional.</td>
</tr>
<tr>
<td><strong>Práticas de desenvolvimento</strong></td>
<td>Práticas interativas, flexíveis e centradas em riscos.</td>
<td>Práticas de desenvolvimento estruturadas e formais.</td>
<td>Entregas rápidas e feedbacks.</td>
<td>Possui programação em pares, Desenvolvimento orientado a testes (TDD), Integração contínua, Refatoração e Jogos de planejamento.</td>
</tr>
<tr>
<td><strong>Adaptação ao Projeto de Panelas Grill</strong></td>
<td>É mais adequado para projetos que enfrentam alta incerteza, riscos elevados e onde a mitigação de riscos é uma prioridade.</td>
<td>É mais adequado para projetos de médio a grande porte, onde a organização requer uma abordagem estruturada e disciplinada para lidar com complexidade e múltiplas equipes.</td>
<td>Projetos que exigem rapidez no desenvolvimento, alta flexibilidade e forte envolvimento do cliente.</td>
<td>O scrum XP são ideias para projetos com Requisitos insertos </td>
</tr>
<tr>
<td><strong>Documentação</strong></td>
<td>Documentação Adaptada às Necessidades</td>
<td>Ênfase na Documentação Detalhada</td>
<td>Documentação leve</td>
<td>Documentação leve/td>
</tr>
<tr>
<td><strong>Controle de Qualidade</strong></td>
<td>Controle de qualidade centrada em análise de riscos e validação contínua ao longo de cada iteração.</td>
<td>Abordagem estruturada e rigorosa para o controle de qualidade, com disciplinas específicas para testes, revisões formais e uso de métricas para monitoramento.</td>
<td>Pode ser afetada devido ao foco na velocidade.</td>
<td>As práticas de desenvolvimento como TDD e programação em pares permite um controle de qualidade eficiente. </td>
</tr>
<tr>
<td><strong>Escalabilidade</strong></td>
<td>Escalável em projetos que exigem flexibilidade e adaptação, mas pode enfrentar dificuldades em projetos de grande escala devido à complexidade na gestão de riscos e iterações.</td>
<td>Projetado para lidar com projetos complexos e de grande escala, com uma estrutura robusta que pode ser adaptada conforme necessário.</td>
<td>O RAD é mais adequado para projetos de pequeno a médio porte, principalmente devido ao seu foco em entregas rápidas e protótipos.</td>
<td>Escalável, mas mais indicado para equipes menores e médias devido à sua abordagem colaborativa e interativa constante. </td>
</tr>
<tr>
<td><strong>Suporte a Equipes de Desenvolvimento</strong></td>
<td>Oferece suporte flexível e interativo para equipes de desenvolvimento, mas pode ter dificuldades em projetos maiores e com equipes grandes devido à falta de uma estrutura formal para coordenação e gerenciamento.</td>
<td>Oferece um suporte estruturado e detalhado para equipes de desenvolvimento, com práticas e ferramentas projetadas para facilitar a colaboração, a coordenação e o gerenciamento de equipes grandes.</td>
<td>O RAD oferece um forte suporte a equipes pequenas e média.</td>
<td>Suporta equipes menores e mais colaborativas, com papéis mais flexíveis, permitindo maior adaptação ao ritmo do projeto. </td>
</tr>
</tbody>
</table>


## **3.3 Justificativa**

Com base nas características do projeto Panelas Grill e nos desafios enfrentados pela empresa, o Processo Unificado é o mais adequado para o desenvolvimento do produto proposto pelos seguintes motivos.
Para poder identificar o nosso processo ideal foi feito o GUPTA, o resultado está logo abaixo.
<center>
![GUPTA](../imagens/GUPTA1.jpg)
</center>
<center>
![GUPTA2](../imagens/GUPTA2.jpg)
</center>

1. **Estrutura Controlada e Flexibilidade no Planejamento:**
O Processo Unificado oferece uma estrutura bem definida, o que é crucial para garantir o alinhamento das etapas do projeto desde o início, especialmente para uma empresa como Panelas Grill, que, embora pequena, precisa de um controle sobre as entregas e o andamento do projeto. Embora o Processo Unificado seja mais rígido do que a abordagem Spiral, ele ainda oferece flexibilidade dentro de suas fases e disciplinas, permitindo que os requisitos sejam definidos nas fases iniciais e ajustados conforme necessário durante as iterações.
Com base nos resultados apresentados pelo GUPTA, a equipe optou por adotar o Scrum XP. Além de ser a abordagem recomendada, todos os membros da equipe já possuíam experiência prévia com essa metodologia.

2. **Adaptação ao Tamanho da Equipe e Complexidade:**
Como temos uma equipe menor e recursos limitados, o Processo Unificado proporciona a organização necessária para gerenciar o desenvolvimento de forma controlada, sem ser excessivamente formal ou burocrático. Embora o processo seja adequado para projetos maiores, sua estrutura modular também permite que a equipe pequena lide com complexidade sem sobrecarregar os membros da equipe, fornecendo uma boa base para o desenvolvimento e acompanhamento contínuo.
## **3.4 Referências para o quadro comparativo**
<small>DevMedia. Agile Development: XP e Scrum em uma Abordagem Comparativa. Disponível em: <https://www.devmedia.com.br/agile-development-xp-e-scrum-em-uma-abordagem-comparativa/30808>. Acesso em: 23 nov. 2024.</small>

3. **Colaboração com o cliente:**
O Processo Unificado incorpora uma colaboração estruturada com o cliente, particularmente nas revisões de fase, o que é uma vantagem para o Panelas Grill, pois permite que o cliente esteja envolvido no processo de desenvolvimento de forma sistemática e contínua. Isso faz com que o produto final esteja mais alinhado com as expectativas do cliente e atenda suas necessidades específicas.
<small>Casa do Desenvolvedor. XP e Scrum: qual método utilizar para gerir seus projetos de software?. Disponível em: <https://blog.casadodesenvolvedor.com.br/xp-scrum/#:~:text=Inspirado%20nas%20pr%C3%A1ticas%20japonesas%20de,ajustes%20r%C3%A1pidos%20e%20feedbacks%20constantes>. Acesso em: 23 nov. 2024.</small>

<small>Ucloud. Metodologia RAD. Disponível em: <https://ucloudglobal.com/br/blog/metodologia-rad/>. Acesso em: 23 nov. 2024.</small>

<small>TreinaWeb. O que é RAD - Rapid Application Development?. Disponível em: <https://www.treinaweb.com.br/blog/o-que-e-rad-rapid-application-development/>. Acesso em: 23 nov. 2024.</small>
82 changes: 12 additions & 70 deletions docs/unidade1/sessao4.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,99 +8,41 @@ A partir da estratégia de desenvolvimento de software estabelecida, tem-se a se
<th>Sprint</th>
<th>Início</th>
<th>Fim</th>
<th>Objetivo Principal</th>
<th>Objetivos Principais</th>
<th>Entregas Esperadas</th>
<th>Validação do Cliente</th>
</tr>
</thead>
<tbody>
<tr>
<td>Sprint 1</td>
<td>Sprint 0</td>
<td>28/10/24</td>
<td>11/11/24</td>
<td>Planejamento e organização do backlog para desenvolvimento</td>
<td>- Configuração do mkdocs para a documentação.<br>- Elicitação dos requisitos a partir do backlog.<br>- Revisão do backlog para priorização das funcionalidades críticas.</td>
<td>Revisão do Backlog</td>
</tr>
<tr>
<td>Sprint 2</td>
<td>Sprint 1</td>
<td>12/11/24</td>
<td>25/11/24</td>
<td>Primeira Entrega Parcial (Autenticação e Interface Inicial)</td>
<td>- Desenvolvimento inicial da interface e criação do ambiente básico de trabalho.<br>- Entrega Parcial 1: Implementação da funcionalidade de login</td>
<td>Feedback inicial de interface e login</td>
<td>Correção e revisão do backlog </td>
<td> - Construir o mkdocs <br>- Revisar backlog.<br>- Início do protótipo. <br>- -Estudar sobre o bancos de dados.<br>- Atividades e Técnicas de ER </td>
</tr>
<tr>
<td>Sprint 3</td>
<td>Sprint 2</td>
<td>26/11/24</td>
<td>09/12/24</td>
<td>Implementação das funcionalidades de relatórios essenciais para monitoramento.</td>
<td>- Relatório diário<br>- Relatório mensal</td>
<td>Usabilidade e relevância dos relatórios.</td>
<td>Definir MVP, protótipo, arquitetura e definir Dor e Dod.</td>
<td>- Definir MPV e inicio do desenvolvimento.<br>- Construção do protótipo.<br>- -Construir a tela de login/cadastro.<br>- -Construir a arquitetura.</td>
</tr>
<tr>
<td>Sprint 4</td>
<td>Sprint 3</td>
<td>10/12/24</td>
<td>23/12/24</td>
<td>Segunda Entrega Parcial (Controle de Estoque)</td>
<td>- Entrega Parcial 2: Registro de entrada e saída de estoque<br>- Consulta de estoque para monitoramento de insumos</td>
<td>Testes de registro e consulta de estoque.</td>
</tr>
<tr>
<td>Sprint 5</td>
<td>24/12/24</td>
<td>06/01/25</td>
<td>Cadastro de Empresas e Produtos</td>
<td>- Cadastro de empresas<br>- Cadastro de produtos</td>
<td>Validação dos cadastros e ajustes necessários.</td>
</tr>
<tr>
<td>Sprint 6</td>
<td>07/01/25</td>
<td>20/01/25</td>
<td>Terceira Entrega Parcial (Registro de Vendas e Cardápio)</td>
<td>- Entrega Parcial 3: Cadastro de vendas<br>- Cadastro do cardápio</td>
<td>Avaliação das funcionalidades de vendas e organização do cardápio.</td>
</tr>
<tr>
<td>Sprint 7</td>
<td>21/01/25</td>
<td>03/02/25</td>
<td>Notificações e Alertas de Estoque</td>
<td>- Notificações de estoque baixo<br>- Alerta de produtos próximos ao vencimento</td>
<td>Verificação das notificações e precisão dos alertas.</td>
</tr>
<tr>
<td>Sprint 8</td>
<td>04/02/25</td>
<td>17/02/25</td>
<td>Relatórios de Lucro e Perda e Conformidade</td>
<td>- Relatório de lucro e perda<br>- Entrega Parcial 4: Política de conformidade e proteção de dados.</td>
<td>Feedback sobre os relatórios financeiros e conformidade de dados.</td>
</tr>
<tr>
<td>Sprint 9</td>
<td>18/02/25</td>
<td>03/03/25</td>
<td>Integração Completa e Testes de Carga</td>
<td>- Integração de todos os módulos (estoque, vendas, relatórios, notificações).<br>- Entrega Parcial 5: Testes de carga para verificar escalabilidade.</td>
<td>Testes de desempenho e feedback sobre a experiência integrada.</td>
</tr>
<tr>
<td>Sprint 10</td>
<td>04/03/25</td>
<td>17/03/2025</td>
<td>Testes de Segurança</td>
<td>- Testes avançados de segurança e revisão da política de privacidade.</td>
<td>Avaliação de segurança e proteção de dados, realizados com usuários internos.</td>
<td>Desenvolvimento do MVP e validação do protótipo</td>
<td>- Desenvolvimento do MVP.</td>
</tr>
<tr>
<td>Sprint 11</td>
<td>18/03/25</td>
<td>25/03/25</td>
<td>Homologação e Revisão Final</td>
<td>- Entrega Parcial 6: Revisão e ajustes finais de todas as funcionalidades.</td>
<td>Homologação e aprovação final do cliente.</td>
<td>pausa de fim de ano 24/12 a 06/01/25</td>
</tr>
</tbody>
</table>

0 comments on commit cc95008

Please sign in to comment.