UNIVERSIDADE PRESBITERIANA MACKENZIE PLANO DE ENSINO – 2010 2º SEMESTRE FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: Sistemas de Informação Disciplina: Tópicos em Orientação a Objetos Turma: 7º semestre C/H semanal: 4 (4T) C/H semestral: 60 Professor(es) : Rogério de Oliveira Regiane Moreno EMENTA Estudo de técnicas de design, metodologias, ferramentas e boas práticas empregadas no desenvolvimento de aplicações Orientadas a Objeto (OO) corporativas OBJETIVOS Cognitivos Habilidades Conhecer os principais recursos para o desenvolvimento de aplicações Orientadas a Objeto corporativas Aprender boas práticas de projeto e design OO Entender o processo de desenvolvimento de aplicações OO de forma abrangente Aplicar técnicas de design na solução de problemas de aplicações OO Representar e interpretar projetos de aplicações OO Reconhecer o papel e as limitações da Orientação a Objetos no desenvolvimento de aplicações corporativas Valorizar as diferentes etapas do desenvolvimento de aplicações OO Atitudes UNID. I II C/H CONTEÚDO 20 UML Design e mapeamento de classes Necessidade do projeto de aplicações corporativas; Ferramentas e métodos para produtividade: Design avançado, metodologias de desenvolvimento e objetos distribuídos; Ciclo de desenvolvimento com UML; Elementos da UML (elementos, relacionamentos e diagramas); Diagramas de classes, seqüência, colaboração, de estados, de atividades, casos de uso, pacotes e componentes; Projetos orientado a dados x projetos orientados a casos de uso; Modelagem de classes: identificação dos elementos dos sistema; Mapeamento UML x classes Java; Boas práticas; Ortogonalidade da UML; Estereótipos; Diagrama de robustez; 20 Design Patterns e Objetos distribuídos Padrão Model-View-Controller; Padrões de projeto; Boas práticas de design: interfaces e delegação; Caracterização e descrição de padrões; Padrões GoF; Análise de código e soluções de padrões em Java: Singleton, Factory Method, Façade, Proxy; Aplicação prática; Características dos objetos distribuídos; Tecnologias de objetos distribuídos: SUN (Java), Microsoft e CORBA; Programação Java RMI; Stub e Skeletons; Principais funções; Serialização de objetos; III 20 Novos recursos no desenvolvimento OO Frameworks e padrões; Metodologias de desenvolvimento: XP Programming e programação orientada a aspectos; Desenvolvimento embarcado (J2ME); Plataforma de aplicações J2EE: componentes, serviços de persistência, transação, JavaBeans e padrões J2EE; Principais conceitos de Webservices; protocolos WSDL, SOAP e UDDI; ESTRATÉGIA DE ENSINO Aulas expositivas Atividades práticas, exercícios e seminários (opcional) AVALIAÇÃO Exercícios, atividades práticas e/ou seminários – 20% Prova Parcial, individual, dissertativa e testes sem consulta – 40% Prova Final, individual, dissertativa e testes sem consulta – 40% BIBLIOGRAFIA Básica: Complementar: BOOCH, G., RUMBAUGH, J., JACOBSON, I. The Unified Modeling Language User Guide, Addison-Wesley, 1999. PRESSMAN, R.S. Software engineering: a practitioner’s approach. 5. ed. McGraw-Hill, 2000. GAMMA, E., HELM, R., JOHNSON, R., VLISSIDES, J. Design Patterns: elements of reusable object-oriented software, AddisonWesley, 1995. BRUEGGE, B., DUTOIT, A.H. ObjectOriented Software Engineering: Conquering Complex and Changing Systems, PrenticeHall, 2000. SOMMERVILLE, I., Engenharia de Software. 8. ed. São Paulo: Addison-Wesley, 2007. COOPER, J.W. The Design Patterns: Java Companion, Addison-Wesley, 1998. Dobing, B. and Parsons, J. 2006. How UML is used. Commun. ACM 49, 5 (May. 2006), 109-113. KNOERNSCHILD, K. Java Design: Objects, UML, and Process. Addison-Wesley, 2001. DOI= http://doi.acm.org/10.1145/1125944.1125949 DEITEL, H.M., DEITEL, P.J. Java, como programar. Bookman, 2001. Denning, P. J. and Riehle, R. D. 2009. The profession of IT Is software engineering engineering?. Commun. ACM 52, 3 (Mar. 2009), 24-26. DOI= http://doi.acm.org/10.1145/1467247.1467257