- Modelo Prototipagem: projeto com definição de objetivos gerias; não possui detalhes;
alto grau de incertezas; melhor comunicação com o cliente.
- Modelo Espiral: combina a natureza iterativa (Prototipagem) com aspectos controlados
e sistemáticos (Cascata)
- Processo Unificado (PU): guiado por casos de uso, centrado na arquitetura, iterativo e
incremental -> relacionado aos sistemas de grande porte e complexos.
- Requisitos funcionais: são declarações de serviços que o sistema deve fornecer, como o
sistema deve reagir a entradas especificas e como o sistema deve se comportar em
determinadas situações.
- Requisitos não funcionais: são restrições sobre serviços ou funções oferecidas pelo sistema
tais como restrições de timing, restrições sobre o processo de desenvolvimento, padrões, etc.
- Requisitos de domínio: são requisitos que vêm do domínio de aplicação do sistema e que
refletem as características desse domínio.
- Requisitos e Projetos: requisitos deve definir o que o sistema deve faze e o projeto deve
descrever como ele faz isto.
- Requisitos de usuário são declarações de alto nível sobre o que o sistema deve fazer. Esses
requisitos devem ser escritos usando linguagem natural, tabelas e diagramas.
- Requisitos de sistema se destinam a comunicar quais as funções que o sistema deve fornecer.
- O padrão IEEE é um ponto de partida útil para definição de padrões de requisitos mais
detalhados e específicos.
- Estudo de viabilidade: decide de vale a pena ou não gastar tempo e esforço com sistema
proposto.
- Casos de uso: constituem uma técnica baseada em cenários UML que identificam os agentes
em uma interação, que descrevem a interação em si; um conjunto de casos de uso deve
descrever todas as possíveis interações com o sistema.
- Validação de Requisitos: tem por objetivo mostrar que os requisitos definem o sistema que o
cliente realmente deseja.
- Tipos de Modelos:
- Modelo de fluxo de dados que mostra como os dados são processados em estágios
diferentes.
- Modelo de composição que mostra como as entidades são compostas de outras
entidades.
- Modelo de arquitetura que mostra os subsistemas principais.
- Modelo de classificação que mostra como as entidades têm características comuns.
- Modelo estímulo-resposta que mostra a reação do sistema aos eventos
- Modelo de contexto: são usados para ilustrar o contexto operacional de um sistema – eles
mostram o que se encontra nos limites do sistema.
- Modelos de Processos: mostram o processo geral e os processos que são apoiados pelo
sistema.
- Modelos de Dados: são usados para descrever a estrutura lógica dos dados processados pelo
sistema.
- Projeto de Dados: são estruturas criadas para realizar o armazenamento de dados definidos
na etapa de projeto de análise (Mineração de dados).
- Estilos e Padrões Arquiteturais: podem ser definidos como gabaritos para a construção de
um software. Retrata a estrutura interna do software
- Um conjunto de componentes que realizam a função do requisito do sistema;
- Um conjunto de conectores entre componentes;
- Restrições que definem como os componentes podem ser integrados para formar o
sistema;
- Modelos semânticos que possibilitam ao projetista entender as propriedades gerais de
um sistema pela análise das propriedades conhecidas de duas partes construtivas.
- Arquitetura de fluxo de dados: utilizada quando dados de uma entrada devem ser
transformados por meio de uma série de componentes;
- Arquitetura em Camadas:
- Camada de apresentação: está relacionada à apresentação dos resultados de um
processamento para os usuários do sistema, e à coleta de entradas do usuário.
- Camada de processamento de aplicação: está relacionada ao fornecimento de
funcionalidade específica da aplicação, por exemplo, em um sistema de banco, funções
bancárias, tais como abrir a conta, fechar conta, etc.
- Camada de gerenciamento de dados: está relacionada ao gerenciamento do banco de
dados do sistema (NÃO DIGA!!)
- Validação: se refere a um conjunto de atividades que garante que o software produzido está
em conformidade com a especificação do cliente.
- Teste do sistema: representa um conjunto de testes que visa exercitar, por completo, o
sistema. Teste de recuperação, segurança, estresse e desempenho.
- Teste caixa-branca: é uma técnica que visa realizar um conjunto de testes baseados em um
exame rigoroso do detalhe procedimental.
- Teste caixa-preta: trata, basicamente, dos requisitos funcionais do software. Os testes são
conduzidos na interface do software.
- Teste de caminho Básico: é uma técnica de teste caixa-branca que permite ao projetista gerar
casos de teste para avaliar a complexidade lógica do projeto.
- Teste baseado em Erro: projeto de teste cujo o objetivo é a descoberta de erros plausíveis.
- Teste com Base em Cenários: concentra-se no que o usuário faz e não naquilo que o sistema
faz.