UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática EMENTAS DAS DISCIPLINAS – 6ª. ETAPA 1 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: Núcleo Temático: CIÊNCIA DA COMPUTAÇÃO TECNOLÓGICA Disciplina: Código da Disciplina: TÓPICOS AVANÇADOS EM REDES DE COMPUTADORES Carga horária: 68 há Ementa: ( 68 ) Teóricas ( ) Práticas Etapa: 6ª Desenvolvimento as principais tecnologias e serviços em redes de computadores: convergência, aplicações e redes multimídia. Redes de Próxima Geração (NGN): arquiteturas para VoIP (SIP e H.323), IPTV, Vídeo sob Demanda (VoD) e serviços e protocolos para 4G. Estudo da questão da Qualidade de Serviço (QoS): arquiteturas para prover QoS. Apresentação do protocolo IPv6 e roteamento multicast. Discussão da convergência com foco no IP: IMS (IP Multimedia Subsystem). Redes de Computadores e a computação ubíqua: redes AdHoc, redes de sensores e PCA (Person-oriented Pervasive Computing Architecture) Bibliografia Básica: HAVALDAR, P, MEDIONI, P. Multimedia Systems – Algorithms, Standards and Industry Practices. Course Technology, Cengage Learning. Boston, 2010. FISCHER, W. Digital Video and Audio Broadcasting Technology - A Practical Engineering Guide. Springer, Berlin, 2010. RAO,K.R.; BOJKOVIC,Z.S.; MILOVANOVIC, D.A. Wireless multimedia communications and convergence, DSP, QoS, and security. Boca Raton, FL : CRC Press, c2009. Bibliografia Complementar: ATUL, P; CHEN, T. Multimedia Systems, Standards, and Networks (Signal Processing and Communications. Marcel Dekker, New York, 2000. AGBINYA, J. I. IP Communications and Services for NGN. CRC Press, Boca Raton, 2010. O’DRISCOLL, G. Next Generation IPTV Services and Technologies. John Wiley & Sons, Hoboken, N, Jersey, 2008. AHSON, S.A.; ILYAS, M. IP Multimedia SubSystems (IMS) Handbook. Boston, CRC Press, 2009. WISELY,D. IP for 4GN. John Willey & Soons, West Sussex, 2009. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura Assinatura 2 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Disciplina: Núcleo Temático: FUNDAMENTOS Código da Disciplina: LINGUAGENS FORMAIS E AUTÔMATOS Carga horária: 68 h/a ( 68 ) Teóricas ( ) Práticas Etapa:6ª. Ementa: Apresentação dos conceitos de alfabetos, palavras, linguagens e grramáticas. Apresentar a Hierarquia de Chomsky e detalhar as Linguagens regulares e autômatos finitos, Linguagens livres de contexto e autômatos de pilha, Linguagens sensíveis ao contexto e máquinas de Turing com fita limitada, Linguagens recursivamente enumeráveis e Máquinas de Turing. Além disto, estudo de modelos alternativos de linguagens. Bibliografia Básica: NETO, J. J., MIDENA, M.V., VEGA, I.S. Linguagens Formais: Teoria, Modelagem e Implementação. São Paulo: Bookman, 2009. MENEZES, P. F. Linguagens formais e autômatos. 3. ed. Porto Alegre : Sagra Luzzatto, 2000. HOPCROFT, J. E., MOTWANI, R., ULLMAN, J. D. Introduction to automata theory, languages, and computation. 2nd ed. Reading : Addison-Wesley, 2000. Bibliografia Complementar: DIVERIO, T.A., MENEZES, P.B. Teoria da Computação: Máquinas Universais e Computabilidade. Porto Alegre: Sagra Luzzatto, 1999. GREENLAW, R., HOOVER, H.J. Fundamentals of the Theory of Computation: Principles and Practice. San Francisco: Morgan Kauffman, 1998. SIPSER, M. Introduction to the Theory Computation. Boston: PWS Publishing, 1997. SALOMAA, A. Formal languages. Boston: Academic Press, 1987. LINZ, P. An Introduction to Formal Languages. New York: Jones & Bartlett, 2006. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura Assinatura 3 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Núcleo Temático: FUNDAMENTOS Disciplina: Código da Disciplina: PROGRAMAÇÃO MATEMÁTICA Carga horária: ( 68 ) Teóricas Etapa: 68 ha ( ) Práticas 6º. Ementa: Modelagem de problemas de otimização. Estudo de Métodos gráficos. Apresentação de Programação linear, Programação dinâmica e Programação não-linear. Desenvolvimetno de aplicações em problemas práticos envolvendo os temas relacionados. Bibliografia Básica: LUENBERGER, D. G. Linear and Nonlinear Programming. 2.ed. New York: Kluwer Academic Publishers, 2003 LACHTERMACHER, G.. Pesquisa Operacional na Tomada de Decisões. 2 Ed., Editora Campus. 2004. WINSTON, W. L. Introduction to Mathematical Programming. 4th ed. New York: Duxbury Press, 2002. Bibliografia Complementar: BAZARAA, M. S.; SHERALI, H. D.; SHETTY, C. M. Nonlinear programming: theory and algorithms. 2nd ed. New York: John Wiley, 1993. CHONG, E. K.P.; ZAK, S. H. An introduction to optimization. 2.ed. New York: John Wiley, 2001. NASH, S., SOFER, A., NASH, S. G. Linear and Nonlinear Programming. New York: McGraw Hill, 1995. NEMHAUSER, G.; WOLSEY, L. Integer and combinatorial optimization. New york: John Wiley, 1999. PAPADIMITRIOU, C. H.; STEIGLITZ, K. Combinatorial Optimization: algorithms and complexity. Mineola: Dover, 1998. SUNDARAM, R. K. A First Course in Optimization Theory. Cambridge University, 1996. ANDRADE, E. L. de. Introdução À Pesquisa Operacional – Métodos e Modelos para Análise de Decisões. 3a Ed. LTC. 2002. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura Assinatura 4 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Disciplina: Núcleo Temático: PROGRAMAÇÃO Código da Disciplina: PROGRAMAÇÃO PARALELA Carga horária: 68 Ementa: ( 34 ) Teóricas ( 34 ) Práticas Etapa: 6ª Apresentação das Arquiteturas paralelas: multiprocessadores e multicomputadores, supercomputadores, aceleradores. Estudo dos Modelos de programação paralela: paralelização de programas, níveis de paralelismo, distribuição de dados. Análise de desempenho. Aprofundamento de Programação de multiprocessadores: threads, mecanismos de sincronização e exclusão mútua, ambientes e ferramentas de programação, estudos de caso através de algoritmos clássicos de sincronização e algoritmos numéricos e de ordenação. Estudo da Programação de aceleradores: programação SIMT, ambientes e ferramentas de programação em GPU, estudos de caso através de algoritmos numéricos. Estudo de Programação de multicomputadores: programação por passagem de mensagens, ambientes e ferramentas de programação, estudos de caso através de algoritmos numéricos e de ordenação. Bibliografia Básica: PACHECO, P. An Introduction to Parallel Programming. 1a. ed, Elsevier, 2011 RAUBER, T.; RUNGER, G. Parallel Programming for Multicore and Cluster Systems. Springer Verlag, 2010. WIKINSON, B. e ALLEN, M. Parallel Programming: Techniques and applications using networked workstations and parallel computers. 2a. ed. Prentice Hall, 2004 Bibliografia Complementar: MATTSON, T.; SANDERS, B; MASSINGILL, B. Patterns for Parallel Programming. Addison-Wesley, 2005. CHAPMAN, B.; JOST, G.; VAN DER PAS, R. Using OpenMP:Portable Shared Memory Parallel Programming, The MIT Press, 2008 KIRK, D.; HWU, W. Programando para Processadores Paralelos - Uma abordagem prática à programação de GPU. Campus-Elsevier, 2011. BRESHEARS, C. The Art of Concurrency: A thread monkey's guide to writing parallel applications. O'Reilly, 2009 KAMINSKY, A. Building Parallel Programs: SMPs, Clusters, and Java. Course Technology - CENGAGE Learning, 2010 Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura Assinatura 5 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Disciplina: TEORIA DOS GRAFOS Carga horária: ( 68 ) Teóricas 68 há ( ) Práticas Ementa: Núcleo Temático: FUNDAMENTOS Código da Disciplina: Etapa: 6ª Apresentação dos conceitos básicos. Estudo sobre árvores, buscas em Grafos, conectividade. Conceituação de Trilhas eulerianos e ciclos hamiltonianos, emparelhamentos, coloração de arestas, conjuntos independentes e cliques. Apresentação de coloração de vértices, grafos planares, grafos orientados, fluxos em redes. Aplicação dos conceitos em problemas computacionais. Bibliografia Básica: DIESTEL, Reinhard. Graph theory. 4nd ed. New York: Springer, 2010. CORMEN,Thomas H. Algoritmos: teoria e prática. Rio de Janeiro: Campus, 2002. BONDY, A., MURTY, U.S.R. Graph Theory. New York: Springer, 2010. Bibliografia Complementar: PEMMARAJU, Sriram V.; SKIENA, Steven S. Computational discrete mathematics: combinatorics and graph theory with mathematica. Cambridge, UK: Cambridge University Press, 2006. ROSEN, Kenneth H. Discrete mathematics and its applications. 6th ed. Boston: McGraw-Hill Higher Education, c2007. CHARTRAND, G., ZHANG, P. A First Course in Graph Theory. New York: Dover, 2012. HARRIS, J., HIRST, J.L. Combinatorics and Graph Theory. 2.ed. New York: Springer, 2010. AGNARSSON, G., GREENLAW, R. Graph Theory: Modeling, Applications and Algorithms. New York: Prentice Hall, 2006. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura: Assinatura 6 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Disciplina: Núcleo Temático: PROGRAMAÇÃO Código da Disciplina: PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO Carga horária: 68 Ementa: ( 34 ) Teóricas ( 34 ) Práticas Etapa: 6ª Revisão das Linguagens funcionais, Ambientes e fechamentos Apresentação de Lazy evaluation. Aprofundamento das Linguagens baseadas em e orientadas a objetos. Estudo das Linguagens lógicas. Estudo das Linguagens paralelas e concorrentes. Conceituação das Noções de semântica de linguagens de programação. Bibliografia Básica: SEBESTA, R.W. Concepts of Programming Languages. 7.ed. Reading: Addison- Wesley, 2005. SCOTT, M.L. Programming Language Pragmatics..2.ed. New Jersey: Morgan Kauffman, 2005. SETHI, R. Programming Languages: Concepts and Constructs. 2ed. Reading: Addison- Wesley, 1996. Bibliografia Complementar: FRIEDMAN, D.P., WAND, M., HAYNES, C.T. Fundamentos de Linguagem de Programação. 2.ed. São Paulo: Berkeley, 2001. GHEZZI, C., JAZAYERI, M. Programming Language Concepts. 3.ed. New York: John Wiley, 1998. LADDAD, R. Aspect in Action: Practical Aspect-Oriented Programming. New York: Manning Publications. LOUDEN, K.C. Programming Languages: Principles and Practice. 2.ed. New York: Course Technology: 2002. MELLO, A.C.V., SILVA, F.S.C. Princípios de Linguagens de Programação. São Paulo: Editora Edgard Blücher, 2003. PIERCE, B.C. Types and Programming Languages. Boston: MIT Press, 2002. PRATT, T.W., ZELKOWITZ, M.V. Programming Languages: Design and Implementation. Upper-Saddle River: Prentice Hall, 1999. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura: Assinatura 7 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Disciplina: Núcleo Temático: MATEMÁTICA Código da Disciplina: CÁLCULO NUMÉRICO Carga horária: 68 há ( 68 ) Teóricas ( ) Práticas Etapa: 6ª Ementa: Apresentação dos principais métodos numéricos para resolução de diversos problemas como obtenção de raízes de equações, sistemas de equações não-lineares, interpolação e aproximação de funções, integração, diferenciação e equações diferenciais. Implementar os principais métodos numéricos. Bibliografia Básica: BURDEN, R.L. Análise Numérica. 8.ed. São Paulo: Cengage, 2008. BOYCE, W.E. Equações Diferenciais Elementares e Problemas de Valores de Contorno. 6.ed. Rio de Janeiro: LTC, 1998. FLANNERY, B.P. Métodos Numéricos Aplicados. New York: Artmed, 2011. Bibliografia Complementar: CLAUDIO, D.M. , MARINS, J.M. Cálculo numérico computacional. : teoria e prática. 3. ed. São Paulo : Atlas, 1998. GOLDBERG, D. What every computer scientist must know about floating-point arithmetic. ACM Computing Surveys, Março, 1991. GOLUB, G. H., VAN LOAN, C. F. Matrix computations. 3rd ed. Baltimore : John Hopkins University Press, 1996. SPERANDIO, D., MENDES, J.T., SILVA, L.H. Monken. Cálculo Numérico: Características Matemáticas e Computacionais. São Paulo: Pearson, 2003. IORIO, R., IORIO, V.M. Equações Diferenciais Parciais: uma Introdução. Rio de Janeiro: IMPA, 1988. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura: Assinatura 8 UNIVERSIDADE PRESBITERIANA MACKENZIE Faculdade de Computação e Informática 6A ETAPA Unidade Universitária: FACULDADE DE COMPUTAÇÃO E INFORMÁTICA Curso: CIÊNCIA DA COMPUTAÇÃO Núcleo Temático: MATEMÁTICA Disciplina: Código da Disciplina: METODOLOGIA DO TRABALHO CIENTÍFICO Carga horária: ( 34 ) Teóricas Etapa: 34 ha ( ) Práticas 6º. Ementa: Estudo e prática de habilidades necessárias à elaboração de trabalho científico. Orientação teóricometodológica para a elaboração do anteprojeto do TGI (Trabalho de Graduação Interdisciplinar). Revisão do estilo técnico. Bibliografia Básica: SEVERINO, A.J. Metodologia do trabalho científico. 21. ed.. São Paulo: Cortez, 2000. UNIVERSIDADE PREBISTERIANA MACKENZIE. Apresentação de trabalhos acadêmicos: guia para alunos da Universidade Presbiteriana Mackenzie. 4. ed. São Paulo: Ed. Mackenzie, 2006. WAZLAWICK, R. S. Metodologia de pesquisa para ciência da computação. Rio de Janeiro: Elsevier: Campus, c2009. Bibliografia Complementar: BOOTH, W. C.; COLOMB, G. G.; WILLIAMS, J.M. A arte da pesquisa. São Paulo: Martins Fontes, 2005. CERVO, A.L.; BERVIAN, P.A. Metodologia científica. 5. ed. São Paulo: Prentice-Hall, 2006. ECO, U. Como se faz uma tese. 15. ed. São Paulo : Perspectiva, 2000. MEDEIROS, J.B. Redação científica: a prática de fichamentos, resumos, resenhas. 4. ed. São Paulo: Atlas, 2000. OLIVEIRA NETTO, A.A. Metodologia da pesquisa científica: guia prático para apresentação de trabalhos acadêmicos. Florianópolis: Visual Books, 2005. Coordenador do Curso: Diretor da Unidade: Nome: Ana Cristina dos Santos Nome: Arnaldo Rabello de Aguiar Vallim Filho Assinatura: Assinatura 9