Ementas das Disciplinas do Bacharelado em Ciência da Computação

Português, Brasil

Bacharelado em Ciência da Computação

DCC003-Algoritmos e Estruturas de Dados I

Desenvolvimento de computadores e de linguagens de computação. Fases do desenvolvimento de programas. Desenvolvimento de programas em uma linguagem de alto nível: dados, comandos, ferramentas de modularização, metodologias de desenvolvimento.   

DCC004-Algoritmos e Estruturas de Dados II

Programação estruturada e linguagem de programação modular. Introdução às técnicas de análise de algoritmos. Estruturas de dados estáticas e dinâmicas na memória principal.  

DCC005-Algoritmos e Estruturas de Dados III

Memória secundária: conceitos básicos relacionados ao uso de dispositivos. Ordenação em memória secundária. Estruturas de dados em memória secundária. Processamento de caracteres. Codificação: criptografia e compressão de arquivos.  

DCC006-Organização de Computadores I

Introdução à microeletrônica. Circuitos combinatórios e seqüenciais. Memórias. Entrada e saída. Introdução aos microprocessadores.   

DCC007-Organização de Computadores II

Microprocessadores avançados. Barramentos. Sistemas de memória e entrada-e-saída. Arquiteturas avançadas.  

DCC008-Software Básico

Noções básicas de arquitetura de computadores. Linguagens de máquina e linguagem de montagem ("Assembly"). Montadores, macroprocessadores, carregadores e ligadores. Programação de entrada e saída. Nível de máquina de sistemas operacionais.  

DCC009-Projeto Orientado em Computação II

Desenvolvimento de um trabalho sob orientação de um professor. Testes e depuração. Implementação. Produção de uma monografia sobre o trabalho.   

DCC010-Compiladores

Gramáticas. Análise léxica. Análise sintática. Tabela de símbolos. Linguagens intermediárias. Alocação de memória em tempo de execução. Tradução dirigida por sintaxe. Geração de código de máquina.  

DCC011-Introdução a Banco de Dados

Memória auxiliar; organização física e lógica. Métodos de acesso. Estruturas de arquivos. Manipulação de bancos de dados. Linguagens e pacotes. Recuperação de informação.  

DCC012-Introdução aos Sistemas de Informação

Ciclo de vida dos sistemas e seus problemas. Modelagem dos processos e dados de um sistema com o seu meio ambiente. A análise e o projeto estruturado de sistemas.   

DCC013-Administração de CPD

Planejamento de Sistemas de Informação Administração de projetos de sistemas. Organização e administração das funções de informática. Recursos humanos de informática.   

DCC014-Sistema de Tempo Real

Arquitetura de mini e micro-computadores. Transmissão de dados. Aquisição de dados. Controle digital. Entrada e saída de dados. Software de tempo real.  

DCC015-Análise Numérica B

Autovalores e autovetores. Sistemas não-lineares. Equações diferenciais ordinárias. Equações diferenciais parciais.  

DCC020-Projetos de Circuitos Integrados

Princípios de microeletrônica. Tecnologia de fabricação de circuitos integrados. Circuitos elementares em MOS. Metodologia e ferramentas de projeto.  

DCC023-Redes de Computadores

Conceitos de sistemas distribuídos, redes de computador, protocolos e serviços de comunicação. Arquitetura de redes de computadores. Camadas inferiores do modelo de referência de ISO: física, enlace e redes. Redes locais, interligação de redes; especificação de protocolos.   

DCC024-Linguagens de Programação

Linguagens de programação procedimentais e aplicativas. Estudo detalhado de linguagens importantes. Critérios e técnicas na especificação e projeto de linguagens.  

DCC027-Computação Gráfica

Dispositivos e primitivas de saída e entrada gráficas. Transformações bidimensionais e tridimensionais. Modelagem gráfica. Visualização 3D: modelos, projeções, eliminação de superfícies ocultas, iluminação.  

DCC028-Inteligência Artificial

Métodos de resolução de problemas. Representação do conhecimento usando lógica de predicados. Representações estruturadas do conhecimento. Sistemas avançados de resolução de problemas. Tópicos avançados.  

DCC029-Processamento Digital de Imagens

Conceitos de digitalização e representação de imagens. Elementos de um sistema de processamento digital de imagens. Técnicas de modificação da escala de cinza, técnicas de modificação por histograma, operações aritméticas com imagens, pseudocoloração, suavização de imagens, aguçamento de bordas, filtros espaciais.   

DCC030-Tópicos em Ciência da Computação

Conteúdo variável.

DCC033-Análise Numérica

Números aproximados: erro, estabilidade e convergência. Sistemas lineares; inversão de matrizes. Zeros de funções; interseção de curvas. Interpolação. Métodos de integração. Resolução numérica de equações diferenciais ordinárias de primeira ordem. Autovalores e autovetores.   

DCC035-Pesquisa Operacional

Modelagem. Fundamentos de programação matemática. Programação linear e suas aplicações. Método simplex. Análise de sensibilidade e dualidade. Otimização em redes. Programação dinâmica.  

DCC036-Sistemas Multimídias

O que é multimídia. Os aplicativos. O som. A música e a voz. As imagens. Os desenhos. O vídeo. A animação. Infra-estrutura para multimídia.  

DCC037-Engenharia de Sistemas

Gráficos O que é engenharia de sistemas gráficos Interativos. Tecnologia orientada a objetos: conceitos básicos. O método Booch de desenvolvimento orientado a objetos. Interfaces gráficas. Pacotes e ambientes gráficos bidimensionais e tridimensionais.  

DCC038-Programação Orientada a Objetos

Filosofia e princípios. Qualidade de software. Modularidade. Reutilização de software. Programação por contrato. Objetos. Classes. Métodos. Encapsulação. Herança. Polimorfismo. Polissemia de forma e de estado. Polivalencia. Redefinição. Associação dinâmica. Tratamento de exceção. Genericidade. Parametrização de classes. Declaração por associação. Co-variancia e contravariancia. Linguagens orientadas por objetos.  

DCC039 – Robótica

Revisão de descrições e transformações, cinemática direta e cinemática inversa. Velocidades e forças estáticas. Dinâmica de manipuladores. Geração de trajetória. Projeto de mecanismos de manipuladores. Controle linear de manipuladores. Controle não-linear de manipuladores. Arquiteturas de sistemas de manipuladores robóticos. Linguagens de controle em tempo real. Modalidades sensoriais. Visão computacional aplicada à robótica. Aplicações.  

DCC041 – Introdução à Robótica

Introdução. Aplicações típicas. Robôs em automação. Descrições e transformações: referenciais fixos e móveis e transformações afins. Cinemática direta. Cinemática inversa. Geração de trajetória. Linguagens de controle e programação off-line. Modalidades sensoriais básicas. Aplicações.  

DCC042 - Robótica Móvel

Locação. Navegação. Planejamento. Missão. Reconhecimento. Cinemática e dinâmica de robôs móveis. Controle. Arquiteturas. Sensores. Gerenciamento de energia. Projeto de mecanismos. Elementos de geometria computacional. Visão computacional. Telerobótica. Aplicações.  

DCC043 – Visão Computacional

Percepção visual, imagens e computadores. Paradigma da visão computacional. Processamento de baixo-nível: modelos, processamento de imagens, extração de características. Representações multi-níveis: pirâmides, wavelets, agrupamento de características. Processamento de nível intermediário: representação de superfícies locais, forma a partir de “X”. Processamento de alto nível: metodologias da Inteligência Artificial, representação de objetos, representação de cenas. Arquiteturas para visão computacional. Aplicações.  

DCC046-Monografia em Sistemas de Informação

Projeto. Implementação. Testes e depuração. Implantação. Definição do Problema. Estudo de viabilidade. Proposta de solução. Especificação da solução. Sob orientação de um professor.  

DCC049-Tópicos em Sistemas de Informação

Conteúdo variável  

DCC050-Introduação à Ciência da Computação

Apresentação do curso de Ciência da Computação: Áreas de formação e de atuação. Planejamento individual e programação do perfil profissional. Normas Gerais da Graduação.  

DCC052-Programação Modular

Filosofia e princípios. Qualidade de software. Modularidade. Reutilização de software. Programação por contrato. Objetos. Classes. Métodos. Encapsulação. Herança. Polimorfismo. Polissemia de forma e de estado. Polivalência. Redefinição. Associação dinâmica. Tratamento de exceção. Genericidade. Parametrização de classes. Declaração por associação. Co-variância e contravariância. Linguagens orientadas por objetos.  

DCC053-Compiladores I

Gramáticas. Análise léxica. Análise sintática. Tabela de símbolos. Linguagnes inermediárias. Alocação de memória em tempo de execução. Tradução dirigida por sintaxe. Geração de código de máquina.  

DCC054-Compiladores II

Estudo de técnicas avançadas de construção de compiladores, em especial para a geração de código e otimizações básicas.  

DCC055–Empreendimentos em Informática

Empreendedorismo: o que é, tipos e exemplos. Perfil do empreendedor. Criatividade. Idéias e oportunidades. Avaliação e planejamento de empreendimentos. Plano de Negócios. Elementos de planejamento e gestão empresarial. Legislação de software. Propriedade intelectual e industrial. Estrutura tributária brasileira. Financiamento de empreendientos de base tecnológica.  

DCC056–Engenharia de Aplicações em Rede

Conceitos básicos de sisemas distribuídios na Internet. Modelos de concorrência e arquiteturas de sistemas distribuídos: arquitetura cliente-servidor, peer-to-peer, etc. Aspectos de implementação de erviços e servidores. Interação entre os domínios de aplicações e a arquitetua da rede: redes overlay, distribuição de conteúdo.  

DCC057–Mineração de Dados

Processo de descoberta do conhecimento em bancos de dados. Conceitos básicos de ocleta e engenharia de dados. Técnicas de mineração de dados. Aspectos de implementação. Domínicos de aplicação.

DCC058-Projetos e Conceitos de Sistemas Paralelos e Distribuídos

Concorrência e comunicação em sistemas paralelos e distribuídos. Sincronização e acordo em sistemas paralelos e distribuídos. Persistência e sistemas de arquivos distribuídos. Compartilhamento de recursos em sistemas paralelos e distribuídos. Análise e avaliação de desempenho de sistemas distribuídos e paralelos. Projeto e implementação de aplicações Internet, como: cachês, redes de distribuição de conteúdo, aplicações P2P, serviços multimídia e serviços de comércio eletrônico.  

DCC059-Semântica Formal

Abordagens para definição formal de linguagens de programação. Álgebra Evolutiva: Máquinas de Estados Abstratos. Semântica denotacional. Semãntica direta. Semântica de continuação. Semântica de expressões: jumps, comandos, procedimentos e tipos. Classes o Objetos. Elementos da teoria de domínios: Ordem Parcial. POSETS, CPO, funções monotônicas, contínuas e ponto fixo. Semântica Operacional Estruturada. Pi-Cálculo.  

DCC068-Tópicos Especiais em Informática I

Conteúdo variável  

DCC069–Tópicos Especiais em Informática II

Conteúdo variável  

DCC070-Tópicos Especiais em Informática III

Conteúdo variável  

DCC071-Tópicos Especiais em Informática IV

Conteúdo variável  

DCC072-Engenharia de Software II

Processos de engenharia de software. Modelos de processo de desenvolvimento. Ciclo de vida de software em estágios e desenvolvimento ágil. Gestão de projetos de software. Gestão de risco. Gestão de recursos humanos. Métricas de processo e métricas de produto. Estimativas de custo, esforço e tamanho de software. Qualidade de software. Qualidade de produto e qualidade de processo. Garantia de qualidade de software. Gerência de configuração. Melhoria de processo de software. Manutenção, reengenharia e reuso de software.  

DCC073-Monografia em Sistemas de Informação II

Continuação do Projeto e implementação iniciados em Monografia em Sistemas de Informação. Testes e depuração. Implantação. Proposta de solução. Especificação da solução. Sob orientação de um professor.  

DCC111-Matemática Discreta

Análise combinatória. Teoria dos Grafos.  

DCC114-Introdução aos Sistemas Lógicos

Motivação para estudo de Sistemas Lógicos. Álgebra de Boole. Funções combinatórias e sua minimização. Máquinas seqüenciais: descrição e síntese. Outras lógicas com aplicação em Informática.  

DCC129-Fundamentos da Teoria da Computação

Estudo dos fundamentos matemáticos da computabilidade. Funções recursivas. Enumerabilidade e decibilidade. Sistemas de produção de Post. Modelos abstratos de máquinas programáveis.  

DCC186-Algorimos para Bioinformática I

Conceitos básicos e métodos para biologia molecular. Novas formas para representaçção e manipulação de sequências em biologia. Recuperação e mineração de dados genômicos. Alinhamento de sequências. Visualização de bancos de dados genômicos. Predição da estrutura da proteína.   

DCC187-Algoritmos para Bioinformática II

Desenvolvimento de uma aplicação em Bioinformática utilizando técnicas avançadas de representação em sequências.  

DCC188-Análise e Modelagem de Desempenho de Sistemas de Computação

Técnicas de avaliação de desempenho. Metodologia geral para estudo de modelagem. Modelos determinísticos de desempenho. Introdução a modelos probabilísticos de desempenho: modelos de carga. Planejamento e gerenciamento de capacidade.  

DCC189-Armazéns de Dados

Conceitos básicos de suporte à decisão e Fala Warehouse (DW). Arquitetura de ambientes em DW. Principais componentes de soluções. Modelagem dimensional. Estudos de caso. Ferramentas e aplicações OLAP. Tendências.  

DCC190-Bibliotecas Digitais

Bibliotecas Digitais: histórico, definições, arquitetura e fundamentos. Modelos. Aspectos socioeconômicos. Sistemas e estudos de caso. Desafios de pesquisa.  

DCC191-Computação Natural

Computação inspirada na organização e funcionamento do corpo humano: redes neurais, sistemas imunológicos artificiais, sistemas endócrinos artificiais. Computação evolucionária: algoritmos genéticos, programação genética, estratégias evolucionárias. Computação baseada em interações sociais: colônias de formigas, exames de partículas.  

DCC192-Desenvolvimento de Jogos Digitais

Conceitos básicos de jogos: histórico, características, narrativa, gameplay, interfaces. Visão geral do processo de desenvolvimento. Motores para jogos. Conceitos de Computação Gráfica. Física. Redes de inteligência artificial aplicadas a jogos.  

DCC193-Engenharia de Usabilidade

Motivação e conceitos básicos. Princípios de design. Padronização de interfaces. Estilos de interação. Usabilidade em interface Web. Processo visando a usabilidade. Análise visando a usabilidade. Desenho da interação. Avaliação heurística. Especificação de requisitos de usabilidade. Prototipação rápida. Testes de usabilidade

DCC194-Interação Humano-Computador

A área de IHC no Brasil e no mundo, estilos de interação, qualidades de uso. Processo de design na perspectiva de IHC. Métodos de coleta de dados dos usuários. Bases teóricas da área de IHC. Métodos de avaliação de base empírica e de base teórica. Modelos de projeto de interação.  

DCC195-Métodos Quantitativos em Pesquisa Experimental em Ciência da Computação

Tratamento de dados experimentais: medição, sumarização estatística, apresentação e interpretação de dados experimentais. Carga de trabalho (workloads): caracterização e análise. Métricas apropriadas para as questões buscadas pela pesquisa em ciência da computação experimental. Projeto experimental efetivo.  

DCC196-Modelagem de Processos de Negócio

Introdução: motivação, história, conceitos básicos. Modelagem e orientação a objetos. Modelo conceitual da UML. Modelagem estrutural. Modelagem comportamental. Regras e mecanismos da UML. Modelagem da arquitetura e negócio. Visões de modelos de negócio. Modelagem de regras de negócio. Padrões de negócio. Integração com o desenvolvimento de software.  

DCC197-Processamento Digital de Som e Vídeo

Processamento de som: conceitos básicos, histórico, suportes, interfaces e padrões de som digital, editores de som; Processamento de vídeo: conceitos básicos, histórico, suportes, interfaces e padrões de vídeo digital editores de vídeo. Recuperação de informação visual: conceitos básicos, recuperação de informação com base na cor, textura e forma.  

DCC198-Redes Complexas em Computação

Modelos, algoritmos e aplicações Introdução às Redes; Redes do Tipo “Small World”; Leis de Potência e “Scale-Free-Networks”; Crawlers e Buscas em Redes.  

DCC199-Teoria dos Grafos

Introdução; Conceitos básicos em grafos; Árvores; Planaridade; Coloração de grafos; Particionamento e casamento; Grafos dirigidos; Fluxo em redes; Algoritmos em grafos.  

DCC200-Tópicos em Ciência da Computação II

Conteúdo variável  

DCC201-Tópicos em Ciência da Computação III

Conteúdo variável  

DCC202-Tópicos em Ciência da Computação IV

Conteúdo variável  

DCC603-Engenharia de Software

Prova de correção de programas. Especificação e projeto de sistemas de software. Teste e depuração de software. Projeto e implementação de um sistema de porte médio.  

DCC604-Projeto Orientado em Computação I

Desenvolvimento de um trabalho sob orientação de um professor. Definição do problema. Estudo de viabilidade. Proposta de solução. Especificação da solução.  

DCC605-Sistemas Operacionais

Conceitos, estruturas e mecanismos usados no projeto e construção de sistemas operacionais.   

DCC606-Computadores e Sociedade

Computadores: campos de aplicação. Aspectos sociais e econômicos de sua utilização. Aspectos estratégicos do controle de tecnologia.