SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
FUNDAMENTOS DE
ORIENTACAO A OBJECTOS
       RESUMO
   Profs:   Edgar Gemo
            Zeferino Saugene
Definição de Análise

Análise é o estudo do domínio de um
problema;
Analisar é obter as necessidades de
um sistema a ser desenvolvido para
satisfazer as necessidades do usuário.
Analisar não é definir como o sistema
será desenvolvido, mas sim investigar
o problema;
Paradigma Estruturado vs OO

    Estruturado               OO
Enfoque em           Enfoque em objectos
módulos
(procedimentos e
funções)
O sistema é um       O sistema é uma
conjunto de          colectânea de objectos
programas            que interagem entre si
Instáveis face a     Estáveis face a
mudança de           alterações futuras
requisitos
Manutenção difícil   Manutenção controlada
Propósitos da AOO
Formalizar uma “visão” do mundo real
para o desenvolvimento de sistemas,
estabelecendo os objectos como as
principais estruturas.
Conceitos de OO
  Objectos
  Atributos e Métodos
  Classes e Instâncias
  Estado
  Abstracção – concentração nos
  aspectos relevantes de um
  conjunto de objectos
  Encapsulamento – Ocultação da
  Informação
  Herança – atributos da classe
  mãe para a filha
  Polimorfismo – varias formas
Princípios da OO

Qualquer coisa é um objecto.
Objectos realizam tarefas através da
requisição de serviços a outros
objectos.
Cada objecto pertence a uma
determinada classe. Uma classe
agrupa objectos similares.
A classe é um repositório para
comportamento associado ao objecto.
Classes são organizadas em
hierarquias.
Metodologias de AOO
Destacam-se das diversas metodologias:
  Método de Booch [Booch,1994],
  Object Modeling Technique – OMT
  [Rumbaugh et al, 1994],
  Método de Coad/Yourdon [Coad &
  Yourdon, 1990],
  Object-Oriented Software Engineering –
  OOSE/Objectory [Jacobson, 1992]
  Object-Oriented Analysis/Design –
  OOA/D [Shlaer-Mellor, 1988],
  Unified Modeling Language – UML
  [OMG, 2001].
TPC (da aula passada)

 Estude uma das Metodologias
 OO, tendo em conta:
   Historia de surgimento;
   Caracteristicas;
   Enfoque principal;
   Ciclo de Vida;
   Seu contributo para a UML;
FUNDAMENTOS DE
     UML
  Profs:   Edgar Gemo
           Zeferino Saugene
Surgimento de UML

 Os sistemas constituídos usando
 OO são flexíveis a mudanças,
 possuem estruturas bem conhecidas
 e provêem a oportunidade de criar e
 implementar componentes
 totalmente reutilizáveis.
 As várias metodologias OO
 existentes tem causado “conflitos”
 entre a comunidade de
 desenvolvedores OO, devido à falta
 de delineamento das ideias de cada
 uma destas.
Surgimento de UML

 É na tentativa de padronizar a
 metodologia OO de uma forma
 que qualquer sistema, seja qual
 for o tipo, possa ser modelado
 correctamente, com
 consistência, fácil de comunicar
 com outras aplicações, simples
 de ser actualizado e
 compreensível que surgiu a
 UML.
Evolução da UML




Feedback
 Publico
Pioneiros da UML
O que é UML

1.   Linguagem visual para
     especificação (modelação) de
     sistemas orientados a
     objectos;
      Fornece representação gráfica
      para os elementos essenciais do
      paradigma objectos:
        Classes, atributos, objectos, troca de
        mensagens, ...
O que é UML
2. De propósito geral
      Não está presa a uma etapa do desenvolvimento
      de software
         Análise
         Desenho
         Implementação
         Testes
      Não está presa a um processo
         Ciclo de vida em cascata
         Incremental
         Processo Unificado e outros
      Não está presa a uma linguagem de
      programação
      UML apoia o desenvolvimento incremental
O que é UML
O que é UML

3. Padrão OMG
    Em http://www.omg.org estão
    disponíveis documentos
    eletrônicos que contém:
      Sumário da UML
      Semântica
      Guia da Notação
      Extensões da Linguagem
O que é UML

4. 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 Sequência, Atividades, de
        Transição de Estados
O que é UML

5. Em termos práticos, a UML é
   uma linguagem formal que
   permite    que       usuários,
   analistas, desenhadores e
   programadores     falem     a
   mesma língua.
O que é UML
6.   A UML não é um método de
     desenvolvimento, o que significa que ela
     não diz para você o que fazer primeiro e
     em seguida ou como desenhar seu
     sistema, mas ele lhe auxilia a visualizar
     seu desenho e a comunicação entre
     objectos.
7.   A UML é controlada pelo Grupo de
     Gestão de Objeto (Object Management
     Group - OMG) e é um padrão da
     indústria para descrever graficamente
     software.
UML pode ser usada para
  Mostrar as fronteiras de um sistema e
  suas funções principais - actores e casos
  de uso;
  Ilustrar a realização de casos de uso -
  diagramas de interacção;
  Representar uma estrutura estática de
  um sistema - diagramas de classe;
  Modelar o comportamento de objectos -
  diagramas de transição de estado;
  Revelar a arquitectura de implementação
  física - diagramas de componente e de
  implementação;
Ferramentas Case da UML

  Grande variedade de ferramentas
  com diferentes recursos
    Mais conhecidas
      Rational Rational Rose Rose (http://www.
      http://www.rational)
      TogetherSoft ControlCenter – Java
      (http://www.togethersoft.com)
      Open Open
    Source Source
      Argo UML – Java (http://argouml.tigris.org)
      Fujaba – Java (http://www.fujaba.de)
    Gratuito Gratuito
      Poseidon – Java
      (http://www.gentleware.com)
Limitações da UML
 UML é parte duma metodologia;
 Disponibiliza ferramentas para criar
 e ler modelos, não aponta quais
 modelos devem ser criados, nem
 quando;
 Necessita interagir com uma
 metodologia especifica, para
 maximizar o uso de recursos;
 Assim foi criado o processo
 unificado (RUP);
 O RUP responde:
   Quem faz, o quê, como e estabelece um padrão
   de desenvolvimento.
Bibliografia
 Bibliografia
 [1]    JACOBSON, Ivar; BOOCH, Grady; RUMBAUGH, James;
 UML Guia do Usuário. Rio de Janeiro, 2000.
 [2]    JACOBSON, Ivar; BOOCH, Grady; RUMBAUGH, James;
 The Unified Software Development Process. Massachusetts:
 Addison-Wesley, 1999.
 [3]    Rational - The e-development company. [On-line].
 Disponível em http://www.rational.com/index.jsp
 [4]    Page-Jones, Meilir. Fundamentos do Desenho Orientado
 a Objeto com UML. Makron Books, 2001.
 [5]    QUATRANI, TERRY. Modelagem visual com Rational
 Rose 2000 e UML. Rio de Janeiro: Editora Ciência Moderna,
 2001.
 [6]    LARMAN, CRAIG. Utilizando UML e Padrões. Porto
 Alegre: Bookman, 2001.
 [7]    Bezerra, E. Princípios de Análise e Projeto de Sistemas
 com UML. Campus, 2002.
 [8]    Matos, A. V. UML Prático e Descomplicado. Érica, 2002.
TPC
1.   As metodologias OO surgiram muito
     antes da UML. Explique as razões que
     levaram a criação da UML (apresente os
     problemas que ainda persistiram, mesmo
     com o aparecimento das metodologias
     OO);
2.   Que complemento a UML necessita para
     o desenvolvimento de sistemas?
     Porquê?
3.   O que é um diagrama de casos de uso?
     Quais os elementos que o compõe?
4.   No sistema de gestão de biblioteca da
     USTM, identifique 3 casos de uso e
     descreva, detalhadamente, um deles.

Contenu connexe

Tendances (18)

Uml ppoint
Uml ppointUml ppoint
Uml ppoint
 
UML
UMLUML
UML
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Apostila de uml
Apostila de umlApostila de uml
Apostila de uml
 
Exercitando modelagem em UML
Exercitando modelagem em UMLExercitando modelagem em UML
Exercitando modelagem em UML
 
Apostila uml
Apostila umlApostila uml
Apostila uml
 
Uml
UmlUml
Uml
 
Apostila uml
Apostila umlApostila uml
Apostila uml
 
Apostila UML
Apostila UMLApostila UML
Apostila UML
 
Apostila uml
Apostila umlApostila uml
Apostila uml
 
Principais diagramas da UML
Principais diagramas da UMLPrincipais diagramas da UML
Principais diagramas da UML
 
Modelando Sistemas com UML
Modelando Sistemas com UMLModelando Sistemas com UML
Modelando Sistemas com UML
 
UML
UMLUML
UML
 
Aula diagrama de classes
Aula diagrama de classesAula diagrama de classes
Aula diagrama de classes
 
Aula 01 - UML e Padrões de Projeto
Aula 01 - UML e Padrões de ProjetoAula 01 - UML e Padrões de Projeto
Aula 01 - UML e Padrões de Projeto
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetos
 
Aula 1 - Revisão UML
Aula 1 - Revisão UMLAula 1 - Revisão UML
Aula 1 - Revisão UML
 
Diagrama classes
Diagrama classesDiagrama classes
Diagrama classes
 

Similaire à Aula 5 -_fundamentos_de_uml

Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Jhonefj
 
Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Cláudio Amaral
 
CursoUML - Unified Modeling Language
CursoUML - Unified Modeling LanguageCursoUML - Unified Modeling Language
CursoUML - Unified Modeling Languageelliando dias
 
Aula 4 -_metodologia_e_tecnicas_de_analise_oo
Aula 4 -_metodologia_e_tecnicas_de_analise_ooAula 4 -_metodologia_e_tecnicas_de_analise_oo
Aula 4 -_metodologia_e_tecnicas_de_analise_ooPortal_do_estudante_ADS
 
Ferramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisFerramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisCapgemini
 
Análise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e JavaAnálise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e Javaarmeniocardoso
 
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Edson Oliveira Junior
 
Fundamentos de Sistemas de Informacao - Aula 27
Fundamentos de Sistemas de Informacao - Aula 27Fundamentos de Sistemas de Informacao - Aula 27
Fundamentos de Sistemas de Informacao - Aula 27Ismar Silveira
 
Apresentação Introdução Design Patterns
Apresentação Introdução Design PatternsApresentação Introdução Design Patterns
Apresentação Introdução Design PatternsLucas Simões Maistro
 

Similaire à Aula 5 -_fundamentos_de_uml (20)

Apostila uml
Apostila umlApostila uml
Apostila uml
 
Apostila uml
Apostila umlApostila uml
Apostila uml
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02
 
Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005Projeto de Sistemas - Aula005
Projeto de Sistemas - Aula005
 
Aula1 astah
Aula1 astahAula1 astah
Aula1 astah
 
O emprego do_rup_na_uml_-_trabalho_poo_2012
O emprego do_rup_na_uml_-_trabalho_poo_2012O emprego do_rup_na_uml_-_trabalho_poo_2012
O emprego do_rup_na_uml_-_trabalho_poo_2012
 
UML
UMLUML
UML
 
uml-intro_v02.pdf
uml-intro_v02.pdfuml-intro_v02.pdf
uml-intro_v02.pdf
 
CursoUML - Unified Modeling Language
CursoUML - Unified Modeling LanguageCursoUML - Unified Modeling Language
CursoUML - Unified Modeling Language
 
3 uml
3 uml3 uml
3 uml
 
Aula 4 -_metodologia_e_tecnicas_de_analise_oo
Aula 4 -_metodologia_e_tecnicas_de_analise_ooAula 4 -_metodologia_e_tecnicas_de_analise_oo
Aula 4 -_metodologia_e_tecnicas_de_analise_oo
 
Linguagem de Modelagem Unificada (UML)
Linguagem de Modelagem Unificada (UML)Linguagem de Modelagem Unificada (UML)
Linguagem de Modelagem Unificada (UML)
 
Ferramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases RelacionaisFerramenta de Apoio a UML e Modelo de Bases Relacionais
Ferramenta de Apoio a UML e Modelo de Bases Relacionais
 
4º semestre
4º semestre4º semestre
4º semestre
 
UML1.pdf
UML1.pdfUML1.pdf
UML1.pdf
 
Análise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e JavaAnálise e Projeto de Sistemas com UML e Java
Análise e Projeto de Sistemas com UML e Java
 
Uml
UmlUml
Uml
 
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
Proposta de uma Abordagem Formal para o Gerenciamento de Variabilidades em Mo...
 
Fundamentos de Sistemas de Informacao - Aula 27
Fundamentos de Sistemas de Informacao - Aula 27Fundamentos de Sistemas de Informacao - Aula 27
Fundamentos de Sistemas de Informacao - Aula 27
 
Apresentação Introdução Design Patterns
Apresentação Introdução Design PatternsApresentação Introdução Design Patterns
Apresentação Introdução Design Patterns
 

Plus de Portal_do_estudante_ADS (15)

Diagrama de classes
Diagrama de classesDiagrama de classes
Diagrama de classes
 
Diagramas de pacotes
Diagramas de pacotesDiagramas de pacotes
Diagramas de pacotes
 
Diagramas de distribuicao
Diagramas de distribuicaoDiagramas de distribuicao
Diagramas de distribuicao
 
Diagramas de componentes
Diagramas de componentesDiagramas de componentes
Diagramas de componentes
 
Aula10 diagrama colaboracao
Aula10 diagrama colaboracaoAula10 diagrama colaboracao
Aula10 diagrama colaboracao
 
Aula9 diagrama de_sequencia
Aula9 diagrama de_sequenciaAula9 diagrama de_sequencia
Aula9 diagrama de_sequencia
 
Aula8 diagrama de_objectos
Aula8 diagrama de_objectosAula8 diagrama de_objectos
Aula8 diagrama de_objectos
 
Aula2 paradigmas
Aula2 paradigmasAula2 paradigmas
Aula2 paradigmas
 
Aula1 eng software
Aula1 eng softwareAula1 eng software
Aula1 eng software
 
Aula capitulo9 diagrama_estados
Aula capitulo9 diagrama_estadosAula capitulo9 diagrama_estados
Aula capitulo9 diagrama_estados
 
Aula 7 diagramas_classes2
Aula 7 diagramas_classes2Aula 7 diagramas_classes2
Aula 7 diagramas_classes2
 
Aula 6 -_casos_de_uso
Aula 6 -_casos_de_usoAula 6 -_casos_de_uso
Aula 6 -_casos_de_uso
 
Aula -diagrama_de_actividade
Aula  -diagrama_de_actividadeAula  -diagrama_de_actividade
Aula -diagrama_de_actividade
 
Aula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aooAula 3 -_fundamentos_sobre_aoo
Aula 3 -_fundamentos_sobre_aoo
 
Rup vs. xp
Rup vs. xpRup vs. xp
Rup vs. xp
 

Aula 5 -_fundamentos_de_uml

  • 1. FUNDAMENTOS DE ORIENTACAO A OBJECTOS RESUMO Profs: Edgar Gemo Zeferino Saugene
  • 2. Definição de Análise Análise é o estudo do domínio de um problema; Analisar é obter as necessidades de um sistema a ser desenvolvido para satisfazer as necessidades do usuário. Analisar não é definir como o sistema será desenvolvido, mas sim investigar o problema;
  • 3. Paradigma Estruturado vs OO Estruturado OO Enfoque em Enfoque em objectos módulos (procedimentos e funções) O sistema é um O sistema é uma conjunto de colectânea de objectos programas que interagem entre si Instáveis face a Estáveis face a mudança de alterações futuras requisitos Manutenção difícil Manutenção controlada
  • 4. Propósitos da AOO Formalizar uma “visão” do mundo real para o desenvolvimento de sistemas, estabelecendo os objectos como as principais estruturas.
  • 5. Conceitos de OO Objectos Atributos e Métodos Classes e Instâncias Estado Abstracção – concentração nos aspectos relevantes de um conjunto de objectos Encapsulamento – Ocultação da Informação Herança – atributos da classe mãe para a filha Polimorfismo – varias formas
  • 6. Princípios da OO Qualquer coisa é um objecto. Objectos realizam tarefas através da requisição de serviços a outros objectos. Cada objecto pertence a uma determinada classe. Uma classe agrupa objectos similares. A classe é um repositório para comportamento associado ao objecto. Classes são organizadas em hierarquias.
  • 7. Metodologias de AOO Destacam-se das diversas metodologias: Método de Booch [Booch,1994], Object Modeling Technique – OMT [Rumbaugh et al, 1994], Método de Coad/Yourdon [Coad & Yourdon, 1990], Object-Oriented Software Engineering – OOSE/Objectory [Jacobson, 1992] Object-Oriented Analysis/Design – OOA/D [Shlaer-Mellor, 1988], Unified Modeling Language – UML [OMG, 2001].
  • 8. TPC (da aula passada) Estude uma das Metodologias OO, tendo em conta: Historia de surgimento; Caracteristicas; Enfoque principal; Ciclo de Vida; Seu contributo para a UML;
  • 9. FUNDAMENTOS DE UML Profs: Edgar Gemo Zeferino Saugene
  • 10. Surgimento de UML Os sistemas constituídos usando OO são flexíveis a mudanças, possuem estruturas bem conhecidas e provêem a oportunidade de criar e implementar componentes totalmente reutilizáveis. As várias metodologias OO existentes tem causado “conflitos” entre a comunidade de desenvolvedores OO, devido à falta de delineamento das ideias de cada uma destas.
  • 11. Surgimento de UML É na tentativa de padronizar a metodologia OO de uma forma que qualquer sistema, seja qual for o tipo, possa ser modelado correctamente, com consistência, fácil de comunicar com outras aplicações, simples de ser actualizado e compreensível que surgiu a UML.
  • 14. O que é UML 1. Linguagem visual para especificação (modelação) de sistemas orientados a objectos; Fornece representação gráfica para os elementos essenciais do paradigma objectos: Classes, atributos, objectos, troca de mensagens, ...
  • 15. O que é UML 2. De propósito geral Não está presa a uma etapa do desenvolvimento de software Análise Desenho Implementação Testes Não está presa a um processo Ciclo de vida em cascata Incremental Processo Unificado e outros Não está presa a uma linguagem de programação UML apoia o desenvolvimento incremental
  • 16. O que é UML
  • 17. O que é UML 3. Padrão OMG Em http://www.omg.org estão disponíveis documentos eletrônicos que contém: Sumário da UML Semântica Guia da Notação Extensões da Linguagem
  • 18. O que é UML 4. 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 Sequência, Atividades, de Transição de Estados
  • 19. O que é UML 5. Em termos práticos, a UML é uma linguagem formal que permite que usuários, analistas, desenhadores e programadores falem a mesma língua.
  • 20. O que é UML 6. A UML não é um método de desenvolvimento, o que significa que ela não diz para você o que fazer primeiro e em seguida ou como desenhar seu sistema, mas ele lhe auxilia a visualizar seu desenho e a comunicação entre objectos. 7. A UML é controlada pelo Grupo de Gestão de Objeto (Object Management Group - OMG) e é um padrão da indústria para descrever graficamente software.
  • 21. UML pode ser usada para Mostrar as fronteiras de um sistema e suas funções principais - actores e casos de uso; Ilustrar a realização de casos de uso - diagramas de interacção; Representar uma estrutura estática de um sistema - diagramas de classe; Modelar o comportamento de objectos - diagramas de transição de estado; Revelar a arquitectura de implementação física - diagramas de componente e de implementação;
  • 22. Ferramentas Case da UML Grande variedade de ferramentas com diferentes recursos Mais conhecidas Rational Rational Rose Rose (http://www. http://www.rational) TogetherSoft ControlCenter – Java (http://www.togethersoft.com) Open Open Source Source Argo UML – Java (http://argouml.tigris.org) Fujaba – Java (http://www.fujaba.de) Gratuito Gratuito Poseidon – Java (http://www.gentleware.com)
  • 23. Limitações da UML UML é parte duma metodologia; Disponibiliza ferramentas para criar e ler modelos, não aponta quais modelos devem ser criados, nem quando; Necessita interagir com uma metodologia especifica, para maximizar o uso de recursos; Assim foi criado o processo unificado (RUP); O RUP responde: Quem faz, o quê, como e estabelece um padrão de desenvolvimento.
  • 24. Bibliografia Bibliografia [1] JACOBSON, Ivar; BOOCH, Grady; RUMBAUGH, James; UML Guia do Usuário. Rio de Janeiro, 2000. [2] JACOBSON, Ivar; BOOCH, Grady; RUMBAUGH, James; The Unified Software Development Process. Massachusetts: Addison-Wesley, 1999. [3] Rational - The e-development company. [On-line]. Disponível em http://www.rational.com/index.jsp [4] Page-Jones, Meilir. Fundamentos do Desenho Orientado a Objeto com UML. Makron Books, 2001. [5] QUATRANI, TERRY. Modelagem visual com Rational Rose 2000 e UML. Rio de Janeiro: Editora Ciência Moderna, 2001. [6] LARMAN, CRAIG. Utilizando UML e Padrões. Porto Alegre: Bookman, 2001. [7] Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Campus, 2002. [8] Matos, A. V. UML Prático e Descomplicado. Érica, 2002.
  • 25. TPC 1. As metodologias OO surgiram muito antes da UML. Explique as razões que levaram a criação da UML (apresente os problemas que ainda persistiram, mesmo com o aparecimento das metodologias OO); 2. Que complemento a UML necessita para o desenvolvimento de sistemas? Porquê? 3. O que é um diagrama de casos de uso? Quais os elementos que o compõe? 4. No sistema de gestão de biblioteca da USTM, identifique 3 casos de uso e descreva, detalhadamente, um deles.