Modelagem Dinâmica com UML



Documentos relacionados
Modelagem com UML. Fabio Perez Marzullo. IEEE Body of Knowledge on Services Computing Committee on Services Computing, IEEE Computer Society

DIAGRAMA DE ATIVIDADES

MODELAGEM DE SISTEMAS

Uma visão mais clara da UML Sumário

3.1 Definições Uma classe é a descrição de um tipo de objeto.

Uma visão mais clara da UML Sumário

Gerenciamento da Integração (PMBoK 5ª ed.)

Casos de uso Objetivo:

Utilizando os Diagramas da UML (Linguagem Unificada de Modelagem) para desenvolver aplicação em JSF

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

UML: Diagrama de Casos de Uso, Diagrama de Classes

DESENVOLVENDO O SISTEMA

CERTIFICADO DE CONCLUSÃO LIVRO E CERTIFICADO

Guia de utilização da notação BPMN

4.4. UML Diagramas de interacção

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

04/07/2015 UML. Prof. Esp. Fabiano Taguchi DEFINIÇÃO DE REQUSIITOS

Versão Setembro/2013. Manual de Processos. Módulo Protocolo

UML & Padrões Aula 3. UML e Padrões - Profª Kelly Christine C. Silva

Desenvolvimento de uma Etapa

Exercícios Diagrama de Casos de Uso. Disciplina: Engenharia de Requisitos

UML Unified Modeling Language. Professor: André Gustavo Bastos Lima

Bem-vindo ao curso delta Gerenciamento de peso para a versão 9.1. Este curso aborda a nova solução de peso introduzida nessa versão.

UML. Máquina de Estados

4 - Framework proposto para Sistemas Multi-Agentes Abertos

Sistema Integrado de Atendimento

Averbação eletrônica

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais prof@edison.eti.

QUESTÕES PARA ESTUDO DIAGRAMA DE CLASSE

Engenharia de Software Unidade XI UML Parte 2

5 Exemplo de aplicação

Princípios de Análise e Projeto de Sistemas com UML

Exemplo de Modelagem Orientada a Objetos

Modelos de Sistemas Casos de Uso

Eduardo Bezerra. Editora Campus/Elsevier

Modelagem de Casos de Uso (Parte 1)

Programação Orientada a Objetos. Introdução à Análise Orientada a Objetos (AOO)

Casos de Uso. Professor MSc Wylliams Barbosa Santos wylliams.wordpress.com Laboratório de Programação

Klavier Tecnologia da Informação. Klavier Sistemas Integrados. Contas a Pagar

Resolução da lista de exercícios de casos de uso

2 Diagrama de Caso de Uso

Diagramas de Interação da UML (Diagrama de Sequência e Diagrama de

Aula 5 UML: Casos de Uso

Análise e Projeto de Sistemas. O que é modelagem. O que é modelagem. Tripé de apoio ao desenvolvimento. Notação: UML. Ferramenta: Rational Rose.

Manual do Fórum do Meio Ambiente. Propõe instruções para primeiro acesso e funcionalidades básicas do sistema.

REQUISITOS DE SISTEMAS

Processo: Vendas Lista de casamento

Curso SGQ. Formação Elearning. Guia de Acesso ao Curso. * Sensibilização para a Qualidade * 1 - Acesso à Plataforma Studio

Especificação de Caso de Uso

PROJETO (OU DESIGN) DO SOFTWARE Diagrama de Estrutura

Monitor de Comercialização - Proponente MT

Modelagem de Sistemas Orientado a Objetos com UML. Capítulo 8. Diagrama de Estados. Ana Paula Gonçalves Serra, Dr.

Passo-a-passo: Pedido Combinado

DATAGEOSIS EDUCACIONAL 2005

Monitor de Comercialização Ofertante. Última Atualização 12/11/2015

LASERTECK SOFTECK FC MANUAL DO USUÁRIO

SISTEMA BRENA DE AUTOMAÇÃO COMERCIAL

Juros Simples, Compostos, e Contínuos

Orientação a Objeto e UML Questões 2014 Prof. Felipe Leite

ERP-8115 Nota Fiscal Eletrônica v2.0 (XML) Erro "Elemento inválido" emitido pelo sistema na transmissão da Nota Fiscal Eletrônica.

Análise e Projeto de Software

Manual de Operação do Multiconta Drive / Delivery

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

Manual do Usuário. Menus: Produtor Rural, Propriedade Rural e GTA Módulo: Produtor Rural. dezembro de 13

Explodindo montagens

INSTRUÇÃO NORMATIVA 009/2005-ProGRAD

O Tema Progresso e o Princípio de Gerenciar por Estágios. Palavras Chave: Estágios de Gerenciamento. Progresso. Controle. Projetos. PRINCE2.

Franklin Ramalho Universidade Federal de Campina Grande - UFCG

Sistemas Corporativos da USP (Web)

DIRETO. Manual do Usuário. PROCERGS Divisão 7

Apresentação Procedimentos iniciais Novo Pagamento Manutenção Assinatura... 6

Curso SGQ. Formação Elearning. Guia de Acesso ao Curso. * Sensibilização para a Qualidade * 1 - Acesso à Plataforma Studio

REPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX

TUTORIAL DE UTILIZAÇÃO GOOGLE MAP MAKER

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)

CASO DE USO. Isac Aguiar isacaguiar.com.br

Para o PowerPoint, assim como para vários softwares de apresentação, uma apresentação é um conjunto de slides.

Sumário. 1. Instalando a Chave de Proteção Novas características da versão Instalando o PhotoFacil Álbum 4

MODELAGEM DO SISTEMA: DIAGRAMA DE ATIVIDADES

Micro Mídia Informática Fevereiro/2009

AULA 14 Plugin TerraEdit

Análise e Projeto Orientado a Objetos

Manual de Utilização do Sistema Protocolo

Bem-vindo ao tópico sobre administração de listas de preços.

Matéria elaborada com base na legislação vigente em: Sumário:

1) Ao ser executado o código abaixo, em PHP, qual será o resultado impresso em tela?

Capítulo 13 Pastas e Arquivos

Gestão Unificada de Recursos Institucionais GURI

ANÁLISE E PROJETO ORIENTADO A OBJETOS. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

1. REGISTRO DE PROJETOS

Diagrama de Casos de Uso

Transcrição:

Modelagem Dinâmica com UML Prof. Márcio Barros marcio@cos.ufrj.br Diagramas de Sequência Protocolos de Interação

Cenários Definição Um cenário é um caminho entre os fluxos de um use case Um use case é uma coleção de cenários Um cenário é uma instância de um use case Use cases são compostos de um fluxo principal e subfluxos Subfluxos também podem se ramificar em subfluxos As ramificações de fluxos e subfluxos formam uma árvore Um cenário é um caminho da raiz até um nó folha da árvore de fluxos e subfluxos de um use case O conjunto de cenários de um sistema é composto por todos os caminhos de todos os use cases Fluxos e Subfluxos Fluxo principal do use case Subfluxos do fluxo principal Ramificações de um subfluxo do use case Subfluxos demonstram operações que podem ser selecionadas pelo usuário ou casos especiais de algumas operações.

Cenário Um cenário é um caminho da raiz até uma folha da árvore de ramificações de um use case Objetivo Cenários tratam da linguagem do usuário São utilizados na identificação dos elementos envolvidos nas operações do sistema no mundo real Auxiliam na identificação das classes de objetos que devem interagir para concluir uma funcionalidade do sistema Cobertura Cenários primários cobrem o fluxo principal dos use cases Cenários secundários cobrem fluxos alternativos Cenários de exceção cobrem fluxos de exceção e de erro

Cenários Desenvolvimento incremental No desenvolvimento de um sistema, o analista deve começar sua investigação pelos cenários primários Cenários secundários são progressivamente agregados Cenários secundários relevantes devem ser estudados para evitar futuras alterações significativas nas principais classes Diagramas de Sequência Objetivo Determinam os objetos responsáveis pela realização de um cenário e as mensagens que são trocadas entre eles O diagrama apresenta a ordem com que as mensagens são trocadas no tempo Composição Objetos Sequências

Objeto Representação Objetos são representados por retângulos Fulano: Hóspede Objetos devem ter um nome (sublinhado):» Nome de um objeto específico» Nome de objeto + nome da classe» Nome da classe (objeto anônimo) A linha de vida define a sequência de mensagens recebidas ou emitidas pelo objeto no tempo Objetos Um diagrama de sequências contém diversos objetos Os objetos são alinhados no topo do diagrama Suas linhas de vida descem em direção à base do diagrama Fulano: Hóspede Chamada Telefônica Pedido de Serviço

Mensagens Representação Mensagens são representadas como setas entre dois objetos As setas devem conter nomes de métodos do objeto destino Estadia Chamada Telefônica CalculaPreço() Foco de Controle Retângulos na linha de vida de um objeto Representam o tempo em que um objeto está ativo na troca de mensagens Representam o tempo em que o objeto é responsável pelo fluxo de controle do cenário Focos de controle são opcionais nos diagramas de sequência

Complementos Uma mensagem pode ter dois tipos de complementos Condição:» A mensagem somente será emitida se a condição for verdadeira» A condição é expressa entre colchetes antes do nome do método Repetição» A mensagem será emitida múltiplas vezes» Um asterisco é apresentado antes do nome do método Auto-Mensagem Ocorre quando um objeto chama um método seu para realizar parte do cenário Auto-mensagens são representadas por setas saindo e retornando para o próprio objeto Estadia CalculaDiarias( )

Exemplo Estadia Chamada Telefônica Pedido de Serviço * CalculaPreço() * CalculaPreco() CalculaDiarias( ) Descobrindo Diagramas de Sequência Durante a análise Devemos procurar por diagramas de sequência que envolvam operações algoritmicamente complexas Operações que criam, editam ou apenas consultam objetos devem ser postergadas para a fase de projeto Durante o projeto Diagramas de sequência devem demonstrar as relações entre as janelas da aplicação, os relatórios, o banco de dados e as operações realizadas pelos use cases

Diagramas de Colaboração Alternativa ao diagrama de sequência Não apresenta a linha de tempo dos objetos Objetos representados por retângulos Mensagens representadas como setas entre os retângulos Mensagens são numeradas (sequência de tempo) Exemplo (Encerramento de Estadia) 3: CalculaDiarias() Estadia 1: CalculaPreço() 2: CalculaPreco() Chamada Telefônica Pedido de Serviço

ESTADOS Modelagem Dinâmica de Classes Diagramas de Estado Modelam comportamento dinâmica das classes Diagramas de sequência modelam o comportamento de um use case no tempo Diagramas de estado modelam o comportamento de uma classe no tempo São utilizados apenas em classes com estados relevantes Classes que monitoram eventos ao longo de sua vida Serviços de monitoração algoritmicamente complexos Estudar operações realizadas sobre as classes ou pelas classes

Diagramas de Estado São utilizados por diversos métodos de análise Análise estruturada moderna Análise essencial Outros métodos de análise orientada a objetos Componentes Estado Transição Estado Inicial Estado Final Estados Um estado representa uma condição em que o objeto pode se encontrar durante sua existência no sistema O estado de um objeto muda ao longo do tempo O estado é definido pelos valores dos atributos do objeto Determina eventos, ações e condições possíveis no objeto Uma transição representa uma mudança de estado Transições podem ser automáticas ou geradas por eventos Transições não podem ser interrompidas e custam tempo zero.

Estados Representação UML Estado: representado por um retângulo de bordas arredondadas Transição: representada por uma seta entre os estados O nome do estado é apresentado no interior do retângulo Nas transições geradas por eventos, a seta indica o nome do evento que provocou a mudança de estado Parado Andando Estados Especiais Um diagrama de estados tem no mínimo 2 estados: Estado Inicial: um objeto recém criado no sistema se encontra neste estado. Estado Final: estado final na cadeia de troca de estados do objeto. O objeto não poderá trocar de estado após atingir seu estado final. Em um diagrama de estados podem existir diversos estados finais.

Transições Uma transição pode estar associada a: Uma ação, que indica um método do objeto que será executado quando a transição de estado se realizar Uma condição, também conhecida como guarda, que indica quando a transição de estado deve ocorrer Ambos são apresentados junto ao nome do evento na transição, como na figura abaixo Ambos são opcionais Evento [condição] / ação Estado 1 Estado 2 Detalhes de Estados Estados podem estar associado a ações Uma ação de entrada (entry) indica uma operação realizada sempre que ocorre uma transição para dentro do estado Uma ação de saída (exit) indica uma operação realizada sempre que ocorre uma transição para fora do estado Ações são apresentadas no interior do estado, abaixo de seu nome Parado entry: MudaVelocidade(0)

Descobrindo Estados Uma classe possui estados quando: Possui diversas operações que são dependentes entre si» Uma venda somente pode ser entregue depois de registrada» Uma venda somente pode ser paga depois de entregue» Uma venda somente pode ser cancelada depois de registrada» Registrada, entregue, paga e cancelada são estados da venda As características de um objeto influenciam o seu comportamento ou o comportamento de outra classe» Um cliente pode ser não devedor, devedor ou sem crédito» Vendas nunca são realizadas para clientes sem crédito» Um cliente devedor ou sem crédito não pode ser removido do sistema» Não devedor, devedor ou sem crédito são estados do cliente Descobrindo Estados Análise das operações do sistema Classes que têm mais que as quatro operações básicas» Determine que operações precedem outras operações» Crie um estado para representar o objeto após cada operação» Determine as transições de estado Verifique as restrições das operações» Em cada classe, verifique se suas operações dependem de condições dos atributos de seus objetos ou de objetos de outras classes» Crie estados nos respectivos objetos dependentes, representando as condições em que as operações da outra classe são aplicáveis