UML (Unified Modelling Language)

Documentos relacionados
Introdução a UML (Unified Modeling Language)

Cenário atual UML Histórico

Ciência da Computação. Análise e Projeto Orientado a Objetos UML. Anderson Belgamo

Notas de Aula 03: Introdução a Orientação a Objetos e a UML

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA UML UNIFIED MODELING LANGUAGE

ANÁLISE E PROJETO DE SISTEMAS TÓPICO IV - INTRODUÇÃO A UML

UML Visão Geral UML Visão geral v.1.1, Novembro de 2001

Curso de Sistemas de Informação. Karla Donato Fook DESU / DComp. Modelagem de Dados UML

INF1013 MODELAGEM DE SOFTWARE

Visão Geral da UML. SSC Engenharia de Software I Profa. Dra. Elisa Yumi Nakagawa 2 o semestre de 2012

Análise de Sistemas. Aula 5

Requisitos de Sistemas

Marcelo Henrique dos Santos

Introdução. à UML. Histórico (cont.) Histórico Definição Benefícios Notação Diagrama de Classes Diagramas de Interação Conclusões Revisão

A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. História da UML. O que é modelagem?

PUC-GO- ADS: Prof. Vicente P. de Camargo. Desenvolvimento de Aplicações para Cliente Servidor

Diagrama de Componentes e Implantação

UML Linguagem Unificada de Modelagem (Visão Geral)

UML. Trabalho Análise e Projeto de Sistemas. Aluna: Luana Alves Businaro

Outline. Linguagem de Modelagem Unificada. 1. Visualização 04/09/2017. Aula 10 - Introdução à UML e Instalação de Ferramentas de Modelagem

UML (Linguagem Modelagem Unificada) João Paulo Q. dos Santos

Especificação de Sistemas de Software e a UML

UML Unified Modeling Language Linguagem de Modelagem Unificada

MODELAGEM DE SISTEMAS. Introdução a Computação e Engenharia de Software. Profa. Cynthia Pinheiro

UML e seus diagramas

Tópicos da Aula. A Linguagem UML. A Linguagem UML. De onde surgiu? Fundadores da UML. Introdução à UML e Diagrama de Casos de Uso.

UML. Adriano J. Holanda 21/3/

Requisitos de sistemas

Introdução. Pacote. Classe. UML Diagrama de. Atributo. Classes. Método. Prof. Dr. Enzo Seraphim. Visibilidade

UML UNIFIED MODELING LANGUAGE LINGUAGEM DE MODELAGEM UNIFICADA

Diagrama de Comunicação

Q d( ) P. a( ) c( ) e( ) c( ) S. c( ) d( )

Análise e projeto de sistemas

Introdução à UML. Universidade Federal de Mato Grosso do Sul Sistemas de Informação - CPCX. Prof. Fernando Maia da Mota

UML Diagrama de Atividades Diagrama de Caso de Uso. ENG1518/3VB Sistemas de Informação Gerenciais Prof. Marcos Villas

UML: Introdução. História Visão geral Modelo conceitual da UML. Bibliografia. UML: introdução

Rational Unified Process (RUP)

INTRODUÇÃO À ENGENHARIA DE SOFTWARE. Prof.: Tiago Alves

1 Introdução. 1.1 Teoria dos Sistemas 23/4/2010

APÊNDICE D Unified Model Language (UML)

Engenharia de Software

UML Diagramas Estruturais Diagrama de Componentes

Modelagem Usando Orientação à Objetos (Programação Orientada a Objetos) Prof. Responsáveis Wagner Santos C. de Jesus

Generalização das técnicas de Piloto Automático para VANTs. Aluno: Raphael da Silva Teixeira (ED 14205) Professor: Cel R/R Cícero Garcez

Capítulo 5 Modelação do Sistema 1

MODELAGEM COM A UML (UNIFIED MODELING LANGUAGE)

Linguagem de Modelagem Unificada UML

15/04/2013. Pensar Orientado a Objetos. Projeto Orientado a Objetos. Características de Objetos. Classe de Objetos. Comunicação entre Objetos

UML. Modelando um sistema

Introdução a UML e seus diagramas

Engenharia de Software Orientada a Objetos - OOSE. Método de Jacobson

Diagrama de Estados. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

Analista de Sistemas S. J. Rio Preto

Engenharia de Software. UML Unified Modeling Language

Análise e Projeto Orientados a Objetos

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

INF1404 MODELAGEM DE SISTEMAS

POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos. POO Paradigma Orientado a Objetos

UML 2.0 Método, Linguagem e Ferramenta. Prof. Cesar Augusto Tacla

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

Modelagem Orientada a Objetos

Especificação de Sistemas e SysML

SISTEMAS DE INFORMAÇÃO UML UMA VISÃO GERAL

Introdução. Introdução. Introdução. Planejamento da disciplina. Modelagem de Processos de Negócio. Prof.: Clarindo Isaías Pereira da Silva e Pádua

Diagramas de Classes. ESII Profª. Andressa Falcade URI Santiago

Engenharia de Software

Engenharia de Software

UML Relacionamentos. Relacionamento é uma conexão entre itens A maioria dos itens relacionam-se entre si. Quatro tipos de relacionamentos:

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

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

RUP Unified Process. Profª Jocelma Rios

Engenharia de Software Modelagem de Negócio

RUP Rational Unified Proccess (Processo Unificado da Rational) Equipe WEB Cercomp

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

A linguagem de modelagem UML

Unidade II MODELAGEM DE PROCESSOS. Profa. Gislaine Stachissini

Análise de Sistemas 3º Bimestre (material 2)

UML - Unified Modeling Language

Introdução à Análise e Projeto de Sistemas

ENGENHARIA DE SOFTWARE I AULA 3. Análise e diagramação. professor Luciano Roberto Rocha.

MANUAL PARA DESENVOLVIMENTO DE SOFTWARE TRABALHO DE CONCLUSAO DE CURSO EM SISTEMAS DE INFORMAÇÃO

Modelos em Sistemas de Informação. Aula 2

Requisitos de Software e UML Básico. Janaína Horácio

ARQUITETURA E DESENHO

FUNDAÇÃO UNIVERSIDADE ESTADUAL DE MARINGÁ

Uma colagem de diagramas UML. LES/PUC-Rio

Introdução. Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior

DIAGRAMAS DE CLASSE UML

1 Analise de Sistemas

Introdução a UML. Aula 04 Analise de Sistemas Profª Rita de Cassia Gaieski

UML Unified Modeling Language Linguagem de Modelagem Unificada Requisitos, Casos de Uso no ArgoUML

15/04/2013. Outro Diagrama de Classes. Primeiro Diagrama de Classes. Diagrama de Classes. Atributos. Eduardo Figueiredo

Aula 1.7 Introdução a APOO e UML

Modelagem de Processos. Rômulo César

Engenharia de Software. Herbert Rausch Fernandes

INTRODUÇÃO. Professora Lucélia Oliveira

27) Em relação aos Projetos de Sistemas de Software, assinale a sequência correta de desenvolvimento de um sistema:

Transcrição:

UML (Unified Modelling Language) Curso de Especialização DEINF - UFMA Desenvolvimento Orientado a Objetos Prof. Geraldo Braz Junior Referências: Booch, G. et al. The Unified Modeling Language User Guide Medeiros, E. Desenvolvendo Software com UML 2.0: Definitivo, Makron Books, 2006. Sommerville, I. Engenharia de Software, 8ª edição, 2007.

Introdução É uma linguagem para especificação, construção, visualização e documentação de artefatos de um sistema de software É mantida pelo Object Management Group (OMG), com contribuições e direitos de autoria das seguintes empresas: Hewlett- Packard, IBM, ICON Computing, i-logix, IntelliCorp, Electronic Data Services, Microsoft, ObjecTime, Oracle, Platinum,Ptech, Rational, Reich, Softeam, Sterling, Taskon A/S e Unisys. 2

Introdução A ênfase da UML é na definição de uma linguagem de modelagem padrão, e por conseguinte, a UML é independente das linguagens de programação, das ferramentas CASE, bem como dos processos de desenvolvimento. O objetivo da UML é que, dependendo do tipo de projeto, da ferramenta de suporte, ou da organização envolvida, devem ser adotados diferentes processos/metodologias, mantendo-se contudo a utilização da mesma linguagem de modelagem. 3

Introdução A UML é usada no desenvolvimento dos mais diversos tipos de sistemas. Ela abrange sempre qualquer característica de um sistema em um de seus diagramas Aplicada em diferentes fases do desenvolvimento de um sistema, desde a especificação da análise de requisitos até a finalização com a fase de testes. O objetivo da UML é descrever qualquer tipo de sistema, em termos de diagramas orientado a objetos. 4

Introdução Vantagem é a unificação de todas as notações anteriores 5

Introdução BOOCH Diagrama de Estados Diagrama de Objetos (Colaboração) Diagrama de Processo (Desenvolvimento) Diagrama de Módulos (Componentes) UML OOSE OMT Diagrama de Estados Diagrama de Classes Use Case Subsistemas (Package) Diagrama de Interações MiniEspecificação 6

A UML não é um processo uma metodologia Análise e Projeto OO regras de projeto Linguagem de Programação 7

Introdução UML é uma linguagem padrão da OMG para Visualização, Especificação, Construção e Documentação de software orientado a objetos. 8

Visualização A existência de um modelo visual facilita a comunicação e faz com que os membros de um grupo tenham a mesma idéia do sistema. Cada símbolo gráfico tem uma semântica bem definida. O que modelamos? Dimensões: dados, função, comportamento 9

Especificação É uma ferramenta poderosa para a especificação de diferentes aspectos arquiteturais e de uso de um sistema. 10

Construção Geração automática de código a partir do modelo visual Geração do modelo visual a partir do código Ambientes de desenvolvimento de software atuais permitem: movimentações em ambos sentidos e manutenção da consistência entre as duas visões. 11

Documentação Pode incluir artefatos como: Deliverables (documentos como especificação de requisitos, especificações funcionais, planos de teste, etc.). Materiais que são importantes para controlar, medir, e refletir sobre um sistema durante o seu desenvolvimento e implantação. 12

Descrição Arquitetônica UML oferece uma forma padrão de se desenhar as plantas (como em arquitetura) de um sistema de forma a incluir aspectos abstratos (processos de negócio, funcionalidades do sistema) aspectos concretos (classes C++/Java esquemas de bancos de dados, componentes de software reutilizáveis) 13

Razões para Modelar Comunicar a estrutura e o comportamento desejado de um sistema. Visualizar e controlar a arquitetura de um sistema. Para melhorar o nosso entendimento de um sistema e, assim, expor oportunidades para melhorias e reutilização. Para administrar os riscos A UML permite modelar: Elementos; Relacionamentos; Mecanismos de extensibilidade; Diagramas 14

Algumas aplicações Sistemas de informações corporativos Serviços bancários e financeiros Telecomunicações Transportes Defesa/espaço aéreo Vendas de varejo Eletrônica médica Científicos Serviços distribuídos baseados na Web 15

Elementos da UML Para formar um modelo conceitual da linguagem é necessário aprender três elementos principais Blocos de construção Regras que determinam como esses blocos poderão ser combinados Mecanismos comuns aplicados na UML 16

Blocos de Construção Três tipos: Itens: são abstrações Relacionamentos: os relacionamentos reunem esses itens Diagramas: agrupam coleções interessantes de item 17

Itens da UML Estruturais Comportamentais De agrupamento Anotacionais 18

Itens estruturais São os substantivos dos modelos. São a parte estática, representando elementos conceituais ou físicos Sete tipos: classes, interfaces, colaborações, casos de uso, classes ativas, componentes e nós orderform.java Servidor Componente 19 Classe Nó

Itens comportamentais Representam as partes dinâmicas dos modelos. São os verbos, representando comportamentos no tempo e no espaço Dois tipos: interação e máquina de estado exibir Mensagem Aguardando Estado 20

Itens de agrupamento São as partes organizacionais dos modelos de UML. São os blocos em que os modelos podem ser decompostos pacotes Um pacote é um mecanismo de propósito geral para a organização de elementos em grupos Regras de negócios Pacote 21

Itens anotacionais Partes explicativas dos modelos UML. São comentários, incluídos para descrever, esclarecer e fazer alguma observação importante sobre qualquer elemento do modelo - notas Retornar cópia Nota 22

Relacionamentos Dependência Associação Generalização Realização 23

Dependência Relacionamento semântico entre dois itens, nos quais a alteração de um (o item independente) pode afetar a semântica do outro (o item dependente) 24 dependência

Associação É um relacionamento estrutural que descreve um conjunto de ligações, em que as ligações são conexões entre objetos Pessoa +emprega +funcionario Departamento 1..* 1 associação 25

(Agregação) A agregação é um tipo especial de associação representando um relacionamento estrutural entre o todo e sua parte todo Empresa 1 agregação parte * Departamento 26

Generalização É um relacionamento de especialização/generalização, nos quais os objetos dos elementos especializados (os filhos) são substituíveis por objetos do elemento generalizado (os pais) Pessoa Aluno Professor Funcionario 27

Realização É um relacionamento semântico entre classificadores, em que um classificador especifica um contrato que outro classificador garante executar << Interface >> Agente da Regra Regras de contabilidade realização 28

Modelos Um modelo é uma simplificação da realidade Um modelo é representado por um ou mais diagramas. Desta forma, um diagrama pode ser visto como uma visão dentro de um modelo. Um diagrama pode ser representado de várias formas, dependendo de quem irá interpretálo. 29

Visão Um diagrama é uma visão sobre um modelo 30 Organização Comportamento

Diagrama Um diagrama provê uma parcial representação do sistema. Ele ajuda a compreender a arquitetura do sistema em desenvolvimento. Os diagramas: Caso de uso, classes, sequência, objeto, colaboração, atividade, estado, implantação, pacotes, componentes 31

Diagramas de classes Diagramas de classe são a espinha dorsal da maioria dos métodos orientados a objeto, inclusive UML Descrevem a estrutura estática do sistema (entidades e relacionamentos) 32

Diagramas de pacotes Organizam elementos do sistema em grupos relacionados a fim de minimizar a dependência entre eles 33

Diagramas de objetos Descrevem a estrutura estática de um sistema em um determinado momento Podem ser usados para testar a precisão dos diagramas de classe 34

Diagramas de casos de uso Modelam a funcionalidade do sistema através de atores e casos de uso Casos de uso são serviços ou funções fornecidas pelo sistema aos seus usuários 35

Diagramas de seqüências Descreve as interações entre as classes através das trocas de mensagens ao logo do tempo 36

Diagramas de Comunicação Representam as interações entre objetos em termos de mensagens em seqüência Descrevem tanto a estrutura estática como o comportamento dinâmico do sistema 37

Diagramas de estados Descrevem o comportamento dinâmico do sistema em resposta a estímulos externos São especialmente úteis para modelar objetos reativos cujos estados são disparados por eventos específicos 38

Diagramas de atividades Ilustram a natureza dinâmica de um sistema modelando o fluxo de controle de uma atividade para outra Uma atividade representa uma operação em uma classe do sistema que resulta na mudança do estado do sistema Tipicamente, são usados para modelar fluxo de trabalho ou processos de negócio e funcionamento interno 39

Diagramas de componente Descreve a organização dos componentes físicos de software Ex.: código-fonte, código em tempo de execução (binário) e executáveis 40

Diagramas de implantação Descrevem os recursos físicos em um sistema, incluindo nós, componentes e conexões 41

Diagrama Os diagramas UML são abordados como Estáticos e Dinâmicos. Estes diagramas também Podem ser classificados como: Comportamentais Estruturais 42