Marcio de Carvalho Victorino

Slides:



Advertisements
Apresentações semelhantes
DIAGRAMA DE COLABORAÇÃO
Advertisements

1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
Modelagem de Estados.
UML – Visões Parte 1 Modelando um sistema.
Análise de Casos de Uso.
ES723 - Dispositivos Eletromecânicos
Diagramas de Seqüência
Linguagens de Modelagem (cont.) (IV)
Orientação a Objetos: Encapsulamento e Classificação
DIAGRAMA DE ESTADOS DIAGRAMA ESTADO TRANSIÇÃO ENTRE ESTADOS.
Linguagens de Modelagem para SMA
Diagrama de Sequência.
Análise de Requisitos Use Case Renata Araujo Ricardo Storino
1 MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE) BREVE HISTÓRICO CARACTERÍSTICAS CONCEITOS DE PROGRAMAÇÃO ORIENTADA A OBJETOS MODELAGEM DE ANÁLISE E DE.
EXPRESSÕES ARITMÉTICAS
EXPRESSÕES ARITMÉTICAS
DIAGRAMA DE ATIVIDADES
Professora: Aline Vasconcelos IF Fluminense
Projeto de Software Orientado a Objetos
Diagrama de Atividades
Curso UML Diagramas de Atividade
Modelagem de Interações
Classes e objetos Modelagem
Classes e objetos P. O. O. Prof. Grace.
AP 1.
UML - Unified Modeling Language
Diagrama de Estados.
Análise de Casos de Uso Alexandre Motnteiro.
Diagramas de Sequência e Comunicação
Diagramas de Seqüência
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
IDENTIFICAÇÃO, MODELAGEM E ANÁLISE DE PROCESSOS Luís Gonzaga Trabasso
Semana 03: Comandos de desvio de fluxo. Expressões lógicas.
UML - Unified Modeling Language
DFD – Data Flow Diagram Diagrama de Fluxo de Dados
Diagrama de Atividades
1 - Lafayette B. Melo – Análise e Projeto de Sistemas para a Internet – COINFO – CEFET-PB 12. Estados Objetivo: compreender a notação do diagrama de estados.
A modelagem de Negócio com UML
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Diagramas de Sequência e Comunicação
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Semana 03 Comandos de desvio de fluxo. Expressões lógicas.
Professor Mário Dantas
Diagrama de Atividades
Diagramas de Atividade
UNIDADE 2 UML MODELAGEM TEMPORAL
Conceitos básicos em grafos
Técnicas e Projeto de Sistemas
Marcio de Carvalho Victorino
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática Disciplina: Interpretação de Projetos de Software Professor: Cheli dos S. Mendes.
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS EM JAVA
UML - Unified Modeling Language
Introdução a Algoritmos
Análise Orientada Objeto
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Diagrama de Colaboração. Diagramas de Interação Expressam informações bastante similares porém de maneira diferente Diagrama de seqüência: – Interação.
Análise e Projeto de Sistemas
SISTEMAS DE INFORMAÇÃO Análise de Sistemas II 2010/01 UNIPAC – Araguari FACAE - Faculdade de Ciências Administrativas e Exatas.
UML Statechart CIn-UFPE.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Interações entre objetos
Fundamentos de Engenharia de SW Diagramas da UML Usados no Projeto de Software.
Diagrama de atividade.
1 Especificação de Sistemas de Software e a UML. 2 Modelagem de sistema A modelagem de sistema auxilia o analista a entender a funcionalidade do sistema.
Análise e Design de Software Site:
Análise e Conceção de Sistemas
Modelagem Dinâmica – Diagrama de Sequência Toacy. Oliveira - PESC/COPPE/UFRJ.
Diagramas de Sequência e Comunicação
Diagrama de Atividade Prof. Thales Castro.
Transcrição da apresentação:

Marcio de Carvalho Victorino mcvictorino@uol.com.br Processo Unificado Marcio de Carvalho Victorino mcvictorino@uol.com.br

Unidade V: Projeto OO (Aspectos Dinâmicos)

Modelo de Interação Esse modelo representa as mensagens trocadas entre os objetos para a execução de cenários dos casos de uso do sistema. Os objetivos da construção do modelo de interação são: obter informações adicionais para completar e aprimorar outros modelos; fornecer aos programadores uma visão detalhada dos objetos e mensagens envolvidos na realização dos casos de uso.

Interação através de Mensagens O princípio básico da interação entre objetos é o conceito de mensagem. Um sistema de OO pode ser visto como uma rede de objetos. funcionalidades são realizadas pelos objetos, que só podem interagir através de mensagens.

Diagramas de Interação Diagramas de interação representam como o sistema age internamente para que um ator atinja seu objetivo na realização de um caso de uso. A modelagem de um sistema de OO normalmente contém diversos diagramas de interação. O conjunto de todos os diagramas de interação de um sistema constitui o seu modelo de interações.

Tipos de Diagrama de Interação Há dois tipos de diagrama de interação: Diagrama de seqüência Diagrama de colaboração O diagrama de seqüência e o diagrama de colaboração são equivalentes entre si. Diagrama de seqüência: mensagens enviadas no decorrer do tempo. Diagrama de colaboração: mensagens enviadas entre objetos que estão relacionados.

Diagrama de Seqüência A posição vertical das mensagens permite deduzir a ordem na qual elas são enviadas. Ordem de envio de mensagens em um diagrama de colaboração pode ser deduzida a partir das expressões de seqüência. Elementos básicos: Atores Objetos Classes Linhas de Vida Mensagens Focos de controle Criação de objetos Destruição de objetos

Diagrama de Seqüência

Diagrama de Seqüência

Diagrama de Colaboração Mostra os objetos relevantes para a realização de um caso de uso (ou cenário deste). Estruturalmente, é bastante semelhante a um diagrama de objetos. A diferença é que são adicionados setas e rótulos de mensagens nas ligações entre esses objetos. Objetos (nomeados e anônimos) e classes podem aparecer. As ligações (linhas) entre objetos correspondem a relacionamentos existentes entre os objetos.

Seqüência x Colaboração Diagrama de seqüência: Exibe as mensagens ordenadas no tempo. A visualização fica dificultada conforme o número de objetos cresce (disposição em uma dimensão). Diagrama de colaboração: Exibe mensagens enfatizando relacionamentos. Melhor utilização do espaço (disposição em duas dimensões). O diagrama de seqüência é equivalente ao diagrama de colaboração Ferramentas CASE: transformação automaticamente.

Seqüência x Colaboração

Seqüência x Colaboração

Mensagens para cumprir Responsabilidades O fato de um objeto “precisar de ajuda” indica a necessidade de este enviar mensagens. Na construção de diagramas de interação, mensagens de um objeto a outro implicam em operações que classes devem ter. Uma mensagem implica na existência de uma operação no objeto receptor. A resposta ao recebimento de uma mensagem é a execução dessa operação.

Mensagens para cumprir Responsabilidades

Utilização São utilizados na fase de construção de um ciclo de vida incremental e iterativo. São construídos para os casos de uso alocados para uma iteração desta fase. Controvérsia sobre utilização na análise ou no projeto. Inicialmente (+análise), pode exibir apenas os objetos participantes e mensagens exibindo somente o nome da operação. Posteriormente (+projeto), pode ser refinado. criação e destruição de objetos, tipo e assinatura completa de cada mensagem, etc.

Utilização Em um processo incremental e iterativo, os modelos evoluem em conjunto. Embora estes modelos representem visões distintas do sistema, eles são interdependentes. Modelo de classes  modelo de interações. Modelo de interações  refinamento do modelo de casos de uso. Modelo de interações  operações para o modelo de classes. Modelo de interações  novos atributos para o modelo de classes.

Utilização

Diagrama de Transição de Estados.

Diagrama de Transição de Estados. Objetos do mundo real se encontram em estados particulares a cada momento. Um DVD pode estar reservado. Uma conta bancária pode estar inativa. Da mesma forma, cada objeto participante de um sistema de software orientado a objetos se encontra em um estado particular. Um objeto muda de estado quando acontece algum evento interno ou externo ao sistema.

Diagrama de Transição de Estados. Através da análise das transições entre estados dos objetos de um sistema de software, podem-se prever todas as possíveis operações realizadas, em função de eventos que possam ocorrer. O diagrama da UML que é utilizado para realizar esta análise é o diagrama de transição de estado (DTE).

Diagrama de Transição de Estados. A UML tem um conjunto rico de notações para desenhar um DTE. Estados. Transições. Evento. Ação. Atividade. Transições internas. Estados aninhados. Estados concorrentes.

Estado Situação na vida de um objeto em que ele satisfaz a alguma condição ou realiza alguma atividade. Cada estado de um objeto é determinado pelos valores dos seus atributos e (ou) pelas suas ligações com outros objetos. Por exemplo: “o atributo reservado deste objeto livro tem valor verdadeiro”. Outro exemplo: “uma conta bancária passa para o vermelho quando o seu saldo fica negativo”.

Estados O estado inicial indica o estado de um objeto quando ele é criado. Só pode haver um estado inicial em um DTE. Essa restrição serve para definir a partir de que ponto um DTE deve começar a ser lido. O estado final é representado como um círculo “eclipsado” e indica o fim do ciclo de vida de um objeto. Este estado é opcional e pode haver mais de um estado final em um DTE.

Estados Notação para representar estados na UML. Estado Inicial Estado Ordinário Estado Final Estado

Transições Os estados estão associados a outros pelas transições. Uma transição é mostrada como uma linha conectando estados, com uma seta apontando para um dos estados. Quando uma transição entre estados ocorre, diz-se que a transição foi disparada. Uma transição pode ser rotulada com uma expressão da seguinte forma: evento (lista-parâmetros) [guarda] / ação

Eventos Uma transição possui um evento associado. Um evento é algo que acontece em algum ponto no tempo e que pode modificar o estado de um objeto: Pedido realizado Fatura paga Cheque devolvido

Exemplo bloqueada disponível Realizar deposito(quantia) /depositar(quantia) Conta Criada Conta Fechada when(saldo>0) Realizar saque(quantia) [quantia = saldo] /sacar(quantia) Após(30 dias)/aplicarJuros()

Ações Ao transitar de um estado para outro, um objeto pode realizar uma ou mais ações. Uma ação é uma expressão definida em termo dos atributos, operações, associações da classe ou dos parâmetros do evento também podem ser utilizados. A ação associada a uma transição é executada se e somente se a transição for disparada.

Atividades Semelhantes a ações, atividades são algo que deve ser executado. No entanto, uma atividade pode ser interrompida (uma ação não pode). Por exemplo, enquanto a atividade estiver em execução, pode acontecer um evento que a interrompa. Outra diferença: uma atividade sempre está associada a um estado (ao contrário, uma ação está associada a uma transição).

Exemplo

Diagrama de Atividades

Diagrama de Atividades É um tipo especial de diagrama de estados, onde são representados os estados de uma atividade, ao invés dos estados de um objeto: Um diagrama de atividade exibe os passos de uma computação. Cada estado é um passo da computação, onde o sistema está realizando algo. É orientado a fluxos de controle (ao contrário dos DTEs que são orientados a eventos). Fluxogramas estendidos... Além de possuir toda a semântica existente em um fluxograma, permite representar ações concorrentes e sua sincronização.

Diagrama de Atividades: Elementos Elementos utilizados em fluxos seqüenciais: Estado ação. Estado atividade. Estados inicial e final, e condição de guarda. Transição de término. Pontos de ramificação e de união. Elementos utilizados em fluxos paralelos: Barras de sincronização. Barra de bifurcação (fork). Barra de junção (join).

Fluxos de controle seqüenciais Um estado em um diagrama de atividade pode ser: um estado atividade: leva um certo tempo para ser finalizado. um estado ação: realizado instantaneamente. Deve haver um estado inicial e pode haver vários estados finais e guardas associadas a transições. pode não ter estado final, o que significa que o processo ou procedimento é cíclico. Uma transição de término significa o término de um passo e o conseqüente início do outro. ao invés de ser disparada pela ocorrência de um evento, é disparada pelo término de um passo.

Fluxos de controle seqüenciais Um ponto de ramificação possui uma única transição de entrada e várias transições de saída. Para cada transição de saída, há uma condição de guarda associada. Quando o fluxo de controle chega a um ponto de ramificação, uma e somente uma das condições de guarda deve ser verdadeira. Pode haver uma transição com [else]. Um ponto de união reúne diversas transições que, direta ou indiretamente, têm um ponto de ramificação em comum.

Diagrama de Atividades

Fluxos de controle paralelos Fluxos de controle paralelos: dois ou mais fluxos sendo executados simultaneamente. Uma barra de bifurcação recebe uma transição de entrada, e cria dois ou mais fluxos de controle paralelos. cada fluxo é executado independentemente e em paralelo com os demais. Uma barra de junção recebe duas ou mais transições de entrada e une os fluxos de controle em um único fluxo. Objetivo: sincronizar fluxos paralelos. A transição de saída da barra de junção somente é disparada quando todas as transições de entrada tiverem sido disparadas.

Fluxos de controle paralelos Algumas vezes, as atividades de um processo podem ser distribuídas por vários agentes que o executarão. processos de negócio de uma organização. Isso pode ser representado através de raias de natação (swim lanes). As raias de natação dividem o diagrama de atividade em compartimentos. Cada compartimento contém atividades que são realizadas por uma entidade.

Fluxos de controle paralelos

Usos de Diagramas de Atividades Modelagem dos fluxos de trabalho de um processo do negócio: Modelagem também é um processo de entendimento. o desenvolvedor constrói modelos para entender melhor um problema. Modelagem da lógica de um caso de uso: Em determinadas situações, é interessante complementar a descrição do caso de uso com um diagrama de atividade.

Diagrama de Atividades

FIM