marcusmartinss/Trabalho-de-APC

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

オープン

#3 opened on 2025/03/07

 (0 件のコメント) (0 件のリアクション) (1 人の担当者)C (0 件のフォーク)auto 404
documentationenhancementgood first issue

Repository metrics

Stars
 (0 個のスター)
PR merge metrics
 (30d に merged 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.

コントリビューターガイド