Modelagem

  • complementar ao levamento de requisitos;
  • maneiras de representar a solução;
  • casos de uso, diagrama de atividades, diagrama de classes, diagrama de sequência, diagrama de estados, diagrama Entidade-relacionamento
  • usado para facilitar a comunicação entre desenvolvedor e engenheiro de software;
  • se preocupa com: instruções, interfaces, objetos, restrições, funções, comportamentos
  • deve: descrever o que o cliente quer, dar base para a criação do projeto, definir os requisitos que podem ser validados depois de pronto (todo requisito precisa de um ID)

Regras da modelagem

  • alta abstração, a principio
  • contribuir para o entendimento
  • postergar dados de infra até a parte do projeto
  • minimizar acoplamento
  • agregar valor aos stakeholders
  • deve ser simples (deve ser feito apenas o necessário)

Abordagens

  • analise estruturada (mais antigo)
  • analise orientada a objetos

obs: você pode unir as abordagens

analise estruturada

  • pensa em entidades e como elas se relacionam
  • descreve o passo a passo e como os dados trafegam

analise orientada a objetos

  • pensa em objetos e suas ações/comportamentos no sistema

UML

  • unified modelling language

Modelos

  • baseado em cenários (casos de uso)
  • classes (diagrama de classes)
  • comportamentais(diagrama de sequência (estados do objeto no sistema))
  • fluxo (modelos de dados)

Diagrama de classes

  • desenho das classes e seus relacionamentos

image

OBS

A documentação criada, deve ser passada por todos os stakeholders e incrementada com o tempo