Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha.

Slides:



Advertisements
Apresentações semelhantes
Modelo de Casos de Uso Diagrama de Casos de Uso
Advertisements

Análise e Projeto Orientado a Objetos
Modelagem de Estados.
Análise e Desenvolvimento de Sistemas
Engenharia de Software
Aula 8 Contratos.
UML Visões – Parte 2.
Desenvolvimento de Sistemas Baseado na Transformação de Modelos
(Unified Modeling Language)
Unified Modeling Language (UML) - Modelação da Dinâmica -
ATSI ExtendingAndFormalizingTheFrameworkForInormati onStyleArchitecture Alunos: Manuel Mendes- nº49703 Francisco Silva – nº51298 Cristina Fraga- nº51383.
Contratos de Operação.
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Professor Sandro Carvalho
Linguagens de Modelagem para SMA
UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.
Modelagem Conceitual de Sistemas de Informação
Professora: Aline Vasconcelos IF Fluminense
Introdução a diagrama de classes e UML
(Linguagem de Modelagem Unificada)
Análise e Projeto de Sistemas
Passos na elaboração de um Programa
Aula 9 Fases do desenvolvimento de software UML Diagramas de classes
Aula 10 UML (cont.).
Contratos Modelagem Funcional.
Modelagem de Interações
Classes e objetos Modelagem
UML - Unified Modeling Language
Diagrama de Estados.
DIAGRAMA DE COMPONENTES
Diagramas de Estados(*)
UML - Unified Modeling Language
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Unified Modeling Language (UML) - Introdução -
Modelação Conceptual de Sistemas
Supporting Use Case Based Requirements Engineering David Marques Filipe Garcês Ricardo Cruz.
Diagramas de Interacção
Modelação Conceptual de Sistemas
Modelação Aula T01 – Modelação de Sistemas Referência: –Conceptual Modeling of Information Systems (Capítulo 1) José Borbinha.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Fase de Elaboração: Fluxo de Análise Análise de Sistemas de Software Prof. Rodrigo Ribeiro.
Diagramas de Atividade
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.
Simone Sawasaki Tanaka
UML - Unified Modeling Language
Diagramas de Comunicação
Banco de Dados Aplicado ao Desenvolvimento de Software
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Diagramas de Estado.
Revisão 2º Bimestre Engenharia de Software I
Análise e Projeto de Sistemas
A Linguagem Formal de Especificação VDM-SL
Linguagem de Modelagem Unificada
Object Constraint Language Philip Stephen Medcraft.
ATSI 2006/2007 Aulas práticas. Plano da Aulas Práticas de ACSI 7 Março- Apresentação. Exemplos de projectos de anos anteriores Março- Introdução.
Modelação Aula T13 Modelação Conceptual de Sistemas Comportamento Referências: –Conceptual Modeling of Information Systems (Capítulos 11, 12, 13 e 14)
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Modelagem de Sistemas Orientada a Objeto Com UML
Projetar Cápsulas Parte 1. Copyright © 2002 Qualiti. Todos os direitos reservados. Qualiti Software Processes Projetar cápsulas | 2 Objetivos deste módulo.
OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE.
Interações entre objetos
Fundamentos de Engenharia de SW Diagramas da UML Usados no Projeto de Software.
UML (Unified Modeling Language) A linguagem unificada de modelagem
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
Transcrição da apresentação:

Modelação Aula T15 Modelação Conceptual de Sistemas Revisão do Comportamento OCL – Object Constraint Language José Borbinha

Programa T01-T03 – Módulo 1 –Introdução à Modelação de Sistemas T04-T07 – Módulo 2 –Modelação Conceptual de Sistemas T08-T11 – Módulo 3 –Ontologias T12 – Correcção do Teste 1 T13-T15 – Módulo 4 –Modelação de Sistemas: Comportamento T16-T18 – Módulo 5 –Modelação de Sistemas: Arquitectura T19-T25 – Módulo 6 –Temas avançados 2Modelação

Modelação do Comportamento - Revisão… - (Conceptual Modeling of Information Systems -capítulos 11, 12, 14 e 14) (UML, Metodologias e Ferramentas CASE - Capítulo 8) 3Modelação

Modelação da Dinâmica (ou Comportamento) em UML Esquema de comportamento: A especificação das acções válidas e das mudanças possíveis no estado do domínio do sistema. Um sistema executa acções (as quais podem provocar ou não alterações no estado do domínio) Em UML o comportamento de um sistema representa-se através de: –Dinâmica geral do sistema Diagrama de Casos de Utilização Diagrama de Actividade –Diagramas de Interacção Dinâmica entre objectos –Diagrama de Sequência –Diagrama de Comunicação –Diagrama Temporal Diagrama da Visão Geral da Interacção –Comportamento dos objectos... Diagrama de (Máquina de) Estados 4Modelação

5 Um caso se uso representa um conjunto de acções que um ou mais actores realizam num sistema para obter um resultado concreto. Um cenário é uma instância de um caso de uso. Representa assim uma sequência de acções concreta que ilustra um comportamento real do sistema. É normal que um caso de uso possa ser descrito por vários cenários Casos de Usos Máquina de Bebidas Cliente Fornecedor Comprar bebida Repor bebidas Retirar dinheiro Dono Abrir a máquina Fechar a máquina «include»

Diagramas de Actividade Descrição das actividades de um sistema (lógica do sistema e fluxos de dados), fornecendo uma visão do fluxo de controlo de um caso de uso. 6Modelação

Actividades e Objectos Exemplo para uma sequência de actividades evidenciando os objectos afectados nas entradas e saídas de algumas actividades 7Modelação

Actividades e Objectos Exemplos de actividades evidenciando os objectos passados de uma para outra (“data flow”) 8Modelação Exemplos retirados do “help” do Enterprise Architect…

Diagramas de Sequência e de Comunicação Diagramas de sequência mostram a sequência explicita das mensagens entre objectos adequados para visualizar um fluxo global ao longo do tempo Diagramas de comunicação mostram relações entre os objectos, adicionalmente às interacções adequados para visualizar padrões de colaboração entre objectos Estes diagramas são semanticamente equivalentes, mas não apresentem explicitamente a mesma informação (ex: a linha de tempo não existe no diagrama de comunicação...) 9Modelação

Máquinas de Estado Num sistema, as entidades podem ser modeladas como máquinas de estado. Cada entidade de um sistema (objecto) terá num dado instante a sua própria máquina de estados, mas conceptualmente o mesmo diagrama de transição de estados pode ser usado para todas as instâncias do mesmo tipo de entidades (classes). 10Modelação

Diagramas de Estado: Eventos, Acções e Condições com Guarda Uma transição de estado realiza-se se o evento ocorre e a guarda é verdadeira. Exemplos: Aviso da UPS [Energia da bateria > 10 minutos] / Emite aviso sonoro Aviso da UPS [Energia da bateria < 10 minutos] / Inicia shutdown Sintaxe completa de uma transição: evento [condição com guarda] / acção 11Modelação Evento de disparo de transição (trigger) Acção (executada na entrada do estado) Transição automática, sem acção ou condição

OCL Object Constraint Language 12Modelação

OCL Uma linguagem para expressar informação extra mas necessária sobe um modelo. É uma linguagem textual e declarativa (isto é, permite descrever o “quê” e não o “como”). OCL usa-se para especificar, em modelações com UML: –Expressões – indicação ou especificação de valores –Constrangimentos – restrições a um ou mais valores Expressões em OCL podem ser usadas em qualquer diagrama!!! 13Modelação

OCL Tipos de expressões: –O valor inicial de um atributo ou associação –Uma regra de derivação para um atributo ou associação –Uma instância, uma condição ou um valor para um parâmetro num diagrama dinâmico –Etc… Tipos de constrangimentos: –“Invariant” – uma restrição que se deve verificar sempre no sistema –“Precondition” – uma restrição que deve ser verdadeira para que uma operação seja executada –“Postcondition”- uma restrição que deve ser verdadeira no final da execução de uma operação –“Guard”- uma restrição que deve ser verdadeira antes de uma transição de estado 14Modelação

Exemplo com uma classe Modelação15 context Transaction inv: points >= 0

Exemplos de expressões e constragimentos 16Modelação Conta id : Integer saldo: Real = 0 deposito(valor : Real) levantamento(valor : Real) daSaldo() : Real context Conta::levantamento (valor : Real) pre: valor <= saldo post: saldo = – valor context Conta::daSaldo() : Real post: result = saldo Tipos de valores usuais: Integer, Real, String, Boolean Operações usuais: = <> = + - * / mod() div() max() min() round() abs() and or xor not implies if_then_else_endif …

“Navigation” em associações qualificadas 17Modelação Conta id : Integer saldo: Real = 0 deposito(valor : Real) levantamento(valor : Real) daSaldo() : Real Cliente conta * dono 1 cliente.conta.saldo = 0 cliente.conta->select(id=1234).saldo = 0 Expressão incorrecta Expressão correcta

“Navigation” em associações qualificadas 18Modelação Conta id : Integer saldo: Real = 0 deposito(valor : Real) levantamento(valor : Real) daSaldo() : Real Cliente conta * dono 1 cliente.conta[4321] Ou cliente.conta[id = 4321] Ou … id

OCL em diagramas de estados Modelação19 Exemplo retirado do “help” do Enterprise Architect…

OCL em diagramas de estados 20Modelação Máquina total: Real = 0 recebeMoeda(valor : Real) forneceAgua() devolveTotal()

Modelação21

Modelação22