of 36/36
Diagramas de Sequência e Comunicação

Diagramas de Sequência e Comunicação. Introdução Faltam informações aos modelos de Classes de Análise: – De que forma os objetos colaboram para que um

  • View
    105

  • Download
    0

Embed Size (px)

Text of Diagramas de Sequência e Comunicação. Introdução Faltam informações aos modelos de Classes de...

  • Slide 1
  • Diagramas de Sequncia e Comunicao
  • Slide 2
  • Introduo Faltam informaes aos modelos de Classes de Anlise: De que forma os objetos colaboram para que um determinado caso de uso seja realizado? Em que ordem as mensagens so enviadas durante esta realizao? Que informaes precisam ser enviadas em uma mensagem de um objeto a outro?
  • Slide 3
  • Introduo Para responder s questes anteriores, o modelo de interaes deve ser criado. Esse modelo representa mensagens trocadas entre objetos para a execuo de cenrios dos casos de uso do sistema.
  • Slide 4
  • Objetivos da criao de modelos de interao Obter informaes adicionais para completar e aprimorar outros modelos (principalmente o modelo de classes) Quais os mtodos de uma classe? Quais os objetos participantes da realizao de um caso de uso? Para cada mtodo, qual a sua assinatura? Uma classe precisa de mais atributos? Fornecer uma viso detalhada dos objetos e mensagens envolvidos na realizao dos casos de uso.
  • Slide 5
  • Mensagens Qual o objetivo da construo dos diagramas de interao? Identificar mensagens
  • Slide 6
  • O que uma mensagem indica? Uma mensagem implica na existncia de uma operao no objeto receptor. A resposta do objeto receptor ao recebimento de uma mensagem a execuo da operao correspondente.
  • Slide 7
  • Exemplos de mensagens Mensagem simples, sem clusula alguma. 1: adicionarItem(item) Mensagem com clusula de condio. 3 [a > b]: trocar(a, b) Mensagem com clusula de iterao e com limites indefinidos. 2 *: desenhar( ) Mensagem com clusula de iterao e com limites definidos. 2 *[i := 1..10]: figuras[i].desenhar( ) Mensagem aninhada com retorno armazenado na varivel x. 1.2.1: x := selecionar(e)
  • Slide 8
  • Tipos de diagrama de interao H trs tipos de diagrama de interao na UML 2.0 : diagrama de seqncia, diagrama de comunicao e diagrama de viso geral da interao. O diagrama de seqncia e o diagrama de comunicao so equivalentes. Diagrama de seqncia: foco nas mensagens enviadas no decorrer do tempo. Diagrama de comunicao: foco nas mensagens enviadas entre objetos que esto relacionados.
  • Slide 9
  • Diagrama de Sequncia Os objetos participantes da interao so organizados na horizontal. Abaixo de cada objeto existe uma linha (linha de vida) Cada linha de vida possui o seu foco de controle. O foco de controle indica que o objeto est fazendo algo. As mensagens entre objetos so representadas com linhas horizontais rotuladas partindo da linha de vida do objeto remetente e chegando a linha de vida do objeto receptor.
  • Slide 10
  • Elementos grficos de um diagrama de sequncia Elementos bsicos em um diagrama de seqncia: Atores Objetos e classes Mensagens Linhas de vida e focos de controle Criao e destruio de objetos Iteraes
  • Slide 11
  • Exemplo de diagrama de sequncia
  • Slide 12
  • Mensagens reflexivas Em uma mensagem reflexiva (ou auto-mensagem) o remetente tambm o receptor. Corresponde a uma mensagem para this (self).
  • Slide 13
  • Criao/destruio de objetos
  • Slide 14
  • Quadros de interao Elemento grfico, que serve para modularizar a construo de diagramas de seqncia (ou de comunicao).
  • Slide 15
  • Exemplo
  • Slide 16
  • Diagramas referenciados
  • Slide 17
  • Alternativas
  • Slide 18
  • Opes
  • Slide 19
  • Iteraes
  • Slide 20
  • Fragmentos de um diagrama de sequncia
  • Slide 21
  • Heursticas para modelagem de diagramas de sequncia Na primeira coluna deve ser colocado o ator que iniciou o caso de uso. Na segunda coluna deve ser colocado um objeto de fronteira (usado pelo ator para iniciar o caso de uso). Na terceira coluna deve ser colocado o objeto de controle responsvel pelo caso de uso. Objetos de entidade so acessveis tanto por objetos de fronteira (raro) como por objetos de controle. Objetos de entidade nunca acessam objetos de fronteira ou de controle. Objetos de entidade normalmente so compartilhados por outros diagramas de sequncia
  • Slide 22
  • Diagrama de comunicao Chamado de diagrama de colaborao na UML 1.X. Estruturalmente, bastante semelhante a um diagrama de objetos. A diferena que so adicionados setas e rtulos de mensagens nas ligaes entre esses objetos. As ligaes (linhas) entre objetos correspondem a relacionamentos existentes entre os objetos.
  • Slide 23
  • Diagrama de Comunicao Os objetos esto distribudos em duas dimenses Vantagem: normalmente permite construir modelos mais legveis comparativamente aos diagramas de seqncia. Desvantagem: no h como saber a ordem de envio das mensagens a no ser pelas expresses de seqncia. Direo de envio de mensagem indicada por uma seta prxima ao rtulo da mensagem.
  • Slide 24
  • Elementos grficos de um diagrama de comunicao
  • Slide 25
  • Exemplo de diagrama de comunicao
  • Slide 26
  • Slide 27
  • Criao de objetos em um diagrama de comunicao Durante a execuo de um cenrio de caso de uso, objetos podem ser criados e outros objetos podem ser destrudos. A UML define etiquetas (tags) para criao e destruio de objetos no diagrama de comunicao. {new}: objetos ou ligaes criados durante a interao. {destroyed}: objetos ou ligaes destrudos durante a interao. {transient}: objetos ou ligaes destrudos e criados durante a interao.
  • Slide 28
  • Criao de objetos em um diagrama de comunicao
  • Slide 29
  • Heursticas para construo do MI Verifique a consistncia dos diagramas de interao em relao aos Casos de Uso e ao modelo de classes. Cada cenrio relevante para cada caso de uso foi considerado na modelagem de interaes. Durante a construo do diagrama de interao, pode-se identificar novas classes. Atributos, associaes e operaes tambm surgem como subproduto da construo dos diagramas de interao.
  • Slide 30
  • Heursticas para construo do MI O objeto de controle realiza apenas a coordenao da realizao do caso de uso. Todas as aes do ator resultam em alguma atividade realizada por esse objeto de controle. Isso pode levar ao alto acoplamento; no pior caso, o controlador tem conhecimento de todas as classes participantes do caso de uso. Sempre que for adequado, segundo os princpios de coeso e de acoplamento, as classes de domnio devem enviar mensagens entre si, aliviando o objeto de controle.
  • Slide 31
  • MI em um processo iterativo e incremental So construdos para os casos de uso. H controvrsias sobre o momento de incio da utilizao desse modelo (anlise vs. projeto). Inicialmente (+anlise), pode exibir apenas os objetos participantes e mensagens exibindo somente o nome da operao. Posteriormente (+projeto), pode ser refinado. Criao e destruio de objetos, tipo e assinatura completa de cada mensagem.
  • Slide 32
  • MI em um processo iterativo e incremental A construo do Modelo de Interao fornece informaes teis para transformar o modelo de classes de anlise no modelo de classes de projeto. Em particular, Modelo de Interao fornece os seguintes itens para refinar o modelo de classes de anlise: Detalhamento de mtodos Detalhamento de associaes Novos mtodos Novos atributos Novas classes
  • Slide 33
  • MI em um processo iterativo e incremental
  • Slide 34
  • Exerccios Para cada especificao, desenvolva um diagrama de sequncia e um de comunicao. Use as classes entity, control e boundary nos diagramas
  • Slide 35
  • Locao de DVDs Primeiramente o atendente deve verificar se o scio est cadastrado. Se este no estiver, a locao deve ser recusada. Em seguida deve verificar se o scio possui alguma locao pendente, caso em que tambm recusar o emprstimo. Se o scio existir e no tiver locaes pendentes, ento a locao dever ser registrada e as cpias emprestadas ao scio. Durante o registro da locao devero ser registrados tambm todos os itens da locao
  • Slide 36
  • Clnica Veterinria (mdulo de consulta) Se a consulta em questo no for a primeira consulta do tratamento, o veterinrio antes de examinar o animal pode querer verificar o histrico das ltimas consultas do tratamento. Para isso ser necessrio consultar o dono do animal que est sendo tratado. Esta consulta trar juntamente com as informaes do cliente uma listagem de todos os animais por ele possudos. Por meio desta listagem, o veterinrio selecionar o animal a ser tratado, o que forar a apresentao das informaes especficas deste. A partir da interface do cadastro do animal, pode-se verificar a listagem de todos os tratamentos feitos pelo mesmo. Aps a consulta deve-se registrar seu histrico, contendo a data em que a consulta foi realizada, o resumo do que foi feito e o mdico veterinrio que realizou a consulta.