 |
Identificar os elementos e planejar as interações, o comportamento, os relacionamentos e os dados necessários para construir uma funcionalidade. |
Disciplinas: Análise e Projeto |
|
  Finalidade
O objetivo desta tarefa é definir como a especificação dos requisitos será transformada em
código executável. O resultado desta tarefa é um modelo de design condizente com a especificação determinada pela
análise, adequado à arquitetura definida, e suficientemente detalhado para que sua implementação seja
possível.
|
  Relacionamentos
Funções | Executor Primário:
| Executores Adicionais:
|
Entradas | Obrigatório:
| Opcional:
|
Saídas |
|
Uso do Processo |
|
  Etapas
 Compreenda os detalhes dos requisitos
Identifique quais requisitos serão contemplados no escopo da iteração e obtenha um entendimento pleno das
funcionalidades, restrições e comportamentos esperados. Isso pode ser feito por meio da revisão da Lista de Regras de Negócio, Lista de Requisitos, Caso de Uso e Glossário. Tal revisão
pode envolver o Analista de Sistemas a fim de refinar informações ambíguas e incompletas. Esta etapa
tem o objetivo de definir quais funcionalidades serão desenvolvidas na iteração.
|
 Compreenda a arquitetura
Identifique como os elementos da arquitetura colaboram para a realização dos casos de uso da iteração. Em resumo,
analise como as responsabilidades serão atribuídas por camada, quais componentes e interfaces externas estarão
envolvidas, e como o processamento será distribuído por nó físico (hardware). Esta etapa tem o objetivo maximizar a
aderência das funcionalidades à arquitetura.
Se necessário, consulte o Arquiteto de Software para dirimir dúvidas sobre o Caderno de Arquitetura.
|
 Identifique elementos de design
Verifique se o desenvolvimento das funcionalidades previstas para a iteração inclui interfaces de comunicação de dados,
uso de componentes e bibliotecas de terceiros ou interfaces com outros sistemas. Além disso, devem ser definidas as
interfaces gráficas com o usuário e outros tipos de entradas/saídas de dados.
Identifique quais modelos são necessários para que design do projeto consiga representar os requisitos do sistema.
Esta etapa tem a finalidade de garantir que as exigências das interfaces sejam cumpridas, assim como os serviços
oferecidos por elas sejam melhor utilizados, minimizando o retrabalho.
|
 Determine como os elementos colaboram para realizar o cenário
Uma vez identificados os serviços oferecidos e exigidos por componentes e interfaces, defina as responsabilidades por
classe e os relacionamentos de dependência e realização entre elas. Isso deve ser realizado de modo condizente com a
arquitetura definida no Caderno de Arquitetura.
|
 Elabore/Revise o Diagrama de Classes
Elabore e/ou revise o Diagrama de Classes. Desenvolva um modelo que seja capaz de representar as entidades
e relacionamentos existentes no sistema.
Analise os Requisitos e Casos de Uso e verifique
quais objetos precisam ser modelados. Possíveis candidatos são aquelas entidades que precisam ser armazenadas,
classes de relacionamento ou herança, e classes utilitárias.
|
 Avalie e refine o design
Avalie se o design proposto corresponde à especificação do sistema e se há a necessidade, conforme as características
do projeto, de se elaborar outros diagramas (atividades, sequência, interação, estados, etc).
Ademais, deve-se verificar se o design respeita as restrições de arquitetura. O nível de detalhamento deve ser
suficiente para que o Desenvolvedor de Software possa transformar o design em código executável, incluindo
as questões técnicas pertinentes. Neste momento, devem ser definidos os tipos de dados, as navegabilidades,
multiplicidades, parâmetros de entrada e valores de retorno.
O objetivo desta etapa é entregar o design pronto para implementação.
|
|
  Informações Adicionais
PDS - OpenUP - Versão 1.3 |
|