Ementa das disciplinas
 

Disciplinas Matemáticas e Físicas: 

Álgebra

Conjuntos. Relações. Funções. Indução. Sistemas algébricos. Reticulados. Monóides. Grupos. Anéis.

 

Álgebra Linear

Matrizes. Determinantes. Sistemas de equações lineares. Espaços vetoriais. Subespaços vetoriais. Autovalores. Autovetores. Bases. Dimensão. Transformações lineares.

 

Cálculo I

Derivadas de funções de uma variável – conceitos, cálculos. Máximos e mínimos e outras aplicações. Integrais definidas e indefinidas. Teorema fundamental do cálculo. Cálculo de áreas e outras aplicações.

 

Cálculo II

Curvas parametrizadas no plano e no espaço - vetores, velocidade, retas tangentes. Funções de 2 e 3 variáveis – gráficos, curvas e superfícies de nível. Derivadas parciais e direcionais. Gradientes. Plano tangente e superfícies. Problemas de máximos e mínimos - Multiplicadores de Lagrange.

 

Cálculo III

Integrais múltiplas. Integrais de linha, campos conservativos, Teorema de Green. Integrais em superfícies, Teorema da Divergência, Teorema de Stokes.

 

Cálculo IV

Seqüências Numéricas: Convergências; Testes Clássicos, Seqüências e Séries de Funções; Séries de potências; Série de Taylor; Derivação e Integração de Série de Potências; Série de Fourier; Equações Diferenciais de 1ª ordem. Equações Diferenciais Lineares de 2ª ordem. Sistemas de Equações Diferenciais Lineares com Coeficientes Constantes. Transformada de Laplace e Aplicações. Transformada de Fourier.

 

Cálculo das Probabilidades

Experimentos Aleatórios. Espaço Amostral e Eventos Aleatórios. Probabilidade de Evento e Propriedades. Probabilidade Condicional. Teorema de Bayes. Independência de eventos. Variáveis aleatórias. Momentos. Modelos Probabilísticos Discretos: Binomial, Hipergeométrico e Poisson, Geométrica. Modelos Probabilísticos Contínuos: Uniforme, Exponencial e Normal.  Transformação de variáveis aleatórias. Variáveis Bidimensionais. Convergência.

 

Elementos de Lógica

Conectivos lógicos. Simbolização de sentenças. Argumentos. Lógica sentencial. Sistemas dedutivos. Decidibilidade da lógica sentencial. A Lógica de predicados de 1a. ordem. Valores-verdade e funções de avaliação. Tabelas-verdade. Relações entre sintaxe e semântica.

 

Física I

Medindo grandezas. O Sistema Internacional de Unidades. Mudanças de unidade. Comprimento. Tempo. Massa. Movimento Retilíneo. Vetores. Movimento em duas e três dimensões. Força e movimento: Força, Massa, Leis de Newton, Atrito, Força de Viscosidade, Movimento circular uniforme. Estática. Trabalho e energia cinética. Conservação da energia. Sistemas de partículas: Momento linear, conservação do momento linear. Colisões.

 

Física II

Cargas e forças elétricas. Campo elétrico. Lei de Gauss. Potencial elétrico. Capacitância. Corrente elétrica: Leis de Ohm e de Joule, circuitos elétricos. Campo magnético: fluxo e indução magnética. Leis de Ampère e de Biot-Savart, interação eletromagnética. Leis de Faraday e Lens, indução eletromagnética. Indutância: Circuitos LR e LC. Correntes alternadas. Propriedades magnéticas da matéria. Reflexão e refração da luz. Diótricos planos e esféricos. Lentes aberrações.

 

Geometria Analítica

Vetores no plano e no espaço R3. Curvas e superfícies. Coordenadas polares. Classificação das cônicas e das quádricas. Interpretação geométrica de sistemas lineares de duas e três variáveis.

 

Matemática Discreta

Indução Matemática, Relações de Equivalência e de Ordem, Princípio Aditivo e Princípio Multiplicativo, Princípio de Inclusão e Exclusão, Funções Geradoras e Relações de Recorrência.

 

 

Disciplinas Específicas: 

Algoritmos e Estruturas de Dados I

Introdução à complexidade de algoritmos. Estruturas lineares: representação por arrays e por encadeamento. Pesquisa seqüencial e pesquisa binária. Ordenação por seleção, inserção, Mergesort.  Pilhas, Filas e principais operações. Listas de prioridades: operações e Heapsort. Árvores: representação, operações e percursos em árvores. Árvores binárias, árvores binárias de busca e árvores balanceadas (AVL e B). Pesquisa digital: árvores digitais, Tries e árvores Patrícia. Hashing: funções hash e tratamento de colisões. Conjuntos: representação e operações.

 

Algoritmos e Estruturas de Dados II

Medidas de complexidade de algoritmos e de problemas. Técnicas básicas de construção de algoritmos: Recursão, Backtracking, Programação Dinâmica e Método Guloso. Teoria da intratabilidade de problemas. Classes P e NP. Teorema da Satisfabilidade. Problemas Pseudo-Polinomiais. Problemas NP-Completos. Algoritmos Randômicos e Aproximativos.

 

Algoritmos em Grafos

Conceitos básicos sobre grafos. Representação computacional de grafos. Buscas em grafos, determinação de componentes fortemente conexas, ordenação topológica. Árvore geradora mínima: algoritmos dePrim e de Kruskal. Caminhos mínimos: fonte única, algoritmo de Dijkstra, algoritmo de Jonhson, caminhos mínimos entre todos os pares de nós, algoritmo de Floyd. Fluxo máximo: teorema do fluxo máximo e corte mínimo e suas implicações combinatórias, algoritmo de Ford-Fulkerson, algoritmo do tipo preflow-push.

 

Análise e Projeto de Sistemas

Orientação a objetos com ferramentas para especificação e documentação. Linguagem unificada de modelo - UML. Casos de uso. Cartão de responsabilidades e colaboradores (CRC). Projeto de sistemas orientados a objetos. Padrões e Frameworks. Reuso de Software. Processo de Desenvolvimento Unificado e RUP. Estudos de casos.

 

Arquitetura de Computadores I

Álgebra das variáveis lógicas. Funções lógicas. Circuitos combinacionais e seqüenciais básicos. Sistemas Numéricos e sua representação. Modelos de sistemas digitais: unidade de controle e unidade de processamento, modelo de um sistema de computação. Modelagem e análise de desempenho. Conceitos básicos de arquitetura: modo de endereçamento, representação interna de dados, conjunto de instruções básicas, tratamento de interrupções e exceções.

 

Arquitetura de Computadores II

Arquitetura básica de um processador: seção de processamento e seção de controle. Projeto monociclo e multicíclo. Sub-sistema de memória. Hierarquia de memória. Sub-sistema de entrada e saída.

 

Arquiteturas Avançadas de Computadores

Introdução ao Pipelining. Pipeline avançado e paralelismo no nível das instruções básicas. Processadores vetoriais. Processadores superescalares.  Projeto de sistemas avançados de memória. Processamento paralelo e distribuído. Sistemas de interconexão.

 

Banco de Dados I

Arquitetura de Sistema Gerenciador de Banco de Dados (SGBD).  Projeto de Bancos de Dados: modelos de entidades e relacionamentos e suas extensões, modelo de dados relacional, algoritmos de decomposição e formas normais. Controle de restrições de integridade. Noções básicas de transações. Linguagens de consultas: cálculo relacional, álgebra relacional e SQL, Visões e Índices secundários.

 

Banco de Dados II

Conceitos avançados em Banco de Dados. Modelos relacional estendido e orientado a objetos. Processamento de transações, protocolos de controle de concorrência, mecanismos de recuperação, sistemas de autorização e segurança. Processamento e otimização de consultas, organização física e índices, ambiente C/S, triggers e processamentos armazenados.

 

Cálculo Numérico

Teoria dos erros. Séries de Taylor e de MacLaurin. Resolução numérica de equações algébricas e transcendentes. Interpolação numérica. Diferenciação numérica. Integração numérica. Resolução numérica de sistemas de equações. Resolução numérica de equações diferenciais.

 

Compiladores

O processo de compilação e a estrutura global do compilador. Análise léxica. Análise sintática: análise sintática descendente e ascendente, coleta de informações sobre a gramática, geração de cadeia vazia, iniciadores, os métodos para análise LL (1),  LR(1) e derivados. Esquemas de tradução. Construtores automáticos. Ambientes de tempo de execução. Linguagens intermediárias. Geração de código. Montadores e ligadores.

 

Computação Gráfica

Introdução à computação gráfica interativa: conceitos básicos e aplicações. Equipamentos gráficos: arquitetura básica e dispositivos de entrada e saída. Processos de formação de cores, sistemas de cores,dithering. Pacotes gráficos e suas padronizações. Programação gráfica passiva, algoritmo de rasterização de objetos bi-dimensionais. Programação gráfica interativa, métodos de entrada de dados, algoritmos de seleção. Processo de visualização, enquadramento e corte. Transformações geométricas em 2D e 3D, projeções paralela e perspectiva. Noções de modelagem geométrica. Noções de realismo visual: tratamento de linhas escondidas, modelos de iluminação.

 

Engenharia de Software

Processo de desenvolvimento de software. Modelos de processo de desenvolvimento de software. Qualidade de software. Planejamento e Gerência de projetos de software. Métricas. Análise de riscos. Engenharia de Requisitos. Métodos e Técnicas de análise e projeto de software.. Verificação, validação e teste de software. Manutenção. Documentação. Ferramentas e ambientes de software.

 

Estruturas de Linguagens

Sintaxe e semântica. Compilação e Interpretação. Estruturas clássicas de linguagens: amarrações, implementação de subprogramas, alocação dinâmica de espaço em pilha, passagem de parâmetro. Estruturação dos dados: tipos simples, agregados, definidos pelo usuário, tipos abstratos de dados, unidades genéricas, sistema de tipos, modelos de implementação, alocação dinâmica na heap e coleta de lixo. Estruturas de Controle – mecanismos internos à unidade de programa: estruturas de controle comuns e chamadas de subprogramas e mecanismos de transferência entre unidades: tratamento de exceções, paralelismo, co-rotinas, chamadas remotas. Estrutura da programação: métodos de projeto, conceitos e ferramentas para modularização, encapsulamento, interface e implementação. Linguagens e paradigmas não convencionais de programação: programação em lógica, programação funcional, programação orientada a objetos.

 

Ética, Computadores e Sociedade

Ciência e tecnologia. Aspectos sociais, econômicos, legais e profissionais de computação. Aspectos estratégicos do controle da tecnologia: produção e transferência de tecnologia. Mercado de trabalho. Aplicações da computação: educação, medicina, etc. Previsões de evolução da computação. Ética profissional. Segurança, privacidade, direitos de propriedade, acesso não autorizado.

 

Fundamentos da Computação

Conceitos básicos de hardware: arquitetura básica do computador, dispositivos de entrada e saída. Conceitos básicos de software: sistema de representação binária, aritmética binária, operações lógicas, sistema operacional, sistema de armazenamento de dados, noções de redes de computadores. Ênfase em algoritmos: construção de algoritmos, estruturas de controle básicas. Estrutura de um programa em uma linguagem de programação, tipos de dados, comandos simples de entrada e saída, comandos de seleção, comandos de repetição, armazenamento de dados.

 

Inteligência Artificial

Histórico da IA. Métodos de resolução de problemas: busca em espaço de estados, redução de problemas, busca em profundidade, busca em largura, uso de heurísticas. Agentes Inteligentes. Representação do conhecimento: regras de produção, redes semânticas, ontologias e frames. Cálculo Proposicional e Lógica de Primeira Ordem. Prolog. Sistemas Especialistas. Sistemas Tutores Inteligentes. Visão geral de Algoritmos Genéticos. Visão geral de Redes Neuronais.

 

Interfaces Humano-Computador

Conceitos básicos de interação humano-computador (interface, interação, usabilidade, comunicabilidade, perspectivas de interação, componentes de hardware e software, aspectos cognitivos). Estilos de interação (linguagens de comandos, seleção por menus, linguagem natural, manipulação direta, ícones e linguagens visuais). Fundamentação teórica (Engenharia Cognitiva e Engenharia Semiótica). Modelagem de interfaces: modelos de tarefas, modelos de usuários, modelos de interação.  Processo de design de interfaces. Avaliação de interfaces. Outras aspectos a serem considerados no projeto de interação (sistemas de ajuda e documentação, interfaces multi-usuário, interfaces www, programação feita pelos usuários, estilos e tecnologias recentes).

 

Linguagem de Programação I

Desenvolvimento de programas em linguagem procedural; Algoritmos básicos, tipos de dados básicos e estruturados, Comandos da uma linguagem; Subprogramação, Recursividade, Alocação encadeada de memória, Alocação dinâmica de memória; Acesso ao sistema de arquivos; Uso de bibliotecas; Ponteiros; Metodologias de especificação, desenvolvimento e documentação de programas.

 

Linguagem de Programação II

Desenvolvimento de programas em linguagem orientada a objetos: Conceitos básicos de orientação a objetos; Herança e Polimorfismo; Encapsulamento, Sobrecarga e Métodos. Tipos compostos, classes e instâncias. Tratamento de exceções, Programação por eventos, Uso de bibliotecas e pacotes, Desenvolvimento de programas com Interface Gráfica.

 

Metodologia Científica no Projeto Final

Estatuto da ciência. O método cientifico.  A verdade cientifica. Três paradigmas na pesquisa: Descartes, Popper e Kuhn. Designs de pesquisa. Pesquisa quantitativa: pesquisa experimental e pesquisa não experimental (ex-post-facto). Pesquisa qualitativa: estudos experimentais, estudos exploratórios, estudos de caso. O Problema de Pesquisa, as Hipóteses e as Variáveis. Coleta e interpretação de dados. Análise dos resultados. Limites da generalização dos resultados. O Projeto e o Relatório de Pesquisa: Principais Etapas. Elaboração de um Projeto de Pesquisa.

 

Otimização em Grafos

Os problemas de otimização em grafos e suas aplicações. Árvore geradora mínima: definição, algoritmo de Prim, algoritmo de Kruskal e complexidade destes algoritmos. Caminhos mínimos: definição, caminhos mínimos com uma única fonte, algoritmo de Dijkstra, algoritmo de Jonhson, caminhos mínimos entre todos os pares de nós, algoritmo de Floyd, complexidade destes algoritmos. Fluxo máximo: definição, teorema do fluxo máximo e corte mínimo e suas implicações combinatórias, algoritmo de Ford-Fulkerson, algoritmo do tipo preflow-push, complexidade destes algoritmos. Fluxo de custo mínimo: definição, algoritmo dos caminhos mínimos sucessivos, algoritmo out-of-kilter, complexidade destes algoritmos. Ferramentas de controle de projetos: PERT e CPM

 

Português Instrumental

Gramática descritiva, Consultoria lingüístico-gramatical, Leitura e produção textual em diferentes níveis.

 

Projeto Final

Continuação da disciplina Metodologia Científica no Projeto Final. Deverá ser adequado à linha de especialização escolhida pelo aluno. Seu conteúdo será definido pelo professor orientador. Em casos excepcionais, mediante justificativa do professor orientador, o aluno poderá solicitar extensão do Projeto Final II por mais um semestre, sem direito a créditos adicionais.

 

Redes de Computadores I

Introdução a redes de computadores: transmissão, topologias, classificações, técnicas de comutação, modelo em camadas, modelo OSI, modelo TCP/IP. Estudo de caso. Nível físico: meios de transmissão, padrões. Camada de enlace: subcamada de acesso ao meio. Camada de rede: roteamento e protocolos. Camada de transporte: protocolos. Dispositivos, equipamentos e cabeamento. Camada de aplicação: serviços e protocolos.

 

Sistemas Distribuídos

Introdução aos sistemas distribuídos: técnicas básicas, paradigmas de interação entre processos, classes de aplicações paralelas e distribuídas. Serviços Básicos: diretório, descoberta, localização e gerenciamento de recursos, segurança, transações, e qualidade de serviço (QoS). Ferramentas e suporte para desenvolvimento de aplicações paralelas e distribuídas: bibliotecas, linguagens e middleware. Estudo de casos.

 

Sistemas Operacionais I

Visão geral sobre sistemas operacionais. Histórico. Estruturas dos sistemas operacionais. Ligação estática e dinâmica de programas. Modelo de processos e threads. Concorrência e sincronização. Mecanismos para programação concorrente. Alocação de recursos e deadlocks. Gerência do processador. Políticas de escalonamento. Estudos de casos de sistemas operacionais.

 

Sistemas Operacionais II

Gerência de Memória: Organização, Carregamento de programas, Alocação contínua, Partições, Swapping de processos, Paginação, suporte do HW a paginação e Segmentação. Memória Virtual: Alocação e substituição de páginas físicas, Paginação sob demanda, Segmentação com paginação, Thrashing, Working-Set. Gerência de Arquivos: Operações sobre arquivos, Estrutura de arquivos, Métodos de acesso, Diretórios, Proteção de arquivos, Alocação de arquivos, Gerência de espaço livre, Layout de disco, Arquivo em uso, Desempenho, Consistência. Gerência de recursos de entrada e saída. Device drivers. Dispositivos de armazenamento de massa: Tipos, Linearização, Algoritmos de escalonamento, Confiabilidade. Estudos de casos de sistemas operacionais. 

 

Teoria da Computação

Linguagens formais. Gramáticas. Linguagens Regulares e Autômatos finitos. Linguagens livres de contexto e Autômatos de pilha. Lema de bombeamento. Linguagens tipo O (sem restrição) e Máquinas de Turing. Linguagens sensíveis ao contexto e autômatos linearmente limitados. Teoria da computabilidade: Máquina de Turing, computabilidade efetiva, funções recursivas, tese de Church, teoria daincompleteza de Gödel, problemas indecidíveis.

 

Otimização Combinatória

Programação Linear: modelagem em programação linear; o método simplex; dualidade em programação linear; análise de sensibilidade; Programação inteira: modelagem em programação inteira; otimalidade, relaxação e limites; problemas bem resolvidos; Branch and Bound.

 

 

Disciplinas Eletivas: 

- Eletivas Básicas: 

Álgebra Linear aplicada à Computação Gráfica

Isometrias no espaço Euclidiano, transformações afins, transformações projetivas, sistemas de coordenadas e referenciais, quatérnios. Câmera virtual.

 

Análise Numérica

Métodos Iterativos em Álgebra Linear: sistemas de equações, autovetores/autovalores. Resolução numérica de equações diferenciais parciais via método dos elementos finitos e diferenças finitas: estabilidade, estimativas a priori, taxas de convergência. Algoritmos de otimização. Noções de algoritmos numéricos em paralelo.

 

Estatística Aplicada

Natureza dos Métodos Estatísticos. População e Amostra. Distribuição de freqüência. Medidas descritivas: Tendência Central, Dispersão, Forma: Assimetria e Curtose. Noções Amostragem. Estimação: Estimador, Propriedades dos Estimadores, Intervalos de Confiança para Média, Proporção e Variância. Teste de Hipóteses: Conceituação, Tipos de Erros, Teste para Média, para Proporção, para Variância. Teste de aderência. Teste de Normalidade. Regressão e Correlação.

 

Física III

Cinemática e dinâmica da rotação: Velocidade e aceleração angulares, Torque, Momento de inércia, Energia, Trabalho, Potência de rotação, Momento angular, Gravitação. Movimento harmônico. Estática e dinâmica dos fluídos. Temperatura e calor. Teoria cinética dos gases. Termodinâmica. Entropia. Transferência de calor. Ondas mecânicas. Som.

 

Física IV

Propriedades magnéticas da matéria. Correntes alternadas. Equações de Maxwell. Ondas eletromagnéticas. Reflexão e refração da luz. Polarização. Interferência e difração. Introdução às mecânicas quânticas e relativista. Introdução à física quântica e nuclear.

 

Língua Inglesa Instrumental para Leitura na Ciência da Computação

O conhecimento do mundo como ponte para compreender textos escritos em língua inglesa, diferentes estratégias de atribuição a palavras desconhecidas, diferentes estratégias de leitura e de estudo específicos da área da Ciência da Computação.

 

 

- Eletivas Gerais: 

Algoritmos para Geometria Computacional

Introdução: caracterização e definição de algoritmos geométricos; noções de modelos de computação e complexidade de algoritmos. Algoritmos básicos: operações com vetores; distâncias e ângulos; ângulos orientados; pseudo-ângulos; áreas orientadas de polígonos planos e volumes de poliedros; coordenadas baricêntricas; localização de pontos em polígonos e poliedros. Fecho Convexo: fecho convexo bidimensional e tridimensional; Interseção de retas e segmentos: detecção e identificação de interseções; problemas de determinação de visibilidade. Interpolação: Diagramas de Voronói (construção e localização); Triangulações (Delaunay e outras).

 

Empreendedor em Tecnologia da Informação

Estudo dos mecanismos e procedimentos para criação de empresas de computação. Organismos de fomento. Estudo do perfil do analista de desenvolvimento nos níveis operacionais e estratégicos da empresa. Perfil do empreendedor. Sistemas de gerenciamento, técnicas de negociação. Qualidade e competitividade. Marketing.

 

Filosofia da Ciência

Fundamentos do Conhecimento Empírico: Observação; Estrutura das Teorias Científicas: Modelo Hipotético-Dedutivo, Positivismo e Realismo; Explicação Científica: unificada, funcional e estatística; As Leis da Natureza: leis e generalizações, leis e indução; Avaliação de Teorias Científicas: Confirmação, Falsificação.

 

Fundamentos de Administração

Visão de problemas e ferramentas usadas no processo decisório de Departamentos de O&M. Visão sistêmica das organizações. Antropologia cultural. Antropologia empresarial. Cultura e empresa brasileira. Inteligência informacional, projeção de cenários e inteligência competitiva. Estratégia de negociação, tomadas de decisão, argumentação, técnicas de exposição e ética. Análise organizacional, análise financeira, análise de recursos materiais, análise de recursos humanos.

 

Informática na Educação

Modalidades de Uso de Computadores na Educação. Sistemas de tutoria. Sistemas de autoria. Simulações e Jogos. Hipermídias Educacionais. Metodologias para Desenvolvimento de Software Educacional. Critérios de Avaliação de Software Educacional. Técnicas de Inteligência Artificial aplicadas ao Software Educacional. Internet e Educação. Ambientes Educacionais Mediados por Computadores. Educação à Distância e Aprendizagem Cooperativa.

 

 

- Eletivas Específicas:

Algoritmos Distribuídos

Exemplos de classes de problemas que se beneficiam de soluções paralelas e distribuídas. Coordenação e sincronização de processos. Comunicação através de troca de mensagens e memória compartilhada. Modelos de computação: relógios lógicos, estados globais, sincronização, complexidade de computações distribuídas. Algoritmos básicos de programação distribuída. Algoritmos para compartilhamento de recursos. Linguagens e ferramentas para programação distribuída. Propriedades estáveis: detecção de término, detecção de deadlock. Outras técnicas: eleição de um líder, distributed snapshots, sincronizadores. Depuração de programas. Simulação distribuída. Algoritmos em grafos.

 

Computação Científica

Modelagem de sistemas físicos reais como os descritos no item III, por métodos e técnicas descritos nos itens I e II. (I) Modelagem de sistemas físicos: Exemplos de sistemas físicos, Equações diferenciais, Princípios variacionais; Transformadas (Laplace, assintóticas, etc...), Otimização, Sistemas aleatórios, Sistemas caóticos. (II) Técnicas Numéricas: Introdução aos métodos numéricos, Álgebra linear, Tratamento numérico de equações diferenciais (Diferenças finitas e Elementos finitos), Métodos de simulação, Monte Carlo e Simulated Annealing, Algoritmos genéticos, Equações diferenciais estocásticas. (III) Projeto Simulação computacional de um sistema físico real. Exemplos: Pendulo duplo, Redes harmônicas, Dinâmica molecular, Dinâmica de Langevin, Sistemas gravitacionais.

 

Desenvolvimento e Implementação de Algoritmos

Prática do desenvolvimento e implementação de soluções computacionais para problemas relacionados a Combinatória,Teoria dos Números, Seqüências, Grafos e Geometria Computacional.

 

Engenharia de Requisitos de Software

Elicitação de Requisitos. Especificação de Requisitos de Software. Técnicas de Elicitação. JAD, Cartão de responsabilidades e colaboradores (CRC), Cenários. Gerenciamento e Rastreamento dos requisitos. Prototipagem.

 

Gestão de Tecnologia de Informação

Modelo de Negócios e Alinhamento Tecnológico, História e Conceitos; Governança Corporativa, Alinhamento de Interesses; Governança em TI, Decisão Compartilhada; Gestão em TI, Funções e Processos; Arquitetura Tecnológica, Funções e Ligações; Níveis de Serviço, SLA; Gestão da Rede Corporativa; Gerência de Projetos, Modelo PMI; Certificação de Qualidade, Modelo CMM; Ambiente de Desenvolvimento de Soluções.

 

Modelagem de Sistemas

Modelagem Funcional de Sistemas. Análise estruturada e análise essencial de sistemas. Diagrama de fluxo de dados. Dicionário de dados. Descrição de funções primitivas. Modelagem de dados. Estudo de casos com aplicação da análise essencial de sistemas. Validação e Verificação de Requisitos de Software. Projeto da Arquitetura de Software. Métodos de Projeto. Conceitos básicos de projeto de sistemas. Projeto baseado na estrutura de funções e o método de projeto estruturado. Projeto baseado na estrutura de dados. Ferramentas e Estratégias para a implementação do software. Estudo de Casos.

 

Programação Paralela e Distribuída

Introdução aos conceitos básicos sobre programação paralela e distribuída. Métricas de desempenho. Modelos de programação. Definição dos passos para a criação de um programa paralelo. Ferramentas para programação paralela: bibliotecas MPI (Message Passing Interface), OpenMPI e Pthreads. Programação em memória compartilhada: locks/barriers, threads.  Programação em memória distribuída: troca explícita de mensagens, escalonamento. Exemplos de programas paralelos para aplicações específicas. Desenvolvimento de programas utilizando a biblioteca MPI.

 

Qualidade de Software

Conceitos de Qualidade e qualidade total. Certificação de Software. Qualidade de software e do processo de software. Modelos de Maturidade de Processos de Software. CMMI, Normas Iso. Técnicas de verificação, validação e testes. De Produtividade e Qualidade de Software. Ferramentas de teste e avaliação de software. Estudo de Casos.

 

Realidade Virtual

Visão geral da tecnologia de Realidade Virtual: Evolução, Principais Características, Modelos de Interação do Usuário, Equipamentos de Apoio, Estrutura de sistemas de RV, Tendências.  Estudo das áreas de aplicação.  A ética no uso de ambientes virtuais. Técnicas de estereoscopia. Desenvolvimento de Ambientes Virtuais:  Plataformas para Aplicações em Realidade Virtual,  Modelos de desenvolvimento, Modelagem de objetos,  Modelagem de Mundos Virtuais,  Introdução à linguagem de programação VRML,  Ferramentas de autoria,  Avaliação da qualidade de Ambientes Virtuais. Estudo de Casos.

 

Redes de Computadores II

Segurança em redes. Gerência e operação de redes. Introdução a Redes de Alta Velocidade. Redes sem fio. Redes pessoais. Redes metropolitanas. Avaliação de desempenho: técnicas de medição e simulação.

 

Redes Neuronais

Introdução ao paradigma conexionista. A estrutura dos modelos conexionistas. Os modelos de Hopfield: analógico e binário. Otimização combinatória e redes de Hopfield. Aprendizado supervisionado e não supervisionado: regra de Hebb, regra Delta, regra de Cooper. Redes de aprendizado por retropropagação de erros. Aprendizado competitivo. Mapas auto-organizáveis. Teoria da ressonância adaptativa.

 

Sistemas de Informação

Fundamentos e classificações de sistemas de informação. Sistemas de informação gerenciais e de apoio à decisão. Aplicações. Uso estratégico da informação e da tecnologia da informação. Custos e orçamentos. Qualidade, segurança e auditoria. Funções e gerência de pessoal para sistemas de informação. Organização da informática na empresa. Processos de negócios e sistemas de informação. Planejamento estratégico de sistemas de informação: conceitos e métodos. Datamining.

 

Tópicos Especiais I

Ementa aberta, relacionada ao estado da arte em algum domínio de Ciência da Computação.

 

Tópicos Especiais II

Ementa aberta, relacionada ao estado da arte em algum domínio de Ciências da Computação.

 

 

- Eletivas Práticas:

Aspectos Práticos de Redes de Computadores

Desenvolvimento de projetos, trabalhos práticos e protótipos relacionados a redes computacionais e transmissão de dados e comunicação.

 

Aspectos Práticos de Sistemas Operacionais

Desenvolvimento de projetos relacionados à arquitetura de computadores e sistemas operacionais que representem o estado da arte na área.

 

Aspectos Práticos em Ciência da Computação I

Desenvolvimento de projetos relacionados a sistemas computacionais que representem o estado da arte na área, com ênfase em software.

 

Aspectos Práticos em Ciência da Computação II

Desenvolvimento de projetos relacionados a sistemas computacionais que representem o estado da arte na área, com ênfase em hardware e interface hardware-software.

 

 

Plano de Periodização:

O curso está modulado em 8 períodos, conforme a tabela seguinte. Observa-se que as disciplinas Eletiva Básica e Eletivas I, II, III e IV são selecionadas a partir das disciplinas eletivas listadas ao final da tabela de periodização.

 

1º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

 

 

 

IME 02-10815

Álgebra

60

4

 

 

 

IME 06-10816

Matemática Discreta

60

4

 

 

 

IME 01-04827

Cálculo I

90

6

 

 

 

IME 04-10817

Fundamentos da Computação

90

5

 

 

 

IME 03-10814

Geometria Analítica

60

4

 

 

 

 

 

 

 

2º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Cálculo I

 

 

IME 01-04884

Cálculo II

60

4

Fundamentos da Comp.

 

 

IME 04-10820

Algoritmos e Estruturas de Dados I

90

6

 

 

 

FIS 01-10982

Física I

90

5

Geometria Analítica

 

 

IME 02-10818

Álgebra Linear

90

6

Fundamentos da Comp.

 

 

IME 04-10821

Linguagem de Programação I

60

4

Cálculo I

 

 

IME 05-10819

Cálculo das Probabilidades

60

4

 

 

 

 

 

 

 

3º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Algoritmos e Est Dados I

 

 

IME 04-10823

Algoritmos e Estruturas de Dados II

60

4

Cálculo II

 

 

IME 01-06767

Cálculo III

60

4

Linguagem de Progr. I

 

 

IME 04-10825

Linguagem de Programação II

60

4

 

 

 

IME 02-10824

Elementos de Lógica

60

4

 

 

 

IME 04-10826

Teoria da Computação

60

4

 

 

 

ILE 02-10822

Português Instrumental

60

4

 

 

 

 

 

 

 

4º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Cálculo  II

 

 

IME 01-10828

Cálculo IV

90

6

Física I

 

 

FIS03-10983

Física II

90

5

 

59

30%

IME 04-10830

Engenharia de Software

60

4

Linguagem de Progr. I

 

 

IME 04-10831

Arquitetura de Computadores I

60

4

Algoritmos e Est Dados II

 

 

IME 04-10829

Algoritmos em Grafos

45

3

Cálculo I

 

 

IME 04-10827

Cálculo Numérico

60

4

 

 

 

 

 

 

 

5º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Arquitetura de Comp. I

 

 

IME 04-10835

Sistemas Operacionais I

60

4

Arquitetura de Comp. I

 

 

IME 04-10836

Arquitetura de Computadores II

60

4

Linguagem de Progr. I

 

 

IME 04-10834

Estruturas de Linguagens

60

4

 

78

40%

IME 04-10832

Banco de Dados I

60

4

Algoritmos em Grafos

 

 

IME06-11312

Otimização em Grafos

45

3

Engenharia de Software

 

 

IME 04-10833

Análise e Projeto de Sistemas

60

4

 

 

 

ver cód espec.

Eletiva Básica

60

4

 

 

 

 

 

 

 

6º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Sistemas Operacionais I

 

 

IME 04-10840

Sistemas Operacionais II

60

4

 

108

55%

IME 04-10839

Interfaces Humano - Computador

60

4

Teoria da Computação

 

 

IME 04-10841

Compiladores

60

4

Cálculo II + Álgbr. Linear

 

 

IME 06-10836

Otimização Combinatória

60

4

Banco de Dados I

 

 

IME 04-10838

Banco de Dados II

60

4

 

 

 

ver cód espec.

Eletiva I

60

4

 

 

 

 

 

 

 

7º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Arquitetura de Comp. II

 

 

IME 04-10847

Arquiteturas Avançadas de Computadores

60

4

 

137

70%

IME 04-10842

Computação Gráfica

60

4

 

137

70%

IME 04-10843

Inteligência Artificial

60

4

Sistemas Operacionais II

 

 

IME 04-10846

Redes  de Computadores I

60

4

 

137

70%

IME 04-10845

Metodologia Científica no Projeto Final

60

4

 

137

70%

IME 04-10844

Ética Computadores e Sociedade

60

4

 

 

 

 

 

 

 

8º Período

 

 

 

 

 

 

Pré-requisitos

Min. crd.

% cursado

Disciplina

CH

Créd.

Metdlg. Cient. no Prj Fin

 

 

IME 04-10848

Projeto Final

60

4

Sistemas OperacionaisI 

 

 

IME 04-10849

Sistemas Distribuídos

60

4

 

 

 

ver cód espec.

Eletiva II

60

4

 

 

 

ver cód espec.

Eletiva III

60

4

 

 

 

ver cód espec.

Eletiva IV

60

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Eletivas Básicas

 

 

 

Básicas

 

 

Pré-requisito

Min. crd.

% cursado

Disciplina

CH

Créd.

Física I

 

 

FIS 01-11016

Física III

90

5

Física II

 

 

FIS 03-11017

Física IV

90

5

Cálculo Numérico

 

 

IME 06-10852

Análise Numérica

60

4

Cálculo das Probabs.

 

 

IME 05-10862

Estatística Aplicada

60

4

 

108

55%

IME 04-10850

Álgebra Linear Aplicada à Compt. Gráfica

60

4

 

 

 

ILE 04-10866

Inglês Instrumental

60

4

 

 

 

 

 

 

 

 Eletivas Técnicas

 

 

 

Técnicas

 

 

Pré-requisito

Min. crd.

% cursado

Disciplina

CH

Créd.

Arquit. de Comp. II

 

 

IME 04-10868

Programação Paralela e Distribuída

60

4

Arquit Avançds deComp

 

 

IME 04-10851

Algoritmos Distribuídos

60

4

Algoritmos e Est Dados I

 

 

IME 04-10859

Desenv. e Implementação de Algoritmos

60

4

 

108

55%

IME 04-10853

Algoritmos para Geometria Computacional

60

4

 

108

55%

IME 04-10861

Engenharia de Requisitos de Software

60

4

 

78

40%

IME 04-10869

Qualidade de Software

60

4

 

137

70%

IME 04-10873

Sistemas de Informação

60

4

 

78

40%

IME 04-10867

Modelagem de Sistemas

60

4

 

108

55%

IME 04-10864

Gestão de Tecnologia de Informação

60

4

 

137

70%

IME 04-10870

Realidade Virtual

60

4

Redes de Comp. I

 

 

IME 04-10871

Redes de Computadores II

60

4

Cálc IV + Cálc Numric

 

 

IME 04-10858

Computação Científica

60

4

 

137

70%

IME 04-10872

Redes Neuronais

60

4

 

137

70%

IME 04-10874

Tópicos Especiais I

60

4

 

137

70%

IME 04-10875

Tópicos Especiais II

60

4

 

 

 

 

 

 

 

Eletivas Práticas

 

 

 

 

 

 

Pré-requisito

Min. crd.

% cursado

Disciplina

CH

Créd.

Redes de Comp I

 

 

IME 04-10856

Asp. Práticos de Redes de Computadores

60

4

Sistemas Operacionais I

 

 

IME 04-10857

Asp. Práticos de Sistemas Operacionais

60

4

 

59

30%

IME 04-10854

Asp. Práticos em Ciência da Computação I

60

4

 

59

30%

IME 04-10855

Asp. Práticos em Ciência da Computação II

60

4

 

 

 

 

 

 

 

Eletivas Complementares

 

 

 

 

 

Pré-requisito

Min. crd.

% cursado

Disciplina

CH

Créd.

 

108

55%

FAF 03-04304

Fundamentos de Administração

60

4

 

137

70%

IME 04-10865

Informática na Educação

60

4

 

78

40%

IME 04-10860

Empreendedor em tecnologia de Informação

60

4

 

137

70%

IME 04-10863

Filosofia da Ciência

60

4