Carregar apresentação
A apresentação está carregando. Por favor, espere
1
KobrA2-light & Revisão de UML / OCL
2
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
3
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
4
KobrA2
5
Apresentação Integra O que é? MDA Componentes Orientação a objetos
Um Processo de desenvolvimento Define: O que modelar Em que ordem
6
Princípios
7
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
8
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
9
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
10
Estrutura baseada em Árvore
12
Artefatos
13
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
14
Especificação
15
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
16
Artefatos Specification Service View Specification Type View
Specification Operation View
17
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
18
Exemplo Tirar exemplo do ElifeDesktop
19
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
20
Exemplo Tirar exemplo do ElifeDesktop
21
Specification Operation View
Especifica cada operação do Specification Service View Tipicamente um conjunto de anotações OCL
22
Exemplo Tirar exemplo do ElifeDesktop
23
Realização
24
O que é? Especifica como o componente realiza sua especificação
Cada componente pode ter mais de uma realização.
25
Artefatos Realization Service View Realization Type View
Realization Operation View Realization Algorithmic View
26
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
27
Exemplo Tirar exemplo do ElifeDesktop
28
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
29
Exemplo Tirar exemplo do ElifeDesktop
30
Realization Operation View
Especifica subconjunto das operações do Realization Service View Tipicamente um conjunto de anotações OCL
31
Exemplo Tirar exemplo do ElifeDesktop
32
Realization Algorithmic View
Especifica subconjunto das operações do Realization Service View Tipicamente um diagrama de atividades
33
Exemplo Tirar exemplo do ElifeDesktop
34
Context Realization
35
O que é? Artefato “top level”
Modela o domínio da aplicação e Ambiente não computacional
36
Exemplo Tirar exemplo do ElifeDesktop
37
Revisão de UML
38
Diagramas de Classe
39
Classe Descreve um conjunto de objetos que possui características em comum Comportamento e estrutura
40
Interface
41
Operation & Parameter
42
Generalization
43
DataType
44
Property
45
Enumeration & Enumeration Literal
46
Association
47
AssociationClass
48
Constraint
49
PackageableComponent
50
Diagramas de Atividade
51
Activity
52
Call Behavior Action
53
OpaqueAction
54
ActivityParameterNode
55
Pin
56
Initial Node
57
Activity Final Node
58
Flow Final Node
59
Fork & Join Nodes
60
Decision Node
61
Merge Node
62
Control Flow
63
Activity Partition
64
InterruptibleActivityRegion
65
SendSignal Action
66
Accept Event Action
67
Object Node
68
Exception Handler
69
OCL
70
Referências Unified Modeling Language – Xavier Blanc [link]
KobrA: A Model-Driven Component-Based Software Product Line Engineering Methodology – Jacques Robin [link]
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.