Ciência da Computação

Ementas

1° Semestre – Fundamentos de Informática – 60 horas

Ementa: Conceitos fundamentais da computação. Fundamentos das principais áreas da computação. Aritmética de ponto flutuante. Sistemas numéricos. Aritmética binária: ponto fixo e flutuante. Funções e Formas Booleanas, Álgebra Booleana, Minimização de Funções Booleanas.

 

1° Semestre – Algoritmos  – 90 horas

Ementa: Metodologia de Desenvolvimento de Algoritmos. Tipos de Dados Básicos e Estruturados. Comandos de uma Linguagem de Programação. Recursividade: Conceito e Implementação. Modularidade e Abstração

 

1° Semestre – Cálculo Diferencial e Integral  – 60 horas

Ementa: Funções Reais de uma Variável, Limites e Continuidade de Funções, Derivadas de Funções, Aplicações de Derivadas, Integrais Simples, Integral Indefinida, Métodos de Integração, Integral Definida e Aplicações.

 

1° Semestre – Inglês – 60 horas

Ementa: Noções de estratégias de leitura e interpretação de textos técnicos específicos da área de computação objetivando a compreensão. Noções de estrutura dos textos. Aspectos gramaticais e morfológicos pertinentes à compreensão. Estudo das estruturas de textos específicos da área de computação visando a compreensão. Noções de linguagem, gramática e morfologia. Desenvolvimento e ampliação das estratégias de leitura e interpretação de textos técnicos da área da computação.

 

1°Semestre – Metodologia Científica e de Pesquisa – 30 horas

Ementa: Ciência e Método. Estilos de Pesquisa. Preparação de um Trabalho de Pesquisa. Análise Crítica de Propostas de Trabalhos Científicos. Normas de formatação de trabalhos acadêmicos. Relatórios, artigos e monografias. Plágio.

 

2° Semestre – Linguagem de Programação I – 60 horas

Ementa: Programação orientada a objetos: classe, objeto e encapsulamento. Generalização, polimorfismo, interfaces, composição e agregação. Interface gráfica com o usuário (GUI) e seu uso no desenvolvimento de programas.

 

2° Semestre – Arquitetura de Computadores – 60 horas

Ementa: Organização de computadores: memórias, unidades centrais de processamento, entrada e saída. Linguagens de montagem. Modos de endereçamento, conjunto de instruções. Mecanismos de interrupção e de exceção. Barramento, comunicações, interfaces e periféricos. Organização de memória. Memória auxiliar. Arquiteturas RISC e CISC. Pipeline. Paralelismo de baixa granularidade. Processadores superescalares e superpipeline.

 

2° Semestre – Probabilidade e Estatística – 60 horas

Ementa: Eventos. Independência de Eventos. Experimentos Aleatórios. Análise Exploratória de Dados. Descrição Estatística dos Dados. Espaços Amostrais. Probabilidades em Espaços Amostrais Discretos. Distribuições de Probabilidades de Variáveis Aleatórias Unidimensionais e Bidimensionais. Esperança Matemática. Variância e Coeficientes de Correlação. Aproximação Normal. Teste de Hipóteses para Médias. Testes do Qui-Quadrado. Testes de Comparações de Médias. Regressão e Correlação. Técnicas de Contagem. Variáveis Aleatórias Discretas e Contínuas. Distribuições Discretas e Contínuas.

 

2° Semestre – Fundamentos Matemáticos da Computação – 60 horas

Ementa: Lógica Proposicional e de Predicados. Linguagem Proposicional e de Primeira Ordem. Sistemas Dedutivos. Tabelas Verdade e Estruturas de Primeira Ordem. Relações de Consequência. Corretude. Completude. Compacidade. Lowemhein Skolen. Decidibilidade. Prova automática de teoremas.

 

2° Semestre – Física – 30 horas

Ementa: Medidas Físicas. Eletrodinâmica. Magnetismo. Termodinâmica. Ótica. Cinemática. Eletrostática. Eletromagnetismo. Temperatura. Calor.

 

2°Semestre – Filosofia – 30 horas

Ementa: Introdução à filosofia da ciência. A ciência e outras formas de conhecimento. O estatuto da Ciência e da Filosofia. Critérios de Cientificidade. A questão da objetividade científica. Ciência e Tecnologia. A importância da lógica utilizada pelo pesquisador para a construção da ciência.

 

3° Semestre – Estrutura de Dados – 60 horas

Ementa: Listas lineares e suas generalizações: listas ordenadas, listas encadeadas, pilhas e filas. Aplicações de listas. Árvores e suas generalizações: árvores binárias, árvores de busca, árvores balanceadas (AVL), árvores B e B+. Aplicações de árvores. Algoritmos para pesquisa e ordenação em memória principal e secundária. Tabelas de Hash.

 

3° Semestre – Banco de Dados I – 60 horas

Ementa: Gerenciamento de Banco de Dados. Modelagem de Dados: modelos conceituais e modelos operacionais. Normalização. Abordagem relacional semântica, modelo externo, álgebra relacional e cálculo relacional. Arquitetura de um sistema gerenciador de banco de dados. Projeto de banco de dados. Linguagem SQL: DDL, DTD, DCL, DML, cláusulas, operadores lógicos e relacionais. Funções de Agregração. Pesquisa avançada.

 

3° Semestre – Métodos Numéricos – 60 horas

Ementa: Aritmética de ponto flutuante. Zeros de funções reais. Sistemas lineares. Métodos de Interpolação Numérica. Interpolação polinomial. Ajuste de Curvas. Diferenciação e Integração numérica. Tratamento numérico de equações diferenciais ordinárias.

 

3° Semestre – Matemática Discreta – 30 horas

Ementa: Iteração, Indução e Recursão. Conjuntos e Álgebra de Conjuntos como uma Teoria Axiomática. Par Ordenado. Funções. Relações sobre Conjuntos, Relações de Equivalência e Ordem. Teoria dos Códigos, Canal Binário, Canal Simétrico, Código de Blocos, Matrizes Geradoras e Verificadoras, Códigos de Grupo, Códigos de Hamming.

 

3°Semestre – Paradigmas da Computação – 60 horas

Ementa: Visão comparativa de paradigmas de programação. Problemas tratáveis pelos paradigmas. Definição e caracterização dos principais paradigmas declarativos e imperativos.

 

3° Semestre – Sistemas Operacionais – 60 horas

Ementa: Histórico de Sistemas Operacionais. Arquitetura de Sistemas Operacionais. Funcionalidades de Sistemas Operacionais. Gerência de Processos e Threads: Controle e Escalonamento. Impasses: Modelagem e Tratamento. Memória: Alocação, Gerência e Memória Virtual. Entrada e Saída: princípios de hardware e software, dispositivos periféricos. Sistema de Arquivos: Arquivos, Diretórios e Implementação. Proteção e Segurança.

 

4° Semestre – Redes de Computadores I – 60 horas

Ementa: Conceitos de redes de computadores, protocolos e serviços de comunicação. Princípios da transmissão de dados: capacidade do canal, transmissão de dados, codificação. Princípios dos modelos das redes de computadores: OSI e TCP/IP. Meios de transmissão de dados. Camadas baixa do modelo OSI: física, enlace, rede e transporte.

 

4° Semestre – Banco de Dados II – 60 horas

Ementa:Linguagem SQL Avançada. Procedimentos armazenados (Stored Procedures), Gatilhos (triggers). Indexação e Hashing. Processamento de Consultas. Transações. Controle de Concorrência. Sistema de Recuperação. Tecnologias e m Banco de Dados.

 

4°Semestre – Linguagem de Programação II – 90 horas

Ementa: Introdução ao modelo arquitetura WEB. Programação de páginas estáticas e dinâmicas para WEB. Desenvolvimento de aplicações com acesso a banco de dados. Frameworks Web. Padrões de Projeto.

 

4° Semestre – Álgebra Linear – 60 horas

Ementa: Sistemas de Equações Lineares, Espaços Vetoriais. Subespaços. Bases. Somas Diretas. Transformações Lineares e Matrizes. Autovalores e Autovetores. Diagonalização. Espaços com Produto Interno. Bases Ortonormais. Projeções Ortogonais. Transformações em Espaços com Produto Interno.

 

4° Semestre – Linguagens Formais e Autômatos – 60 horas

Ementa: Definições básicas: símbolos, alfabetos, sentenças, linguagens. Operações com Linguagens. Propriedades das Linguagens. Gramáticas. Hierarquia de Chomsky: Linguagens Regulares, Livres de Contexto e Sensíveis ao Contexto. Tipos de Reconhecedores: Autômatos de Estados Finitos Determinístico e não Determinístico, Autômatos com transições vazias, Autômatos de Pilha, Máquina de Turing.

 

5° Semestre – Computação Gráfica – 60 horas

Ementa: Transformações geométricas em duas e três dimensões;  coordenadas homogêneas e matrizes de transformação. Transformação entre  sistemas de coordenadas 2D e recorte. Transformações de projeção paralela e  perspectiva; câmera virtual; transformação entre sistemas de coordenadas 3D.  Definição de objetos e cenas tridimensionais: modelos poliedrais e malhas de  polígonos. O processo de Rendering: fontes de luz; remoção de linhas e  superfícies ocultas; modelos de tonalização (shading). Aplicação de texturas. O  problema do serrilhado (aliasing) e técnicas de anti-serrilhado (antialiasing).

 

5° Semestre – Circuitos Eletrônicos e Digitais  – 60 horas

Ementa: Eletrônica básica: circuitos elétricos e circuitos eletrônicos básicos. Implementação de portas lógicas com transistores e diodos. Famílias lógicas. Flip-flops, registradores, contadores e memórias. Osciladores e relógios. Circuitos combinacionais: análise e síntese. Dispositivos lógicos programáveis. Circuitos seqüenciais: análise e síntese. Introdução aos sistemas digitais.

 

5° Semestre – Redes de Computadores II  – 60 horas

Ementa: Camada de Aplicação: conceitos e protocolos. Segurança de redes de computadores . Sistemas criptográficos. Problemas de Segurança . Tecnologias e soluções de proteção e segurança. Políticas de segurança. Auditoria. Qualidade de Serviço.

 

5° Semestre – Engenharia de Software I – 60 horas

Ementa:Introdução a Engenharia de Software. Ciclo de Desenvolvimento de Software. Levantamento e gerência de requisitos de Software: casos de uso e especificação. Análise e projeto de software OO. Gerência e Teste de Software. Ferramentas Case. Projeto de sistema de software orientado a objeto.

 

5° Semestre – Compiladores – 60 horas

Ementa: Interpretadores. Compiladores. Organização e estrutura de  compiladores. Projeto de especificação de linguagens de programação.  Implementação das etapas que compreendem o processo de compilação:  Análise Léxica, Análise Sintática, Análise Semântica, Geração e Otimização de  Código. Recuperação de erros. Evolução e tendências da área de  compiladores e linguagens de programação.

 

6° Semestre – Tecnologia e Sociedade – 30 horas

Ementa: Racionalização, ciência e tecnologia na sociedade moderna. Inovação tecnológica e desenvolvimento econômico. Tecnologia, trabalho e organização produtiva. Tecnologia como controle social. Compressão do tempo e do espaço. Os efeitos da tecnologia sobre a sociabilidade, as condições de trabalho e os arranjos institucionais. Tecnologia, individualização e competência. Mundialização e tecnologia. Relações Etnico-Raciais. Lixo eletrônico e meio ambiente.

 

6° Semestre – Sistemas Digitais – 60 horas

Ementa: Microcontroladores e microprocessadores. Microcontroladores e sistemas embarcados. Desenvolvimento de softwares de controle e monitoramento de sistemas. Microcontroladores para aplicações de automação e controle. Rotinas e métodos de transferência de dados. Aplicações de tempo real. Temporizadores, contadores e relógios. Interfaces. Comunicação entre sistemas. Concorrência e paralelismo em sistemas digitais. Co-projeto de hardware e software: formalismos, metodologias, ferramentas. Uso de ferramentas de software, sistemas de desenvolvimento, prototipação rápida.

 

6° Semestre – Programação Lógica e Funcional – 60 horas

Ementa: Paradigma lógico. Lógica proposicional. Cálculo de predicados. Linguagem de programação lógica. Cálculo lambda. Paradigma funcional. Linguagem de programação funcional

 

 Semestre – Engenharia de Software II  – 60 horas

Ementa: Metodologias de desenvolvimento de software. Projeto de arquitetura. Mapeamento objeto-relacional. Reuso de software. Gerência de Configuração. Conceitos de qualidade e modelos de referência. Documentação de software.

 

6° Semestre – Teoria da Computação – 60 horas

Ementa: Programas, Máquinas e Computações. Máquinas de Turing. Funções Recursivas. Computabilidade. Decidibilidade. Análise e Complexidade de Algoritmos. Classes e complexidade de problemas computacionais.

 

7° Semestre – Empreendedorismo – 30 horas

Ementa: Empreendedorismo. Empreendimento e empresa. Oportunidade de negócios. Criatividade e visão empreendedora. Planejamento. Políticas e estratégias competitivas para os empreendimentos emergentes. Elaboração de planos de negócios. Marketing.

 

7° Semestre – Interface Homem-Máquina  – 60 horas

Ementa:Introdução a Interfaces Homem-Computador (IHC). Ergonomia aplicada à informática. Usabilidade e os Critérios Ergonômicos de Usabilidade. Recomendações de Acessibilidade. Navegabilidade. Projeto de Interfaces Homem-Computador, Avaliação de Interfaces Homem-Computador.

 

7° Semestre – Sistemas Distribuídos – 60 horas

Ementa: Problemas Básicos em Computação Distribuída: coordenação e sincronização de processo, Exclusão Mútua, Difusão de Mensagens. Compartilhamento de Informação: Transações Distribuídas. Comunicação entre processos. Tolerância a Faltas. Sistemas Operacionais Distribuídos: Sistemas de Arquivos, Servidores de Nomes, Memória Compartilhada. Arquitetura orientada a serviços. Computação em nuvem.

 

7° Semestre – Programação Paralela e Multi-Core – 60 horas

Ementa: Métodos e técnicas para o projeto, implementação e uso de sistemas de programação para o desenvolvimento de programas paralelos e para multi-processamento. Teoria do paralelismo. Arquiteturas paralelas. Primitivas básicas de programação paralela: controle de tarefas, comunicação e sincronização. Conceitos básicos de avaliação de desempenho e complexidade de programas paralelos. Paralelização automática. Vetorização. Algoritmos clássicos de programação paralela.

 

7° Semestre – Trabalho de Curso I – 120 horas

Ementa: Conceituação da pesquisa em cursos de graduação em ciência da computação. Conceitos e técnicas para preparação de projetos de pesquisa: introdução, objetivos, hipóteses, metodologia, justificativa, resultados esperados, estado da arte, desenvolvimento, experimentos, conclusões. Conceitos e técnicas para proceder à revisão bibliográfica e a escrita de artigos científicos. Orientação para o desenvolvimento do projeto em Ciência da Computação.

 

8° Semestre – Direito e Ética na Computação – 60 horas

Ementa: Divisão geral do direito. Noções e âmbito do Direito de informática. Regulamentação Jurídica da informática no Brasil. Proteção jurídica em Informática e software. Direito Autoral. Crimes de Computador. A regulamentação da profissão. Ética na profissão. Propriedade industrial, patentes e direitos.

 

8° Semestre – Inteligência Artificial – 60 horas

Ementa: Representação do conhecimento. Regras de produção. Redes semânticas. Lógica fuzzy. Redes neurais. Sistemas especialistas e bases de conhecimento. Agentes. Sistemas Multiagentes. Computação evolucionária. Algoritmos Genéticos.

 

8° Semestre – Gestão de Tecnologia de Informação – 60 horas

Ementa: Aspectos gerais da governança de tecnologia da informação. Gerência de software: aquisição (avaliação de fornecedores e terceirização), implementação de software, testes. Gerenciamento de serviços: suporte aos serviços, entrega de serviços, gerenciamento do nível de serviço, auditoria e acompanhamento de serviços. Gerência de hardware: plano de aquisição e manutenção de hardware. Gerência de recursos humanos: estrutura da equipe, gerenciamento de desempenho e capacidade.

 

8° Semestre – Trabalho de Curso II – 180 horas

Ementa: Desenvolvimento de Projeto na área de informática. Obedece ao Regulamento de Trabalho de Conclusão de Curso.