Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada...
Transcript of Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada...
![Page 1: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/1.jpg)
Análise e Projetos de Sistemas
Revisão de ConteúdoUML-Linguagem de Modelagem Unificada
Professor: Armando Hage
Belém-2008Belém-2008
![Page 2: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/2.jpg)
Resumo da Unidade Objetivos Conceitos de Orientação a
Objetos(OO) Breve Histórico da UML Diagramas da UML
Diagrama de Caso de Uso Diagrama de Classes Diagrama de Sequencia
Conclusão
![Page 3: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/3.jpg)
Objetivos
Apresentar e praticar alguns principais modelos fornecidos pela principais modelos fornecidos pela UML.
Exercícios de modelagem Exercícios de modelagem.
Praticar algumas situações típicas de projeto de software projeto de software.
![Page 4: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/4.jpg)
Referências Bezerra,Projeto Orientados a Objetos. Campus, 2002.Bezerra,Projeto Orientados a Objetos. Campus, 2002. Booch, G. et al. UML Booch, G. et al. UML Guia do Booch, G. et al. UML Booch, G. et al. UML Guia do
Usuário. Campus, 2000Usuário. Campus, 2000..
COAD, P.; YOURDON, E. Análise Baseada em COAD, P.; YOURDON, E. Análise Baseada em Objetos. 2.ed. Rio de Janeiro: Campus, 1996. (005.1 Objetos. 2.ed. Rio de Janeiro: Campus, 1996. (005.1 C652a)C652a)
DAVIS, William S. Análise e Projeto de Sistemas: uma DAVIS, William S. Análise e Projeto de Sistemas: uma abordagem estruturada. Rio de Janeiro: LTC, 1987. abordagem estruturada. Rio de Janeiro: LTC, 1987.
![Page 5: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/5.jpg)
Visão GeralVisão GeralDesnvolvimento de Software AtualmenteDesnvolvimento de Software Atualmente
Uso de linguagens de programação Orientadas a Objeto (OO) Delphi, Java, PHP Linguagens compactas com
bibliotecas de classes poderosas Ambientes de programação Sistemas de Banco de Dados
Relacionais Oracle, SQL Oracle, SQL-Server,
mySQL, Firebird, Postgres
![Page 6: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/6.jpg)
Conceitos de OOConceitos de OO ModelosModelos – São representações simplificadas de objetos do mundo real. – São representações simplificadas de objetos do mundo real.
DadosDados – Como o mesmo é uma simplificação do mundo real, os dados – Como o mesmo é uma simplificação do mundo real, os dados contidos no modelo são somente os relevantes à abstração do mundo contidos no modelo são somente os relevantes à abstração do mundo real.real.
OperaçõesOperações – Um modelo contém operações e procedimentos associados – Um modelo contém operações e procedimentos associados a ele.a ele.
AbstraçãoAbstração- Uma abstração descreve as características essenciais de uma - Uma abstração descreve as características essenciais de uma entidade que a distingüe de todos os outros tipos de entidades.entidade que a distingüe de todos os outros tipos de entidades. Pessoa Pessoa como empregado de Empresa como empregado de Empresa
Dados (nome, cargo, salário e horasExtrasTrabalhadas)Dados (nome, cargo, salário e horasExtrasTrabalhadas)
Operações(calcularSalário,aumentaSalário)Operações(calcularSalário,aumentaSalário) Pessoa Pessoa como paciente de uma clínica médicacomo paciente de uma clínica médica
Dados(nome,sexo,altura,peso, histórico) Dados(nome,sexo,altura,peso, histórico)
Operações (AdicionaInformaçãoaoHistórico)Operações (AdicionaInformaçãoaoHistórico)
![Page 7: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/7.jpg)
Conceitos de OOConceitos de OO Classe
São estruturas das linguagens de programação OO que contem, para determinado modelo, os dados que devem ser representados e as operações que devem ser efetuadas com estes dados. A classe envolve, associa, funções e dados, controlando o acesso a estes. Defini-lá implica em especificar os seus atributos (dadosdados) e seus métodos (funçõesfunções).
Ex:Interface controladora de um motor elétrico. Classe:motormotor Atributos: temperaturatemperatura, velocidadevelocidade, tensão aplicadatensão aplicada.
![Page 8: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/8.jpg)
Conceitos de OOConceitos de OO Objeto ou instância
Representa uma materialização da classe.
É um pacote de software contendo dados e procedimentos(código)relacionado.
Possui estado,identidade única e comportamento.
Abstração de Dados
Processo mental através do qual nos concentramos nos aspectos relevantes de um conjunto de objetos desconsiderando as suas diferenças.
![Page 9: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/9.jpg)
Conceitos de OOConceitos de OO
Na Orientação a Objetos, o mecanismo principal de abstração é a Classe. Uma Classe descreve um conjunto de
Objetos que compartilham características comuns
A Classe corresponde à noção de módulo em um sistema orientado a objetos
Modularidade é importante pois torna o projeto de um sistema mais simples e reutilizável
Classe “encapsula” dados e operações.
![Page 10: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/10.jpg)
Conceitos de OOConceitos de OOClassificaçãoClassificação
![Page 11: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/11.jpg)
Conceitos de OOConceitos de OOEncapsulamento de dados e operaçãoEncapsulamento de dados e operação
![Page 12: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/12.jpg)
Conceitos de OOConceitos de OOEncapsulamento de dados e operaçãoEncapsulamento de dados e operação
Encapsulamento de dados e operações Ocultamento Ocultamento da Informação da
Informação O acesso aos dados internos de objetos só pode
ocorrer a partir de mensagens Independência de aplicação Um método deve acessar informações internas do
objeto objeto
![Page 13: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/13.jpg)
Conceitos de OOConceitos de OOEncapsulamento de dados e operaçãoEncapsulamento de dados e operação
• Lei de Deméter – Para cada objeto para cada objeto o, e para cada um
dos seus , métodos m, os objetos que podem receber , os objetos que podem receber mensagens de o são
• o próprio o próprio o – especificamente especificamente self e super (em SmallTalk),this (em C++/Java)atributos de objeto de o
![Page 14: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/14.jpg)
Conceitos de OOConceitos de OOClassificação - Associação de ObjetosClassificação - Associação de Objetos
![Page 15: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/15.jpg)
Conceitos de OOConceitos de OOAgregação - Um objeto é composto por outroAgregação - Um objeto é composto por outro
![Page 16: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/16.jpg)
Conceitos de OOConceitos de OOGeneralização/Especialização - Um objeto é composto Generalização/Especialização - Um objeto é composto por outropor outro
![Page 17: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/17.jpg)
Conceitos de OOConceitos de OOGeneralização/Especialização - Um objeto é composto por Generalização/Especialização - Um objeto é composto por outrooutro
É o mecanismo que permite a uma classe herdar todo o comportamento e os atributos de outra classe, adquirindo imediatamente toda a funcionalidade de uma classe existente.
Uma classe que herda de outra classe é chamada de subclassesubclasse e a classe que fornece a herança é chamada de superclassesuperclasse.
ClasseA
ClasseB
ClasseC
ClasseD
ClasseE
![Page 18: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/18.jpg)
Comparações entre abordagem Comparações entre abordagem imperativas e OOimperativas e OO
Paradigma ProceduralParadigma Procedural Tipos de dados Variável Função/Procedimento Chamada de função
Paradigma ObjetosParadigma Objetos Classes Objeto / Instância Operação / Método Envio de Mensagem
![Page 19: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/19.jpg)
Processo de SoftwareTop-Down
![Page 20: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/20.jpg)
Processo de SoftwareBottom-up
![Page 21: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/21.jpg)
Modelos-Esqueletos de Programas
![Page 22: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/22.jpg)
UML Unificada Linguagem de Modelagem Unificada
Surgiu para apoiar OO Evolução a partir de linguagens C++ e
SmallTalk Anos 80 Anos 80-90: diversidade de autores Anos 98-2000: unificação em torno de 2000:
unificação em torno de UML.
![Page 23: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/23.jpg)
UML Unificada Linguagem de Modelagem Unificada
![Page 24: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/24.jpg)
UML Unificada Linguagem de Modelagem Unificada
Grady Booch Um dos pioneiros da OO Um
dos pioneiros da OO 1980: ênfase em técnicas de
projeto para Ada 1992-1994: livros
Object Object Design Design with Applications
Projeto de programas em C++ e Ada
1998: Fundação da Rational
![Page 25: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/25.jpg)
UML Unificada Linguagem de Modelagem Unificada
Ivar Jacobson Modelagem OO
baseado em Casos de Uso
Objectory Basea-se na
necessidades do usuário, o objetivo do sistema, sem preocupações com a ordem de ocorrência de cada fato e suas relações.
![Page 26: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/26.jpg)
UML Unificada Linguagem de Modelagem Unificada
James Rumbaugh Object Modeling
Modeling(OMT) Desenvolvida na GE
Metodologia baseada em notações pré-existentes (ER, DTE, DFD)
Clara distinção entre as três visões do problema.
![Page 27: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/27.jpg)
UML Unificada Linguagem de Modelagem Unificada
![Page 28: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/28.jpg)
UML Unificada Linguagem de Modelagem Unificada
Linguagem visual para especificação Linguagem(modelagem) de sistemas orientados a objetos objetos
Fornece representação gráfica para os elementos essenciais do paradigma de objetos
Classes, atributos, objetos, troca de mensagens, ...
![Page 29: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/29.jpg)
UML Unificada Linguagem de Modelagem Unificada
De propósito geral Não está presa a uma etapa do desenvolvimento
software Análise Análise Projeto Projeto Implementação Testes
Ciclo de vida em cascata Incremental Processo Unificado
Não está presa a uma linguagem de programação
![Page 30: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/30.jpg)
UML Unificada Linguagem de Modelagem Unificada
UML apoia o desenvolvimento incremental
![Page 31: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/31.jpg)
UML Unificada Linguagem de Modelagem Unificada
De propósito geral Não se prende a nenhuma linguagem de programação
![Page 32: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/32.jpg)
UML Unificada Linguagem de Modelagem Unificada
Padrão OMG
Toda a documentação disponível em http://www.omg.orgagem
Privilegia a descrição de um sistema segundo três perspectivas: Dados (estrutural)
Diagrama de Classes Operações (funcional)
Diagrama de Caso de Uso Eventos (temporal)
Diagramas de Seqüência, Atividades, de Transição
de Estados de Estados
![Page 33: Análise e Projetos de Sistemas Revisão de Conteúdo UML-Linguagem de Modelagem Unificada Professor: Armando Hage Belém-2008.](https://reader036.fdocument.pub/reader036/viewer/2022062404/552fc11c497959413d8ca200/html5/thumbnails/33.jpg)
UML Unificada Linguagem de Modelagem Unificada
Ferramentas mais utilizadas Rational Rose -http://www.rational.com Visual Paradigm - http://www.visual-paradigm.com/ Poseidon - http://www.gentleware.com/index.php Argo UML - http://argouml.tigris.org/ Umbrello - http://www.umbrello.org/