Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de...

23
Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores Maio a Setembro/2000

Transcript of Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de...

Page 1: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

Análise e Projeto de Sistemas

Unified Modeling Language

Renata AraujoRicardo Storino

Núcleo de Computação EletrônicaCurso de Programação de Computadores

Maio a Setembro/2000

Page 2: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

2

O que é modelagem

Tripé de apoio ao desenvolvimento.Tripé de apoio ao desenvolvimento.

• Notação: UMLNotação: UML

• Processo: RUP – Processo: RUP – Rational Unified Rational Unified ProcessProcess

• Ferramenta: Rational Rose.Ferramenta: Rational Rose.

Page 3: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

3

O que é modelagem

Ajuda a visualizar um sistema como ele é ou como se deseja que ele seja

Permite especificar o comportamento e a estrutura de um sistema

Oferece uma representação que guiará a construção do sistema

Documenta as decisões tomadas pela avaliação das alternativas propostas

Page 4: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

4

O que é modelagem

Captura dos processos (Use Cases)

Melhora da comunicação entre as partes envolvidas (Especialistas e Analistas)

Gerência da complexidade permitindo exibir várias Visões dos elementos de modelo

Definição da Arquitetura lógica independente das possíveis implementações

Permitir o reuso pela criação de componentes

Page 5: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

5

O que é modelagem

Servir como linguagem para comunicar decisões que não são óbvias ou que não podem ser inferidas

Prover uma semântica rica o suficiente para capturar o que é importante a nível tático e estratégico

Page 6: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

6

O que é modelagem

Auxilia:

Avaliação dos riscos

Definição do problema

Gerenciamento do projeto

Page 7: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

7

Modelagem Visual

Modelagem Visual é a modelagem utilizando Modelagem Visual é a modelagem utilizando uma notação gráfica padrão.uma notação gráfica padrão.

• Sistemas mais fáceis de se comunicaremSistemas mais fáceis de se comunicarem• A visualização em Gráficos diminui a A visualização em Gráficos diminui a

complexidadecomplexidade• Processos tornam-se mais clarosProcessos tornam-se mais claros• Define toda a arquitetura de softwareDefine toda a arquitetura de software• Torna a reutilização muito mais Torna a reutilização muito mais

significativasignificativa

Page 8: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

8

O que é UML?

UML significa “Linguagem de Modelagem Unificada”UML significa “Linguagem de Modelagem Unificada”

A UML combina o melhor de:A UML combina o melhor de: Conceitos de Modelagem de Dados (Diagramas de Entidade Conceitos de Modelagem de Dados (Diagramas de Entidade

Relacionamento)Relacionamento) Modelagem de Negócios (work flow)Modelagem de Negócios (work flow) Modelagem de Objetos Modelagem de Objetos Modelagem de ComponentesModelagem de Componentes

Page 9: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

9

O que é UML?

A UML é a padronização da linguagem de A UML é a padronização da linguagem de desenvolvimento orientado a objetos para desenvolvimento orientado a objetos para visualização, especificação, contrução e visualização, especificação, contrução e documentação de sistemas.documentação de sistemas.

Pode ser usada com todos os tipos de processos, em Pode ser usada com todos os tipos de processos, em todo o ciclo do desenvolvimento do software.todo o ciclo do desenvolvimento do software.

Page 10: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

10

O que é UML?

Utiliza o conceito de desenvolvimento iterativo e Utiliza o conceito de desenvolvimento iterativo e incrementalincremental

Se dá através de uma série de iteraçõesSe dá através de uma série de iterações Cada iteração consiste de um ou mais processos a Cada iteração consiste de um ou mais processos a

saber:saber: Captura de requisitos Modelagem do negócio Análise Projeto Implementação Teste

Page 11: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

11

Conceitos da UML

A UML pode ser usada para:A UML pode ser usada para:

Mostrar os limites de um sistema e suas funções Mostrar os limites de um sistema e suas funções principais. (Use-cases)principais. (Use-cases)

Ilustrar as funções básicas do sistema por diagramas de Ilustrar as funções básicas do sistema por diagramas de interação. interação.

Representar a estrutura estática de sistemas. (Diagramas Representar a estrutura estática de sistemas. (Diagramas de Classes) de Classes)

Modelar o comportamento de Objetos com diagramas de Modelar o comportamento de Objetos com diagramas de estado.estado.

Page 12: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

12

A Notação

Partes que compõem a UML:Partes que compõem a UML:

VisõesVisões Modelos de ElementosModelos de Elementos Mecanismos geraisMecanismos gerais DiagramasDiagramas

Page 13: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

13

Visões

Tipos de Visões:Tipos de Visões:

Visão de Use-casesVisão de Use-cases Visão de ComponentesVisão de Componentes Visão LógicaVisão Lógica Visão de ConcorrênciaVisão de Concorrência

Page 14: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

14

Modelos de Elementos

Classes Classes ObjetosObjetos

ClienteNome : StringIdade : Num

Criar()Destruir()

Pablo Barros:ClienteNome : "Pablo Barros"Idade : 20

Criar()Destruir()

Page 15: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

15

Modelos de Elementos

EstadosEstados

ComponentesComponentes

PacotesPacotes

RelacionamentosRelacionamentos AssociaçõesAssociações GeneralizaçõesGeneralizações

Page 16: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

16

Diagramas – Diagrama de Use Case

Aplicar em

Consulta Historicode Conta Corrente

Gerar HistóricoMovimentarConta corrente

<<uses>>

Pre Fixados

Cliente

Page 17: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

17

Diagramas – Diagrama de Classe

Compahia deAluguel de Veículos

Cliente

0..*

0..1

Carro SportCaminhão Carro de Passeio

Contrato de Aluguel

11

1

Veículo Alugado

1

0..*

refere a

possui

possui Tipos de Veículos

Page 18: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

18

Diagramas – Diagrama de Estado

No Térreo Subindo

ParadoDescendo

Indo para otérreo

subir (andar)

Chegar no andar subir (andar)

Chegar no andar

descer (andar)

tempo de espera

Chegar no térreo

Page 19: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

19

Diagramas – Diagrama de Sequência

: Computador : Servidor deImpressão

: Impressora : Fila

Imprimir (arquivo) [Impressora Livre]Imprimir (arquivo)

[Impressora Ocupada]Imprimir (arquivo)

Page 20: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

20

Diagramas – Diagrama de Componente

Gerenciador deComunicação

Comm.dll

Gráficos

Graficos.dll

Gerenciador deBanco de

DadosDb.dll

Aplicação

App.exe

Page 21: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

21

O Futuro da UML

A UML será a base para muitas ferramentas A UML será a base para muitas ferramentas de desenvolvimento, incluindo modelagem de desenvolvimento, incluindo modelagem visual, simulações e ambientes de visual, simulações e ambientes de desenvolvimento.desenvolvimento.

A integração que a UML trouxe vai acelerar o A integração que a UML trouxe vai acelerar o uso do desenvolvimento de softwares uso do desenvolvimento de softwares orientados a objetos. orientados a objetos.

Page 22: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

22

Conclusão

• Grande aumento no desenvolvimento de Grande aumento no desenvolvimento de Sistemas OOSistemas OO

• Softwares Complexos tornam-se mais Softwares Complexos tornam-se mais simples com uma linguagem de modelagem simples com uma linguagem de modelagem visualvisual

• Modelagem visual robusta para todas as Modelagem visual robusta para todas as fases do desenvolvimento do softwarefases do desenvolvimento do software

Page 23: Análise e Projeto de Sistemas Unified Modeling Language Renata Araujo Ricardo Storino Núcleo de Computação Eletrônica Curso de Programação de Computadores.

23

Conclusão

• Mais facilidade na comunicação entre Mais facilidade na comunicação entre desenvolvedoresdesenvolvedores

• Ferramentas CASE mais poderosas Ferramentas CASE mais poderosas facilitando cada vez mais a programação.facilitando cada vez mais a programação.