marcusmartinss/Trabalho-de-APC

Documentação: Definir Requisitos Funcionais e Não Funcionais por Engenharia Reversa

开放

#3 创建于 2025年3月7日

 (0 条评论) (0 个反应) (1 位负责人)C (0 个派生)auto 404
documentationenhancementgood first issue

仓库指标

星标
 (0 个星标)
PR 合并指标
 (30 天内没有已合并 PR)

描述

Contexto do Problema

Atualmente, o projeto não possui um documento formal de requisitos, e o enunciado original do trabalho não está mais disponível. Isso dificulta a compreensão clara dos objetivos do sistema, a validação do escopo e futuras manutenções.

Para garantir a correta evolução do projeto e alinhar expectativas, é essencial realizar engenharia reversa do código-fonte para extrair e documentar os requisitos funcionais e não funcionais do sistema.


Objetivos

  • Identificar e documentar os principais requisitos funcionais, ou seja, as funcionalidades que o sistema deve oferecer.
  • Elicitar os requisitos não funcionais, como restrições de desempenho, armazenamento, compatibilidade e segurança.
  • Criar uma documentação acessível e organizada para facilitar futuras implementações e revisões.

Plano de Ação

  1. Análise do Código

    • Revisar os principais módulos e funções existentes.
    • Identificar entradas, processamentos e saídas do sistema.
  2. Mapeamento das Funcionalidades

    • Listar todas as ações possíveis no sistema.
    • Criar fluxogramas ou diagramas para melhor visualização das operações.
  3. Definição dos Requisitos Funcionais

    • Descrever o que o sistema deve fazer com base nas funcionalidades identificadas.
    • Exemplos:
      • O sistema deve permitir o cadastro de voos com número, data, capacidade máxima, etc.
      • O sistema deve possibilitar a reserva de passagens, vinculando passageiro a um voo.
  4. Definição dos Requisitos Não Funcionais

    • Documentar restrições de desempenho, segurança e compatibilidade.
    • Exemplos:
      • O sistema deve ser compatível com compiladores padrão C.
      • O arquivo de dados deve ser salvo em formato binário para otimização de leitura e escrita.
  5. Criação da Documentação

    • Gerar um documento (requirements.md) no repositório, contendo os requisitos levantados.
    • Utilizar Markdown para facilitar leitura e edição.

Tarefas

  • Revisar e extrair funcionalidades do código.
  • Listar requisitos funcionais e validar escopo.
  • Identificar requisitos não funcionais relevantes.
  • Criar documentação em requirements.md.

Impacto esperado

  • Melhor organização e compreensão do projeto.
  • Facilita a colaboração com novos desenvolvedores.
  • Torna futuras alterações e melhorias mais seguras e previsíveis.

贡献者指南