KobrA2-light & Revisão de UML / OCL

Slides:



Advertisements
Apresentações semelhantes
Orientação a objetos identidade abstração classificação encapsulamento
Advertisements

Engenharia de Software
Engenharia de Software
UML Modelando um sistema.
UML Visões – Parte 2.
(Unified Modeling Language)
Identificando requisitos
Engenharia de Software
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Projeto de Sistemas de Software
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem (cont.) (IV)
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.
SISTEMA É UMA ENTIDADE QUE MANTEM SUA EXISTÊNCIA ATRAVÉS DA INTERAÇÃO DE SUAS PARTES ( Bertalanffy ) Interação Mútua Diferente duma simples.
Componentes: A Abordagem Catalysis
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.
Professora: Aline Vasconcelos
Introdução a diagrama de classes e UML
Professor: Rogério Lopes Disciplina: Engenharia de Software II Fortium Sistemas da Informação Engenharia de Software II.
Análise e Projeto de Sistemas
Introdução Visão Geral do Método.
Aspectos Avançados em Engenharia de Software Aula 3 Fernanda Campos
RUP: Fluxo de Análise e Projeto
Classes e objetos Modelagem
Orientação a Objetos.
TÉCNICAS DE PROGRAMAÇÃO II
DIAGRAMA DE COMPONENTES
Cap. 6 – Pressman – Eng. Sistemas
Introdução UML, Diagrama de Classes e Comunicação/Colabaração
Arquitetura Orientado a Serviços
Supporting Use Case Based Requirements Engineering David Marques Filipe Garcês Ricardo Cruz.
Análise e Projeto de Sistemas de Informação Orientados a Objeto
Projeto de Sistemas de Software
Universidade Castelo Branco Prof a Flávia Balbino da Costa.
Arquiteturas de Referência
Análise e Projeto de Sistemas
Análise e Projeto de Sistemas
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Referências: Booch, G. et al. The Unified Modeling Language User Guide
Casos de Uso no Engenharia de Software e Sistemas {abab, dtvp, jmmn, mscla, rmb2,
Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006
Metodologias (Parte II) Viviane Torres da Silva
O Processo Unificado (UP)
Programação Orientada à Objetos
Padrão- MVC Model, View, Controller
Laboratório de Programação
1.
Desenvolvimento de Jogos e Entretenimento Digital
IEEE Melhores Práticas para Descrições de Projeto de Software (DPS)
Visões da UML2.
Linguagem de Modelagem Unificada
Sistemas Conceitos Básicos SITP – Módulo 3. Sistema Pessoas Compu- tador Organi zação Sistema: Conceitos Básicos.
Engenharia de Software e Sistemas
Modelagem Orientada a Objetos Use-Case Modeling. Objetivos básicos de um modelo use-case n Descrever o que um novo sistema deve fazer n Descrever o que.
Unified Modeling Language (UML) - Introdução - Alberto Manuel Rodrigues da Silva / José Borbinha Análise e Concepção de Sistemas de Informação.
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.
Análise e Projeto de Sistemas
Copyright © 2006 Qualiti. Todos os direitos reservados. Projetar Classes.
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
Modelagem e arquitetura
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
APS II Análise e Projeto de Sistemas de Informação II
IF 718 Análise e Projeto de Sistemas Augusto Sampaio Vitor Braga (Estágio docência) Camila Sá (Monitora) Parte do material cedido pela Qualiti Software.
UML (Unified Modeling Language) A linguagem unificada de modelagem
Projeto de Arquitetura de Software
Especificação de Sistemas de Tempo-Real utilizando Orientação a Objetos Marco Aurélio Wehrmeister
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.
Delegação  É uma maneira de tornar a composição tão poderosa para fins de reutilização como a herança. Na delegação, dois objetos são envolvidos no tratamento.
Transcrição da apresentação:

KobrA2-light & Revisão de UML / OCL

Por que modelar? Um modelo é a simplificação/abstração de uma realidade Quando falamos de sistemas complexos: Nós somos incapazes de compreendê-los na sua totalidade O código não nos permite compreender/abstrair a realidade

Como modelar? É necessário escolher: Qual linguagem de modelagem? UML – Unified Modeling Language OCL – Object Constraints Language O que modelar? O que não modelar? Que nível de detalhes? KobrA – Komponentenbasisert Anwendungsentwicklung

KobrA2

Apresentação Integra O que é? MDA Componentes Orientação a objetos Um Processo de desenvolvimento Define: O que modelar Em que ordem

Princípios

Princípios Processo dirigido pelos componentes Uniformidade Dirigido pela arquitetura e não pelas entidades, relacionamentos ou pelas funcionalidades Uniformidade Aninhamento recursivo de artefatos de um mesmo conjunto de artefatos Unidade: Componente KobrA (Komponent) Linguagem de modelagem uniforme: Cada artefato é um diagrama que utiliza um subconjunto de UML/OCL Todo o sistema é especificado utilizando o mesmo conjunto de artefatos

Princípios Encapsulamento: Localidade Diminui acoplamento Separação clara entre Especificação (O que) e Realização (Como) Localidade Cada artefato contém uma visão limitada, local, não redundante do sistema Cada componente tem uma visão “black box” dos outros componentes O modelo do sistema é a junção de dezenas visões locais

Princípios Estrutura baseada em árvore Normalmente a utilização dos componentes não obedece a uma estrutura: Gera um grafo arbitrário de componentes Sem uma ordem “óbvia” de desenvolvimento/manutenção

Estrutura baseada em Árvore

Artefatos

Artefatos KobrA2 Especificação Realização Specification Service View Specification Type View Specification Operation View Realização Realization Service View Realization Type View Realization Operation View Realization Algorithmic View

Especificação

O que é? Especifica as propriedades do componente visíveis externamente e as expectativas que ele tem em relação ao ambiente externo Especifica os requisitos ou a interface do componente

Artefatos Specification Service View Specification Type View Specification Operation View

Specification Service View Especifica os serviços providos e requeridos pelo componente Diagrama de Classe Contém O componente sendo especificado (subject component) As interfaces que ele provê e que ele requer As operações das interfaces As relações de generalização entre os componentes e interfaces Invariantes

Exemplo Tirar exemplo do ElifeDesktop

Specification Type View Especifica os tipos de dados utilizados nas operações do Specification Service View Diagrama de Classe Contém Classes Tipos de dados primitivos Enumerations Invariantes As relações de generalização entre as classes

Exemplo Tirar exemplo do ElifeDesktop

Specification Operation View Especifica cada operação do Specification Service View Tipicamente um conjunto de anotações OCL

Exemplo Tirar exemplo do ElifeDesktop

Realização

O que é? Especifica como o componente realiza sua especificação Cada componente pode ter mais de uma realização.

Artefatos Realization Service View Realization Type View Realization Operation View Realization Algorithmic View

Realization Service View Especifica como o componente realiza o serviço Realizando as interfaces Delegando a realização para interfaces mais internas Diagrama de Classe Contém O componente sendo especificado (subject component) Incluindo atributos e operações Componentes auxiliares As interfaces providas e requeridas pelos componentes As relações de generalização entre os componentes e interfaces Invariantes

Exemplo Tirar exemplo do ElifeDesktop

Realization Type View Especifica os tipos de dados utilizados na Realiztion Service View Diagrama de Classe Contém Classes Tipos de dados primitivos Enumerations Invariantes As relações de generalização entre as classes

Exemplo Tirar exemplo do ElifeDesktop

Realization Operation View Especifica subconjunto das operações do Realization Service View Tipicamente um conjunto de anotações OCL

Exemplo Tirar exemplo do ElifeDesktop

Realization Algorithmic View Especifica subconjunto das operações do Realization Service View Tipicamente um diagrama de atividades

Exemplo Tirar exemplo do ElifeDesktop

Context Realization

O que é? Artefato “top level” Modela o domínio da aplicação e Ambiente não computacional

Exemplo Tirar exemplo do ElifeDesktop

Revisão de UML

Diagramas de Classe

Classe Descreve um conjunto de objetos que possui características em comum Comportamento e estrutura

Interface

Operation & Parameter

Generalization

DataType

Property

Enumeration & Enumeration Literal

Association

AssociationClass

Constraint

PackageableComponent

Diagramas de Atividade

Activity

Call Behavior Action

OpaqueAction

ActivityParameterNode

Pin

Initial Node

Activity Final Node

Flow Final Node

Fork & Join Nodes

Decision Node

Merge Node

Control Flow

Activity Partition

InterruptibleActivityRegion

SendSignal Action

Accept Event Action

Object Node

Exception Handler

OCL

Referências Unified Modeling Language – Xavier Blanc [link] KobrA: A Model-Driven Component-Based Software Product Line Engineering Methodology – Jacques Robin [link]