Dinâmica dos Objetos

Documentos relacionados
Interações entre objetos

UML (Linguagem unificada de modelagem)

Levantamento de Classes

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE

Diagrama de Estados. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Especificação de Sistemas de Software e a UML

DIAGRAMAS DE CLASSE UML

Modelagem Temporal com UML

UML. Modelando um sistema

Panorama da notação UML

ANÁLISE DE SISTEMAS. Diagrama de atividades. por. Antônio Maurício Pitangueira

DIAGRAMAS DE SEQUÊNCIA

Linguagem UML. Linguagem de Modelagem Unificada UML. Diagramas de Comportamento Parte 2. Rosemary Silveira Filgueiras Melo

FORMULÁRIO DE REGISTRO DE PLANO DE CURSO 2013.I

COMANDOS DE REPETIÇÃO (ENQUANTO)

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

Plano de Trabalho Docente Ensino Técnico

Diagramas de Interacção

Diagrama de Estados. Régis Patrick Silva Simão. Régis Simão Diagrama de Estados 1/21

Marcelo Henrique dos Santos

Modelagem Temporal com UML

INF1013 MODELAGEM DE SOFTWARE

Diagrama de Atividades

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

Análise e Projeto Orientados a Objetos

Introdução a UML. Aula 04 Analise de Sistemas Profª Rita de Cassia Gaieski

Diagrama de Atividades

Tema 2: Modelo Dinâmico

PCS3413 Engenharia de Software e Banco de Dados

Laboratório de Programação

Introdução a UML (Unified Modeling Language)

Plano de Trabalho Docente Ensino Técnico

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

Linguagem UML. Linguagem de Modelagem Unificada UML. Diagrama de Estado. Rosemary Silveira Filgueiras Melo

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

TCC EM SISTEMAS DA INFORMAÇÃO. Aula 9- Modelando um Sistema com a UML parte 2

Engenharia de Software 2012/3 Aula 5 Modelagem de Sistemas

Modelagem e implementação de programas concorrentes

APÊNDICE D Unified Model Language (UML)

Diagrama de Máquina de Estados

Modelagem e CLP Redes de Petri

UML e seus diagramas

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

Aula 17. Máquina de Estados Parte 1. SEL Sistemas Digitais. Prof. Dr. Marcelo Andrade da Costa Vieira

UML - Unified Modeling Language

POO29004 Programação Orientada a Objetos

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Análise e projeto de sistemas

INF1013 MODELAGEM DE SOFTWARE

8 Diagrama de Máquina M Estados Diagrama de Máquina de Estados: Este diagrama demonstra o comportamento de um elemento através de um conjunto de

Sistemas Distribuídos

Trata-se de uma variação do diagrama de estado com um propósito um pouco diferente do diagrama de estado:

Diagrama de Sequência.

Programação Concorrente. Prof. Hugo Vieira Neto

Engenharia de Software

Grafos: Busca. SCE-183 Algoritmos e Estruturas de Dados 2. Thiago A. S. Pardo Maria Cristina

Modelo Conceitual Parte 1 Banco de Dados I Prof. Luiz Antônio Vivacqua C. Meyer

Visões Arquiteturais. Visões Arquiteturais

Diagrama de Atividades. Ricardo Roberto de Lima UNIPÊ APS-I

Aula 6 - Análise de Requisitos: Especificação de Requisitos. Análise de Sistemas Prof. Filipe Arantes Fernandes

Aula 4 POO 1 Análise OO. Profa. Elaine Faria UFU

Modelagem de Processos Redes de Petri e Workflow nets. Silvana Pereira Detro

Introdução. Diagramas de Interação. Introdução. Introdução. Introdução. Introdução. Os modelos de análise não respondem a algumas perguntas:

5 Diagrama de Estado. 5.1 Definição

A modelagem de Negócio com UML

Análise e Projeto Orientados a Objetos Aula III Concepção Visão Geral do Sistema. Prof. Bruno E. G. Gomes IFRN

INF1404 MODELAGEM DE SISTEMAS

Introdução a UML e seus diagramas

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

PROJETO PROCEDIMENTAL. Projeto de Programas PPR0001

Diagrama de Sequência Notação Objetos. Diagrama de Sequência Notação Mensagens. Diagrama de Sequência Notação Mensagens. Tipos de Mensagens

Análise e Projeto Orientados a Objetos

Requisitos de sistemas

1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010

UML (Unified Modelling Language)

Algoritmos e Programação

Algoritmo. Conjunto finito de instruções que permitem a realização de uma tarefa. 2.1: Introdução 2. ALGORITMOS

Modelagem Dinâmica. Toda a ação é designada em termos do fim que procura atingir. Niccolo Maquiavel. O pensamento é o ensaio da ação.

Diagrama de Atividades. Professor: André Gustavo Bastos Lima

PROJETOS DE SISTEMAS DE INFORMAÇÃO

Diagrama de Seqüência

Modelagem de Processos. Prof a. Silvia Inês Dallavalle de Pádua

PROJETO PROCEDIMENTAL. Projeto de Programas PPR0001

IFSC/Florianópolis - CTI - Projeto de Sistemas - prof. Herval Daminelli

Análise e projeto de sistemas

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

Esse diagrama documenta o que o sistema faz do ponto de vista. do usuário. Em outras palavras, ele descreve as principais

MODELAGEM FUNCIONAL USANDO DIAGRAMA DE FLUXO DE DADOS. Professora: Fabíola Gonçalves.

Análise de Sistemas. Aula 5

UML. Rodrigo Leite Durães.

UML Diagrama de Atividades

Os diagramas de use case capturam os requisitos funcionais do sistema.

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

COMANDOS DE REPETIÇÃO (ENQUANTO, REPITA E PARA)

Transcrição:

Dinâmica dos Objetos

Dinâmica dos objetos Necessário desenvolver estudo sobre comportamento interno das classes Permitir a especificação da dinâmica i.e. a forma como os objetos de cada classe se comportam A especificação da dinâmica do sistema deve ser feita através de diagramas de estado

Notação de Harel Um diagrama de estados é um grafo dirigido cujos nós representam os estados e cujos arcos representam as transições entre os estados Estado de um objeto é um momento na vida de um objeto. Um objeto pode passar por diferentes estados: o momento em que foi criado, momento que fez uma inicialização, momento que fez uma solicitação, momento de seu desaparecimento, etc Muitas vezes o nome de um estado é um verbo no gerúndio ou no particípio Um mesmo estado pode ser repetido em um diagrama de estados i.e. se houver dois estados com o mesmo nome trata-se, na verdade, do mesmo estado

Estados de um objeto

Transição de estado Um objeto não fica permanentemente em um estado Os objetos tendem a avançar de um estado para outro O avanço de uma situação (estado) para outra denomina-se transição de estado Sintaxe: Evento: indica o nome de um sinal, mensagem ou notificação recebida pelo objeto e que torna a transição habilitada Argumentos: são valores recebidos junto com o evento [Condição]: expressão lógica que é avaliada quando o evento ocorrer /Ação: indica uma ação que é executada durante a transição de um estado a outro

Exemplo de diagrama de estados (com 5 estados e 4 transições)

Construções típicas Sequências: fluxos de estados representados por encadeamentos de um estado e uma transição (figura anterior) Bifurcações e junções bifurcação: duas ou mais transições partindo de um mesmo estado junção: duas ou mais transições conduzindo a um mesmo estado

Conflitos Um conflito ocorre em uma bifurcação quando duas ou mais transições partindo de um mesmo estado estão habilitadas

Construções típicas Repetições (laços): encadeamento cíclico de estados e transições contendo um controle sobre a repetição dos ciclos

Cláusula de envio ação de envio de uma mensagem, do objeto que se está modelando, para algum outro objeto. Notação: acento circunflexo seguido do nome do objeto e do nome da mensagem separados por ponto

Transições reflexivas Transição que parte de um estado e alcança o mesmo estado Produz ação sem afetar o estado no qual o objeto se encontra Indica que o objeto recebe certas mensagens (ou percebe certos eventos) sem alterar seu estado comportamental

Ações nos estados Sempre que o estado for alcançado, as ações serão realizadas dois compartimentos: identificação: contém o nome do estado das ações: listas das ações realizadas no interior do estado Categorias de ações Entrada: realizada exatamente no momento em que se alcança o estado (antes de qualquer outra ação) Saída: realizadas exatamente no momento de abandono de um estado

Ações nos estados

Ações nos estados Categorias de ações Saída: realizadas exatamente no momento de abandono de um estado

Estados compostos Estado constituído de um conjunto de subestados permite que se façam construções hierarquizadas com estados maiores no níveis iniciais maior nível de abstração estados mais específicos nos níveis seguintes menor abstração maior detalhamento

Concorrência Representam dois ou mais encadeamentos de estados e transições que são percorridos simultaneamente A concorrência dentro de um objeto significa que ele possui mais de um fluxo de de controle (threads, processos) Representação divisão de um estado composto em regiões separadas por linhas tracejadas Pontos de sincronismo explícito: entrada e saída do estado composto

Concorrência

Concorrência Sincronismo entre os estados intermediários de duas ou mais concorrências

Ex. de diagramas de estados

Ex. de diagramas de estados

Ex. de diagramas de estados

Diagramas de atividades É um diagrama de estado no qual a maioria dos estados representa a execução de ações ou atividades Primitivas adicionais: estados de bifurcação e convergência

Diagramas de atividades Primitivas adicionais Sincronismo de concorrências

Exercício 5) Para a especificação apresentada em aula, a partir dos diagramas de sequência criados no exercício 3, desenhe as máquinas de estado que implementem tais sequências.

Bibliografia [1] STADZISZ, Paulo Cézar. Projeto de software usando a UML. Versão 2002. CEFET-PR