ALGORITMOS E PROGRAMAÇÃO (136 h - 4 aulas por semana)
Desenvolvimento de algoritmos. Tipos de dados básicos e estruturados. Comandos de uma linguagem de programação. Metodologia de desenvolvimento de programas: programação estruturada e orientada a objetos. Modularidade e abstração. Desenvolvimento, implementação, depuração, testes e documentação de programas. Arquivos.
CÁLCULO DIFERENCIAL E INTEGRAL (102 h - 3 aulas por semana)
Números reais. Funções reais de uma variável real. Funções de várias variáveis reais. Limites. Continuidade. Derivação. Integração simples, dupla e tripla. Áreas. Volumes. Seqüências. Séries.
INGLÊS TÉCNICO (68 h - 2 aulas por semana)
Estudo metódico de textos na área de informática, software, manuais, através de exercícios de leitura, compreensão e intelecção com vistas à aquisição de um instrumento de comunicação e pesquisa.
INTRODUÇÃO A ORGANIZAÇÃO DE COMPUTADORES (68 h - 2 aulas por semana)
Introdução e dados históricos. Sistemas numéricos: bases decimal, binária, hexadecimal e octal. Conversões de bases. Representação binária: inteiros, ponto fixo, ponto flutuante e negativos. Aritmética binária. Overflow e underflow. Representação de alfanuméricos: ASCII e UNICODE. Funções e portas lógicas. Representações de circuitos lógicos: expressão booleana, diagrama lógico e tabela verdade. Álgebra de Boole. Simplificação de circuitos lógicos. Equivalência entre circuitos. Circuitos combinacionais. Matrizes Lógicas Programáveis (PLA). Circuitos seqüenciais. Organizações de memórias com circuitos seqüenciais. Metodologias de temporização de circuitos. Memórias RAM e ROM: tecnologias e aplicações.
MATEMÁTICA DISCRETA (68 h - 2 aulas por semana)
Tópicos de álgebra: conjuntos, relações, funções, indução, recursão, sistemas algébricos, reticulados, monóides, grupos, anéis; Tópicos de análise combinatória: distribuição, permutação, combinação, enumeração por recursão, cardinalidade de união de conjuntos, enumeração de conjunto; Teoria dos grafos: caminho, planaridade, coloração, grafos infinitos, conectividade, grafos orientados e não-orientados, problemas intratáveis;
GEOMETRIA ANALÍTICA E ÁLGEBRA LINEAR (136 h - 4 aulas por semana)
Sistemas de equações lineares; Matrizes; Vetores; Espaços vetoriais; Dependência e independência linear; Transformações lineares; Curvas e superfícies; Equações diferenciais lineares; Produto escalar e vetorial; Álgebra vetorial; Reta no plano e no espaço; Planos; Posições relativas, interseções, distâncias e ângulos; Círculo e esfera; Coordenadas polares, cilíndricas e esféricas;
LÓGICA COMPUTACIONAL (102 h - 3 aulas por semana)
Caracterização e histórico da lógica matemática; Cálculo proposicional; Operações lógicas fundamentais; Procedimentos de decisão de validade; Equivalência lógica; Álgebra proposicional; Método dedutivo em lógica matemática; Raciocínio lógico e formal; Sintaxe e semântica; Inferência no cálculo proposicional; Forma normal; Notaão clausal; Cálculo de predicados; Teoria de quantificação; Inferência no cálculo de predicados; Forma normal prenex; Forma clausal no cálculo de predicados; A linguagem de programação lógica Prolog; Histórico; Sintaxe da linguagem; Sintaxe de operadores; Listas; Recursividade;
BANCO DE DADOS (68 h - 2 aulas por semana - 2º semestre)
Arquitetura de Banco de Dados. Estruturas de arquivos. Indexação e Hashing. Transações. Controle de concorrência e sistemas de recuperação. Segurança de dados. Projeto de Banco de Dados. Modelagem conceitual. Modelagem lógica. Modelagem física. Normalização. Modelo relacional. SQL. Álgebra relacional.
CÁLCULO NUMÉRICO (102 h - 3 aulas por semana)
Métodos numéricos na resolução de sistemas lineares. Equações algébricas e transcendentes. Métodos numéricos de resolução. Interpolação. Integração numérica. Introdução às equações diferenciais e resolução numérica de equações diferenciais ordinárias.
ESTRUTURAS DE DADOS (136 h - 4 aulas por semana)
Listas lineares e suas generalizações: listas ordenadas e circulares, pilhas, filas e deques, listas encadeadas, aplicações de listas. Árvores e suas generalizações, árvores binárias, árvores de busca, árvores balanceadas (AVL), aplicações de árvores. Heap. Árvores B e B. Hashing. Estrutura de dados para representação de grafos, busca em grafos. Pesquisa e ordenação em memória principal e secundária.
INTRODUÇÃO À INVESTIGAÇÃO CIENTÍFICA (68 h - 2 aulas por semana)
Conhecimento científico. Pesquisa científica. Métodos e técnicas de pesquisa. Teoria e prática das normas de apresentação de trabalhos. Técnicas de levantamento bibliográfico.
LINGUAGENS DE PROGRAMAÇÃO (136 h - 4 aulas por semana)
Introdução aos conceitos de linguagens de programação modernas. Linguagens e seus diferentes paradigmas de programação (comparativo de linguagens). Estruturas de programação e ambiente de execução. Seleção de linguagens para aplicações específicas.
MODELAGEM CONCEITUAL DE SOFTWARE (68 h - 4 aulas por semana - 1º semestre)
Conceitos sobre modelagem de software: paradigmas de desenvolvimento, conceitos de orientação a objetos; Introdução à modelagem de software: histórico das técnicas de modelagem, visão geral das técnicas de modelagem; Modelagem de sistemas: modelagem funcional, modelagem de dados, modelagem comportamental; Processo de desenvolvimento: características, fases e artefatos de um processo de software, ferramentas de apoio; Desenvolvimento prático: mapeamento dos modelos em uma linguagem de programação, aplicação de um processo de software.
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES (136 h - 4 aulas por semana)
Visão geral da arquitetura de von Neumann: unidade central de processamento, memória e entrada/saída. Conceito de palavra. Linguagem de montagem. Estruturas de conexão entre processador, memória e E/S. Barramentos. Hierarquia de memória: registradores, cache, memória principal, memória externa e a implementação da memória virtual. Interrupções e exceções. Entrada e saída. Interação com o sistema operacional. Arquitetura do Conjunto de Instruções: características, formatos, modos de endereçamento, tipo de dados e procedimentos. Arquiteturas RISC e CISC. Unidade central de processamento: unidade de controle, unidades funcionais e barramentos internos. Pipeline, superpipeline e processadores superescalares.
ELETRÔNICA (102 h - 3 aulas por semana)
Medidas elétricas e magnéticas. Componentes elétricos e eletrônicos. Eletrônica básica e circuitos eletrônicos básicos. Conceitos básicos de circuitos integrados: etapas de projeto e fabricação, elementos de circuitos. Implementação de portas lógicas com diodos, transistores e circuitos integrados. Famílias lógicas. Flip-flops, registradores, contadores e memórias. Osciladores e relógios. Circuitos combinacionais: análise e síntese. Circuitos seqüenciais: análise e síntese.
ENGENHARIA DE SOFTWARE (102 h - 3 aulas por semana)
Software e engenharia de software: características, paradigmas e visão geral. Gerência de projetos: métricas de software. Administração e gerência de projetos. Análise de requisitos de software e de sistemas. Métodos de análise e de projeto de software. Garantia de qualidade de software. Técnica de teste de software. Manutenção e gerenciamento de configuração de software. Ambientes de desenvolvimento de software.
ESTATÍSTICA COMPUTACIONAL (102 h - 3 aulas por semana)
Introdução. Análise exploratória de dados. Amostragem. Probabilidade. Inferência estatística. Números aleatórios. Simulação. Ordenação.
INTELIGÊNCIA ARTIFICIAL (102 h - 3 aulas por semana)
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. Representação do conhecimento. Regras de produção. Redes semânticas. Frames. Representação do conhecimento e raciocínio com incerteza. Aprendizagem de máquina, métodos de indução. Processamento de linguagem natural.
OFICINA DE BANCO DE DADOS (68 h - 4 aulas por semana)
Implementação de Projeto de Banco de Dados. Modelagem conceitual. Linguagens de descrição de manipulação. SQL. Descrição e estudos de casos sobre. Principais SGBD. Administração de banco de dados
SISTEMAS DE INFORMAÇÃO I (68 h - 2 aulas por semana)
Teoria geral dos sistemas: o pensamento sistêmico, definição de sistemas, tipos de sistemas, aplicações do pensamento sistêmico, enfoque sistêmico: tempo e planejamento, o enfoque sistêmico e o ser humano, sistemas de informação administrativos, planejamento estratégico de sistemas de informação. Fundamentos e classificação de sistemas de informação. Conceitos de sistema. Componentes e relacionamentos de sistema. Custo/valor e qualidade da informação. Vantagem competitiva e informação. Especificação, projeto e reengenharia de sistemas de informação. Características do profissional de sistemas de informação e carreiras de sistemas de informação. Sistemas de informação gerenciais e de apoio à decisão.
SISTEMAS OPERACIONAIS (136 h - 4 aulas por semana)
Histórico, classificação, estrutura e componentes; Processos, sincronização e escalonamento; Gerenciamento de memória; Memória virtual; Monoprogramação e multiprogramação; Alocação de recursos e deadlocks; Gerenciamento de arquivos; Segurança e proteção; Técnicas de E/S; Sistemas operacionais distribuídos: estrutura cliente-servidor; Estudos de caso;
ANÁLISE DE ALGORITMOS (68 h - 2 aulas por semana)
Medidas de complexidade. Escolha do algoritmo ótimo. Funções de complexidade. Técnicas de desenvolvimento de algoritmos. Correção de algoritmos. Problemas NP-difíceis. Solução de problemas NP-difíceis. Classes de problemas. ( Ordenação. Grafos.)
COMPUTAÇÃO GRÁFICA (68 h - 2 aulas por semana)
Arquitetura de interfaces de usuário. Interfaces gráficas orientadas por objetos. Bases de dados gráficas. Ambientes gráficos tridimensionais. Modelos vetoriais 2D e 3D: primitivas, transformações, recorte e visualização. Síntese de imagens: modelos básicos de iluminação e elaboração. Modelos gráficos avançados: modelagem paramétrica e funcional. Aplicação de 220 mapas: texturas, sombras, reflexões. Rastreamento de raios e radiosidade. Técnicas de sombreamento e ray-tracing. Visualização de dados científicos. Animação.
CONTABILIDADE GERAL (68 h - 2 aulas por semana)
Fundamentos, patrimônio, objetivos da contabilidade, conceitos básicos. Fases ou técnicas aplicadas na contabilidade, estrutura fundamental das demonstrações financeiras.
INTERFACES HOMEM-MÁQUINA (68 h - 2 aulas por semana)
Fatores humanos em software interativo. Teoria, princípios e regras básicas. Estilos interativos. Linguagem de comandos. Manipulação direta. Dispositivos de interação.
PESQUISA OPERACIONAL (102 h - 3 aulas por semana)
Método dos quadrados mínimos: modelos de programação linear; problema da análise de atividades; problema da dieta; problema do transporte; problema da designação; solução gráfica; limitações da programação linear. Método Simplex. Algoritmos especiais: problema do transporte; problema da designação. Dualidade. Análise pós-otimização. Noções de algoritmos genéticos.
PROJETO DE SISTEMAS DE INFORMAÇÃO (68 h - 2 aulas por semana)
Gerenciamento e desenvolvimento de um projeto que acompanhe as etapas do ciclo de vida do software, com ênfase em: documentação, determinação dos requisitos, projeto lógico, projeto físico, implementação e validação. Questões de integração de banco de dados e sistema.
REDES E SISTEMAS DISTRIBUÍDOS (136 h - 4 aulas por semana)
Conceitos de transmissão de dados. O canal de comunicação e suas características. Algoritmos de detecção e correção de erros. Meios de transmissão. Transmissão de informação por canais físicos. Interfaces e protocolos da camada física. Técnicas de modulação. Representação elétrica de informação digital. Códigos e sistemas de transmissão banda base. Técnicas de multiplexação. Técnicas de transmissão sem fio. Transmissão fotônica. Sistemas de comunicação óticos. Conceitos básicos de conectividade, redes e sistemas distribuídos. Características gerais e aplicações. Protocolos e serviços de comunicação. Topologias de redes. Redes locais e de longa distância. Sistemas operacionais de redes. Arquitetura de redes de computadores modelo OSI da ISO. Interligação de redes. Desempenho, custos, e segurança em redes de computadores. Redes de alta velocidade. Redes sem fio. Tópicos avançados de sistemas distribuídos.
ADMINISTRAÇÃO (51 h - 3 aulas por semana)
Liderança. Planejamento administrativo. Motivação de pessoal. Administração de custos. Visão de problemas e ferramentas usadas no processo decisório do departamento de O&M das organizações. Visão sistêmica das organizações.
COMPUTADORES E SOCIEDADE (51 h - 3 aulas por semana)
Aspectos sociais, econômicos, legais e profissionais de computação. Aspectos estratégicos do controle da 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. Códigos de ética profissional. Doenças profissionais. Aspectos de inclusão digital. Aspectos relacionados ao combate e prevenção às drogas e alcoolismo. Educação das relações Étnico-Raciais.
ECONOMIA (68 h - 2 aulas por semana)
Evolução da Ciência Econômica. Economia monetária. Microeconomia. Macroeconomia. Relações econômicas com o exterior. Desenvolvimento econômico e economia brasileira.
EMPREENDEDORISMO (51 h - 3 aulas por semana - 2º semestre)
Formação de empreendedores de informática. Estudo dos mecanismos e procedimentos para criação de empresas de computação. Perfil do empreendedor, sistema de gerenciamento, técnicas de negociação, planejamento e administração estratégica, qualidade e competitividade.
ESTÁGIO SUPERVISIONADO (170h - 2º semestre)
Estágio supervisionado em empresas, instituições públicas ou privadas, podendo ser realizado na UEPG, para o desenvolvimento de trabalhos envolvendo assuntos pertinentes à área de computação.
ORIENTAÇÃO DE TRABALHO DE CONCLUSÃO DE CURSO (34 h)
Elaboração de um projeto (de sistema de informação, projeto de hardware, projeto de sistema de softwares e dos manuais de operação), sob orientação de um docente, com apresentação para Banca Examinadora, obedecendo a regulamento próprio.
SISTEMAS DE APOIO À DECISÃO (68 h - 2 aulas por semana)
Histórico e aplicações de sistemas de apoio à decisão. Problemas de decisão. Teoria da unidade: funções de utilidade. Incerteza e teoria da probabilidade: variáveis aleatórias; distribuições de probabilidade, distribuição conjunta; inferência Bayesiana; decisões baseadas em probabilidades. Teoria da decisão e decisão racional. Representação de conhecimento: árvores de decisão; redes bayesianas; diagramas de influência; cadeias de Markov. Inferência em sistemas de apoio à decisão. Engenharia de conhecimento em sistemas de apoio à decisão. Indução de modelos. O valor da informação. Análise de sensibilidade. Estudo de casos.
SISTEMAS MULTIMÍDIA (68 h - 2 aulas por semana)
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. DISCIPLINA DE DIVERSIFICAÇÃO OU APROFUNDAMENTO (51 h - 3 aulas por semana - 1º semestre)
DISCIPLINA DE DIVERSIFICAÇÃO OU APROFUNDAMENTO (51 h - 3 aulas por semana - 2º semestre)
PROCESSAMENTO DE IMAGENS (51 h - 3 aulas por semana)
Princípios básicos de Processamento de Imagens - Etapas básicas - Realce de Imagens (histograma, equalização, filtragem linear, filtragem não linear) - Segmentação de Imagens (por região, por textura, por contorno) - Morfologia Matemática binária (elemento estruturante, erosão, dilatação, reconstrução binária), Aplicações reais.
PROGRAMAÇÃO CONCORRENTE (51 h - 3 aulas por semana)
Introdução à computação paralela: hardware e software. Propriedades fundamentais. Introdução à programação paralela: definição, ativação e coordenação de tarefas concorrentes. Modelos de programação paralela. Desenvolvimento de algoritmos paralelos. Escalonamento de Processos. Avaliação de desempenho e teste de programas paralelos.
SIMULAÇÃO DE SISTEMAS (51 h - 3 aulas por semana)
Histórico. Sistemas. Modelos. Conceitos básicos de probabilidade. Números aleatórios. Modelagem de sistemas. Simulação discreta. Simulação contínua. Mecanismo de controle do tempo. Simulação de sistemas baseados em filas. Técnicas de modelagem de sistemas em computador.
TÓPICOS ESPECIAIS EM BANCO DE DADOS (51 h - 3 aulas por semana)
Algoritmos de Aproximação. Análise Experimental de Algoritmos. Algoritmos Paralelos e Distribuídos. Algoritmos Probabilísticos. Estruturas de Dados Avançadas para Busca, Filas de Prioridades e Manipulação de Textos. Algoritmos Numéricos e Criptografia. Algoritmos Geométricos.
TÓPICOS ESPECIAIS EM ALGORITMOS E ESTRUTURAS DE DADOS (51 h - 3 aulas por semana)
Tópicos atuais da área de banco de dados incluindo banco de dados não convencionais, data warehouse e ferramentas OLAP. Além de tópicos relacionados a banco de dados na internet, cliente/servidor e distribuído, normatização e certificação de banco de dados.