Download - Analisar Serviços Vítor Braga – [email protected]. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Transcript
Page 1: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Analisar ServiçosVítor Braga – [email protected]

Page 2: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Especificação do Modelo de Negócio

Analisar Serviços

Projetar Serviços

Com

puta

tion

Inde

pend

ent

Mod

el (

CIM

)

Plat

form

Inde

pend

ent

Mod

el (

PIM

)

Plat

form

Spec

ific

Mod

el

(PSM

)

MDATerms

MDES

OA

Page 3: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Analisar serviçosVisão inicial da arquitetura do

SistemaSistemática para identificação

dos serviços e componentes“Análise” diferente do RUP

Page 4: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Fluxo de Atividades

Identificar Serviços [Arquitetura dos Serviços]

Refinar Serviços[Modelo de Interação dos Serviços]

[Modelo de Informação Refinado]

Identificar Componentes

[Modelo de Componentes dos Serviços]

Page 5: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Passos para Identificar Serviços1. Empacotar Casos de Uso2. Construir Arquitetura de Serviços3. Identificar Serviços de Entidades5. Revisar Resultados

Page 6: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Exemplo do QIB

Operadora do DOC

Desbloquear Talõesde Cheque

Efetuar Login

Alterar Senha

Consultar Saldo

Consultar Extrato

Consultar Qualiti CardRealizar Transferência

Consultar Cheques

Solicitar Talões de Cheque

Realizar DOC

ClienteAtor

Operadora Cartão de Crédito

Efetuar Pagamento do Qualiti Card

Mostrar Dados daConsulta

<<include>>

<<include>>

Page 7: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

5 mim...

Page 8: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Operadora do DOC

Desbloquear Talõesde Cheque

Efetuar Login

Alterar Senha

Consultar Saldo

Consultar Extrato

Consultar Qualiti CardRealizar Transferência

Consultar Cheques

Solicitar Talões de Cheque

Realizar DOC

ClienteAtor

Operadora Cartão de Crédito

Efetuar Pagamento do Qualiti Card

Mostrar Dados daConsulta

<<include>>

<<include>>

Page 9: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

ClienteAtor

Realizar Doc

Realizar Transferência

Operadora Doc

Controle Cheque

Controle de Acesso

Controle Conta

Controle Qualit Card

Operadora de Cartão de Crédito

Page 10: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

2. Construir Arquitetura de ServiçosArquitetura de Serviços (Service

Architecture) é gerada a partir do modelo de casos de uso

Passo inicial para identificação dos serviços do sistema

SOAML (Profile UML para modelar SOA)

Page 11: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Sistemática para construir a Arquitetura de Serviços

• Gerada estaticamente a partir do modelo de casos de uso “empacotado”: Atores => participant Sistema => participant Pacote de casos de uso => Service

Contract Relação na direção caso de uso – ator

=> Service Contract Casos de uso no modelo principal=>

Service Contract

Page 12: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

QIB

ClienteAtor

Realizar Doc

Realizar Transferência

Operadora Doc

Controle Cheque

Controle de Acesso

Controle Conta

Controle Qualit Card

Operadora de Cartão de Crédito

Page 13: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Participants

ClienteAtor

Realizar Doc

Realizar Transferência

Operadora Doc

Controle Cheque

Controle de Acesso

Controle Conta

Controle Qualit Card

Operadora de Cartão de Crédito

Sistema back-end<<participant>>

Operadora DOC<<participant>>

Operadora Cartão<<participant>>

Cliente Front-end<<consumer>>

Page 14: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Services Contracts

ClienteAtor

Realizar Doc

Realizar Transferência

Operadora Doc

Controle Cheque

Controle de Acesso

Controle Conta

Controle Qualit Card

Operadora de Cartão de Crédito

Realiazr Transferencia<<Service Contract>>

Relizar Doc<<Service Contract>>

Controle de Acesso<<Service Contract>>

Controle de Cheque<<Service Contract>>

Controle de Conta<<Service Contract>>

Controle Qualiti Card<<Service Contract>>

Servico Operadora Doc<<Service Contract>> Servico Operadora Cartao

<<Service Contract>>

Page 15: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Arquitetura de Serviços

Cliente Front-end<<consumer>>

Sistema back-end<<participant>>

Operadora DOC<<participant>>

Operadora Cartão<<participant>>

Controle de Cheque<<Service Contract>>

Controle de Acesso<<Service Contract>>

Controle de Conta<<Service Contract>>

Controle Qualiti Card<<Service Contract>>

Realiazar Transferencia<<Service Contract>>

Relizar Doc<<Service Contract>>

consumer

consumer

consumer

provider

provider

provider

providerconsumer

consumer

Servico Operadora Cartao<<Service Contract>>

Servico Operadora Doc<<Service Contract>>

provider

comsumer

consumer

provider

provider

Page 16: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

3. Identificar Serviços de entidades

Um tipo de serviço que é derivado de um ou mais entidades de negócio relacionadas. São altamente reutilizável e usados

por vários serviçosExemplo: Serviços para fazer CRUD

Page 17: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

2 mim ...

Page 18: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

3. Identificar Serviços de entidadesContaintInternetConta PagamentoCartão Comprovante

Serviço Conta<<Service Contract>>

Serviço Conta Internet<<Service Contract>>

Serviço PagamentoCartão<<Service Contract>>

Page 19: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Identificar Serviços [Arquitetura dos Serviços]

Refinar Serviços[Modelo de Interação dos Serviços]

[Modelo de Informação Refinado]

Identificar Componentes

[Modelo de Componentes dos Serviços]

Fluxo de Atividades

Page 20: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Interação dos ServiçosSistemática “semelhante” Distribuir

comportamento entre as classes Para cada Serviço (service contract)

Diagrama de seqüência (coreografia dos serviços)

Surgimento de novas entidades Atualizar o Modelo de Informação do

negócio

Page 21: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Interação dos ServiçosLevar em consideração TODOS os

casos de uso envolvidos Diagrama de interação único*Não possuem mensagens reflexivas

Por que?

Page 22: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

ClienteAtor

Realizar Doc

Realizar Transferência

Operadora Doc

Controle Cheque

Controle de Acesso

Controle Conta

Controle Qualit Card

Operadora de Cartão de Crédito

Page 24: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

: Cliente Front-end : Controle de Acesso : Serviço Conta Internet

1 : logar(login,senha)

2 : existe(login, senha)

3 : Conta Internet

4 : sessão

5 : alterarSenha(login,senhaAntiga, SenhaNova)6 : existe(login,senha)

7 : Conta Internet

8 : atualizar(Usuario)

9 : Conta Internet10 : sessão

Page 25: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Atualizar o Modelo de informação Atualizar atributos das entidades Possíveis fontes: conhecimento do negócio,

requisitos, glossário, modelo do negócio, mensagens do modelo de interação etc.

São propriedades/características das entidades identificadas informação cujo valor é o aspecto crucial informação de propriedade exclusiva do objeto

Caso seja identificada nova entidade, verificar necessidade de criar novo serviço

Remover entidades desnecessárias

Page 26: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Modelo de informação atualizado

ContaintInternet

+login+senha

Conta

+numero+saldo

PagamentoCartão

+numero da fatura+data+valor+numero da conta

Page 27: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Fluxo de Atividades

Identificar Serviços [Arquitetura dos Serviços]

Refinar Serviços[Modelo de Interação dos Serviços]

[Modelo de Informação Refinado]

Identificar Componentes

[Modelo de Componentes dos Serviços]

Page 28: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Identificação de componentes Sistemática para identificar os componentes1. Identificar os participants provedores2. Componentes “provedores” implementam os

contratos de serviços3. Definir relacionamento entre componentes

Page 29: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

5 mim...

Page 30: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Arquitetura componentizada

Controle de Cheque<<Service Contract>>

+Operation1()+..()

Controle de Acesso<<Service Contract>>

+logar(login, senha)+alterarSenha(login, senhaAntiga, senhaNova)

Controle de Conta<<Service Contract>>

+existe(login, senha)+atualizar(login, senha)

Controle Qualiti Card<<Service Contract>>

+Operation1()+..()

Realiazar Transferencia<<Service Contract>>

+Operation1()+..()

Relizar Doc<<Service Contract>>

+Operation1()

Componente ContaComponente Controle de Acesso

Componente Cheque

Componente Qualiti Card

Componente Transferencia

Componente Realizar Doc

Componente Cliente Front-end

Servico Operadora Cartao<<Service Contract>>

Servico Operadora Doc<<Service Contract>>

Compoente Operadora Cartão

ComponenteOperadora DOC

Page 31: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Apresentação para o projeto Especificação do Modelo de Negócio:

Modelo de Informação do Negócio Modelo Navegacional Protótipo de Interface Gráfica (pelo menos as

principais telas do sistema) Quanto mais completo melhor

Análise de Serviços: Arquitetura dos Serviços Modelo de Interação dos Serviços (pelo menos 5

serviços) Quanto mais completo melhor

Modelo de Informação Refinado Diagrama de Componentes dos Serviços

Page 32: Analisar Serviços Vítor Braga – vtb@cin.ufpe.br. Computation Independent Model (CIM) Platform Independent Model (PIM) Platform Specific Model (PSM) MDA.

Dúvidas ?