UML Statechart CIn-UFPE.

Slides:



Advertisements
Apresentações semelhantes
Modelagem de Estados.
Advertisements

Diagrama de Máquina de Estados
Aula 8 Contratos.
Desenvolvimento de Sistemas Baseado na Transformação de Modelos
Diagrama de Atividades
Modelagem Orientada a Objetos
Modelagem de Sistemas Modelagem Funcional Modelagem de Dados
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
Professora: Aline Vasconcelos IF Fluminense
Projeto de Software Orientado a Objetos
Prof. Luís Fernando Garcia
Diagrama de Atividades
Curso UML Diagramas de Atividade
(Linguagem de Modelagem Unificada)
Máquina de Estados Uma máquina de estados finitos ou autômato finito é uma modelagem de um comportamento composto por estados, transições e ações Um estado.
Máquina de Estados Uma máquina de estados finitos ou autômato finito é uma modelagem de um comportamento composto por estados, transições e ações Um estado.
Selma Shin Shimizu Melnikoff 2006
Modelagem de Interações
UML - Unified Modeling Language
Diagrama de Estados.
Diagramas de Sequência e Comunicação
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
Diagramas de Estados(*)
UML - Unified Modeling Language
Diagrama de Atividades
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
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.
Diagramas de Sequência e Comunicação
DIAGRAMA DE CLASSE Modelagem de Software
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Diagrama de Atividades
Professores: Artulanez Juccelino Silas
Abr-17 Projetar Cápsulas Aula de Laboratório Projetar classes.
Diagramas de Atividade
Silas Juccelino Artulanez.  O que é?  Notação  Estado  Mudança de estado  Condições e ações  Diagramas subdivididos  Passos na construção  Verificação.
UNIDADE 2 UML MODELAGEM TEMPORAL
Especificação, Modelação e Projecto de Sistemas Embutidos / 2009.
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.
Marcio de Carvalho Victorino
Diagrama de Atividades
Simone Sawasaki Tanaka
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
UML - Unified Modeling Language
Análise Orientada Objeto
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Profª Lucélia Oliveira
Diagramas de Estado.
Laboratório de Programação
Desenhando Fluxogramas
Diagrama de Colaboração. Diagramas de Interação Expressam informações bastante similares porém de maneira diferente Diagrama de seqüência: – Interação.
Modelando Sistemas em UML
Casos de Uso Tarciane Andrade
Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha.
Análise e Projeto de Sistemas
A linguagem unificada de modelagem
Cápsulas, Protocolos, portas e conexões em UML-RT.
Modelagem de Sistemas Orientada a Objeto Com UML
CIn-UFPE1 UML Uma linguagem unificada de modelagem Visão Geral.
Projetar Cápsulas Parte 1. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar cápsulas | 2 Objetivos deste módulo.
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.
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.
Análise e Conceção de Sistemas
Modelagem Dinâmica – Diagrama de Sequência Toacy. Oliveira - PESC/COPPE/UFRJ.
Diagramas de Estados.
Transcrição da apresentação:

UML Statechart CIn-UFPE

Modelagem Comportamental Diagramas de Use Case Diagramas de Seqüência Diagramas de Colaboração Statecharts Diagramas de Atividades CIn-UFPE

Máquinas de Estado Podem ser aplicadas para modelar o comportamento de vários elementos de UML: casos de uso específicos, objetos individuais, conjuntos de objetos, ou um sistema por completo. Especificam as seqüências de estados de um elemento em resposta aos eventos. Estado Transição Evento Ação e Atividade CIn-UFPE

Estado É uma situação durante a vida de um elemento, na qual ele satisfaz alguma condição, executa alguma atividade, ou espera por algum evento. Exemplos: Ocioso Recebendo Pagamento Entregando item CIn-UFPE

Máquina de Vendas Ociosa Recebendo R$ Oferendo serviços Entregando Troco Despachando Item entrada de moedas(quant.) cancelar / devolver moedas [ item vazio ] [ troco < 0 ] selecionar (item) [ troco > 0 ] [ troco = 0 ] CIn-UFPE

Estado inicial É um estado especial que, explicitamente, mostra o início da máquina de estado. Pode existir exatamente um estado inicial em cada diagrama de estado. O ícone de estado inicial é um círculo compacto com uma flecha. CIn-UFPE

Estado final O estado de parada é um círculo englobando um círculo compacto com uma flecha. Normalmente, você pode assumir que a máquina de estado associada a uma classe sairá de sua existência quando o estado final é atingido. CIn-UFPE

Estados CIn-UFPE

Partes de um Estado Nome Ações de entrada (entry): Quando entrar no estado, a ação será executada Ações da saída (exit): Quando sair do estado, a ação será executada. Atividades (do): Enquanto no estado, o objeto faz algo que continuará a ser executado até ser interrompido por um evento CIn-UFPE

Partes de um estado: exemplo Nome-do-estado entry/ação-de-entrada exit/ação-de-saída do/atividade CIn-UFPE

Transição É um relacionamento entre dois estados, indicando que o objeto no primeiro estado irá executar certas ações e entrar no segundo estado quando o evento especificado ocorrer e as condições especificadas forem satisfeitas. Uma transição de estado é uma mudança de estado causada por um evento. Utiliza-se transições de estado para conectar dois estados em um diagrama de estado ou para mostrar transições de um estado para ele mesmo. CIn-UFPE

Transição Pode-se mostrar uma ou mais transições de estado desde que cada transição seja única. O ícone para uma transição de estado é uma linha com uma ponta de flecha apontando para o próximo estado. Ocioso Esfriando Quente demais CIn-UFPE

Partes da transição Estado fonte Evento de disparo Condição de guarda Ação Estado alvo CIn-UFPE

Evento de disparo Ocorrência de um estímulo que pode disparar uma transição de estado. Ex: Apertar o botão do mouse; Discar um dígito (número) É possível haver uma transição sem um evento de disparo. CIn-UFPE

Condição de guarda Expressão booleana entre [ ], colocada após o evento de disparo. A condição de guarda é avaliada apenas após a ocorrência do evento de disparo da transição. CIn-UFPE

Exemplo: Sinal de trânsito Norte/Sul seguir em frente Norte/Sul virar à esquerda encerrado o tempo [carros na via N/S esq.] encerrado o tempo [sem carros na via N/S esq.] encerrado o tempo encerrado o tempo encerrado o tempo [sem carros na via L/O esq.] Leste/Oeste virar à esquerda Leste/Oeste seguir em frente encerrado o tempo [carros na via L/O esq.] CIn-UFPE

Ação e Atividade Ação: uma resposta instantânea a uma transição Usualmente associada a uma transição, embora possa ser associada a um estado Atividade (do): Uma operação que tem uma certa duração, normalmente associada a um estado. CIn-UFPE

Problemas com Maq. Estados Máquinas de estados não estruturadas não possuem bom poder de expressão e tornam-se impraticáveis para problemas grandes. As formas de estruturação: Subestados seqüenciais Subestados concorrentes CIn-UFPE

Subestado seqüencial Ocioso Manutenção Validando Selecionando fazerManutenção Validando Selecionando Processando Imprimindo H entry / lerCartão exit / ejetarCartão cartãoInserido cancelar Ativo CIn-UFPE

Subestado concorrente Pode ser mostrado com partições pontilhadas. Relógio alarmeON alarmeOFF 12hs 24hs Acabou Bateria Inserir Bateria CIn-UFPE

Subestado concorrente Divisão do Controle: Subestado 1 Subestado 2 Subestado 4 Subestado 3 evento 0 evento 1 evento 2 evento 3 evento 4 CIn-UFPE

Transições e Estados Compostos De um estado para um estado no mesmo nível. Diretamente para um subestado, ou diretamente de um subestado. Diretamente de um superestado, o que significa que a transição de estado aplica-se para cada subestado do superestado (Supertransição). Diretamente para um superestado com subestados, o que significa transição para o estado inicial do superestado. CIn-UFPE

História Freqüentemente, quando transiciona-se diretamente para um estado com subestados, você quer retornar ao estado visitado mais recentemente no super-estado. Use a letra H dentro de um círculo para representar o log da história. H CIn-UFPE

História Neste exemplo, quando ocorrer uma falha, o super-estado Failure poderá começar em qualquer dos subestados, dependendo da última visita ao super-estado. CIn-UFPE

Relação entre diagrama de classes e statecharts Statecharts especificam uma seqüência permitida de mudanças de estado nos objetos associados às classes do Diagrama de Classes. Constrói-se um Statechart para cada classe com comportamento temporal significativo. Objetos se comunicam pelo envio e resposta a eventos. CIn-UFPE

Relação entre diagrama de classes e statecharts Eventos, ações e atividades podem ser representados como operações das Classes. Diferenças temporais de estado de um objeto são apropriadamente modeladas através de estados diferentes de uma mesma classe. CIn-UFPE

Dicas Digramas de Use Cases e Interação ajudam o início do processo de construção de Statecharts. Somente construa Statecharts para classes de objetos com um comportamento dinâmico significativo. Nem todas as classes de objeto necessitam de um Statechart. Somente considere os atributos relevantes quando da definição de um estado. Nem todos os atributos mostrados nas classes precisam ser usados num Statechart. CIn-UFPE