Top Banner
Página 1 UML Unified Modeling Language Prof. Juliano Schimiguel
28

Modelagem Uni3

Dec 24, 2015

Download

Documents

modelagem
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Modelagem Uni3

Página 1

UMLUnified Modeling Language

Prof. Juliano Schimiguel

Page 2: Modelagem Uni3

Página 2

Agenda

Histórico

A Guerra dos Métodos

Conceitos

Diagramas

Page 3: Modelagem Uni3

Página 3

Histórico Com o surgimento do paradigma de orientação a

objetos - OO (a partir da metade da década de 70), começaram a surgir métodos alternativos de análise e projeto de sistemas;

Os conceitos de OO trouxeram uma nova filosofia de programação, em relação à técnica estruturada. Dessa forma, novos métodos eram necessários:

Classe Objeto Herança Encapsulamento Polimorfismo

Page 4: Modelagem Uni3

Página 4

A Trajetória da UML Primeira proposta de linguagem orientada a objetos:

Smalltalk (Xerox Parc)

Surgimento do C++

Começou a surgir a preocupação de se criar métodos de projeto em orientação a objetos

Vários pesquisadores e grupos propuseram diferentes métodos de análise e projeto OO

Peter Coad e Ed Yourdon (Coad & Yourdon) Grady Booch (Booch) James Rumbaugh (OMT Object Modeling Technique) Ivar Jacobson (OOSE Object-Oriented Software

Engineering)

Page 5: Modelagem Uni3

Página 5

A Guerra dos Métodos (1) As diferenças de notação entre os métodos gerou

problemas de comunicação entre pessoas e desenvolvedores que utilizavam diferentes técnicas

OMG (Object Management Group) tentou, sem sucesso, padronizar a notação

http://www.omg.org

Page 6: Modelagem Uni3

Página 6

Qual a diferença entre um metodologista e um terrorista?

Com um terrorista, pode-se negociar; com um metodologista não...

A Guerra dos Métodos (2)

Page 7: Modelagem Uni3

Página 7

O Nascimento da UML (1) Em 1994, James Rumbaugh sai da GE (General Electric) e se une à Grady Booch da Rational Software, com a

intenção de integrar seus métodos: Para a conferência OOPSLA’95, Grady e James prepararam a primeira descrição de seu método unificado

Ivar Jacobson se une à equipe;

Em 1996, eles (conhecidos como os TRÊS AMIGOS) lançam a primeira versão da UML

Page 8: Modelagem Uni3

Página 8

O Nascimento da UML (2) A OMG decidiu padronizar os métodos

Várias organizações submeteram propostas: A Rational Software lançou a versão 1.0 da UML como proposta;

Após algumas “quedas-de-braço”, a versão 1.1 da UML foi adotada como padrão;

Em 1999, a versão 1.3 é tornada pública.

Page 9: Modelagem Uni3

Página 9

O que é Linguagem de Modelagem?

É uma linguagem cujo vocabulário e regras têm seu foco voltado para a representação conceitual e física de um sistema a ser desenvolvido;

Questão Importante: A UML indica como criar e ler modelos, mas não aponta quais modelos deverão ser criados; Essa tarefa cabe ao processo de desenvolvimento de sistemas.

Page 10: Modelagem Uni3

Página 10

Modelagem: Objetivos Guia para a construção do sistema;

Modelos documentam as decisões tomadas;

Linguagem comum entre os desenvolvedores;

Page 11: Modelagem Uni3

Página 11

Uso de UML (1) Quão perfeitamente se deve seguir a linguagem de modelagem?

Isto depende da razão que se está utilizando a linguagem;

No caso de se estar utilizando uma ferramenta CASE para o desenvolvimento do sistema, deve-se aderir ao padrão da ferramenta: CASE (Computer Aided Software Engineer) - Engenharia de Software Assistida por Computador; São ferramentas que permitem o desenvolvimento de sistemas seguindo-se os conceitos de um determinado método; Permitem a geração automática de código: C++, Java, ...

Page 12: Modelagem Uni3

Página 12

Uso de UML (2) No caso de uso dos diagramas para fins de comunicação entre pessoas:

Não se deve desviar muito da notação; A linguagem deve ser flexionada para contribuir na comunicação, e não a

comunicação entre as pessoas tem de ser alterada para o entendimento dos diagramas.

Page 13: Modelagem Uni3

Página 13

Ferramentas CASE Rational Rose

http://www.rational.com/

TogetherSoft http://www.togethersoft.com/

ArgoUML (gratuita) http://argouml.tigris.org/

Gentleware Poseidon UML (gratuita) http://www.gentleware.com/

Page 14: Modelagem Uni3

Página 14

Por que fazer Análise e Projeto? (1)

O produto final do processo de desenvolvimento de sistemas é o código executável:

Diagramas são, na verdade, apenas “figuras bonitas”? Nenhum usuário vai lhe agradecer pelas suas figuras bonitas!!!

Page 15: Modelagem Uni3

Página 15

Por que fazer Análise e Projeto? (2)

Razões para utilizar UML: Facilidade na comunicação entre usuários e projetistas, e entre projetistas e programadores;

Utiliza-se UML para atingir uma certa precisão, sem se “perder” em detalhes, procurando salientar apenas aquelas informações que são importantes

Page 16: Modelagem Uni3

Página 16

Por que fazer Análise e Projeto? (3)

A UML ajuda na obtenção de uma visão geral do sistema: A análise do diagrama de classes pode rapidamente

dizer que tipos de abstrações estão presentes no sistema.

Estado

Comportamento

Identidade

Page 17: Modelagem Uni3

Página 17

Por que fazer Análise e Projeto? (4)

A medida que se examina mais profundamente o processo de desenvolvimento, pode ser necessário entender como as classes colaboram:

Nesse momento, faz-se uso dos diagramas de interação, que ilustram os comportamentos-chave do sistema;

Page 18: Modelagem Uni3

Página 18

Conceito de UML A UML é um linguagem de modelagem gráfica destinada a ...

Visualizar Especificar Construir Documentar

... os artefatos de um sistema complexo de software.

Neste contexto, artefato é um conjunto de informações utilizado ou produzido por um processo de desenvolvimento de software.Neste contexto, artefato é um conjunto de informações utilizado ou produzido por um processo de desenvolvimento de software.

Page 19: Modelagem Uni3

Página 19

Linguagem para Visualização

Para muitos programadores, não existe diferença entre pensar e implementar um código;

A UML é muito mais que um “punhado” de símbolos gráficos. Por trás de cada símbolo gráfico, existe uma representação bem definida;

Um desenvolvedor poderá usar a UML para escrever seu modelo e qualquer outro desenvolvedor será capaz de interpretá-lo.

Page 20: Modelagem Uni3

Página 20

Linguagem para Especificação

Especificar significa construir modelos precisos, sem ambigüidades e completos;

Atender a todas as decisões importantes em termos de análise, projeto e implementação.

Page 21: Modelagem Uni3

Página 21

Linguagem para Construção Não é uma linguagem visual de programação, mas seus modelos podem ser diretamente conectados a várias linguagens de

programação; É possível mapear os modelos da UML em linguagens de programação tais como Java, C++, Visual Basic ou até tabelas de banco

de dados relacionais; Permite a realização de uma engenharia de produção: a geração de código a partir de um modelo em UML; Permite a engenharia reversa, construir um modelo a partir de sua implementação.

Page 22: Modelagem Uni3

Página 22

Linguagem para Documentação

Uma empresa de software produz vários tipos de artefatos, além do código executável bruto: Requisitos Projeto Código-fonte Testes Protótipos

Estes artefatos não são apenas partes do processo, mas também são críticos para controlar.

Page 23: Modelagem Uni3

Página 23

Onde pode ser usada? Destina-se principalmente a sistemas complexos de software; Tem sido empregada em domínios como:

Sistemas de Informações corporativos Serviços bancários e financeiros Telecomunicações Transportes Defesa/Espaço Aéreo Eletrônica médica Serviços distribuídos baseados na Web

É suficientemente expressiva para modelar sistemas que não sejam de software.

Page 24: Modelagem Uni3

Página 24

Os Conceitos da UML A UML pode ser utilizada para:

Mostrar o uso de um sistema e suas funções usando Casos de Uso e Atores; Ilustrar a concretização de Casos de Uso com Diagramas de Iterações; Representar a estrutura estática de um sistema usando Diagramas de Classes; Modelar o comportamento de objetos com Diagramas de Transições de Estado; Revelar a arquitetura de implementação física com Diagramas de Componentes e Distribuição.

Page 25: Modelagem Uni3

Página 25

Colocando a UML para funcionar

Uma Universidade quer informatizar seu sistema de matrícula: A Secretaria produz o currículo para o semestre:

• Um curso pode ter múltiplas matérias Os Alunos selecionam 4 matérias principais e 2 matérias alternativas; Após o registro, o sistema de cobranças será notificado para que receba o pagamento do estudante por um semestre; Os Alunos podem usar o sistema para adicionar ou remover matérias por um determinado período após a matrícula; Os Professores usam o sistema para receber a lista de oferta de cursos.

Page 26: Modelagem Uni3

Página 26

Atores Um Ator é alguém ou alguma coisa que deve interagir

com o sistema a ser desenvolvido

Aluno

Secretaria

Professor

Sistema Cobrança

Page 27: Modelagem Uni3

Página 27

Casos de Uso Um caso de uso é um padrão de comportamento que o sistema exibe

Cada caso de uso é uma seqüência de transações relacionadas executadas por um ator e o sistema, num diálogo

Atores são examinados para determinar suas necessidades Secretaria: manter o curriculum Professor: solicitar lista de cursos Aluno: manter o horário de aulas Sistema Cobrança: recebe informações sobre cobranças

Manter HorárioManter Curriculum Solicitar Lista de Cursos

Page 28: Modelagem Uni3

Página 28

Diagrama de Casos de Uso Diagramas de casos de uso são criados para se

visualizar a relação entre atores e casos de uso

Aluno

Secretaria

Professor

Mantém seu Horário

Mantém Curriculum

Solicita Lista de Cursos