Unified Modeling Language. Diagramas de Implementação



Documentos relacionados
Diagramas de Casos de Uso

Gestão de projectos na Web

UML Visão Geral. Índice. Introdução. Diagramas. Modelos e diagramas. Elementos de modelação. Referências

Linguagem de Modelagem Unificada

O que é a UML? Introdução a UML. Objetivos da Modelagem. Modelos. A UML não é. Princípios da Modelagem. O que é um modelo?

Orientação a Objetos I

4.1. UML Diagramas de casos de uso

Diagrama de Estrutura Composta

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC DCC Departamento de Ciência da Computação Joinville-SC

Análise e Projeto de Sistemas. O que é modelagem. O que é modelagem. Tripé de apoio ao desenvolvimento. Notação: UML. Ferramenta: Rational Rose.

Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira

Ciência da Computação ENGENHARIA DE SOFTWARE. UML-Unified Modeling Language Linguagem de Modelagem Unificada

Introdução ao RUP Rational Unified Process. por Denize Terra Pimenta Outubro/2004

Micro Mídia Informática Fevereiro/2009

Curso: Engenharia de Software com Ênfase em Padrões de Software (UECE Universidade Estadual do Ceará) RUP

Itens estruturais/caso de uso. Itens estruturais/classe ativa. Itens estruturais/componente. Itens estruturais/artefatos. Itens comportamentais

UML Visão Geral. Slides baseados em material disponibilizado pela Rational e adaptação da tradução de João P. Faria Univ. Do Porto.

Modelagem de Processos. Prof.: Fernando Ascani

Utilizando os Diagramas da UML (Linguagem Unificada de Modelagem) para desenvolver aplicação em JSF

Casos de Uso O que é. Casos de Uso. Objetivos de um Caso de Uso. Atores. Atores e Casos de Uso. Diagramas de Caso de Uso

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Fase 1: Engenharia de Produto

CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS

Capítulo 8. Introdução UML

Laboratório de Engenharia de Software

Informática Documental 2. Documental 2

UML Aula III Diagramas de Estado, Atividades, Componentes e Instalação

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

3.1 Definições Uma classe é a descrição de um tipo de objeto.

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

PLANIFICAÇÕES ATIVIDADES E ESTRATÉGIAS

Projetar Arquitetura

Análise e Projeto de Sistemas

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

1 UML (UNIFIED MODELING LANGUAGE)

PROCESSOS DE CRIAÇÃO DE APLICATIVOS

Simulação de Redes de Comunicação

Engenharia de Software Engenharia de Requisitos. Análise Orientada a Objetos Prof. Edison A M Morais prof@edison.eti.

Guia de utilização da notação BPMN

ESTRATÉGIAS /ACTIVIDADES. Fazer uma abordagem teórica e simples

PROGRAMAÇÃO OO DIAGRAMA DE CLASSES. Engenheiro Anilton S. Fernandes (asfernandes.com) Janeiro 2012

UML Unified Modeling Language. Professor: André Gustavo Bastos Lima

Análise e Projeto Orientados a Objeto

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

Levantamento, Análise e Gestão Requisitos. Aula 04

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Diagrama de Casos de Uso

1. Modelagem de Sistemas 1.1. Os Desenvolvedores de Sistemas podem Escolher entre Quatro Caminhos

Rede de Computadores (REC)

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: Arquitetura de Software Aula 03

Diagrama de Componentes e Implantação

4.4. UML Diagramas de interacção

Unidade II MODELAGEM DE PROCESSOS

Serviços Web: Arquitetura

CURSO DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Departamento de Informática

PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO (PROENG) ASSESSORIA DE DESENVOLVIMENTO ASSESSORIA JURÍDICA

QUESTÕES PARA ESTUDO DIAGRAMA DE CLASSE

Lógica e Programação Java

Wilson Moraes Góes. Novatec

De Arte a Ciência: Regras para o Desenho de Software

Análise de Sistemas Orientados a Objetos Prof. Tiago Eugenio de Melo tiago@comunidadesol.org.

Desenvolvimento Cliente-Servidor 1

ENGENHARIA DE SOFTWARE ExtremePlanner

Uma visão mais clara da UML Sumário

Engenharia Informática Engenharia Electrotécnica e Computadores Programação Orientada por Objectos Projecto PlayCards

Diagrama de Classes. Diagrama de Classes. Diagramas de Classe. POST Criando Diagramas de Classe. Como construir (2)

MINISTÉRIO DA EDUCAÇÃO

Análise e Conc epç ão de Sist em as de Inform aç ão,qwurgxomrj(qj GH5HTXLVLWRV. Adaptado a partir de Gerald Kotonya and Ian Sommerville

REPRESENTAÇÃO DE REQUISITOS VARIÁVEIS COM UML, SEGUINDO O MÉTODO ICONIX

Diagramas de Componentes

Motivos para você ter um servidor

Introdução a UML. Introdução a UML (Unified Modeling Language)

Fundamentos de Banco de Dados e Modelagem de Dados

Agrupamento de escolas de Coruche. CURSO PROFISSIONAL Ano lectivo 2013/2014

USE CASES. DESENVOLVIMENTO DE SISTEMAS SOFTWARE F. Mário. Martins

Unified Software Development Process

ESTENDENDO A UML PARA REPRESENTAR RESTRIÇÕES DE INTEGRIDADE

04/07/2015 UML. Prof. Esp. Fabiano Taguchi DEFINIÇÃO DE REQUSIITOS

Engenharia de Software I

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

Introdução a Web Services

Diagrama de contexto

Aula 5 UML: Casos de Uso

PROVA DISCURSIVA (P )

2ºCiclo (5º e 6º Anos de escolaridade) 3ºCiclo (7º e 8º Anos de escolaridade)

Transcrição:

Unified Modeling Language Diagramas de Implementação José Correia, Junho 2006 (http://paginas.ispgaya.pt/~jcorreia/) Diagramas de implementação José Correia UML Diagramas de Implementação 2

Diagramas de Componentes Componentes Um componente (de software) pode ser: código fonte um executável uma biblioteca uma tabela de uma base de dados um ficheiro contendo código fonte ou dados um documento genérico Notação: Um componente (genérico) é representado por um rectângulo com tabs kernel32.dll José Correia UML Diagramas de Implementação 4

Exemplos de componentes José Correia UML Diagramas de Implementação 5 Tipos de componentes Componentes de produto do trabalho exemplos: ficheiros com código fonte, ficheiros de dados, etc. Componentes de distribuição (deployment) necessários e suficientes para executar um sistema exemplos: executáveis, bibliotecas, ficheiros de configuração, etc. Componentes resultantes da execução criados em consequência da execução de um sistema José Correia UML Diagramas de Implementação 6

Tipos de componentes: ícones e estereótipos <<executable>> : componente que pode ser executado num nó 2 rodas dentadas <<library>> : biblioteca estática ou dinâmica <<database>> : base de dados <<table>> : tabela de uma base de dados <<file>> : ficheiro contendo código fonte ou dados <<document>> : documento genérico José Correia UML Diagramas de Implementação 7 Exemplo de um diagrama de componentes José Correia UML Diagramas de Implementação 8

Tipos de dependências entre componentes Dependências normais entre ficheiros com código fonte - para controlo de alterações entre executáveis e/ou bibliotecas - para gestão de configurações e dependências Dependências com estereótipos estereótipo «hyperlink» - entre páginas HTML ou páginas HTML e executáveis estereótipo «trace» - entre versões consecutivas do mesmo tipo de componente José Correia UML Diagramas de Implementação 9 O que é um diagrama de componentes? Um diagrama de componentes... ilustra a organização e dependências entre componentes de software - mostra as dependências entre os componentes de software, incluindo o source code e os componentes executáveis contém componentes, interfaces e relações entre componentes é usado para mostrar as divisões físicas usadas nas implementações - os diagramas de pacotes mostram as divisões lógicas ou conceptuais é construído como parte da especificação da arquitectura do sistema José Correia UML Diagramas de Implementação 10

Composição e agrupamento de componentes Conforme o nome indica, os componentes são para compor (montar), criando componentes maiores ou sistemas inteiros Exemplos: Base de dados composta por tabelas Biblioteca dinâmica (DLL) composta por componentes COM+ No caso de agrupamentos de componentes que não criam componentes (físicos) maiores, usar pacotes de componentes Web site Base de dados de biblioteca «hyperlink» Web page 1 Web page n Tabela de sócios Tabela de reservas Tabela de publicações José Correia UML Diagramas de Implementação 11 Diagramas de Distribuição

Exemplo de um diagrama de distribuição José Correia UML Diagramas de Implementação 13 O que é um diagrama de distribuição? Um diagrama de distribuição (deployment)... contém nós e conexões entre nós - os nós podem ser instâncias (têm o nome sublinhado) ou classes - normalmente, os nós representam plataformas de hardware - é possível agrupar nós em pacotes ilustra a distribuição física do sistema, num ambiente de produção (ou teste) - captura a topologia do hardware do sistema mostra a distribuição dos componentes ao longo da organização - cada componente pertence a um nó - os componentes que não existem como entidades de run-time não aparecem nestes diagramas - devem surgir em diagramas de componentes José Correia UML Diagramas de Implementação 14

Tipos de Nós Exemplos de tipos de nós (abstractos) que podem ser implementados em runtime José Correia UML Diagramas de Implementação 15 Instâncias de Tipos de Nós Criação e ligação entre instâncias de tipos de Nós São usadas mensagens para ilustrar o fluxo de informação entre Nós Billing file Order information José Correia UML Diagramas de Implementação 16

Componentes e Nós um diagrama de distribuição mostra a localização dos componentes, em termos de servidores, PCs, etc. pode, também, ilustrar ligações de rede, largura de banda de LANs, etc. José Correia UML Diagramas de Implementação 17 Dependências As dependências são usadas em diagramas de distribuição para ilustrar relações e podem ser estereotipadas por exemplo, o estereótipo «DCOM» pode ser usado na dependência (protocolo de ligação) entre um objecto cliente e servidor José Correia UML Diagramas de Implementação 18

Exemplo O exemplo seguinte mostra as relações entre componentes de software e de hardware, envolvidos em transacções de bens imobiliários (real estate) José Correia UML Diagramas de Implementação 19 José Correia UML Diagramas de Implementação 20

O modelo físico descreve os componentes, de hardware e software plataformas de hardware (em UML chamadas Nós ), ligações de rede, componentes de software, sistemas operativos, etc. Os diagramas de distribuição são o complemento dos diagramas de componentes José Correia UML Diagramas de Implementação 21 Diagramas de implementação Diagramas de componentes organizar o código fonte (ambiente de desenvolvimento) construir uma release executável (ambiente de instalação) Diagramas de distribuição especificar a distribuição de componentes (pelos Nós) identificar estrangulamentos de desempenho Os analistas usam os diagramas de distribuição para indicar quais são os módulos de código (componentes de software) que irão estar nas plataformas de hardware (Nós) José Correia UML Diagramas de Implementação 22

Arquitectura A arquitectura da casota de um cão pode ser feita por uma única pessoa requer apenas - modelização mínima (ou nenhuma) - processos simples - ferramentas simples A arquitectura de um arranha céus exige uma equipa especializada requer - modelização extensiva - processos bem definidos - ferramentas poderosas José Correia UML Diagramas de Implementação 23 Arquitectura de software A arquitectura de software compreende um conjunto de decisões a definição dos elementos estruturais que compõem o sistema - blocos básicos de construção a especificação de comportamentos envolvendo colaborações entre esses elementos a composição dos elementos estruturais e comportamentais em subsistemas cada vez maiores a explicitação do estilo arquitectónico que guia a organização do sistema A definição da arquitectura é parte integrante (de alto nível) do projecto (design) do sistema José Correia UML Diagramas de Implementação 24

Arquitectura lógica Estrutura lógica Refere-se à decomposição hierárquica do sistema em módulos lógicos e à especificação dos interfaces e dependências entre módulos Especificada em UML por diagramas de pacotes lógicos - relações de composição e dependência entre pacotes, e classes exportadas por cada pacote Comportamento especificada em UML por colaborações parametrizadas - combinam estrutura (diagrama de classes) e - comportamento (diagramas de interacção), no âmbito de um caso de uso ou mecanismo José Correia UML Diagramas de Implementação 25 Arquitectura lógica por camadas 2 camadas 3 camadas mais camadas Graphical User Interface Relational Database Graphical User Interface Business Object Model Graphical User Interface Business Object Model Diagrama UML Graphical User Interface Relational Database Relational Database Relational Database Divisão horizontal, em camadas! Também é possível uma divisão vertical, em subsistemas! José Correia UML Diagramas de Implementação 26

Arquitectura física Estrutura física do software Refere-se à decomposição do sistema em módulos físicos... - tipicamente ficheiros (chamados componentes em UML)... e à especificação de interfaces e dependências entre módulos Especificada em UML por diagramas de componentes - com interfaces exportados (realizados) e importados (usados) por cada componente Ambiente de hardware Refere-se à especificação da topologia de hardware (equipamentos e conexões) em que correm os componentes de software Especificada em UML por diagramas de distribuição José Correia UML Diagramas de Implementação 27 Arquitectura e Casos de uso Modelos de arquitectura são construídos depois dos modelos de casos de uso Casos de uso especificam função Arquitectura especifica forma / organização Arquitectura do software procura satisfazer/é condicionada pelos requisitos funcionais (definidos implicitamente pelos casos de uso) e não funcionais do software José Correia UML Diagramas de Implementação 28

Referências Estes apontamentos foram baseados em: UML Unified Modeling Language, Curso em Tecnologia de Objectos, FEUP, Novembro 2000 Ademar Aguiar, Gabriel David, João Pascoal Faria Software Architecture and the UML, Grady Booch, Rational Software Practical UML: A Hands-On Introduction for Developers, TogetherSoft Corporation Introduction to UML: Structural Modeling and Use Cases, Cris Kobryn, UML Revision Task Force, November 2000 José Correia UML Diagramas de Implementação 29