A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

UML Components Alunos:

Apresentações semelhantes


Apresentação em tema: "UML Components Alunos:"— Transcrição da apresentação:

1 UML Components Alunos:
Felipe Desiderati e Souza - Bernardo Faria de Miranda -

2 Agenda Arquitetura de sistemas e componentes Workflow de Requisitos
Workflow de Especificações Modelagem de componentes com UML

3 Camadas de Arquitetura de Aplicação
Apresentação Cliente Web HTTP Cliente Servidor Web RMI / IIOP / DCOM RMI / IIOP / DCOM Serviço Servidor de Aplicação Sistema Existente (Servidor) Qualquer JDBC / ODBC / SQL Dados Servidor de Banco de Dados

4 Aplicação Blueprint Servidor Web A/JSP Servidor de Aplicação Objeto
Componente Objeto Componente Objeto Componente Objeto Componente Objeto Componente Foco da apresentação: Como desenvolver esta parte? Banco de Dados Sistema existente

5 Camadas de Aplicação Finer-Grain
Apresentação Aplicação UI Logic O que o usuário vê? User Interface (UI) User Dialog (UD) Dialog Logic (Casos de Uso) Suporte à múltiplos UI’s Estado de Diálogo Transitório Sistema Serviço Transações de negócio Permite múltiplos Diálogos (incluindo Batch) Estado de Integridade do Negócio Serviços de Sistema Serviços de Negócio Sub-transações Estado de Ocorrência do Negócio Dados

6 Gerenciamento e Desenvolvimento
Processos de gerenciamento Planejamento do trabalho e prazos Alocação de recursos Monitor de progresso Controle de risco O% % Completo 100% Modelo de Conceito de Negócio Modelo de Caso de Uso Especificações de Componentes Componentes

7 Gerenciamento e Desenvolvimento
Processos de desenvolvimento Criação de software de trabalho a partir de requisitos Foco no desenvolvimento de software (artefatos) Descrito independentemente dos processos de gerenciamento Define a ordenação das restrições e dependências Organizado em Workflows Modelos de Casos de Uso Workflow de Especificação Especificações de Componentes e Arquiteturas Modelos de Conceitos de Negócio

8 Workflows para o Processo de Desenv.
Requisitos de Negócio Artefato Recursos Existentes Requisitos User Interface Modelo de Conceitos de Negócio Restrições Técnicas Componentes Especificação Provisionamento Montagem Modelo de Casos de Uso Especificações de Componente e Arquitetura Partes Teste Partes Testadas Deploy Workflow (c.f. RUP)

9 Workflow de Requisitos
Problema de Domínio de Conhecimento Requisitos de Negócio Workflow Desenvolvimento de Modelo de Negócio Conceitual Desenvolvimento de Processos de Negócio Decisões de Limite de Software Identificação de Casos de Uso Modelo de Negócio Conceitual Casos de Uso

10 Modelo de Conceito de Negócio
1 1..* Rede Hoteleira Secretária 1..* 1 Hotel Hotel Contactado 1 1 * * 1..* * Alocação Cliente Reserva Quarto 1 * 0..1 * 1 1 * Endereço de Contato 0..1 1 1 Endereço Tipo Quarto 0..1 1 Pagamento Conta 0..1

11 Identificação de Casos de Uso
Um caso de uso descreve a interação que ocorre a partir de um único evento de negócio. Onde um evento dispara um número de etapas de processos, todas as etapas de um único caso de uso. Realizar Check In Chegada do Cliente/ Esperar por Evento [Senão] Verificar Disponibilidade Cancelar Reserva Cancelar Requisição/ Início Processo/ [Quarto Adequado] Refazer Requisição/ Realizar Reserva Refazer Reserva No Show/ (Cliente não se apresentou) Processar No Show Notificar Sistema de Pagamento Confirmar Reserva

12 Identificação de Casos de Uso
Responsável pela Reserva Sistema de Reserva Diagramas de Caso de Uso Cancelar Reserva Realizar Reserva Cliente Atualizar Reserva Realizar Check In Sistema de Pagamento Processar No Show Adicionar, alterar, remover hotel, quarto, cliente, etc Administrador da Reserva

13 Identificação de Casos de Uso
Nome Realizar Reserva Iniciador Responsável pela Reserva Objetivo Reservar um quarto no hotel Etapas Cenário Principal do Sucesso 1. Responsável pela Reserva pede para realizar uma reserva 2. Responsável pela Reserva seleciona hotel, datas, e tipo de quarto 3. Sistema fornece a disponibilidade e preço 4. Responsável pela Reserva concorda com o procedimento 5. Responsável pela Reserva fornece o nome e código postal 6. Responsável pela Reserva fornece para contato 7. Sistema realiza a reserva e gera um ticket 8. Sistema fornece o ticket ao Responsável pela Reserva 9. Sistema cria e envia uma confirmação por Extensões 3. Quarto não disponível a) Sistema oferece datas alternativas e/ou outros tipos de quartos b) Responsável pela Reserva seleciona um alternativa 6. Cliente já em arquivo a) Resumir 7 Ou Pontos de Extensão

14 Workflow de Especificação
Requisitos Especificação Identificação de Componentes Interação entre Componentes Especificação de Componentes Provisão

15 Identificação de Componentes
Modelo de Conceito de Negócio Modelo de Caso de Uso Identificação de Componentes Desenvolvimento de Modelo de Tipo de Negócio Interfaces Existentes Identificar Interfaces de Negócio Identificar Interfaces de Sistema e Operações Recursos Existentes Padrões de Arquitetura Criar Especificações de Componentes e Arqui- teturas Iniciais Modelo de Tipo de Negócio Interfaces de Negócio Especificações de Componentes e Arquiteturas Interfaces de Sistema

16 Identificar Interfaces de Sistema e Op.
As Interfaces de Sistema atuam como uma fachada - Elas são os pontos de contato entre os UI’s e outros agentes externos. São apoiadas pelo componentes na camada de serviços de sistema. Realizar Reserva Realizar Reserva Tipo de Diálogo Caso de Uso <<tipo interface>> IRealizaReserva Etapas Caso de Uso Identificar exigências para o quarto Sistema fornece o preço Requisita uma reserva Interface do Sistema getDetalheHotel() getInfoQuarto() realizaReserva()

17 Desenv. de Modelo de Tipo de Negócio
1 1..* Rede Hoteleira Secretária 1..* 1 Hotel Hotel Contactado 1 1 * * 1..* * Alocação Cliente Reserva Quarto 1 * 0..1 * 1 1 * Endereço de Contato 0..1 1 1 Endereço Tipo Quarto 0..1 1 Pagamento Conta 0..1

18 Identificar Interfaces de Negócio
1 <<tipo interface>> IHotelMgt <<tipo>> Tipo Quarto 1 1..* * <<core>> Hotel nome: String preco(Date): Currency precoEstadia(DateRange): Currency disponivel(DateRange): Boolean nome: String 1 1 1 1 * <<core>> Cliente 1..* * <<tipo>> Quarto nome: String codPostal: String String <<tipo>> Reserva numero: String * referencia: String datas: DateRange * Alocação 0..1 * * A responsabilidade por asse- gurar esta associação foi re- servado para IHotelMgt <<tipo interface>> IClienteMgt A responsabilidade pelos tipos de negócio é mostrada pelas detenções

19 Arquiteturas de Componentes
<<Espec. Componente>> SistemaReserva IRealizaReserva IRealizaCheckIn <<Espec. Componente>> SistemaPagamento IPagamento <<Espec. Componente>> ClienteMgr IClienteMgt <<Espec. Componente>> HotelMgr IHotelMgt

20 Arq. Mínima de Objetos Componentes
<<Espec. Componente>> :SistemaReserva IRealizaReserva IRealizaCheckIn <<Espec. Componente>> :SistemaPagamento IPagamento <<Espec. Componente>> :ClienteMgr IClienteMgt <<Espec. Componente>> :HotelMgr IHotelMgt

21 Interação entre Componentes
Interfaces de Negócio Interfaces de Sistema Especificações de Componentes e Arquiteturas Interação entre Componentes Descobrir Operações de Negócio Refinar Interfaces e Operações Refinar Especificações de Componentes e Arquiteturas Interfaces Especificações de Componentes e Arquiteturas

22 Interação entre Componentes
/IClienteMgt /IHotelMgt realizaReserva() 1: getClienteCompatibilizado() 2: notificaCliente() 2: realizaReserva() <<tipo dados>> DetalhesCliente /IRealizaReserva:SistemaReserva nome: String codPostal[0..1]: String [0..1]: String <<tipo interface>> IRealizaReserva getDetalheHotel (in hot: String) : DetalhesHotel [] getInfoQuarto (in res: DetalhesReserva, out disponivel: Boolean, out preco: Currency) realizaReserva (in res: DetalhesReserva, in cli: DetalhesCliente, out referencia: String) : Integer <<tipo interface>> IHotelMgt getDetalheHotel (in hot: String) : DetalhesHotel [] getInfoQuarto (in res: DetalhesReserva, out disponivel: Boolean, out preco: Currency) realizaReserva (in res: DetalhesReserva, in cli: IdCliente, out referencia: String) : Boolean

23 Especificação de Componentes
Modelo de Tipo de Negócio Especificações de Componentes e Arquiteturas Interfaces Especificação de Componentes Descobrir Operações de Negócio Especificar Operações Pré/Pós-Condições Especificar Restrições para Componente- Interface Interfaces Especificações de Componentes e Arquiteturas

24 Modelo de Interface de Informação
<<tipo interface>> IClienteMgt getClienteCompatibilizado (in dcli: DetalhesCliente , out idcli: IdCliente) : Integer criaCliente (in dcli: DetalhesCliente, out idcli: IdCliente) : Boolean getDetalheCliente (in cli: IdCliente) : DetalhesCliente notificaCliente (in cli: IdCliente, in msg: String) * Cliente Define o conjunto de informações presumidas a serem assegurados por um objeto componente. Apenas para propósitos de especificação. As implementações não necessitam guardar estas infor- mações, mas precisam ser capazes de obtê-las. O modelo necessita apenas explicitar os efeitos das ope- rações. O modelo pode ser derivado a partir do Modelo de Tipo de Negócio. Id: IdCliente nome: String codPostal: String String

25 Pré e Pós-Condições Se a pré-condição é verdadeira, a pós-condição precisa ser verdadeira. Se a pré-condição é falsa, a pós-condição não se aplica. Uma pré-condição perdida é assumida como verdadeira. Pré e pós-condições podem ser escritas em uma linguagem natural, ou em uma linguagem formal como a OCL.

26 Diagramas UML Diagrama de Caso de Uso Requisitos Diagramas de Caso de
de Modelo de Conceito de Negócio Requisitos Diagramas de Caso de Uso Diagrama de Classe Modelo de Conceito de Negócio Modelo de Caso de Uso Diagrama de Modelo de Tipo de Negócio Diagramas de Espec. de Interface Especificação Diagrama de Classe Modelo de Tipo de Negócio Diagrama de Responsa- bilidade de Interface Diagramas de Espec. de Componente Especificações de Interface Especificações de Componente Diagramas de Arq. de Componente Diagrama de Colaboração Arquitetura de Componente Diagrama de Interação de Componentes Interações Diagrama de Pacotes

27 UML Components FIM


Carregar ppt "UML Components Alunos:"

Apresentações semelhantes


Anúncios Google