Download - Aula 5 -_fundamentos_de_uml
![Page 1: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/1.jpg)
FUNDAMENTOS DE FUNDAMENTOS DE ORIENTACAO A OBJECTOSORIENTACAO A OBJECTOS
RESUMORESUMOProfsProfs:: Edgar GemoEdgar Gemo
Zeferino SaugeneZeferino Saugene
![Page 2: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/2.jpg)
DefiniDefiniçção de Anão de Anááliselise
AnAnáálise lise éé o estudo do domo estudo do domíínio de um nio de um problema;problema;AnalisarAnalisar éé obter as necessidades de obter as necessidades de um sistema a ser desenvolvido para um sistema a ser desenvolvido para satisfazer as necessidades do ususatisfazer as necessidades do usuáário. rio. Analisar não Analisar não éé definir como o sistema definir como o sistema serseráá desenvolvido, mas sim desenvolvido, mas sim investigar investigar o problema;o problema;
![Page 3: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/3.jpg)
Paradigma Estruturado Paradigma Estruturado vsvs OOOO
EstruturadoEstruturado OOOOEnfoque em Enfoque em mmóódulos dulos (procedimentos e (procedimentos e funfunçções)ões)
Enfoque em objectosEnfoque em objectos
O sistema O sistema éé um um conjunto de conjunto de programasprogramas
O sistema O sistema éé uma uma colectânea de objectos colectânea de objectos que interagem entre sique interagem entre si
InstInstááveis face a veis face a mudanmudançça de a de requisitosrequisitos
EstEstááveis face a veis face a alteraalteraçções futurasões futuras
ManutenManutençção difão difíícilcil ManutenManutençção controladaão controlada
![Page 4: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/4.jpg)
PropPropóósitos da AOOsitos da AOO
Formalizar uma Formalizar uma ““visãovisão”” do mundo real do mundo real para o desenvolvimento de sistemas, para o desenvolvimento de sistemas, estabelecendo os objectos como as estabelecendo os objectos como as principais estruturas.principais estruturas.
![Page 5: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/5.jpg)
Conceitos de OOConceitos de OO
ObjectosObjectosAtributos e MAtributos e MéétodostodosClasses e InstânciasClasses e InstânciasEstadoEstadoAbstracAbstracçção ão –– concentração nos aspectos relevantes de um conjunto de objectosEncapsulamento Encapsulamento –– Ocultação da InformaçãoHeranHerançça a –– atributos da classe atributos da classe mãe para a filhamãe para a filhaPolimorfismo Polimorfismo –– varias formasvarias formas
![Page 6: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/6.jpg)
PrincPrincíípios da OOpios da OO
Qualquer coisa Qualquer coisa éé um objecto.um objecto.Objectos realizam tarefas atravObjectos realizam tarefas atravéés da s da requisirequisiçção de servião de serviçços a outros os a outros objectos.objectos.Cada objecto pertence a uma Cada objecto pertence a uma determinada classe. Uma classe determinada classe. Uma classe agrupa objectos similares.agrupa objectos similares.A classe A classe éé um repositum repositóório para rio para comportamento associado ao objecto.comportamento associado ao objecto.Classes são organizadas em Classes são organizadas em hierarquias.hierarquias.
![Page 7: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/7.jpg)
Metodologias de AOOMetodologias de AOO
DestacamDestacam--se das se das diversasdiversas metodologiasmetodologias::MMéétodo de todo de BoochBooch [Booch,1994],[Booch,1994],ObjectObject ModelingModeling TechniqueTechnique –– OMTOMT[[RumbaughRumbaugh et al, 1994],et al, 1994],MMéétodo de todo de CoadCoad/Yourdon/Yourdon [[CoadCoad & & Yourdon, 1990], Yourdon, 1990], ObjectObject--OrientedOriented Software Software EngineeringEngineering ––OOSE/ObOOSE/Objectoryjectory [Jacobson, 1992] [Jacobson, 1992] ObjectObject--OrientedOriented AnalysisAnalysis/Design /Design ––OOA/DOOA/D [[ShlaerShlaer--MellorMellor, 1988], , 1988], UnifiedUnified ModelingModeling LanguageLanguage –– UMLUML[OMG, 2001].[OMG, 2001].
![Page 8: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/8.jpg)
TPC (da aula passada)TPC (da aula passada)
Estude uma das Metodologias Estude uma das Metodologias OO, tendo em conta:OO, tendo em conta:
Historia de surgimento;Historia de surgimento;CaracteristicasCaracteristicas;;Enfoque principal;Enfoque principal;Ciclo de Vida;Ciclo de Vida;Seu contributo para a UML;Seu contributo para a UML;
![Page 9: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/9.jpg)
FUNDAMENTOS DE FUNDAMENTOS DE UMLUML
ProfsProfs:: Edgar GemoEdgar GemoZeferino SaugeneZeferino Saugene
![Page 10: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/10.jpg)
Surgimento de UMLSurgimento de UML
Os sistemas constituOs sistemas constituíídos usando dos usando OO são flexOO são flexííveis a mudanveis a mudançças, as, possuem estruturas bem conhecidas possuem estruturas bem conhecidas e provêem a oportunidade de criar e e provêem a oportunidade de criar e implementar componentes implementar componentes totalmente reutiliztotalmente reutilizááveis.veis.As vAs váárias metodologias OO rias metodologias OO existentes tem causado existentes tem causado ““conflitosconflitos””entre a comunidade de entre a comunidade de desenvolvedores OO, devido desenvolvedores OO, devido àà falta falta de delineamento das ideias de cada de delineamento das ideias de cada uma destas.uma destas.
![Page 11: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/11.jpg)
Surgimento de UMLSurgimento de UML
ÉÉ na tentativa de padronizar a na tentativa de padronizar a metodologia OO de uma forma metodologia OO de uma forma que qualquer sistema, seja qual que qualquer sistema, seja qual for o tipo, possa ser modelado for o tipo, possa ser modelado correctamente, com correctamente, com consistência, fconsistência, fáácil de comunicar cil de comunicar com outras aplicacom outras aplicaçções, simples ões, simples de ser actualizado e de ser actualizado e compreenscompreensíível que surgiu a vel que surgiu a UML.UML.
![Page 12: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/12.jpg)
EvoluEvoluçção da UMLão da UML
FeedbackPublico
![Page 13: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/13.jpg)
Pioneiros da UMLPioneiros da UML
![Page 14: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/14.jpg)
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, ...
![Page 15: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/15.jpg)
O que é UML2. De propósito geral
Não está presa a uma etapa do desenvolvimento de software
AnáliseDesenhoImplementaçãoTestes
Não está presa a um processoCiclo de vida em cascataIncrementalProcesso Unificado e outros
Não está presa a uma linguagem de programaçãoUML apoia o desenvolvimento incremental
![Page 16: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/16.jpg)
O que é UML
![Page 17: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/17.jpg)
O que é UML
3. Padrão OMGEm http://www.omg.org estão disponíveis documentos eletrônicos que contém:
Sumário da UMLSemânticaGuia da NotaçãoExtensões da Linguagem
![Page 18: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/18.jpg)
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
![Page 19: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/19.jpg)
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.
![Page 20: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/20.jpg)
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.
![Page 21: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/21.jpg)
UML pode ser usada paraUML pode ser usada para
Mostrar as fronteiras de um sistema e Mostrar as fronteiras de um sistema e suas funsuas funçções principais ões principais -- actores e casos actores e casos de usode uso; ;
Ilustrar a realizaIlustrar a realizaçção de casos de uso ão de casos de uso --diagramas de interacdiagramas de interacççãoão;;
Representar uma estrutura estRepresentar uma estrutura estáática de tica de um sistema um sistema -- diagramas de classediagramas de classe;;
Modelar o comportamento de objectos Modelar o comportamento de objectos --diagramas de transidiagramas de transiçção de estadoão de estado;;
Revelar a arquitectura de implementaRevelar a arquitectura de implementaçção ão ffíísica sica -- diagramas de componente e de diagramas de componente e de implementaimplementaççãoão;;
![Page 22: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/22.jpg)
Ferramentas Case da UML
Grande variedade de ferramentas com diferentes recursos
Mais conhecidasRational Rational Rose Rose (http://www. http://www.rational)TogetherSoft ControlCenter – Java(http://www.togethersoft.com)Open Open
Source SourceArgo UML – Java (http://argouml.tigris.org)Fujaba – Java (http://www.fujaba.de)
Gratuito GratuitoPoseidon – Java(http://www.gentleware.com)
![Page 23: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/23.jpg)
LimitaLimitaçções da UMLões da UMLUML UML éé parte duma metodologia;parte duma metodologia;Disponibiliza ferramentas para criar Disponibiliza ferramentas para criar e ler modelos, não aponta quais e ler modelos, não aponta quais modelos devem ser criados, nem modelos devem ser criados, nem quando;quando;Necessita interagir com uma Necessita interagir com uma metodologia especifica, para metodologia especifica, para maximizar o uso de recursos;maximizar o uso de recursos;Assim foi criado o processo Assim foi criado o processo unificado (RUP);unificado (RUP);O RUP responde:O RUP responde:
Quem faz, o quQuem faz, o quêê, como e estabelece um padrão , como e estabelece um padrão de desenvolvimentode desenvolvimento..
![Page 24: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/24.jpg)
BibliografiaBibliografia
BibliografiaBibliografia[1][1] JACOBSON, JACOBSON, IvarIvar; BOOCH, Grady; RUMBAUGH, ; BOOCH, Grady; RUMBAUGH, JamesJames; ; UML Guia do UsuUML Guia do Usuáário. rio. Rio de Janeiro, 2000.Rio de Janeiro, 2000.[2] [2] JACOBSON, JACOBSON, IvarIvar; BOOCH, Grady; RUMBAUGH, James; ; BOOCH, Grady; RUMBAUGH, James; The Unified Software Development Process. Massachusetts: The Unified Software Development Process. Massachusetts: AddisonAddison--Wesley, 1999.Wesley, 1999.[3][3] Rational Rational -- The eThe e--development company. [Ondevelopment company. [On--line]. line]. DisponDisponíível em vel em httphttp://www.rationa://www.rational.coml.com//index.jspindex.jsp[4] [4] PagePage--JonesJones, Meilir. Fundamentos do Desenho Orientado , Meilir. Fundamentos do Desenho Orientado a a ObjetoObjeto com UML. com UML. MakronMakron Books, 2001.Books, 2001.[5] [5] QUATRANI, TERRY. Modelagem visual com QUATRANI, TERRY. Modelagem visual com RationalRationalRose 2000 e UML. Rio de Janeiro: Editora Ciência Moderna, Rose 2000 e UML. Rio de Janeiro: Editora Ciência Moderna, 2001.2001.[6] [6] LARMAN, CRAIG. Utilizando UML e Padrões. Porto LARMAN, CRAIG. Utilizando UML e Padrões. Porto Alegre: Alegre: BookmanBookman, 2001., 2001.[7] [7] Bezerra, E. PrincBezerra, E. Princíípios de Anpios de Anáálise e lise e ProjetoProjeto de Sistemas de Sistemas com UML. com UML. CampusCampus, 2002., 2002.[8] [8] Matos, A. V. UML PrMatos, A. V. UML Práático e tico e DescomplicadoDescomplicado. . ÉÉricarica, 2002., 2002.
![Page 25: Aula 5 -_fundamentos_de_uml](https://reader034.vdocuments.com.br/reader034/viewer/2022052316/559582e41a28ab09548b46b7/html5/thumbnails/25.jpg)
TPCTPC1.1. As metodologias OO surgiram muito As metodologias OO surgiram muito
antes da UML. Explique as razões que antes da UML. Explique as razões que levaram a crialevaram a criaçção da UML (apresente os ão da UML (apresente os problemas que ainda persistiram, mesmo problemas que ainda persistiram, mesmo com o aparecimento das metodologias com o aparecimento das metodologias OO);OO);
2.2. Que complemento a UML necessita para Que complemento a UML necessita para o desenvolvimento de sistemas? o desenvolvimento de sistemas? PorquPorquêê? ?
3.3. O que O que éé um diagrama de casos de uso? um diagrama de casos de uso? Quais os elementos que o compõe?Quais os elementos que o compõe?
4.4. No sistema de gestão de biblioteca da No sistema de gestão de biblioteca da USTM, identifique 3 casos de uso e USTM, identifique 3 casos de uso e descreva, detalhadamente, um deles.descreva, detalhadamente, um deles.