Especificação Funcional
- Wikipedia:
- Especificação funcional em desenvolvimento de software é um documento que especifica as funções que um sistema ou componente deve executar. A documentação geralmente descreve o que é necessário para o usuário do sistema, bem como as propriedades solicitadas de entradas e saídas.
- Tom DeMarco, Weinberg, Gane e Sarson:
- "Na análise estruturada a especificação funcional passou a ter as seguintes características: utilizar a representação gráfica, composta por vários diagramas apoiados por material textual; ser constituída de forma particionada, de modo que partes individuais da especificação pudessem ser lidas independentemente de outras; e ter o mínimo de redundância, tornando menos onerosa a tarefa de atualizar os requisitos."
- Alguns tópicos que a Especificação Funcional ou Documento de Requisitos poderá abordar:
- Serviços e funções que o sistema deve prover com detalhes que auxiliem a equipe de desenvolvimento
- Limitações sobre as quais o sistema deve operar
- Propriedades gerais do sistema, isto é, comportamento do sistema diante das propriedades emergentes
- Definições de outros sistemas que irão interagir com o sistema em questão
- Informações a respeito do domínio de aplicação do sistema
- Limitações no processo utilizado para desenvolver o sistema
- Definições sobre o hardware no qual o sistema executará
- Adicionalmente, o documento de requisitos deverá conter uma capítulo introdutório que provê um resumo do sistema, necessidades de negócio suportadas pelo sistema e um glossário que explica a terminologia utilizada. Esse glossário é particularmente importante, pois pessoas de diferentes áreas terão contato com o documento de requisitos, facilitando assim sua compreensão.
- Exemplos de usuários do documento de requisitos, com seus respectivos papéis:
- 1. Clientes do Sistema: especificam os requisitos e o lêem para avaliar se os mesmos satisfazem suas necessidades
- 2. Gerentes de Projeto: usam os documentos de requisitos para planejarem uma proposta para o sistema e o processo de desenvolvimento do sistema
- 3. Engenheiros ou Analistas de Sistema: usam os requisitos para entenderem o sistema em construção
- 4. Engenheiros de teste ou Gestores de Qualidade: usam os requisitos para desenvolverem testes de validação do sistema
- 5. Engenheiros de manutenção ou Analistas de Suporte: usam os requisitos para entendimento do sistema, monitoramento e eeventuais correções.
- Estrutura de um documento de requisitos segundo IEEE 830

Sequência da apresentação
| Item | Tópico | Orientação |
|---|---|---|
| 01 | Escopo | Explicar objetivos, características relevantes e restrições do projeto |
| 02 | Diagrama de Contexto | Destacar Entidades Externas e Depósitos de Dados, ignorando requisitos funcionais, |
| 03 | Entidades Externas | Detalhar sobre interação com perfis de pessoas, com sistemas e com possíveis hardwares contemplados nos projeto |
| 04 | Depósitos | Informar sobre aspectos dos dados que serão armazenados |
| 05 | Diagrama de Fluxo de Dados | Expor visualmente os requisitos funcionais do sistema mapeados com Entidades Externas e Depósitos |
| 06 | Mockup | Alinhar navegação do protótipo com proposta do DFD |
| 07 | Diagrama Entidade Relacionamento | Apresentar projeto do Banco de Dados informando tabelas, relacionamentos, campos, chaves e tipos de dados |
- Critérios:
- Ordem: sorteio
- Apresentador: Caso queiram, apenas um pode apresentar
- Material: Documentos publicados na Wiki
- Tempo: máximo de 15 minutos.