UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site:...

24
UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: http://sites.google.com/site/ivanfonta inha/ http://ivan.fontainha.googlepages.com email: [email protected]

Transcript of UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site:...

Page 1: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML (Unified Modeling Language)Linguagem Unificada de Modelagem

Prof: Ivan Fontainha Aula 2

Site: http://sites.google.com/site/ivanfontainha/ http://ivan.fontainha.googlepages.com email: [email protected]

Page 2: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

Bibliografia

BOOCH, Grady; RUMBAUGH, James; JACOBSON, Ivar. UML: guia do usuário. 2.ed. rev. e atual. Rio de Janeiro: Elsevier, Campus, c2006.

MELO, Ana Cristina. Desenvolvendo aplicações com UML 2.2: do conceitual à implementação. 3.ed. Rio de Janeiro: Brasport, 2010.

LARMAN, Craig. Utilizando UML e padrões: uma introdução à análise e ao projeto orientados a objetos e ao desenvolvimento iterativo. Porto Alegre: Bookman, 2007.

Page 3: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

O que é? A UML é uma linguagem para:

Especificar Visualizar Construir Documentar

os artefatos de um sistema de software

Page 4: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

Quando surgiu? Surgiu no final dos anos oitenta e no inicio

dos anos noventa

Page 5: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

A UML não tem as características de um método.

A UML não representa uma sequência de passos para a resolução de um problema, como deveria ser no caso de um método

Então, a UML não é um método e sim uma linguagem

Page 6: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

A UML pode ser utilizada tanto no desenvolvimento de software como representar sistemas mecânicos sem nenhum software, descrevendo-os em termos de diagramas orientados a objetos

Page 7: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

Existem várias metodologias de modelagem orientadas a objeto que, até o surgimento da UML, causavam uma guerra entre a comunidade de desenvolvedores orientado a objetos

A UML acabou com esta guerra, trazendo as melhores idéias de cada uma destas metodologias

Page 8: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Introdução

A UML é uma tentativa de padronizar a modelagem orientada a objetos de uma forma que qualquer sistema, seja qual for o tipo, possa ser modelado corretamente, com consistência, fácil de se comunicar com outras aplicações, simples de ser atualizado e compreensível

Page 9: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML - Objetivos

O objetivos da UML são: A modelagem de sistemas (não apenas de

softwares) usando os conceitos da orientação a objetos

Estabelecer uma união fazendo com que métodos conceituais sejam também executáveis

Criar uma linguagem de modelagem usável tanto pelo homem quanto pela máquina

Page 10: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Uso da UML

A UML é usada no desenvolvimento dos mais diversos tipos de sistemas

Ela abrange sempre qualquer características de um sistema em um de seus diagramas

É também aplicada em diferentes fases do desenvolvimento de um sistema, desde a especificação de análise de requisitos até a finalização com a fase de testes

Page 11: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Uso da UML

Um dos objetivos da UML é descrever qualquer tipo de sistema, em termos de diagramas orientados a objetos

O uso mais comum é para criar modelos de software, mas também é usada para representar sistemas mecânicos

Page 12: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Uso da UML

Tipos de Sistemas que são utilizados a UML e suas características mais comuns: Sistemas de Informação: Armazenar, pesquisar,

editar e mostrar informações para usuários Sistemas Técnicos: Manter e controlar equipamentos

técnicos como de telecomunicações, equipamentos militares e ou processos industriais. Eles devem possuir interfaces especiais do equipamento e menos programação de software

Page 13: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Existem cinco fases no desenvolvimento de sistemas de software (devem ser executadas nesta ordem):Análise de RequisitosAnáliseDesign (projeto)ProgramaçãoTestes

Page 14: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Análise de Requisitos: Captura as intenções e necessidades dos usuários

do sistema a ser desenvolvido através do uso de funções chamadas “use-cases”

Através do desenvolvimento de use-cases, as entidades externas ao sistema (atores externos) que interagem e possuem interesse no sistema são modelados entre as funções que eles requerem, funções estas chamadas de use-cases

Page 15: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Análise de Requisitos: Os atores externos e os use-cases são modelados

com relacionamentos que possuem comunicação associativa entre eles ou são desmembrados em hierarquia

O diagrama de use-cases mostrará o que os atores externos, ou seja, os usuários do futuro sistema deverão esperar do aplicativo, conhecendo TODA a sua funcionalidade, sem importar como será implementada

Page 16: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Análise: A fase de análise está preocupada com as primeiras

abstrações (classes e objetos) e mecanismos que estarão presentes no domínio do problema

As classes são modeladas e ligadas através de relacionamentos com outras classes, e são descritas no diagrama de Classes

Page 17: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Análise: As colaborações entre classes também são

mostradas neste diagrama para desenvolver os use-cases modelados anteriormente

Nesta fase somente serão modeladas classes que pertençam ao domínio principal do problema do software, ou seja, classes técnicas que gerenciem banco de dados, interface, comunicação, concorrência e outros não estarão presentes neste diagrama

Page 18: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Design (Projeto): Nesta fase, o resultado da análise é expandido em

soluções Novas classes serão adicionadas para prover uma

infra-estrutura técnica: a interface do usuário e de periféricos, gerenciamento de banco de dados, comunicação com outros sistemas etc

Page 19: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Design (Projeto): As classes do domínio do problema modeladas na

fase de análise são mescladas nessa nova infra-estrutura técnica tornando possível alterar tanto o domínio do problema quanto à infra-estrutura

Resulta no detalhamento das especificações para a fase de programação do sistema

Page 20: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Programação: Nesta fase as classes provenientes do design são

convertidas para o código da linguagem orientada a objeto escolhida

O grau de dificuldade depende da escolha da linguagem

Não é aconselhável traduzir mentalmente os modelos de análise e design em UML no momento de sua criação

Page 21: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Programação: Os modelos criados nas fases passadas são o

significado do entendimento e da estrutura do sistema, porém ainda podem ser alterados caso o analista julgue necessário, o que não pode é alterar a programação sem alterar os modelos anteriores senão estes não estarão mais demonstrando o real perfil do sistema

È uma fase separada e distinta onde os modelos criados são convertidos em código

Page 22: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Fases de Desenvolvimento

Testes – temos 3 tipos de testes: Unidade: são para classes individuais ou grupos de

classes e são geralmente testados pelo programador Integração: são aplicados já usando as classes e

componentes integrados para se confirmar se as classes estão cooperando uma com as outras como especificado nos modelos

Aceitação: observam o sistema como uma “caixa preta” e verificam se o sistema esta funcionando como o especificado nos primeiros diagramas de use-cases

Page 23: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Ferramentas

Comerciais e “Free Editions”:MagicDrawTogheterPoseidonEnterprise ArchitectRatinal RoseJudeOmondo Eclipse UML

Fonte: http://www.objectsbydesign.com/tools/umltools_byPrice.html

Page 24: UML (Unified Modeling Language) Linguagem Unificada de Modelagem Prof: Ivan Fontainha Aula 2 Site: //sites.google.com/site/ivanfontainha

UML – Ferramentas

Livres:UmbrelloArgoUMLDiaBOUMLFajubaStarUML

Fonte: http://www.objectsbydesign.com/tools/umltools_byPrice.html