Universidade Federal Rural do Rio de Janeiro Instituto Multidisciplinar Departamento de Tecnologias e Linguagens PPC - Projeto Pedagógico de Curso do Bacharelado em Ciência da Computação Nova Iguaçu, Outubro de 2011 1 DADOS GERAIS DENOMINAÇÃO DO CURSO: Ciência da Computação TIPO: Bacharelado TITULAÇÃO CONFERIDA: Bacharel em Ciência da Computação DURAÇÃO DO CURSO: 9 (nove) semestres letivos MODALIDADE: Presencial (regime seriado semestral) LOCAL DE OFERTA: Campus Nova Iguaçu TURNOS DE FUNCIONAMENTO: Vespertino NOME DO COORDENADOR: Profa. DSc. Adria Lyra PROCESSO e-MEC: 200909287 – Autorização do Curso – Análise Concluída COMISSÃO: 1. Carlos Eduardo Mello 2. Juliana Mendes 3. Isabel Fernandes 4. Leandro Alvim 5. Ronaldo Goldschmidt 2 SUMÁRIO Apresentação ................................................................................................................................................................... 6 Perfil do Curso e Justificativa para a Oferta ..................................................................................................... 8 Princípios Norteadores e Competências mobilizadas ............................................................................. 10 Princípios Norteadores da formação........................................................................................................... 10 Competências mobilizadas ............................................................................................................................... 11 Objetivos.......................................................................................................................................................................... 13 Geral.............................................................................................................................................................................. 13 Específico ................................................................................................................................................................... 14 Perfil do Egresso.......................................................................................................................................................... 15 Perfil profissional .................................................................................................................................................. 15 Atribuições do egresso no mercado de trabalho ................................................................................... 16 Formas de Acesso ao Curso e Oferta ................................................................................................................. 17 Regime Acadêmico ................................................................................................................................................ 17 Carga Horária Total .............................................................................................................................................. 17 Prazos Mínimo e Máximo de Integralização ............................................................................................ 17 Locais, Turnos de Oferta e Número de Vagas ......................................................................................... 17 Dimensão das Turmas ......................................................................................................................................... 18 Integração Teoria e Prática nas Ofertas de Turmas ....................................................................... 18 Formas de Acesso .................................................................................................................................................. 21 Composição da Matriz Curricular do Curso .................................................................................................. 22 Linhas Curriculares............................................................................................................................................... 22 Núcleo de Fundamentos da Computação .................................................................................................. 23 Núcleo de Tecnologia da Computação ........................................................................................................ 24 Núcleo de Matemática ......................................................................................................................................... 24 Núcleo de Ciências Básicas ............................................................................................................................... 24 Núcleo de Contexto Social e Profissional................................................................................................... 25 Núcleo dos Tópicos especiais .......................................................................................................................... 25 3 Núcleo das Disciplinas Optativas................................................................................................................... 25 Atividades Acadêmicas Complementar e Trabalho Final de Curso ............................................. 26 Matriz Curricular ................................................................................................................................................... 27 Organização Curricular em Tabela ............................................................................................................... 29 Organização Curricular em Fluxograma – Visão Gráfica ................................................................... 32 Organização Curricular– Legenda............................................................................................................ 33 Ementas das Disciplinas Obrigatórias ........................................................................................................ 34 Disciplinas Optativas segundo Eixos Temáticos................................................................................. 148 Matemática........................................................................................................................................................ 148 Probabilidade e Estatística ....................................................................................................................... 151 Contexto Social e Profissional ................................................................................................................. 151 Introdução aos Estudos de Física .......................................................................................................... 154 Ética e Ciência .................................................................................................................................................. 155 Jogos ..................................................................................................................................................................... 155 Segurança e Criptografia............................................................................................................................ 156 Hardware e Software Básico.................................................................................................................... 156 Engenharia de Software e Banco de Dados ...................................................................................... 157 Disciplinas de Tópicos Especiais – Propostas de Ementário ....................................................... 157 Tópicos Especiais em Otimização ......................................................................................................... 157 Tópicos Especiais em Banco de Dados e Engenharia de Software ...................................... 158 Tópicos Especiais em Programação de Computadores ............................................................. 159 Tópicos Especiais em Inteligência Artificial .................................................................................... 160 Tópicos Especiais em Ciência da Computação ............................................................................... 162 Metologia de Aprendizagem .............................................................................................................................. 163 Integração de Conteúdos como Estratégia Pedagógica .................................................................. 166 Avaliação ...................................................................................................................................................................... 168 Sistema de Avaliação do Processo de Aprendizagem - Avaliação discente .......................... 168 Avaliação Docente .............................................................................................................................................. 168 Sistema de Avaliação do Projeto do Curso - Auto-avaliação ........................................................ 169 4 Componentes curriculares de apoio à Aprendizagem .......................................................................... 171 Atividades de conclusão do curso .............................................................................................................. 171 Atividades Acadêmicas Complementares .............................................................................................. 171 Grupo I – Ensino ............................................................................................................................................. 172 Grupo II – Pesquisa ....................................................................................................................................... 173 Grupo III – Extensão ..................................................................................................................................... 174 Critérios de aceitação da atividade: ..................................................................................................... 174 Núcleo de Pesquisa em Computação Aplicada – NPCA ................................................................... 175 Corpo docente............................................................................................................................................................ 175 Infraestrutura para o Curso................................................................................................................................ 179 Parcerias .................................................................................................................................................................. 180 Gestão do Curso ........................................................................................................................................................ 181 Colegiado ................................................................................................................................................................. 181 NDE-Núcleo Docente Estruturante............................................................................................................ 181 Referências Bibliográficas ................................................................................................................................... 184 Anexos ........................................................................................................................................................................... 185 Currículos dos professores ............................................................................................................................ 185 Normas e procedimentos do curso............................................................................................................ 185 Atas e resolução de criação do NDE, Empresa Jr., etc. ..................................................................... 185 Relatórios técnicos das ações ....................................................................................................................... 186 Pesquisa .............................................................................................................................................................. 186 Ensino .................................................................................................................................................................. 186 Extensão ............................................................................................................................................................. 186 Relatório consolidado dos Sistemas Avaliativos ................................................................................ 186 Docentes ............................................................................................................................................................. 186 Discentes ............................................................................................................................................................ 186 Curso .................................................................................................................................................................... 186 5 APRESENTAÇÃO Hoje, não restam mais dúvidas de que a educação é o pilar mestre do desenvolvimento e do progresso. Há exemplos listados pela ONU (Organização das Nações Unidas) de países que investiram em educação e no empreendedorismo obtendo resultados positivos na erradicação de mazelas e na distribuição renda. Tanto que, em meados de 2011, a Organização das Nações Unidas lançou os indicadores mundiais de empreendedorismo e o desafio para as nações em desenvolvimento quantificarem e acompanharem os pequenos negócios e a educação empreendedora. Muitas são as formas de fomentar e promover o empreendedorismo, que, necessariamente, precisam vir alinhadas com ações para apoiar a sustentabilidade destes novos micros e pequenos negócios que surgirão. Uma das forças motrizes das pequenas organizações é o investimento em recursos de Tecnologia de Informação e Comunicação (TIC). Neste cenário, recursos de TIC tais como computadores, redes, sistemas computacionais, dentre outros, assumem um papel fundamental no apoio ao desenvolvimento regional, pois, desde seu surgimento, vêm transformando o modo como tratamos e manipulamos informações. Exemplo disso é o casamento da tecnologia computacional com as telecomunicações, cuja combinação propicia a disseminação do conhecimento numa escala nunca antes pensada. Este casamento, somado aos avanços tecnológicos na telefonia móvel e à redução dos custos de hardware e software, contribuiu para difundir a Internet, incluindo, no cotidiano da sociedade, as facilidades oferecidas por essa rede de comunicação. Volumes muito grandes de informações são transmitidos via Internet, em questão de segundos, para qualquer parte do mundo. Por meio desta imensa teia digital, qualquer usuário pode enviar e receber mensagens pelo correio eletrônico e se comunicar por intermédio de várias redes sociais, responder a consultas sobre temas específicos, manterse informado a respeito de novas tecnologias, debater as mais diversas questões de seu interesse como também ter acesso instantâneo a uma grande gama de serviços e informações em tempo real. Estas redes de informação e comunicação servem como meios para criar e disponibilizar esses novos espaços, possibilitando o desenvolvimento de uma inteligência coletiva e inclusiva. Segundo Castells, em seu livro a Sociedade em Rede, está emergindo uma nova estrutura social vinculada ao surgimento de um novo modo de desenvolvimento. Segundo este modo, a fonte de produtividade está na tecnologia de geração de conhecimentos, de 6 processamento e de comunicação da informação. O paradigma da tecnologia da informação é quem fornece a base material para que a rede se difunda em toda a estrutura social. Portanto, “desta integração crescente entre mentes e máquinas, mudanças substanciais estão ocorrendo na sociedade: a das categorias segundo as quais pensamos todos os processos” (Castells). Em todo processo de mudança há riscos e oportunidades. Um exemplo de risco pode ser a opressão de uma sociedade por um Estado Global, capaz de controlar tudo e todos através de suas máquinas inteligentes. Por outro lado, uma sociedade livre, consciente, e bem informada, tem a oportunidade de construir um nível de vida mais agradável, com mais tempo para o lazer, em que recursos tecnológicos inovadores, autônomos e funcionais atendam às necessidades básicas da população. Nesse cenário, o ensino de computação assume um papel de grande importância social, pois é nesta formação em que são promovidos oportunidades e espaços de reflexão sobre como alcançar os benefícios e as vantagens proporcionados pela criação e aplicação das TIC. Cabe às universidades o papel de formar profissionais de nível superior que estarão aptos a atuar neste contexto e a promover inclusão social e cidadania por meio da inclusão digital. Em seus cem anos de existência, a Universidade Federal Rural do Rio de Janeiro (UFRRJ) tem se mostrado consciente de seu papel social, científico e tecnológico e, consequentemente, sensível aos problemas e apelos oriundos dos grupos sociais com os quais interage. Alinhada ao plano nacional de expansão das universidades federais, a UFRRJ inaugurou em 2010 as instalações definitivas de seu Instituto Multidisciplinar (IM) em Nova Iguaçu, um dos mais importantes municípios da baixada fluminense. Nova Iguaçu, segundo dados do IBGE, é o maior município da baixada fluminense em extensão territorial (representa 11,1% da área total metropolitana) e o segundo em número de habitantes no estado do Rio de Janeiro. O censo 2010 1 aponta uma população, de um pouco mais de 767 mil pessoas. É um município com grande potencial devido à característica jovem de seus habitantes, com idade média de 28 anos, ou seja, em plena idade produtiva. Assim, há uma oportunidade concreta para experiências educacionais preparando estes jovens para empregar, de forma empreendedora, a computação e as tecnologias de 1Estes dados estatísticos podem ser encontrados no site da prefeitura do município de Nova Iguaçu http://www.novaiguacu.rj.gov.br/dados.php como também http://www.ibge.gov.br/cidadesat/painel/painel.php?codmun=330350# 7 no site do IBGE informação e comunicação, de ponta, potencializando ainda mais o desenvolvimento regional. O Curso de Bacharelado em Ciência da Computação (BCC)da Universidade Federal Rural do Rio de Janeiro foi criado no IM/UFRRJ com a finalidade de atender à demanda mencionada acima. O BCC orienta-se, fundamentalmente, por uma moderna filosofia de trabalho que envolve permanente atualização de seus conteúdos, de forma a se manter constantemente sintonizado tanto com as reais tendências de desenvolvimento científico em computação quanto com as necessidades do mercado de trabalho em informática. Também promove, em suas práticas pedagógicas, a mobilização das competências referentes ao comportamento empreendedor, à criatividade e ao espírito inovador. Buscase, no curso, o fortalecimento das relações profissionais sociorresponsáveis e éticas como também a construção de uma visão moderna da computação como atividade fim. Mantém seu corpo social, envolvendo técnicos e docentes, praticando o compromisso sério da educação superior pública de qualidade, trabalhando de forma alinhada e indissociada com a tríade ensino-pesquisa-extensão, onde a pesquisa é a força motriz do ensino e seus resultados alavancam, promovem e mantém a extensão. PERFIL DO CURSO E JUSTIFICATIVA PARA A OFERTA Na atual sociedade da informação e do conhecimento empresas e profissionais assumem papel de relevância. Ambos precisam ser capazes de agir baseados na percepção e na relação de fatos globais. Neste contexto, destes profissionais exige-se um conjunto de habilidades, tais como: flexibilidade, adaptabilidade e criatividade e, destas organizações, a necessidade de valorização do capital intelectual ativo, nem sempre materializado de maneira concreta, mas que envolve o conhecimento sobre como realizar processos e tomar boas decisões nos diversos níveis corporativos. Neste cenário espera-se que o ensino de Computação forme profissionais que, além de uma boa base técnico-científica, possuam a capacidade de refletir, analisar, discernir e influir sobre as mais diversas questões do mundo moderno, em particular aquelas relacionadas com as implicações da tecnologia computacional na sociedade. A formulação de modelos que explicitem, incorporem e processem conhecimento também é uma característica desejável ao profissional da Computação nos dias atuais. 8 A Portaria INEP nº 179, de 24 de agosto de 2005, no componente específico da área de Computação, definiu que: “[...] os cursos de bacharelado em Ciência da Computação têm a Computação como atividade fim e visam à formação de recursos humanos para o desenvolvimento científico e tecnológico da Computação com necessidade de conhecimento profundo de aspectos teóricos da área de Computação, como: Álgebra e Matemática Discreta, Computabilidade, Complexidade de Algoritmos, Linguagens Formais e Autômatos, Compiladores e Arquitetura de Computadores. Os egressos desses cursos devem ser empreendedores e estar situados no estado da arte da Ciência e da Tecnologia da Computação, sendo aptos à construção de software para novos sistemas computacionais (software básico). Esses egressos devem ter capacidade de continuar suas atividades na pesquisa, promovendo o desenvolvimento científico, ou aplicando os conhecimentos científicos, promovendo o desenvolvimento tecnológico na área de Computação. Devem possuir visão sistêmica e integral da área de Computação; dominar os fundamentos científicos e tecnológicos relacionados à área de Computação; saber modelar e especificar soluções computacionais para diversos tipos de problemas; ter capacidade para iniciar, projetar, desenvolver, implementar, validar e gerenciar qualquer projeto de software; ser apto a projetar e desenvolver sistemas que integrem hardware e software; possuir capacidade para aplicar seus conhecimentos de forma independente e inovadora, acompanhando a evolução do setor e contribuindo na busca de soluções nas diferentes áreas aplicadas; ser empreendedor e ter capacidade de alavancar a geração oportunidades de negócio na área; ser capaz de participar de atividades de pesquisa acadêmica, contribuindo para a geração de conhecimento na área; conhecer e respeitar os princípios éticos da área de Computação e ter uma visão humanística crítica e consistente sobre o impacto de sua atuação profissional na sociedade.” (INEP / MEC) Em consonância com as diretrizes curriculares, o Curso de Bacharelado em Ciência da Computação da Universidade Federal Rural do Rio de Janeiro visa a formação de recursos humanos para o desenvolvimento científico e tecnológico da Computação. 9 Assim sendo, as práticas pedagógicas de aprendizagem adotadas no BCC procuram refletir o estado da arte da ciência e da tecnologia da computação, de tal forma a envolver tanto atividades de pesquisa científica quanto atividades de aplicação de conhecimentos na formulação de soluções computacionais para diferentes demandas. Assim, o presente Projeto Pedagógico do curso de Ciência da Computação se justifica na medida em que evidencia a preocupação de seu corpo social – professores e técnicos tanto com o caráter de formação do cidadão, crítico e criativo, quanto com o caráter profissional, ou seja, sua inserção no mercado produtivo, procurando atingir, simultaneamente, qualidade formal (conteúdo necessário) e política (cidadania) no ensino ministrado. Coloca em permanente estado de mobilização a competência técnica do corpo docente, seu compromisso político de formação de novas gerações e a possibilidade de realização ampla de sua dimensão humana. Conforme mencionado na seção anterior, a oferta de um curso de Ciência da Computação na baixada fluminense, especificamente em Nova Iguaçu, também se justifica pelo fato de, segundo dados do IBGE, ser o maior município em extensão territorial desta região e ser o segundo em número de habitantes do estado do Rio de Janeiro. É um município com grande potencial devido à característica jovem de seus habitantes, com idade média de 28 anos, ou seja, em plena idade produtiva. Assim, há uma oportunidade concreta para experiências educacionais preparando estes jovens para empregar a computação com atividade fim e utilizar as tecnologias de informação e comunicação, de ponta, como atividade meio, potencializando o desenvolvimento das organizações e setores produtivos da região. PRINCÍPIOS NORTEADORES E COMPETÊNCIAS MOBILIZADAS PRINCÍPIOS NORTEADORES DA FORMAÇÃO Os princípios norteadores da ação educacional no Curso de Bacharelado em Ciência da Computação seguem a concepção estabelecida pela Universidade Federal Rural do Rio de Janeiro e encontram-se alinhados com as Diretrizes Curriculares do Ministério da Educação para Cursos da Área de Computação e Informática. São eles: A formação de cidadãos críticos, transformadores e éticos em suas ações pessoais e profissionais. 10 A liberdade para aprender, ensinar, pesquisar e valorizar o saber, a cultura e a arte. O pluralismo de idéias. Articulação entre a educação, o trabalho e as práticas sociais. Percepção da formação de nível superior como um processo contínuo, autônomo e permanente. Fundamentação da formação profissional na competência teórico-prática, adaptável às novas e emergentes demandas provocadas pelas rápidas transformações da sociedade, do mercado de trabalho e das condições de exercício profissional. O desenvolvimento de pesquisa aplicada e trabalhos acadêmicos voltados de forma prioritária, mas não exclusiva, à prestação de serviços à comunidade. COMPETÊNCIAS MOBILIZADAS Para ser capaz de exercer as funções previstas neste projeto pedagógico, o egresso do curso de Ciência da Computação da UFRRJ terá como ênfase o desenvolvimento das competências globais organizadas e listadas a seguir: 1. Competências referentes ao comprometimento com os valores éticos e democráticos: Compreender e refletir sobre princípios referentes ao coletivo, à cidadania e à preservação ambiental. Orientar as suas escolhas por valores éticos e democráticos. Reconhecer e respeitar a diversidade, em seus aspectos sociais, culturais e físicos. Zelar pela dignidade profissional e pela qualidade do trabalho que está sob sua responsabilidade. Manifestar postura proativa e colaborativa. Compreender a importância de valorizar e de respeitar o usuário de sistemas computacionais. Analisar situações e relações interpessoais no contexto corporativo com o distanciamento profissional necessário à sua avaliação e compreensão. 2. Competências referentes à gerência do próprio desenvolvimento profissional: 11 Utilizar as diferentes fontes e veículos de informação, adotando uma atitude de disponibilidade e flexibilidade para mudanças, prática da leitura e empenho no uso da escrita como instrumento de desenvolvimento profissional. Utilizar-se dos conhecimentos presentes na literatura técnica, das áreas de computação e suas interseções, para se manter atualizado. Elaborar e desenvolver projetos pessoais de estudo e trabalho, empenhando- se para produzir coletivamente. Utilizar o conhecimento sobre a organização, gestão, financiamento, legislação e as políticas referentes ao trabalho em computação para uma inserção profissional crítica. Desenvolver o espírito empreendedor promovendo mudanças positivas, de comportamento e atitude, no contexto em que atua. Buscar conhecimentos que garantam uma formação adequada e de qualidade para o exercício profissional, a investigação, a pesquisa e o desenvolvimento na área de computação e para o aperfeiçoamento permanente, de forma autônoma e em cursos de pós-graduação e atividades de extensão. 3. Competências referentes ao domínio do conhecimento de computação: Reconhecer, identificar e resolver problemas, aplicando técnicas de modelagem, projetando e construindo soluções computacionalmente novas, viáveis e criativas para problemas de vários domínios do mundo real. Assimilar, selecionar e aplicar, de forma autônoma, novas tecnologias para as soluções de problemas computacionais. Construir e definir conceitos da computação utilizando linguagens adequadas à formulação dos mesmos. Desenvolver, selecionar e validar produtos e serviços de computação e tecnologias educacionais, de acordo com as demandas, de maneira inovadora, contextualizada e significativa, dos indivíduos, das organizações, e das instituições, públicas e privadas. Projetar e executar planos de integração de sistemas e ambientes, definindo configurações de software e de equipamentos; especificando processos de instalação, de uso, de manutenção e de vistoria em equipamentos e programas. 12 Empregar conhecimentos de aspectos relacionados à evolução da área de computação de forma a poder compreender a situação presente e projetar o futuro. Possuir visão ampla, completa e sistematizada da área de computação. Compreender e aplicar os fundamentos científicos e tecnológicos relacionados à área de Computação. Avaliar sistemas que combinem tecnologias de integração de hardware e software. Aplicar, de modo independente e inovador, os conceitos adquiridos, em consonância com a evolução da área. Empreender e alavancar a geração de oportunidades de negócio na área de computação. 4. Competências Comportamentais: Valorização do pluralismo de ideias. Atitude de paciência e serenidade para lidar com as dificuldades dos clientes e usuários de recursos computacionais. Capacidade de liderança. Capacidade de interagir para trabalhar em equipe. Clareza e franqueza na colocação de seus próprios sentimentos e vontades. Capacidade de ouvir os outros. Disposição de enfrentar desafios. Capacidade de aperfeiçoar a criatividade. Capacidade de aceitar as críticas de forma construtiva, transformando-as em aprendizado. Valorização da postura dinâmica. OBJETIVOS GERAL O curso de Bacharelado em Ciência da Computação da UFRRJ tem como objetivo geral: 13 Formar recursos humanos para o desenvolvimento científico e tecnológico da Computação. Os egressos devem estar situados no estado da arte da ciência e da tecnologia em Computação, de tal forma que possam atuar, de maneira diferenciada, transformadora, competente, sociorresponsável e inclusiva, tanto em atividades de pesquisa, quanto no mercado de trabalho, desenvolvendo soluções computacionais inovadoras e de qualidade. ESPECÍFICO Para alcançar o objetivo proposto para BCC, serão enfatizados os aspectos da ciência em si, com destaques para os conceitos que embasam e sustentam as tecnologias, priorizando, desta maneira, o desenvolvimento: 1. do raciocínio abstrato e lógico-matemático, do pensamento analítico e analógico como também da capacidade de síntese; 2. da capacidade de resolver problemas complexos, modelando-os matematicamente e construindo soluções computacionalmente viáveis; 3. da capacidade de assimilar, e aplicar com familiaridade, novas tecnologias para as soluções computacionais; 4. da capacidade de definir conceitos fundamentais e avançados da computação utilizando linguagem computacional adequada; 5. da capacidade de resolver eficientemente problemas em ambientes computacionais. Ainda buscando concretizar o objetivo geral do curso, foram eleitos os seguintes objetivos específicos alinhados às demandas atuais do mercado de trabalho e da pesquisa como também às tendências e aos desafios, da área da computação, apontados pela SBC: 1. capacitar o aluno para o projeto e a construção de sistemas de computação que integrem desenvolvimento de software, banco de dados, tecnologia de hardware, sistemas operacionais e redes de computadores; 2. proporcionar espaços para a discussão de valores humanísticos, sociais, éticos, culturais e ambientais, incentivando o desenvolvimento do espírito crítico; 3. estimular a capacidade de comunicação e liderança para trabalho em equipe multidisciplinar constituída, por exemplo, por usuários e especialistas em desenvolvimento de software, banco de dados, redes de computadores e em outras áreas da computação; 4. desenvolver capacidade autônoma de atualização constante, aplicando novas tecnologias e identificando, com criatividade e independência, saídas alternativas para problemas concretos ligado à obsolescência da computação 14 PERFIL DO EGRESSO PERFIL PROFISSIONAL O perfil profissional do egresso Bacharelado em Ciência da Computação foi construído de maneira alinhada com as competências e os objetivos definidos neste projeto pedagógico. No entanto, ao planejar as componentes curriculares e a metodologia de aprendizagem do curso procurou-se atender também as definições estabelecidas nas Diretrizes Curriculares do Ministério da Educação e ao currículo mínimo de referência da Sociedade Brasileira de Computação, por isso, é possível afirmar que este profissional, ao concluir o curso de Ciência da Computação da UFRRJ, poderá medir seu desempenho se submetendo a avaliações como o POSCOMP e Exame Nacional de Desempenho dos Estudantes (ENADE). Este último, obrigatório para todos os alunos ingressantes e concluintes do curso, conforme portarias normativas expedidas pelo Ministério da Educação no período da avaliação. Assim, o Bacharel em Computação, egresso da UFRRJ, poderá listar em seu currículo profissional: 1. Visão sistêmica e integral da área de Computação, de maneira a ter uma visão holística e interdisciplinar frente à construção do conhecimento; 2. Embasamento teórico-prático sólido, estando apto a realizar, de forma consistente, coerente e profissional, adaptações frente às contínuas evoluções da área da Computação; 3. Aptidão para conceber e implementar de modelos computacionais voltados à solução de problemas reais, de natureza comercial, administrativa, industrial ou científica; 4. Competência para identificar, modelar e resolver problemas de natureza algorítmica com destreza em qualquer domínio do conhecimento. 5. Capacidade para desenvolver, implementar, validar e gerenciar projetos de software; 6. Capacidade para aplicar seus conhecimentos de forma independente e inovadora, contribuindo na busca de soluções, tanto na área da Computação, quanto nas suas diferentes áreas de aplicação; 7. Aptidão para atuar de maneira empreendedora quer seja alavancando setores de tecnologia em corporações quer seja alavancando novas oportunidades de negócio como proprietário de pequenos empreendimentos ligados à área da computação; 15 8. Aptidão para participar de atividades de pesquisa, contribuindo para a geração de conhecimento na área; 9. Competência para autogestão da sua aprendizagem e educação continuada; 10. Capacidade para trabalhar em equipe e habilidade no tratamento interpessoal; 11. Visão humanística crítica e consistente sobre o impacto de sua atuação profissional na sociedade e no meio ambiente; 12. Apto para desenvolver de atividades de pesquisa em centros de P&D, nas corporações, ou em ambiente acadêmico, contribuindo para a geração de conhecimento na área de computação. ATRIBUIÇÕES DO EGRESSO NO MERCADO DE TRABALHO Ainda em consonância com as competências a serem mobilizadas pelos alunos, com objetivos do curso estabelecidos neste projeto pedagógico e com as diretrizes curriculares do Ministério da Educação para cursos que tem a computação como atividade fim, o Bacharelado em Ciência da Computação foi concebido para formar profissionais aptos a atuar em várias áreas tanto em organizações públicas ou privadas, do setor de comércio, indústria e serviços como no meio acadêmico. Entre as atividades que o egresso deve ser capaz de desenvolver estão: 1. Pesquisa científica aplicada na academia ou em centros de P&D que contribua para o desenvolvimento científico e tecnológico na área da Computação ou mesmo em outras áreas cujas atividades necessitem de recursos computacionais; 2. Gerência, desenvolvimento (análise, projeto, programação e testes), manutenção e produção de software de caráter comercial, administrativo ou científico em qualquer ramo de atividade; 3. Prestação de consultoria, assessoria ou auditoria em ambientes computacionais; 4. Consultoria e execução de processos que visem a integração de recursos tecnológicos (Hardware e Software) a partir da formulação de modelos e arquiteturas adequadas às necessidades de cada contexto; 5. Administração de Bancos de Dados atuando em atividades tais como a especificação, projeto, implementação e manutenção de bases de dados; 6. Desenvolvimento de projetos de inclusão digital e social a serem desenvolvidos junto aos setores de Responsabilidade Social das organizações, em escolas, organizações de classe, ONGs, entre outros. 7. Ensino em cursos técnicos e instituições que possuam atividades que empreguem a computação como meio. 16 FORMAS DE ACESSO AO CURSO E OFERTA REGIME ACADÊMICO O Curso de Bacharelado em Ciência da Computação da UFRRJ está estruturado em componentes curriculares, ofertadas semestralmente, obedecendo ao regime seriado por sistema de crédito. CARGA HORÁRIA TOTAL O Curso tem 3.380 horas obrigatórias, que obedecem a estrutura curricular abaixo: Com intuito de complementar a formação geral do aluno, este poderá acrescentar à carga horária obrigatória até 120 horas em componentes curriculares optativas. PRAZOS MÍNIMO E MÁXIMO DE INTEGRALIZAÇÃO O Curso está previsto para 9 períodos, sendo 2 de 390 horas e outros 7de 360 horas, divididos em 15 semanas. O prazo mínimo de integralização, seguindo o Artigo 2º do Parecer CNE/CES nº 8/2007, é de 4 anos. O prazo máximo para integralização do Curso é de 9 anos. LOCAIS, TURNOS DE OFERTA E NÚMERO DE VAGAS Campus Endereço Quantidade de Vagas/Turno Tarde Nova Iguaçu Instituto Multidisciplinar - UFRRJ Av Governador Roberto Silveira , S/N, Centro. Nova Iguaçu/RJ 17 30 DIMENSÃO DAS TURMAS A dimensão das turmas para as componentes curriculares ofertadas em salas de aula varia entre 30 a 60 alunos. Para as componentes curriculares que são alocadas em laboratório, a oferta de vagas é limitada pela capacidade do laboratório, obedecendo à regra de 2 alunos por computador. Para a componente curricular referente Trabalho de Conclusão de Curso, a dimensão da turma é limitada a 2 alunos ou grupos por hora-aula. INTEGRAÇÃO TEORIA E PRÁTICA NAS OFERTAS DE TURMAS Na integração teoria e prática e dentro do pressuposto do “aprender fazendo”, são oferecidos aos alunos momentos de aprendizagem apoiados em experiências de laboratórios, simulações e metodologias de estudo. Estas ofertas são denominada atividade acadêmicas(AA). O foco destas ofertas é sedimentação ou concretização dos conceitos, estimulada com o envolvimento do discente nas situações práticas, tais como os estudos de caso, a solução de problemas, entre outras. Assim, o aprendizado teórico ocorrerá mediado pela prática. Na matriz curricular, visão gráfica, esta atividades acadêmicas estão identificadas pela cor lilás. As atividades acadêmicas complementares podem ser classificadas como uma outra modalidade de integração teórico-prática. Nessas atividades são estimulados: o resgate de conhecimentos prévios ou os que estão sendo adquiridos em disciplinas ofertadas pelo BCC, a pesquisa, a autocognição, mobilização de competências técnicas e comportamentais como também são apresentadas situações em que o aluno faz reflexões sobre o contexto cultural brasileiro e a educação das relações etino-raciais, fazendo uma análise das implicações de ambas na atuação profissional do bacharel em computação. Eis alguns exemplos de atividades acadêmicas complementares que se enquadram nesta modalidade de aprendizagem: As semanas acadêmicas do curso, seminários de iniciação científica, cursos de extensão promovidos pelos discentes, professores ou pelo BCC, palestras, congressos, entre outros. Então, visando atingir os objetivos propostos para a formação do profissional de Ciência da Computação da UFRRJ, e considerando os diversos métodos de se encorajar o desenvolvimento intelectual, de forma a aprimorar o raciocínio lógico, analógico analítico e sintético do aluno e o exercício de sua capacidade de expressão, as ofertas das turmas do curso estão organizadas em: 18 1. Aulas expositivas, com uso de recursos audiovisuais (vídeos, Datashow); 2. Aulas práticas em laboratórios, presentes em todas as disciplinas técnicas; 3. Seminários e palestras, com convidados especiais, atuantes no mercado, visitas técnicas, entre outras formas didáticas de abordagem do conteúdo do curso. A dimensão prática nas ofertas das componentes curriculares do curso também emprega atividades, tais como: 4. Trabalhos em grupos, visando desenvolver a habilidade de trabalho em equipe; 5. Trabalhos individuais para permitir uma investigação detalhada sobre um tema específico, através de pesquisa bibliográfica e/ou aplicada; 6. Participação em projetos acadêmicos de aplicabilidade real, com vistas à sua preparação para o mercado; 7. Participação em projetos de iniciação científica; 8. Participação em programas de certificação profissional em informática, formando especialistas em integração e desenvolvimento de sistemas e tecnologias, incluindo Internet e Intranet. As disciplinas de Trabalho Final de Curso I e II têm como finalidade principal garantir que o aluno esteja apto a ingressar na comunidade acadêmica e no mercado de trabalho, através do desenvolvimento, sob supervisão profissional, de projetos de sistemas reais, ou de projetos de pesquisa, com a realização de monografias de iniciação científica. O bacharelado em Ciência da Computação também implementa as componentes curriculares: AA (Atividade Acadêmica) e AC(Atividade Acadêmica Complementar). Segundo orientações do DEG (Decanato de Ensino de Graduação), elaboradas em 2009, as atividades acadêmicas, na UFRRJ, são atividade que: “Caracterizam-se por envolver atividades discentes extra-classe sob orientação docente, tendo carga-horária, objetivos e avaliação definidos no PPC do curso. Têm como objetivo geral a articulação teoria/prática na construção de conhecimentos, vivências e experiências em áreas específicas relevantes para a formação profissional e cidadã do estudante. A Atividade Acadêmica enfatiza processos/práticas do discente tendo em vista construção da autonomia intelectual e o aprofundamento de estudos. Enquadram-se como Atividades Acadêmicas: 1. Estágios Curriculares (não obrigatórios de apoio à prática profissional. Os estágios supervisionados, obrigatórios, podem isentar horas de Atividades Complementares). 19 2. 3. 4. 5. 6. Monografias. Trabalhos de Final de Curso. Laboratórios de Pesquisa. Núcleos de Ensino, Pesquisa e Extensão. Dentre outras. Uma Atividade Acadêmica pode ser vinculada a uma disciplina específica sob a forma de co-requisito. Têm o potencial de permitir a articulação entre disciplinas de períodos letivos do curso resultando em organização de espaços acadêmicos de aplicação e produção de conhecimentos que poderão ser formalizados em artigos para revistas, congressos, patentes, softwares, maquetes, projetos de pesquisa, seminários, dentre outros. ” Ao propor esta modalidade de oferta de Atividades Acadêmicas é necessário definir: a)AA <<código>> e Nome da Atividade; b)Carga Horária; c)Objetivos; d)Metodologia de Avaliação; e)Orientação para o desenvolvimento e a condução das práticas do aluno. O conceito de AA aplicado no curso está totalmente alinhado com o que foi registrado pelo DEG/UFRRJ. Na matriz curricular do curso de Ciência da Computação, estas atividades, também denominadas de atividades de apoio, tem a função de consolidar e/ou sedimentar os conteúdos adquiridos no processo de ensino-aprendizagem das matérias podendo, inclusive, ser responsáveis pela formação de outros novos conceitos/conteúdos. São atividades executadas em laboratório, programada pelo corpo docente e aderentes com as linhas de pesquisa das áreas de interesse do curso. Ou seja, nestas atividades os professores planejam e orientam pesquisas e estudos que em alguns casos geram publicações no formato de pôsteres, artigos, resenhas técnicas, livros cujo conteúdo são lições que apoiam a replicação das práticas das AAs. É nesta componente curricular em que todos os alunos vivenciam a tríade indissociável do ensino-pesquisa-extensão: ensino dando suporte à pesquisa, a pesquisa gerando produtos que são aplicados à extensão. Os discentes são matriculados nessas atividades com intuito de ampliar ou complementar a sua formação acadêmico-profissional por meio do compromisso com o ensino e a pesquisa aplicados. No planejamento das AA em cada semestre, professores, em atuação conjunta com os alunos, levam em consideração os anseios destes como também seus projetos pessoais da futura atuação profissional. Por outro lado, as Atividades Acadêmicas Complementares, de livre escolha discente, compreendem todas as atividades de natureza acadêmica, científica, artística e cultural que buscam a integração entre a graduação, a pesquisa e a extensão e que não estão compreendidas nas práticas pedagógicas previstas no desenvolvimento regular das 20 disciplinas obrigatórias ou optativas do currículo pleno dos cursos. Segundo a deliberação do Conselho de Ensino, Pesquisa e Extensão (CEPE) de número CEPE 078/2007 todos os cursos de graduação da UFRRJ deverão implementar 200 horas em atividades acadêmicas complementares. As Atividades Complementares são escolhidas pelo discente e realizadas ao longo do curso em qualquer época. A sua validação é realizada por Comissão indicada pelo Colegiado do Curso mediante certificação apresentada pelo discente. Ainda como forma de estimular a integração da tríade ensino-pesquisa-extensão, os docentes são incentivados a elaborar um plano de disciplina (vide modelo em anexo) para cada oferta das componente curricular da matriz do curso. Neste plano de disciplina devem estar explicitadas quais contribuições da referida oferta nas dimensões de ensino, pesquisa e extensão. FORMAS DE ACESSO As formas de acesso como também os critérios que regulam a entrada de alunos nos cursos de graduação do Instituto Multidisciplinar da UFRRJ, estão dispostos nos editais, publicados semestralmente. Nestes, a Decania de Graduação da Universidade Federal Rural do Rio de Janeiro (UFRRJ), considerando o disposto na Portaria Normativa MEC nº 02, de 26 de janeiro de 2010, torna público que a seleção de candidatos para provimento de vagas, nos cursos ofertados pela universidade. A seleção de candidatos utilizará o Sistema de Seleção Unificada (SiSU), observando o seguinte: A seleção dos candidatos às vagas disponibilizadas por meio do SiSU será efetuada exclusivamente com base nos resultados obtidos pelos estudantes no Exame Nacional do Ensino Médio - Enem. Os candidatos interessados em concorrer às vagas disponibilizadas pela UFRRJ deverão verificar as informações constantes do Termo de Participação, desta instituição, no SiSU. O referido Termo de Participação está disponibilizado na página eletrônica da Universidade Rural do Rio de Janeiro como também está impresso e fixado em local de grande circulação dos estudantes. O termo conterá as seguintes informações: i. Os cursos e turnos participantes, bem como o respectivo número de vagas a serem ofertadas por meio do SiSU; 21 ii. As políticas de ações afirmativas eventualmente adotadas, bem como a definição de sua abrangência no âmbito da instituição; iii. Os pesos e as notas mínimas eventualmente estabelecidos pela instituição para cada uma das provas do Enem, em cada curso e turno; iv. Os documentos necessários para a realização da matrícula dos candidatos selecionados; v. Os documentos requeridos no ato da matrícula, necessários à comprovação do preenchimento dos requisitos exigidos nas políticas de ações afirmativas adotadas pela instituição. COMPOSIÇÃO DA MATRIZ CURRICULAR DO CURSO LINHAS CURRICULARES No último Currículo de Referência publicado no ano de 2005 (CR2005) pela Sociedade Brasileira de Computação (SBC) foram propostas diretivas para os cursos que tem a computação como atividade-fim. Essas diretivas sugerem a quantidade de créditos e o nível abordado em tais conteúdos, por exemplo, em profundidade ou amplitude. De acordo com o perfil do egresso e a especialização do curso, estas definições são expostas nas estratégias de aprendizagem deste projeto pedagógico do curso. Na primeira coluna, da tabela a seguir, destacam-se os núcleos de disciplinas sugeridos pela SBC no CR2005 e na segunda coluna apresenta-se a quantidade de disciplinas de cada núcleo oferecidas pela UFRRJ. Na terceira coluna consta a quantidade de créditos oferecidos no Curso. Cabe destacar que todas as disciplinas possuem quatro créditos, com exceção de Computação I e II, com seis créditos cada e Trabalho Final de Curso I e II, que possui dois créditos cada. Na quarta e última coluna, apresenta-se a quantidade de créditos sugerida pela SBC no CR2005. 22 Tabela 01:Núcleos sugeridos pela SBC no Currículo de Referência de 2005 Núcleos Disciplinas Créditos UFRRJ Sugestão da SBC Fundamentos da computação 15 60 60 Tecnologia da computação 12 48 60 Matemática 7 28 30 Física 1 4 5 a 10 Contexto Social e profissional 3 12 30 Orientação para Trabalho Final de Curso 2 4 - Tópicos Especiais 5 20 - Disciplinas optativas 2 8 - TOTAL 47 186 185 a 190 De acordo com o Currículo de Referência, CR2005, nos cursos que possuem computação como atividade-fim deve haver ênfase nas disciplinas do Núcleo de Fundamentos de Computação. Por esse motivo, todo o conteúdo do núcleo é trabalhado em disciplinas obrigatórias. Os demais núcleos possuem maior flexibilidade, pois implementam componentes curriculares na forma de disciplinas optativas, que poderão ser escolhidas pelo aluno, de acordo com a linha de seu interesse. NÚCLEO DE FUNDAMENTOS DA COMPUTAÇÃO Tendo como base, novamente, o Currículo de Referência, CR2005, este núcleo compreende as matérias que envolvem a parte científica da computação, o hardware e software básico como também as técnicas fundamentais para solucionar problemas com o emprego dos algoritmos e programação de computadores, necessários à formação sólida dos egressos. Observamos que estas disciplinas são obrigatórias a todos os alunos do curso. Esse núcleo compreende um total de 60 créditos, totalizando 900 horas-aula. Relação de Disciplinas: Computação I, Computação II, Computação III, Introdução à Ciência da Computação, Circuitos Digitais, Grafos e Algoritmos, Análise de Algoritmos, 23 Linguagens Formais e Autômatos, Estruturas de Dados I, Estruturas de Dados II, Linguagens de Programação, Arquitetura de Computadores I e Arquitetura de Computadores II, Sistemas Operacionais e Fundamentos de Sistemas. NÚCLEO DE TECNOLOGIA DA COMPUTAÇÃO Compreende o núcleo de matérias que representam um conjunto de conhecimentos que tornam o aluno apto à elaboração de soluções de problemas nos diversos domínios de aplicação, tais como otimização, processos de desenvolvimento de sistemas, técnicas de estimativa de tempo e custo em desenvolvimento de software, aplicação da computação inteligente na construção de sistemas, entre outros. Esse núcleo compreende um total de 48 créditos, totalizando 720 horas-aula. Relação de Disciplinas: Compiladores, Métodos Numérico, Álgebra Linear Computacional, Otimização Linear, Computação Gráfica, Engenharia de Software, Banco de Dados, Inteligência Artificial, Redes de Computadores e Sistemas Distribuídos, Modelagem de Sistemas, Projeto de Sistemas. NÚCLEO DE MATEMÁTICA O núcleo de matemática engloba as disciplinas que propiciam ao aluno o exercício da capacidade de abstração, o aprendizado de modelagem das soluções para problemas do mundo real e o desenvolvimento do raciocínio lógico, constituindo, assim, a base para várias matérias da área de Computação. Esse núcleo compreende um total de 28 créditos, totalizando 420 horas-aula. Relação de Disciplinas: Geometria Analítica, Cálculo I, Cálculo II, Cálculo Aplicado, Álgebra Linear, Probabilidade e Estatística para Computação e Matemática Discreta para a Computação. NÚCLEO DE CIÊNCIAS BÁSICAS Este núcleo trabalha o conhecimento das ciências básicas que apoiam a computação. Também trata do desenvolvimento da habilidade para aplicação do método científico. Exemplo de matéria lecionada neste núcleo é o da física, apresentando conteúdos, tais como: eletromagnetismo, termodinâmica, entre outros. Esse núcleo compreende um total de 4 créditos, totalizando 60 horas-aula. Relação de Disciplinas: Física para Ciência da Computação. 24 NÚCLEO DE CONTEXTO SOCIAL E PROFISSIONAL Tendo como base o Currículo de Referência, CR2005, este núcleo compreende as disciplinas que permitem aos alunos, futuros egressos deste curso, cuja visão é mais técnica, refletirem sobre sua atuação, construírem uma visão crítica de mundo, formularem uma compreensão sociocultural e organizacional das empresas em geral. Neste núcleo também são trabalhadas as disciplinas que permitem aos alunos construírem, em consonância com os princípios da ética e do profissionalismo uma visão, humanística e inclusiva das questões sociais e profissionais em computação. Esse núcleo compreende um total de 12 créditos, totalizando 180 horas-aula. Relação de Disciplinas: Empreendedorismo, Computador e Sociedade, Gerência de Projetos. NÚCLEO DOS TÓPICOS ESPECIAIS Assim como as optativas, as cinco disciplinas que compõem o núcleo dos Tópicos Especiais têm função de trabalhar a flexibilização da matriz curricular. Busca-se, também, neste núcleo de disciplinas, promover a integração ensino-pesquisa-extensão como forma de enriquecer e desenvolver os conteúdos disciplinares, estimulando o aperfeiçoamento de docentes e discentes e o desenvolvimento técnico-científico e social da comunidade local. O conhecimento mais especializado, que aprofunda a qualificação do corpo docente e discente nas grandes áreas da computação, precisa, necessariamente, ser revisado a cada semestre, inserindo novidades de pesquisa e tecnologia da computação aplicada. Por isso, o núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Relação de Disciplinas: Top. Esp. em Ciência da Computação, Top. Esp. em Banco de Dados e Engenharia de Software, Top. Esp. em Programação de Computadores, Top. Esp. em Otimização, Top. Esp. em Inteligência Artificial. NÚCLEO DAS DISCIPLINAS OPTATIVAS O instrumento de avaliação de cursos de graduação publicado em maio de 2011 pelo Instituto Nacional de Estudos e Pesquisas Educacionais Anísio Teixeira (Inep) trás, na dimensão 1 da organização didático-pedagógica, o indicador “estrutura curricular” que avalia as estratégias de flexibilidade e interdisciplinaridade como também as estratégias de articulação da teoria com a prática dos conteúdos trabalhados ao longo do curso. Em 25 consonância com as práticas da UFRRJ, a matriz curricular do curso de Ciência da Computação contempla tais aspectos. Assim como nos demais cursos da UFRRJ, a flexibilização da matriz curricular foi implantada na forma de disciplinas optativas que aprofundam a qualificação do aluno nas grandes áreas da computação. Para cursar as disciplinas optativas, o aluno deverá ter cursado as disciplinas obrigatórias cujos conteúdos fornecerão a base e darão o suporte para a compreensão de uma abordagem mais avançada daquela área. Porém, há casos em que o pré-requisito é a maturidade, ou seja, é aconselhável que o aluno tenha assistido um conjunto disciplina de forma que ganhe maturidade acadêmica, tornando-se apto a realizar os desafios propostos pelas disciplinas optativas e discutir o conteúdo. Em 2006, a Sociedade Brasileira da Computação (SBC) lançou um relatório publicando os grandes desafios da pesquisa em computação no Brasil para os próximos 10 anos (2006 a 2016), conforme segue: a)gestão da Informação em grandes volumes de dados multimídia distribuídos; b)modelagem computacional de sistemas complexos artificiais, naturais e socioculturais e da interação homem-natureza; c)impactos para a área da computação da transição do silício para novas tecnologias; d)acesso participativo e universal do cidadão brasileiro ao conhecimento, e e)desenvolvimento tecnológico de qualidade: Sistemas disponíveis, corretos, seguros, escaláveis, persistentes e ubíquos. As optativas estão alinhadas com estes grandes desafios, propiciando o dueto ensino x pesquisa, favorecendo a produção científica dos discentes e docentes nestas áreas. Tais desafios são abordados em diversas disciplinas optativas oferecidas pelo curso de Ciência da Computação. Para detalhes de disciplinas e ementas que compõem os conjuntos de optativas, vide a seção deste documento nomeada “Disciplinas Optativas Segundo Eixos Temáticos”. ATIVIDADES ACADÊMICAS São atividades extracurriculares que consolidam e/ou estabilizam os conceitos adquiridos no processo de ensino-aprendizagem podendo, inclusive, ser responsáveis pela formação de conceitos. São atividades executadas em laboratório, programada pelo corpo docente e alinhada com as linhas de pesquisa das áreas de interesse do curso. Os discentes são matriculados nessas atividades com intuito de ampliar ou complementar sua formação acadêmico-profissional por meio do compromisso com a pesquisa aplicada, levando em consideração seus projetos pessoais da futura atuação profissional. TRABALHO FINAL DE CURSO 26 O Trabalho Final de Curso está organizado em componente curricular ofertada no oitavo semestre como Orientação para Trabalho Final de Curso I e no nono como Orientação para Trabalho Final de Curso II, onde o aluno, por meio de atividades de pesquisa, produz uma monografia e um projeto de software focando algum aspecto da área de computação que não tenha sido esgotado na grade curricular. Visa, também, despertar o interesse científico e fomentar o espírito necessário para atuar na área acadêmica e em centros de P&D das organizações. ATIVIDADES ACADÊMICAS COMPLEMENTAR As Atividades Acadêmicas Complementares (AC) compreendem todas as atividades de natureza acadêmica, científica, artística e cultural que buscam a integração entre a graduação, a pesquisa e a extensão e que não estão compreendidas nas práticas pedagógicas previstas no desenvolvimento regular das disciplinas obrigatórias ou optativas do currículo pleno dos cursos. Esta modalidade atividade viabiliza percursos de aprendizagem variados e possibilita ao aluno autonomia na ampliação de seu universo cultural e enriquecimento de seu processo formativo, tendo como base a indissociabilidade entre Ensino, Pesquisa e Extensão. As AC são realizadas ao longo de todo o curso, perfazendo um total de 200. A inserção desta prática na matriz curricular do BCC visa atender a Resolução CNE/CP Nº2, de 19/02/2002 e a Deliberação CEPE Nº78, de 05/10/2007. A primeira regulação é externa, do Conselho Nacional de Educação, determinando a obrigatoriedade destas atividades no curso. A segunda é interna, oriunda do Conselho de Ensino, Pesquisa e Extensão da UFRRJ, trata da regulamentação de como esta prática deve ser executada nos cursos de graduação do Universidade Federal Rural do Rio de Janeiro. A validação das horas de AC é realizada por Comissão indicada pelo Colegiado do Curso mediante certificação apresentada pelo discente. Para maiores esclarecimentos a respeito desta componente curricular da matriz do curso a deliberação CEPE Nº78/2007 deve ser consultada. MATRIZ CURRICULAR O currículo do Curso de Bacharelado em Ciência da Computação é concebido como um processo em permanente atualização. Periodicamente são realizadas reuniões setoriais com o corpo docente do Curso, componente do NDE(Núcleo Docente Estruturante) e do Colegiado do Curso de Ciência da Computação, a fim de acompanhar o desenvolvimento 27 dos alunos, identificar problemas de aprendizagem relevantes e elaborar aperfeiçoamentos nas práticas didático-pedagógicas. O surgimento de novas tecnologias também é discutido nas reuniões, podendo gerar atualizações de conteúdos e de referências das componentes curriculares relacionadas. Também são discutidos, semestralmente, os temas que serão expostos nas componentes curriculares, de ementa vari|vel, “Tópicos Especiais” e “Corredores de Optativas”, bem como os projetos a serem desenvolvidos nas componentes curriculares “Orientação para Trabalho Final de Curso I e II”. Além disso, são sugeridas componentes curriculares optativas, que fazem parte do currículo mínimo e, por isso, são requisitos para a conclusão do Curso, podendo ser cursadas por interesse e livre escolha dos alunos. São fornecidas no formato de corredores de conhecimento, conforme exposto acima, e complementam o conhecimento dos discentes em áreas afins. Outro aspecto do currículo do Curso de Ciência da Computação é oferecer oportunidades para que os corpos docente e discente, de forma cooperativa, construam o perfil profissiográfico estabelecido neste projeto pedagógico. O ponto central do Curso está nos conceitos de máquina e algoritmo. Então, um egresso de um Curso de Ciência da Computação deve ser capaz de modelar problemas do mundo real e construir algoritmos para resolvê-los e implementar as soluções. O desenvolvimento e integração das atividades de ensino, pesquisa e extensão, na matriz curricular, devem proporcionar experiências e possibilidades de uso de novas tecnologias na solução de problemas presentes e futuros, individuais e coletivos, de forma crítica e criativa. É importante enfatizar que o projeto da matriz curricular foi desenvolvido conforme a orientação das Diretrizes Curriculares do Ministério da Educação e da Sociedade Brasileira de Computação (SBC). 28 ORGANIZAÇÃO CURRICULAR EM TABELA Primeiro Período Código Disciplinas Cr. C.H. IM885 Geometria Analítica 4 60 IM429 Álgebra Linear 4 60 IM406 Computação I 4 60 TM403 Matemática Discreta para 4 60 Computação TM404 Introdução a Ciência da 4 60 Computação AA783 Laboratório de Computação I 2 30 AA784 Métodos Universitários 2 30 Subtotal 24 360 Código IM403 IM478 IM407 IM899 IM853 Subtotal Disciplinas Cálculo I Álgebra Linear Computacional Computação II Fundamentos de Sistemas Circuitos Digitais Segundo Período Cr. C.H. 4 60 4 60 Laboratório de Computação II Laboratório de Circuitos Digitais Disciplinas Cálculo II IM859 Probabilidade e Estatística para Ciência da Computação Estrutura de Dados I IM854 TM405 AA787 AA788 Subtotal Linguagens Formais e Autômatos Arquitetura de Computadores I 60 60 60 2 2 30 30 24 360 Terceiro Período Cr. C.H. 4 60 Código IM404 IM468 4 4 4 Laboratório de Estrutura de Dados I Laboratório de Arquitetura de Computadores I Pré-requisitos - Pré-requisitos Álgebra Linear (IM 429) Computação I (IM 406) Introdução à Ciência da Computação (TM 404) - 4 60 4 60 4 60 4 60 2 30 Pré-requisitos Cálculo I (IM 403) Cálculo I (IM 403) Computação II (IM 407) Matemática Discreta para Ciência da Computação (TM 403) e Computação I (IM 406) Circuitos Digitais (IM 853) - 2 30 - 24 360 29 Código TM406 TM407 IM860 TM408 TM409 AA789 AB781 Subtotal Disciplinas Cálculo Aplicado Física para Ciência Computação Estrutura de Dados II Grafos e Algoritmos Arquitetura Computadores II Quarto Período Cr. C.H. 4 60 da 4 60 de Laboratório de Estrutura de Dados II Laboratório de Grafos e Algoritmos Pré-requisitos Cálculo II (IM 404) Cálculo II (IM 404) 4 4 4 60 60 60 2 30 Estrutura de Dados I (IM 468) Estrutura de Dados I (IM 468) Arquitetura de Computadores I(TM405) - 2 30 - 24 360 Quinto Período Cr. C.H. 4 60 Código TM410 Disciplinas Métodos Numéricos IM864 IM870 Linguagens de Programação Inteligência Artificial 4 4 60 60 IM471 IM868 Análise de Algoritmos Sistemas Operacionais 4 4 60 60 AB782 Laboratório de Inteligência Artificial Laboratório de Sistemas Operacionais 2 30 Pré-requisitos Cálculo II (IM 404) e Computação I (IM 406) Computação II (IM 407) Matemática Discreta para Ciência da Computação(TM 403) e Computação II (IM 407) Estrutura de Dados I (IM 468) Arquitetura de Computadores I(TM405) - 2 30 - 24 360 AB783 Subtotal Sexto Período Cr. C.H. 4 60 Código IM861 Disciplinas Compiladores IM473 TM412 Banco de Dados Modelagem de Sistemas 4 4 60 60 IM476 Redes de Computadores 4 60 TM411 Top. Esp. em Ciência da Computação 4 60 2 30 - 2 30 - 24 360 AB784 AB785 Subtotal Laboratório de Banco de Dados e Modelagem Laboratório de Redes de Computadores 30 Pré-requisitos Linguagens Formais e Autômatos (IM 854) Estrutura de Dados II (IM 860) Fundamentos de Sistemas (IM 899) e Computação II (IM 407) Arquitetura de Computadores I(TM405) Sétimo Período Cr. C.H. 4 60 Código TM413 Disciplinas Projeto de Sistemas IM873 TM414 Sistemas Distribuídos Computação III 4 4 60 60 TM415 Top. Esp. em Banco de Dados e Eng.de Software Top. Esp. IA 4 60 4 2 60 30 2 24 30 360 TM416 AA786 AA787 Subtotal Laboratório de Projeto de Sistemas Laboratório de Computação III Oitavo Período Cr. C.H. 4 60 4 60 Código IM866 TM417 Disciplinas Engenharia de Software Otimização Linear IM472 Computação Gráfica 4 60 TM418 Top. Esp. Em Programação de Computadores Optativa I TRABALHO DE GRADUAÇÃO I 4 60 4 2 60 30 22 330 AA781 Subtotal Nono Período Disciplinas Cr. C.H. Empreendedorismo em 4 60 Informática IM871 Computadores e Sociedade 4 60 TM419 Gerência de Projetos 4 60 TM420 Top. Esp. Em Otimização 4 60 Optativa II 4 60 AA782 TRABALHO DE GRADUAÇÃO 2 30 II Subtotal 22 330 Código IM877 31 Pré-requisitos Fundamentos de Sistemas (IM 899) e Computação II (IM 407) Sistemas Operacionais (IM868) Fundamentos de Sistemas (IM 899) e Computação II (IM 407) - Pré-requisitos Modelagem de Sistemas(TM 412) Álgebra Linear (IM 429) e Estrutura de Dados I (IM 468) Álgebra Linear (IM 429) e Estrutura de Dados I (IM 468) - Pré-requisitos Modelagem de Sistemas(TM 412) - ORGANIZAÇÃO CURRICULAR EM FLUXOGRAMA – VISÃO GRÁFICA 32 ORGANIZAÇÃO CURRICULAR– LEGENDA 33 EMENTAS DAS DISCIPLINAS OBRIGATÓRIAS Primeiro Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM885 CRÉDITOS: 4 (4T-0P) GEOMETRIA ANALÍTICA Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os conceitos de matrizes e determinantes; b. Aplicar os conceitos de matriz e determinantes na resolução de sistemas lineares c. Manipular as operações de vetores; d. Compreender sistemas de coordenadas do plano e suas mudanças; e. Conhecer as condições de paralelismo, perpendicularismo, projeções de vetores; f. Compreender o produto interno e todas as suas aplicações; g. Reconhecer e manipular as equações de uma reta no plano; h. Reconhecer e manipular as equações das cônicas. EMENTA: Matrizes, determinantes e sistemas. Vetores. Retas e planos. Curvas. Superfícies. CONTEÚDO PROGRÁMATICO: UNIDADE I – MATRIZES E SISTEMAS 1. Operações com matrizes 2. Determinantes 3. Escalonamento de matrizes, característica e inversão de matrizes por escalonamento. 4. Resolução de sistemas lineares por escalonamento, análise de sistemas lineares UNIDADE II – VETORES 1. Definição 2. Operação com vetores e propriedades. 34 3. Dependência e independência linear, bases. 4. Produto escalar, ortogonalidade, ângulos, comprimento e projeções. 5. Orientação de base, produtos vetorial e misto, aplicações no cálculo de áreas e volumes. UNIDADE III – RETAS E PLANOS 1. Sistema de coordenadas cartesiano. 2. Equações e parametrizações de retas e planos. 3. Posições relativas entre retas, entre reta e plano, e entre planos. 4. Distância entre pontos, entre duas retas, entre reta e plano, e entre dois planos. 5. Ângulos entre retas, entre reta e plano e entre dois planos. 6. Translações, rotações, reflexões. UNIDADE IV – CURVAS. 1. Elipse, parábola e hipérbole. 2. Estudo de cônicas. 3. Introdução a curvas no espaço. UNIDADE V – SUPERFÍCIES. 1. Conceito de superfícies parametrizadas e implícitas: plano, esfera, gráfico de função do plano na reta. 2. Geração de superfícies: superfícies cilíndricas, cones sobre curvas e superfícies de revolução. 3. Quádricas na forma reduzida. 4. Classificações. BIBLIOGRAFIA BÁSICA: 1. Boulos, P. e Camargo I. Introdução à Geometria Analítica no Espaço, Makron Books, São Paulo, 1997 2. Boulos, P. e Camargo I. Geometria Analítica, um tratamento vetorial. Makron Books, São Paulo, 1986. 3. Winterle, P. Vetores e Geometria Analítica, Makron Books, São Paulo, 2000. BIBLIOGRAFIA COMPLEMENTAR: 1.Iezzi, G. et al.Fundamentos da Matemática Elementar, volume 7,Editora Atual, 2004. 2.Lima, E.L. Coordenadas no plano. 5ª edição. SBM, Rio de janeiro, 2002. 3. Steinbruch, A.; Winterle, P. Geometria analítica, São Paulo: Makron Books. 35 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM429 CRÉDITOS: 4 (4T-0P) ÁLGEBRA LINEAR Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender e resolver sistemas de equações lineares, através do escalonamento; b. Entender a linguagem básica dos espaços vetoriais, reconhecendo sua geometria; c. Aplicar as transformações lineares, associando-as às matrizes. EMENTA: Sistemas de equações lineares. Espaços vetoriais. Transformações lineares CONTEÚDO PROGRÁMATICO: UNIDADE I – MATRIZES E SISTEMAS LINEARES 1.Matrizes. Tipos Especiais de Matrizes, a matriz transposta, a inversa de uma Matriz 2.Operações Elementares. Equivalência de matrizes. 3.Forma Escalonada. 4.Sistemas de Equações Lineares. 5.Inversão de matrizes por escalonamento. UNIDADE II – ESPAÇOS VETORIAIS 1.Espaços Vetoriais: definição e exemplos 2.Subespaços. Subespaços gerados, interseções de subespaços. 3.Combinação linear. Independência linear. 4.Bases e dimensão 5.Coordenadas de um vetor. 6.Soma direta. UNIDADE III – TRANSFORMAÇÕES LINEARES 1.Transformações lineares. 2.Núcleo e Imagem de uma transformação linear. O Teorema do Núcleo e da Imagem. 3.A Álgebra L(V,W) das transformações lineares: adição, produto por escalar, composição. 36 4.Operadores lineares. Transformações injetoras e sobrejetoras. A transformação linear inversa 5.Isomorfismo de espaços vetoriais. 6.Representação de transformações lineares por matrizes. BIBLIOGRAFIA BÁSICA: 1. Rodriguez, P.C.P. Álgebra Linear Básica, 2a edição. EDUR, Rio de Janeiro, 2004 2. Callioli, c. A. Et ali. Álgebra Linear e Aplicações. Rio de Janeiro, editora Atual, 1990. 4. Boldrini, j. L. et al. Álgebra Linear. São Paulo, editora Harbra, 1986. BIBLIOGRAFIA COMPLEMENTAR: 1. Hoffman, K. ; Kunze, R. Linear Álgebra. Prentice Hall, 1971. 2. Lima,E. Álgebra Linear. Coleção Matemática Universitária. IMPA,1996. 37 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM406 CRÉDITOS: 4 (4T-0P) COMPUTAÇÃO I Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender quais são os componentes básicos de um microcomputador; b. Compreender o desenvolvimento histórico dos computadores; c. Conhecer os conceitos básicos de linguagens de programação e sistemas operacionais; d. Compreender a linguagem de programação estruturada e a manipulação de arquivos. EMENTA: Introdução. Análise e processamento. Linguagem de programação estruturada (Ling. C). CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO. 1. História da Computação. 2. Componentes Básicos de um Microcomputador. 3. Hardware. UNIDADE II – SOFTWARE. 1. Linguagem de Programação 2. Aplicativos e Utilitários. UNIDADE III – SISTEMAS OPERACIONAIS. 1. Análise e Processamento. 2. Sistemas Numéricos. 3. Algoritmos. 4. Diagrama de Fluxo de Dados. UNIDADE IV – LINGUAGEM DE PROGRAMAÇÃO ESTRUTURADA 1. Estrutura de Desvio 2. Estrutura de Repetição 38 3. Vetores e Matrizes. 4. Funções. 5. Ponteiros. 6. Recursividade. 7. Manipulação de Arquivos. BIBLIOGRAFIA BÁSICA: 1.Kernighan, B.W. E Ritchie, D.M. "C - A Linguagem de Programação Padrão ANSI". Ed. Campus, Rio de Janeiro, 1989. 2.Deitel, H.M. E Deitel P.J. "Como Programar em C", 2a edição. LTC, Rio de Janeiro, 1994. 3.Farrer, H. et al. "Algoritmos Estruturados", 3a edição, LTC, Rio de Janeiro,1999. BIBLIOGRAFIA COMPLEMENTAR: 1.Schildt, H. "C Completo e Total", Makron Books, 1997. 39 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) MATEMÁTICA DISCRETA PARA COMPUTAÇÃO Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Solucionar problemas de matemática discreta que necessitem de raciocínio abstrato (lógicomatemático); b. Conhecer as várias possibilidades de aplicação da Matemática Discreta na área da Computação; c. Compreender o conceitos da Lógica e da Matemática Discreta d. Aplicar a Lógica e Matemática Discreta em soluções de problemas da área da Computação. EMENTA: Conjuntos, Álgebra de Conjuntos e Cardinalidade. Relações. Relações de Equivalência e Ordem. Funções Parciais e Totais. Indução e Recursão. Lógica de Proposições. Lógica de Predicados. Sistemas Dedutivos e Técnicas de Demonstração. CONTEÚDO PROGRÁMATICO: UNIDADE I – NOÇÕES DE TEORIA DE CONJUNTOS, RELAÇÕES E FUNÇÕES 1.Conjuntos: definição, pertinência, igualdade, inclusão, operações elementares (união, interseção, diferença e produto cartesiano, conjunto das partes). 2.Partição de conjuntos 3.Conjuntos numéricos (naturais, inteiros, racionais, reais e complexos) 4.Cardinalidade de conjuntos 5.Relações: conceito, propriedades, composição e tipos de relações (equivalência, ordem total e parcial) 6.Funções: definição, domínio, imagem, gráficos, composição, funções totais e parciais, classificação (injetora, sobrejetora, bijetora) 7.Funções inversas UNIDADE II – POLINÔMIOS COM COEFICIENTES REAIS 1.Definição. Igualdade. Operações com polinômios: adição, multiplicação, multiplicação por escalar 2.Grau de um polinômio. Divisão de polinômios. Algoritmo da divisão 40 3.Raízes de polinômios: simples e múltiplas. 4.Polinômios redutíveis e irredutíveis. 5.Fatoração de polinômios. 6.Método das frações parciais. UNIDADE III – LÓGICA DE PROPOSIÇÕES 1.Proposições, conectivos lógicos, tabelas verdade e fórmulas 2.Sintaxe e semântica 3.Tautologias e contradições 4.Equivalência 5.Argumentação e regras de dedução UNIDADE IV – LÓGICA DE PREDICADOS 1.Predicados, quantificadores e fórmulas 2.Sintaxe e semântica 3.Tradução e validade 4.Negação 5.Argumentação e regras de dedução UNIDADE V – TÉCNICAS DE DEMONSTRAÇÃO 1.Conjecturas e teoremas 2.Demonstrações e contraexemplos 3.Demonstração por exaustão 4.Demonstração direta 5.Demonstração por contraposição 6.Demonstração por redução ao absurdo 7.Demonstração por indução finita: primeiro e segundo princípios BIBLIOGRAFIA BÁSICA: 1.Menezes, P. B. Matemática Discreta para Computação e Informática. Porto Alegre: Sagra Luzzatto, 2010. 2.Gersting, J. Fundamentos Matemáticos para a Ciência da Computação – Um Tratamento Moderno da Matemática Discreta. 5ª. Ed. Rio de Janeiro: LTC, 2004. 3.Iezzi, G., Murakami, C. Fundamentos de Matemática Elementar. Vol. 1, Ed. Atual, 1983. BIBLIOGRAFIA COMPLEMENTAR: 41 1.Souza, J. N. Lógica para Ciência da Computação – Fundamentos de Linguagem, Semântica e Sistemas de Dedução. Rio de Janeiro: Ed. Campus, 2002. 2.Figueiredo, L. M.; Silva, M. O.; Cunha, M. O. Matemática Discreta, v. I, 3ª. ed. Rio de Janeiro: Fundação CECIERJ, 2007. 3.Scheinerman, E. R. Matemática Discreta: Uma Introdução. São Paulo: Thomson Learning Edições, 2006. 4.Morgado, A. C. O., Cesar, B. Matemática Básica. Rio de Janeiro: Elsevier, 2008. 5.Milies, C. P., Coelho, S. P. Números: Uma Introdução à Matemática. São Paulo: EDUSP, 2001. 6.Hefez, A. Curso de Álgebra. 2ª. ed. Rio de Janeiro: IMPA, 1997. 7.Domingues, H., Iezzi, G. Álgebra Moderna. 2ª. ed. São Paulo: Editora Atual, 1982. 42 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) INTRODUÇÃO À CIÊNCIA DA COMPUTAÇÃO Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer o projeto do curso de Ciências da Computação b. Relatar a história da informática através das suas personalidades. c. Conhecer, distinguir e conceituar os componentes básico de um computador e suas funções. d. Definir e classificar os principais conceitos correlatos a sistemas operacionais e. Apresentar, explicar e manipular os dados e suas representações na computação f. Compreender a representação da informação, manipular os sistemas de numeração e a aritmética nestes sistemas g. Distinguir e conceituar as grandes áreas da computação –Engenharia de Software, Redes e Comunicação de Dados, etc. h. Compreender os rumos e novas aplicações da computação e informática como também as áreas em que pode atuar no mercado de trabalho. EMENTA: Introdução. Conversão de Base e Representação da Informação. Hardware e Software Básico. As Grandes Áreas da Computação. Futuro da Computação e o Mercado de Trabalho. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO 1.O curso de Ciência da Computação 2.Linha do tempo da computação construída a partir das principais datas e personalidades 3.Representação de classe da área da computação no Brasil UNIDADE II – HARDWARE E SOFTWARE BÁSICO 1.O Computador: partes componentes e seus periféricos 2.Sistemas Operacionais 2.1. Prática dos principais comandos do Linux 43 UNIDADE III – SISTEMAS NUMÉRICOS 1.Conversão de base e aritmética computacional 2.Tipos de Dados: Caractere, lógico e numérico 3.Representação em ponto fixo e flutuante 4.Linguagens e símbolos UNIDADE IV – INTRODUÇÃO À ÁLGEBRA BOOLEANA 1. Funções lógicas e formas de representação 2.Conectivos Lógicos e Tabelas Verdade 3.Lemas e Postulados 4.Minimização usando Álgebra Booleana 5.Equações na forma canônica – Soma de produtos e Produto das Somas UNIDADE V – GRANDES ÁREAS DA COMPUTAÇÃO 1.Sistemas de Informação 2. Sistemas para Internet 3.Engenharia de Software 4.Banco de Dados 5.Redes de Computadores 6.Sistemas Distribuídos 7.Otimização 8. Inteligência Artificial 9. Computação Gráfica UNIDADE VI – FUTURO DA COMPUTAÇÃO X MERCADO DE TRABALHO 1.Tendências em computação 2.O Mercado de trabalho da computação BIBLIOGRAFIA BÁSICA: 1.Fedeli, R. D. et al. Introdução à Ciência da computação. 2ª.Edição. São Paulo: Cengage, 2010 2.Tocci, R.J. at all. Sistemas Digitais: Princípios e Aplicações. 11ª.Edição. São Paulo: Pearson, 2010 3.Guimarães, A. M., Lages, N. A. C. Introdução à ciência da computação. Rio de Janeiro: LTC, 2001. BIBLIOGRAFIA COMPLEMENTAR: 1.Brookshear, J. G. Ciência da Computação: Uma visão abrangente. 5ª.ed. Porto Alegre: Bookman, 2000. 2.Meyer, M, Baber, R. Pfaffenberger, B. Nosso Futuro e o computador. 3. ed. Porto Alegre: Bookman, 2000. 44 3.Monteiro, M. A. Introdução à Organização de Computadores. Rio de Janeiro: LTC, 2002. 45 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE COMPUTAÇÃO I Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Mobilizar o raciocínio lógico e abstrato; b. Aplicar os conhecimentos vistos na disciplina de Computação I em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em Computação I. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Kernighan, B.W. E Ritchie, D.M. "C - A Linguagem de Programação Padrão ANSI". Ed. Campus, Rio de Janeiro, 1989. 2.Deitel, H.M. E Deitel P.J. "Como Programar em C", 2a edição. LTC, Rio de Janeiro, 1994. 3.Farrer, H. et al. "Algoritmos Estruturados", 3a edição, LTC, Rio de Janeiro,1999. BIBLIOGRAFIA COMPLEMENTAR: 1.Schildt, H. "C Completo e Total", Makron Books, 1997. 46 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) MÉTODOS UNIVERSITÁRIOS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar metodologia científica para estudo e pesquisa no ensino superior; b. Identificar erros e acertos nos métodos de estudos empregados. EMENTA: Atividades acadêmicas de apoio para os ingressantes no ensino superior, que deverá orientá-los com relação a sua nova realidade na universidade. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Deluiz, N. Formação do Trabalhador: Produtividade & cidadania. Rio de Janeiro: Editora Shape, 1995. 2.Demo, Pedro. Pesquisa e Construção de Conhecimento: Metodologia científica no caminho de Habermas. Rio de Janeiro: Tempo Brasileiro, 2002. 3.Martins, Gilberto de Andrade. Estudo de Caso: estratégia de pesquisa. São Paulo: Atlas, 2006. 4.Maturana, Humbert. Cognição, Ciência e Vida Cotidiana. Belo Horizonte: Ed. UFMG, 2001. BIBLIOGRAFIA COMPLEMENTAR: 1.Castells, Manuel . A Galáxia da Internet: reflexões sobre a internet, os negócios e a sociedade. Rio de Janeiro: Jorge Zahar Editor Ltda., 2003. 2. De Aquino, Carlo Tasso Eira. Como Aprender: andragogia e as habilidades de aprendizagem. São Paulo: Pearson Prentice Hall, 2007. 3.Delors, J. Educação: Um tesouro a descobrir. São Paulo: Editora Cortez, 2001. 4. Freire, Paulo. Educação como prática da liberdade. 24 ed. Rio de Janeiro: Editora Paz e Terra, 2000. 47 Segundo Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 403 CRÉDITOS: 4 (4T-0P) CÁLCULO I Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conceituar função, limite e derivada; b. Compreender as técnicas do Cálculo Diferencial para funções reais de uma variável real; c. Calcular limites e derivadas a partir das técnicas do cálculo diferencial. EMENTA: Cálculo Diferencial de Funções de Uma Variável Real. CONTEÚDO PROGRAMÁTICO: UNIDADE I – FUNÇÕES DE UMA VARIÁVEL 1. Conceito de função e métodos da sua definição 2. Funções pares e ímpares, funções periódicas 3. Funções crescentes e decrescentes 4. Pontos de mínimo e máximo 5. Funções compostas 6. Funções elementares UNIDADE II – LIMITES 1. Conceitos do limite e continuidade 2. Propriedades elementares dos limites e funções contínuas 3. Continuidade de funções elementares 4. Continuidade de função composta 48 UNIDADE III – DERIVADAS 1. Conceito de derivada, interpretação geométrica e física 2. Derivada de uma função. 3. Regras de derivação. 4. Derivadas de ordem superior UNIDADE IV – TEOREMAS SOBRE FUNÇÕES DERIVÁVEIS 1.Teorema de Rolle 2.Teorema do valor médio 3.Regra de L’Hôpital UNIDADE V – APLICAÇÕES DA DERIVADA 1.Máximos e Mínimos. 2.Esboço de gráficos de funções. BIBLIOGRAFIA BÁSICA: 1. Leithold, L. O Cálculo com Geometria Analítica - volume 1. São Paulo, editora Harbra, 1994. 2.Stewart,J. Cálculo – volume I. 4a Edição. Editora Pioneira,2002. 3.Thomas, G. B. Cálculo - Volume I. São Paulo, Ed. Pearson Education do Brasil, 2002 BIBLIOGRAFIA COMPLEMENTAR: 1.Guidorizzi,L.H. Um curso de Cálculo – volume I. Rio de Janeiro, LTC,2001. 2.Guidorizzi,L.H. Um curso de Cálculo – volume II. Rio de Janeiro, LTC,2001. 3.Edwards, C.H.; Penney, D.E. Cálculo com geometria analítica. Rio de Janeiro: LTC, 1999. 3 v. 4.Morettin, P.A.; Bussab, W.O.; Hazzan, S. Cálculo: funções de uma e de várias variáveis. São Paulo: Editora Saraiva, 2003. 5.Munem, M.A.; Foulis, D.J. Cálculo. Rio de Janeiro: LTC, 1982. 2 v. 6.Simmons, G.F. Cálculo com geometria analítica. São Paulo: Editora Makron Books, 1987. 2 v. 7.Swokowski, E.W. Cálculo com geometria analítica. 2. ed. São Paulo: Editora Makron Books, 1994. 2 v. 49 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM407 CRÉDITOS: 4 (4T-0P) COMPUTAÇÃO II Cada Crédito corresponde a 15h/ aula (Pré-requisito: Computação I) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os conceitos de objeto, classe, sobrecarga de operadores, composição e herança; b. Aplicar os conceitos da orientação a objetos (objeto, classe, sobrecarga de operadores, composição e herança) na solução de problemas computacionais do mundo real; c. Compreender e aplicar o conceito de ponteiros d. Entender funções virtuais e amigas e aplicá-las na solução de problemas; e. Manipular arquivos. EMENTA: Classes. Sobrecarga de operadores. Composição e Herança. Ponteiros. Funções Virtuais e Amigas. Manipulação de Arquivos. CONTEÚDO PROGRAMÁTICO: UNIDADE I – CLASSES. 1. Dados e Funções Membro 2. Membros Privados e Públicos - Encapsulamento. 3. Alocação Dinâmica. 4. Construtores. 5. Destruidores. UNIDADE II – SOBRECARGA DE OPERADORES 1. Operadores unários e binários. 2. Conversões entre Tipos e Classes. 3. O ponteiro this UNIDADE III – COMPOSIÇÃO E HERANÇA. 1. Derivação de classes 2. Herança pública e privada 50 3. Hierarquia de classes 4. Herança múltipla UNIDADE IV – PONTEIROS. 1. Variáveis. 2. Strings. 3. Matrizes. 4. Listas encadeadas, pilhas, filas e árvores. UNIDADE V – FUNÇÕES VIRTUAIS E AMIGAS. 1. Funções virtuais e polimorfismo. 2. Classes Abstratas. 3. Funções e Classes Amigas. 4. Sobrecarga de Operadores. UNIDADE VI – MANIPULAÇÃO DE ARQUIVOS. 1. Objetos Stream. 2. Modo Texto e Modo Binário. 3. Leitura e Gravação de e para a Memória. BIBLIOGRAFIA BÁSICA: 1.DEITEL, H.M. E DEITEL P.J. "C++ - Como Programar", 3a edição. Bookman, Porto Alegre, 2002. 2.Hubbard, J.R. "Programação em C++", 23 edição, Bookman, Porto Alegre, 2003. 3.Horstmann, C. "Conceitos de Computação com o Essencial de C++", Bookman, 2005. BIBLIOGRAFIA COMPLEMENTAR: 1. Stroustrup, B. "Linguagem de Programação C++", Bookman, 2001. 2.Kernighan, B.W. E Ritchie, D.M. "C - A Linguagem de Programação Padrão ANSI". Ed. Campus, Rio de Janeiro, 1989. 3.Deitel, H.M. E Deitel P.J. "Como Programar em C", 2a edição. LTC, Rio de Janeiro, 1994. 4.Farrer, H. et al. "Algoritmos Estruturados", 3a edição, LTC, Rio de Janeiro,1999. 51 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM853 CRÉDITOS: 4 (4T-0P) CIRCUITOS DIGITAIS Cada Crédito corresponde a 15h/ aula (Pré-Requisito: Fundamentos da Computação) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer os conceitos fundamentais de circuitos digitais; b. Aplicar os conceitos de circuitos digitais em um sistema computacional. EMENTA: Introdução aos Circuitos Digitais. Álgebra de Boole. Blocos Lógicos Funcionais. Circuitos Aritméticos. Circuitos Sequenciais. Linguagens de descrição de hardware. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO AOS CIRCUITOS DIGITAIS 1.Linguagens e símbolos (portas lógicas / transistores) 2.Sistemas numéricos 3. Funções lógicas e formas de representação 4.Código BCD, Gray, Excesso 3 e outros UNIDADE II – ÁLGEBRA BOOLEANA 1.Conectivos Lógicos e Tabelas Verdade 2.Lemas e Postulados 3.Minimização usando Álgebra Booleana 4.Equações na forma canônica – Soma de produtos e Produto das Somas 5.Funções Incompletamente Especificadas 6.Minimização usando Mapas de Karnaugh UNIDADE III – BLOCOS LÓGICOS FUNCIONAIS 1.Implementação com lógica de dois níveis 2.Implementação com lógica multi-nível 3.Implementação com lógica programável 4.Blocos lógicos funcionais 52 4.1.Codificadores e Decodificadores 4.2.Multiplexadores e Demultiplexadores 4.3.Comparador 4.4.Gerador e verificador de paridade 4.5.Habilitação e Desabilitação de blocos funcionais UNIDADE IV – CIRCUITOS ARITMÉTICOS 1.Somadores 2.Subtratores 3.Somadores – Subtratores 4.Multiplicadores 5.Unidades multi-funcionais UNIDADE V – CIRCUITOS SEQUENCIAIS 1.Latch SR 2.Registradores sensíveis ao nível (SR, D) 3.Registradores sensíveis à borda (Flip-flop D, SR, JK e T) 4.Características temporais dos latches e flip-flops 5.Registradores de deslocamento 6.Contadores 7.Máquina de estados finitos UNIDADE VI – APLICAÇÕES DE CIRCUITOS DIGITAIS 1. Linguagens de descrição de hardware BIBLIOGRAFIA BÁSICA: 1. Wagner, F.R. ; Reis, Ribas, R.P. “Fundamentos de Circuitos Digitais”. Série Livros Did|ticos. Instituto de Informática da UFRGS. Ed Sagra Luzzatto. 2. Daghlian, J. “Lógica e Álgebra de Boole”. 4a Edição, Rio de Janeiro, Ed. Atlas, 1995. 3. Ercegovac, M; Lang, T ; Moreno, J.H. “Introdução aos Sistemas Digitais”. Ed. Bookman, 2000. BIBLIOGRAFIA COMPLEMENTAR: 1.Fregn, E; Saraiva, A. M. “Engenharia do Projeto Lógico Digital: Conceitos e Pr|tica”. Edgard Blucher, 1995. 2. Taub, H. “Circuitos Digitais e Microprocessadores” . Ed. Makron Books. 53 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) FUNDAMENTOS DE SISTEMAS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender a teoria geral dos sistemas e a abordagem sistêmica de solução de problemas; b. Conceituar sistemas de informação; c. Analisar e categorizar os diferentes tipos de requisitos; d. Aplicar processos de engenharia de requisitos na produção da documentação dos requisitos de um sistema de informação. EMENTA: Introdução. Sistemas de Informação. Requisitos. Processo de Engenharia de Requisitos. Prática de Estudo de Caso. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO 1.Teoria geral dos sistemas: origem e conceito 2.Conceito de sistema: características, tipos, leis universais dos sistemas 3.Abordagem sistêmica x visão sistêmica das organizações 4.Informação nas organizações: histórico e a importância UNIDADE II – SISTEMAS DE INFORMAÇÃO 1.Conceito, objetivos, foco e benefícios dos Sistemas de Informação nas organizações 2.Sistemas e funções organizacionais 3.Classificação dos Sistemas de Informação 4.Ciclo de vida e componentes de Sistema de Informação 5. Etapas que compõem o projeto e o desenvolvimento de Sistemas de Informação: UNIDADE III – REQUISITOS 1.Conceitos 1.1.Requisito funcional, 1.2.Requisitos não funcionais 54 1.3.Requisitos normativos, invertidos, de persistência, de interface homem-maquina, etc. 2.Regras de negócio x requisitos invertidos UNIDADE IV – PROCESSO DE ENGENHARIA DE REQUISITOS 1. Elicitação de Requisitos 1.1.Técnicas de levantamento e documentação de requisitos 2. Especificação de Requisitos 2.1.UML e Diagrama de Caso de Uso 3.Revisão e validação de requisitos UNIDADE V – PRÁTICA DE ESTUDO DE CASO 1.Estudo de caso: documentação de requisitos de um Sistema de Informação BIBLIOGRAFIA BÁSICA: 1. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 2.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 3.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. BIBLIOGRAFIA COMPLEMENTAR: 1. GROUP,B. R. Business Rules Manifesto-The Principles of Rule Independence, 2003 2. IIBA. Guia BABOK – Versão 2.0: Um guia para corpo de conhecimento em análise de negócios. São Paulo, IIBA, 2011. Disponível para leitura online em http://portoalegre.iiba.org/index.php/noticias/29-iiba-sao-paulo-lanca-guia-babok-em-portugues 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática.2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 55 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM478 CRÉDITOS: 4 (2T-2P) ÁLGEBRA LINEAR COMPUTACIONAL Cada Crédito corresponde a 15h/ aula (Pré-requisito: Álgebra Linear) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar os métodos diretos e iterativos para resolução de sistemas lineares; b. Identificar, em cada caso, o método apropriado, sua complexidade, bem como suas vantagens e dificuldades computacionais. EMENTA: Algoritmos para operações básicas entre vetores e matrizes. Normas vetoriais e matriciais. Número de condição. Análise da solução de sistemas lineares: existência e unicidade. Fatoração de matrizes, decomposição SVD e suas aplicações numéricas (incluindo resolução de problemas de quadrados mínimos). CONTEÚDO PROGRÁMATICO: UNIDADE I – MATRIZES E VETORES 1.Matrizes e vetores. Algoritmos para operações básicas entre vetores e matrizes, solução de sistemas lineares por métodos iterativos 2.Normas vetoriais e matriciais. 3.Matrizes mal-condicionadas e a resolução de sistemas lineares. 4.Número de condição. Análise da solução de sistemas lineares: 5.Existência e unicidade. UNIDADE II – APLICAÇÃO 1.Eliminação Gaussiana, Fatoração LU e implementação. 2.Fatoração de Cholesky e implementação. 3.Fatorações ortogonais (QR) e implementação. 4.Resolução de problemas de quadrados mínimos e implementação. 5.Decomposição SVD e suas aplicações numéricas (incluindo resolução de problemas de quadrados mínimos). BIBLIOGRAFIA BÁSICA: 56 1.Cunha, Maria Cristina. Métodos computacionais, 2ª edição, editora da unicamp. 2003 2."Fundamental of Matrix Computations"- David S. Watkins - John Wiley and Sons - 1991. 3."Applied Linear Algebra"- Ben Noble and James W. Daniel - Prentice Hall Inc. BIBLIOGRAFIA COMPLEMENTAR: 1.Gilbert Strang. "Linear Algebra and its Applications". Harcourt Brace Jovanovich Publishers.3a. edição. 2.G.H.Golub and C.F.van Loan, Matrix Computations, 3.ed. The Johns Hopkins University Press. 3.G.E.Forsythe;B.C.Moler. Computer Solution of Linear Algebra Systems. Prentice-Hall, 1967. 4.Roger A. Horn; Charles R. Johnson."Matrix Analysis". Cambrige University Press. 57 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE COMPUTAÇÃO II Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Mobilizar o raciocínio lógico e abstrato; b. Aplicar os conhecimentos vistos na disciplina de Computação II em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em Computação I. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Kernighan, B.W. E Ritchie, D.M. "C - A Linguagem de Programação Padrão ANSI". Ed. Campus, Rio de Janeiro, 1989. 2.Deitel, H.M. E Deitel P.J. "Como Programar em C", 2a edição. LTC, Rio de Janeiro, 1994. 3.Farrer, H. et al. "Algoritmos Estruturados", 3a edição, LTC, Rio de Janeiro,1999. BIBLIOGRAFIA COMPLEMENTAR: 1.Schildt, H. "C Completo e Total", Makron Books, 1997. 58 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE CIRCUITOS DIGITAIS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender as técnicas de Circuitos Digitais, através da solução de problemas práticos. b. Uso de linguagens de descrição de hardware. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de Circuitos Digitais. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1. Wagner, F.R. ; Reis, Ribas, R.P. “Fundamentos de Circuitos Digitais”. Série Livros Did|ticos. Instituto de Informática da UFRGS. Ed Sagra Luzzatto. 2. Daghlian, J. “Lógica e Álgebra de Boole”. 4a Edição, Rio de Janeiro, Ed. Atlas, 1995. 3. Ercegovac, M; Lang, T ; Moreno, J.H. “Introdução aos Sistemas Digitais”. Ed. Bookman, 2000. BIBLIOGRAFIA COMPLEMENTAR: 1.Fregn, E; Saraiva, A. M. “Engenharia do Projeto Lógico Digital: Conceitos e Pr|tica”. Edgard Blucher, 1995. 2. Taub, H. “Circuitos Digitais e Microprocessadores” . Ed. Makron Books. 59 Terceiro Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM404 CRÉDITOS: 4 (4T-0P) CÁLCULO II Cada Crédito corresponde a 15h/ aula (Pré-requisito: Cálculo I) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender a relação da integral definida com áreas entre curvas e com a derivada; b. Solucionar de integrais definidas pelas principais técnicas; c. Aplicar a integral na determinação de volumes de sólidos em diferentes técnicas e comprimentos de arcos; d. Compreender as noções de limite e de continuidade de funções de várias variáveis. EMENTA: Integração de Funções de Uma Variável Real. Funções Reais de Várias Variáveis. Derivação. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTEGRAÇÃO DE FUNÇÕES DE UMA VARIÁVEL REAL 1. Integração de funções 2. Integrais definidas 3. Teorema Fundamental do Cálculo. 4. Métodos de integração. 5. Integrais Impróprias. 6. Aplicações. UNIDADE II – FUNÇÕES DE VÁRIAS VARIÁVEIS 1. Funções Reais de Várias Variáveis. 2. Limites e continuidade . 60 3. Função diferenciável e condições de diferenciabilidade. 4. Derivada Direcional 5. Derivadas parciais. BIBLIOGRAFIA BÁSICA: 1.Leithold, L. O Cálculo com Geometria Analítica - volume 2. São Paulo, editora Harbra, 1994. 2.Thomas, G. B. Cálculo - Volume II. São Paulo, Ed. Pearson Education do Brasil, 2002. 3.Stewart,J. Cálculo – volume II. 4a Edição. Editora Pioneira,2002. BIBLIOGRAFIA COMPLEMENTAR: 1.Guidorizzi,L.H. Um curso de Cálculo – volume I.Rio de Janeiro, LTC,2001. 2.GUIDORIZZI,L.H. Um curso de Cálculo – volume II.Rio de Janeiro, LTC,2001. 3.Edwards, C.H.; Penney, D.E. Cálculo com geometria analítica. Rio de Janeiro: LTC, 1999. 3 v. 4.Morettin, P.A.; Bussab, W.O.; Hazzan, S. Cálculo: funções de uma e de várias variáveis. São Paulo: Editora Saraiva, 2003. 5.Munem, M.A.; Foulis, D.J. Cálculo. Rio de Janeiro: LTC, 1982. 2 v. 6.Simmons, G.F. Cálculo com geometria analítica. São Paulo: Editora Makron Books, 1987. 2 v. 7.Swokowski, E.W. Cálculo com geometria analítica. 2. ed. São Paulo: Editora Makron Books, 1994. 2 v. 61 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM859 CRÉDITOS: 4 (4T-0P) PROBABILIDADE E ESTATÍSTICA PARA CIÊNCIA DA COMPUTAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisito: Lógica e Matemática Discreta) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Reconhecer os diferentes tipos de variáveis e níveis de mensuração; b. Aplicar conceitos básicos da amostragem probabilística e não-probabilística; c. Reproduzir técnicas de descrição gráfica; d. Conhecer probabilidade, variáveis aleatórias e modelos probabilísticos. EMENTA: Conceitos Básicos de Estatística. Noções de Amostragem. Séries Estatísticas. Gráficos Estatísticos. Medidas de Tendência Central. Medidas de Posição(Separatrizes). Medidas de Variabilidade. Medidas da Forma de Uma Distribuição de Frequência. Noções de Probabilidades. Variáveis Aleatórias. Modelos Probabilísticos. CONTEÚDO PROGRAMÁTICO: UNIDADE I – CONCEITOS BÁSICOS DE ESTATÍSTICA 1. Definição de Estatística 2.Divisão da Estatística 3.Variáveis e Classificações 4.Fases do Método Estatístico. UNIDADE II – NOÇÕES DE AMOSTRAGEM 1. Conceituação de População e Amostra 2.Conceituação de Amostragem 3.Importância da Amostragem 4.Condições Básicas Adoção da Amostragem 5.Princípios Básicos da Amostragem 6.Tipos de Amostragem UNIDADE III – SÉRIES ESTATÍSTICAS 62 1. Conceito de Séries Estatísticas 2.Normas de Representação Tabular do IBGE 3.Série Temporal, 4.Série Geográfica 5.Série Especificativa 6.Série Mista 7.Distribuições de Frequências Simples e por Intervalo e Elementos Formadores UNIDADE IV – INTRODUÇÃO A TEORIA DAS PROBABILIDADES. 1. Medidas de Tendência Central, de Posição, de Variabilidade. 2. Noções de Probabilidade. 3. Variáveis Aleatórias 4. Modelos Probabilísticos 5. Valores Esperados. 6. Teoremas Limites. 7. Distribuições Amostrais 8. Estimação de Parâmetros 9. Testes de Hipóteses 10. Métodos Bayesianos BIBLIOGRAFIA BÁSICA: 1. Morettin, L. G. Estatística básica. São Paulo: Makron Books, 1999. 210p. 2. Oliveira, T. F. R. Estatística na escola (2ograu). Rio de Janeiro: Ao Livro Técnico, 1974. 77p. 3. Spiegel, M. R. Estatística. 3. ed. São Paulo: Makron Books. 1993. 643p 4. Toled O, G. L.; Ovalle, I. I. Estatística básica. São Paulo: Atlas, 1983. 459p. 5. Nazareth, H. Curso básico de estatística. São Paulo: Ática, 1996. 160p. 6. Morettin, P. A.; Bussab, W.O . Estatística básica. São Paulo: Atual, 1981. 321p BIBLIOGRAFIA COMPLEMENTAR: 1. Crespo, A. A. Estatística fácil. São Paulo: Saraiva, 1991. 224p. 2. Nick , E.; Kellnor, S. R. O. Fundamentos de estatística para ciências do comportamento. Rio de Janeiro: Renes, 1971. 312p. 3. Cunha, S. E. Iniciação à estatística. Belo Horizonte: lê, 1974. 95p. 4. Fonseca, S F.; Martins, G A. Curso de estatística. 6.ed. São Paulo: Atlas, 1996. 317p. 5. Moore, D. A Estatística básica e sua prática. Rio de Janeiro: LTC, 1995. 482p. 6. Triola, M. F. Introdução à estatística. 7.ed. Rio de Janeiro: LTC, 1999. 410p. 63 7. Vieira, S. Princípios de estatística. São Paulo: Pioneira, 1999. 144p. 8. Barbetta, P. A. Estatística aplicada às ciências sociais. 3.ed. Florianópolis: UFSC, 1999. 284p. 64 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 468 CRÉDITOS: 4 (4T-0P) ESTRUTURAS DE DADOS I Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Computação II) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Interpretar o problema e identificar a estrutura de dados adequada para este; b. Analisar a complexidade de operações de todas das estruturas de dados abordadas na ementa; c. Aplicar as estruturas de dados de forma eficiente no desenvolvimento de algoritmos. EMENTA: Complexidade de algoritmos e notação assintótica. Listas lineares, simplesmente encadeadas, duplamente encadeadas e circulares. Árvores binárias, árvores binárias de busca, balanceadas, AVL, rubro-negras, árvores B. Listas de prioridades. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO. 1. Introdução; 2. Complexidade de Algoritmos; 3. Complexidades de Pior Caso, Caso Médio e Melhor Caso; 4. Notações Assintóticas; 5. Recursividade. UNIDADE II – LISTAS 1. Listas Lineares, Busca Linear; 2. Busca Binária; 4. Pilhas e Filas; 5. Alocação Encadeada; 6. Listas Simplesmente Encadeadas; 7. Listas Duplamente Encadeadas; 8. Listas Circulares. UNIDADE III – PESQUISA E ORDENAÇÃO 65 1. Algoritmos de Ordenação e complexidade 1.1 Bolha; 1.2 Seleção; 1.3 Inserção; 1.4 Quicksort; 1.5 Mergesort; 1.6 Entre outros. UNIDADE IV - PROCESSAMENTO DE CADEIAS 1. Algoritmo de Força Bruta 2. Algoritmo de Knuth, Morris e Pratt UNIDADE VI – ÁRVORES. 1. Árvores e Árvores Binárias, algoritmos de busca; 2. Árvores Binárias de Busca; 3. Árvores Balanceadas, Árvores AVL e Algoritmos; 4. Árvores Graduadas e Árvores Rubro-Negras; 5. Listas de Prioridades e Algoritmos; 5.1. Heap e Heapsort; BIBLIOGRAFIA BÁSICA: 1. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C. Algoritmos: Teoria e Prática. 1a ed., Ed. Campus, Rio de Janeiro, 2002. 2. Szwarcfiter, J.L., Markenzon, L. Estruturas de Dados e Seus Algoritmos. 2a ed., Ed. LTC, Rio de Janeiro, 2004. BIBLIOGRAFIA COMPLEMENTAR: 1.Schildt, H. "C Completo e Total", Makron Books, 1997. 2. P. Veloso, C. Santos, P. Azeredo, A. Furtado. Estruturas de Dados. Ed. Campus, 1984. 3. Nívio Ziviani. Projeto de Algoritmos com implementações em Pascal e C. 5ª.edição. Ed. Pioneira, 2001 4 Ângelo de Moura Guimarães. Algoritmos e Estruturas de Dados. LTC Editor, 1994. 5.Routo Terada. Desenvolvimento de Algoritmos e Estruturas de Dados. Ed. Makron Books, 1991. 66 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM854 CRÉDITOS: 4 (4T-0P) LINGUAGENS FORMAIS E AUTÔMATOS Cada Crédito corresponde a 15h/ aula (Pré-requisito: Lógica e Matemática Discreta para Computação e Computação II) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer os principais conceitos e resultados na área das Linguagens Formais e Autômatos; b. Praticar exercícios para o desenvolvimento da capacidade de raciocínio abstrato; c. Compreender a importância do formalismo na elaboração de soluções computacionais. EMENTA: Sistemas de Estados Finitos, Conceitos sobre Linguagens e Gramáticas. Hierarquia de Classes de Linguagens. Autômatos Finitos Determinísticos e Não Determinísticos. Linguagens Regulares. Linguagens Livres de Contexto. Máquina de Turing. Linguagens Sensíveis ao Contexto. Linguagens Recursivas. Tese de Church. Linguagens Recursivamente Enumeráveis. Problemas de Decisão. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO 1.Sistemas de Estados Finitos 2.Histórico 3.Aplicações UNIDADE II – CONCEITOS BÁSICOS 1.Alfabetos e símbolos 2.Cadeias (comprimento, concatenação, prefixos, sufixos, subcadeias, cadeia reversa) 3.Linguagem formal 4.Operações sobre linguagens: união, interseção, concatenação, estrela de Kleene, quociente 5.Sintaxe e semântica 6.Gramática de Chomsky 7.Derivações 8.Linguagem gerada 9.Equivalência entre gramáticas 10.Hierarquia de Chomsky 67 UNIDADE III – LINGUAGENS REGULARES 1.Autômatos finitos determinísticos 2.Autômatos finitos não determinísticos 3.Autômatos finitos não determinísticos com movimentos vazios 4.Linguagens aceitas e linguagens rejeitadas 5.Equivalência entre autômatos 6.Expressões regulares 7.Gramáticas Regulares 8.Propriedades (tradução de formalismos, complexidade, fechamento de operações sobre linguagens 9.regulares, cardinalidade de linguagens regulares) 10.Lema do bombeamento para linguagens regulares 11.Minimização de autômatos finitos determinísticos 12.Máquina de Mealy 13.Máquina de Moore UNIDADE IV – LINGUAGENS LIVRES DE CONTEXTO 1.Gramáticas livres de contexto 2.Bakus NaurForm (BNF) 3.Árvores de derivação 4.Ambiguidade de gramáticas 5.Simplificação de gramáticas livres de contexto 6.Forma normal de Chomsky 7.Forma normal de Greibach 8.Autômatos de pilha 9.Propriedades (tradução de formalismos, fechamento de operações sobre linguagens livres de 10.contexto, cardinalidade de linguagens livres de contexto) 11.Lema do bombeamento para linguagens livres de contexto 12.Algoritmos de reconhecimento (Early, Cocke-Younger-Kasami) UNIDADE V – MÁQUINA DE TURING 1.Computabilidade 2.Tese de Church 3.Modelo, definição e computação em máquinas de Turing 4.Linguagem aceita, linguagem rejeitada e linguagem loop UNIDADE VI – LINGUAGENS SENSÍVEIS AO CONTEXTO 68 1.Gramáticas sensíveis ao contexto 2.Máquinas de Turing com fita limitada 3.Propriedades de fechamento UNIDADE VII – LINGUAGENS RECURSIVAS 1.Critérios de aceitação 2.Extensões da Máquina de Turing 3.Propriedades de fechamento UNIDADE VIII – LINGUAGENS RECURSIVAMENTE ENUMERÁVEIS 1.Decidibilidade 2.Redutibilidade 3.Máquinas de Turing como enumeradoras de linguagens 4.Gramáticas irrestritas 5.Propriedades de fechamento BIBLIOGRAFIA BÁSICA: 1.Hopcroft, J. E.; Motwani, R.; Ullman, J. D. Introdução á Teoria de Autômatos, Linguagens e Computação. 2ª. ed., Rio de Janeiro: Elsevier, 2002. 2.Menezes, P. B. Linguagens Formais e Autômatos. 5ª. ed., Porto Alegre: Instituto de Informática da UFRGS: Sagra Luzzatto, 2005. BIBLIOGRAFIA COMPLEMENTAR: 1.Ramos, M. V. M.; Neto, J. J.; Vega, I. S. Linguagens Formais – Teoria, Modelagem e Implementação. Porto Alegre: Bookman, 2009. 2.Lewis, H. R.; Papadimitriou, C. H. Elementos de Teoria da Computação. 2ª. ed., Rio de Janeiro: Bookman, 2004. 69 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ??? CRÉDITOS: 4 (4T-0P) ARQUITETURA DE COMPUTADORES I Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Circuitos Digitais) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Entender o hardware de um sistema computacional; b. Entender o funcionamento dos vários módulos que compõem um sistema computacional; c. Desenvolver uma visão crítica sobre os requisitos de desempenho associados a um sistema computacional. EMENTA: Sistemas de Numeração. Desempenho. Instruções e Linguagem de Máquina. Aritmética Computacional. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO À ARQUITETURA DE COMPUTADORES 1. Introdução Histórica de Arquitetura de Computadores. Conceitos. 2. Visão Geral da arquitetura da Máquina 3. Sistemas de Numeração UNIDADE II – DESEMPENHO 1. Avaliação e Medidas de Desempenho 2. Relação Custo-Benefício 3. MIPS e MFLOPS 4. Speedup e Lei de Amdahl 5. Simuladores estatísticos UNIDADE III – INSTRUÇÕES E LINGUAGEM DE MÁQUINA. 1. Princípios de Projeto de Computadores 2. Princípios de Linguagens de Alto Nível 3. Instruções Lógicas e Aritméticas, de Desvio e de Transferência de Dados 4. Classes e Formatos de Instruções 5. Modos de Endereçamento, Chamadas de Procedimentos 70 UNIDADE IV – ARITMÉTICA COMPUTACIONAL. 1. Representação de números positivos e negativos 2. Soma e subtração 3. Multiplicação e divisão 4. Ponto flutuante BIBLIOGRAFIA BÁSICA: 1.Patterson, David.; Hennessy, Jhon L. Organização de Computadores: A Interface Hardware/Software. 3a Edição.Campus, 2005. 2.Tanenbaum, Andrew S.. Organização Estruturada de Computadores. 5a Edição. Prentice-Hall, 2006. BIBLIOGRAFIA COMPLEMENTAR: 1.Patterson, David.; Hennessy, Jhon L. Arquitetura de Computadores – Uma Abordagem Quantitativa. Campus, 2003. 2.Weber, Raul Fernando. Fundamentos de Arquitetura de Computadores. 2. ed. Porto Alegre: Sagra Luzzato, 2001. 71 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE ARQUITETURA DE COMPUTADORES I Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Mobilizar o raciocínio lógico e abstrato; b. Aplicar os conhecimentos vistos na disciplina de Arquitetura de Computadores I em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em Arquitetura de Computadores I. Programação em Linguagens de Montagem e simulação. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Patterson, David.; Hennessy, Jhon L. Organização de Computadores: A Interface Hardware/Software. 3a Edição.Campus, 2005. 2.Tanenbaum, Andrew S.. Organização Estruturada de Computadores. 5a Edição. Prentice-Hall, 2006. BIBLIOGRAFIA COMPLEMENTAR: 1.Patterson, David.; Hennessy, Jhon L. Arquitetura de Computadores – Uma Abordagem Quantitativa. Campus, 2003. 2.Weber, Raul Fernando. Fundamentos de Arquitetura de Computadores. 2. ed. Porto Alegre: Sagra Luzzato, 2001. 72 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE ESTRUTURA DE DADOS I Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Mobilizar o raciocínio lógico e abstrato; b. Aplicar os conhecimentos vistos na disciplina de Estrutura de Dados I em situações concretas da área de Ciência da Computação. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de Estrutura de Dados I. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula. BIBLIOGRAFIA BÁSICA: 1. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C. Algoritmos: Teoria e Prática. 1a ed., Ed. Campus, Rio de Janeiro, 2002. 2. Szwarcfiter, J.L., Markenzon, L. Estruturas de Dados e Seus Algoritmos. 2a ed., Ed. LTC, Rio de Janeiro, 2004. BIBLIOGRAFIA COMPLEMENTAR: 1.Schildt, H. "C Completo e Total", Makron Books, 1997. 2. P. Veloso, C. Santos, P. Azeredo, A. Furtado. Estruturas de Dados. Ed. Campus, 1984. 3. NívioZiviani. Projeto de Algoritmos com implementações em Pascal e C. 5ª.edição. Ed. Pioneira, 2001 4 Ângelo de Moura Guimarães. Algoritmos e Estruturas de Dados. LTC Editora, 1994. 5 Jayme Luiz Szwarcfiter, Lilian Markenzon. Estruturas de Dados e seus Algoritmos. 2a edição. LTC Editora, 1994. 6.Routo Terada. Desenvolvimento de Algoritmos e Estruturas de Dados. Ed. Makron Books, 1991. 73 Quarto Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ??? CRÉDITOS: 4 (4T-0P) CÁLCULO APLICADO Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Cálculo II) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Identificar condições necessárias e suficientes para um campo vetorial e conservativos; b. Compreender conceitos de continuidade e diferenciabilidade de funções vetoriais de várias variáveis; c. Conhecer os operadores diferenciais de campos vetoriais: Rotacional, Divergente e Laplaciano, contextualizando; d. Compreender a necessidade da integral de linhas e suas aplicações em diferentes contextos; e. Compreender a necessidade da integral de superfície e suas aplicações; f. Aplicar as técnicas de resolução de integrais e seus principais resultados; g. Compreender e aplicar séries numéricas; h. Aplicar equações diferenciais na solução de problemas de cálculo. EMENTA: Funções com Valores Vetoriais. Integrais de Linha. Integrais de Superfície. Séries. Equações Diferenciais. CONTEÚDO PROGRÁMATICO: UNIDADE I – FUNÇÕES COM VALORES VETORIAIS 1. Curvas Parametrizadas. 2. Comprimento de Arco. 3. Vetores Tangente Unitário e Normal Principal. UNIDADE II – INTEGRAIS DE LINHA 74 1. Integrais de Linha de Função Escalar. 2. Integrais de Campo Vetorial. 3. Teorema de Green. UNIDADE III – INTEGRAIS DE SUPERFÍCIE 1. Superfícies. 2. Área de Superfícies. 3. Integrais de Superfícies. 4. Teorema de Stokes. 5. Teorema de Gauss. UNIDADE IV – SEQUÊNCIAS E SÉRIES 1. Sequências. 2. Séries. 3. O Teste da Integral. 4. O Testes de Comparação. 5. Séries Alternadas. 6. Convergência Absoluta. 7. Séries de Potências. 8. Representação por série de potências. UNIDADE V – EQUAÇÕES DIFERENCIAIS 1. Introdução ao Estudo das Equações Diferenciais Ordinárias: Definição. Solução geral e solução particular. 2. Equações de Primeira Ordem: resolução de equações separáveis, homogêneas, exatas e lineares. Trajetórias ortogonais. 4. Equações Lineares de Segunda Ordem: resolução das equações homogêneas com coeficientes constantes. 6. Sistemas de Equações Diferenciais Lineares: apresentação do problema e resolução de exemplos simples. 7.Transformada de Laplace BIBLIOGRAFIA BÁSICA: 1. Zill, Dennis G., EQUAÇÕES DIFERENCIAIS com aplicações em modelagem. Pioneira Thomson Learning, 2003. 2. Stewart, James. Cálculo. v.II, 4ª ed. São Paulo: Pioneira Thomson Learning, 2004. BIBLIOGRAFIA COMPLEMENTAR: 75 1. Wilfred, Kaplan, Cálculo Avançado, Edgard Blücher, 1972 – REIMPRESSÃO 2002. 2. FIGUEIREDO, Djairo Guedes De; NEVES, Aloisio Freiria. EQUAÇÕES DIFERENCIAIS APLICADAS, 2ª ed. Coleção Matemática Universitária (IMPA), 2005. 3. Matos, Marildo P. Séries E Equações Diferenciais, 1ª ed. Prentice Hall, 2002. 4.Guidorizzi, Um Curso de Cálculo, Vol. 2, LTC (funções de várias variáveis) 5.Guidorizzi, Um Curso de Cálculo, Vol. 4, LTC (sequências e séries) 6.Swokowski, Cálculo com Geometria Analítica, Vol. 2, Makron Books. 76 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ??? CRÉDITOS: 4 (4T-0P) FÍSICA PARA CIÊNCIA DA COMPUTAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Cálculo II) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer o conceito de eletrostática e a Lei de Coulomb bem como correlacionar tais conceitos com a computação; b. Compreender o conceito de campos magnéticos e de corrente estacionária; c. Conhecer as propriedades magnéticas da matéria; d. Compreender o conceito de ótica geométrica. EMENTA: Eletrostática e a Lei de Coulomb. Campos Magnéticos e Corrente Estacionária. Propriedades Magnéticas da Matéria. Ótica Geométrica. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO À FÍSICA 1. O que é a Ciência ? 2. Aspectos da evolução da física clássica à física moderna; 3. As certezas da física clássica e as incertezas da física moderna 4. Medindo grandezas; 5. Medidas diretas e indiretas; 6. Propagação de erros. UNIDADE II – CINEMÁTICA DA PARTÍCULA 1. Movimento retilíneo; 2. Movimento em duas e três dimensões. 77 UNIDADE III – DINÂMICA DA PARTÍCULA 1. Força e movimento; 2. Energia cinética e trabalho; 3. Energia potencial e conservação da energia; 4. Sistema de partículas; 5. Colisões; 6. Rotação; 7. Momento Angular. UNIDADE IV – ELETROSTÁTICA E A LEI DE COULOMB 1. Carga elétrica. 2. Lei de Coulomb. 3. Condutores e isolantes. 4. Aplicações: sistema dicotômico, sinais elétricos. UNIDADE V – CAMPOS MAGNÉTICOS E CORRENTE ESTACIONÁRIA 1. Força eletromotriz e diferença de potencial. 2. Resistência elétrica e a Lei de Ohm. 3. Dipolos magnéticos. 4.Lei de Ampére. 5.Campos magnéticos em bobinas. 6. Aplicações: disco rígido, discos flexíveis, fitas. UNIDADE VI – PROPRIEDADES MAGNÉTICAS DA MATÉRIA 1. Magnetização e Lei de Ampére. 2. Substâncias paramagnéticas e diamagnéticas. 3.Aplicações: nanoscopia. UNIDADE VII – ÓTICA GEOMÉTRICA 1. Fundamentos básicos. 2. Refração, reflexão e absorção. 3.Lei de Snell-Descartes. 4.Aplicações: Fibras ópticas, CD ROMs, CD RW. BIBLIOGRAFIA BÁSICA: 1.Halliday, David, Resnick Robert, Walker Jearl, Fundamentos de Física: Eletromagnetismo – Volume 3 78 - 6ª edição Rio de Janeiro LTC Editora, 2003. 2. Halliday, David, Resnick Robert, Walker Jearl Fundamentos de Física: Ótica e Física Moderna Volume 4 - 6ª edição, Rio de Janeiro, LTC Editora, 2003. 3. . HALLIDAY D. , RESNICK R. e WALKER J. Fundamentos de Física: Mecânica, Volume I . Editora LTC, 8a Edição. 2009. BIBLIOGRAFIA COMPLEMENTAR: 1.Mckelvey, John P., GROTCH, Howard, Física 3 Editora Harbra, 1978 2.Mckelvey, John P., GROTCH, Howard, Física 4 Editora Harbra, 1981 3.Keller, et al. Física. Vol I e II. São Paulo: Makron, 1997. 4.Sears, F. W. et al. Física. Vols I a IV. São Paulo: Makron Books, 2002. 5.Serway. Física. Vols. I a IV. Rio de Janeiro: LTC, 1996. 79 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ??? CRÉDITOS: 4 (4T-0P) GRAFOS E ALGORITMOS Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Estrutura de Dados I) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer em profundidade os problemas básicos da teoria dos grafos; b. Analisar algoritmos aplicados aos problemas básicos de grafos; c. Aplicar a teoria dos grafos para solucionar problemas computacionais e de otimização. EMENTA: Funções Geradoras. Relações de Recorrência. Teoria dos Grafos – Conceitos Básicos. Grafos e Subgrafos. Conectividade. Representações. Listas e Matrizes de Adjacências. Árvores e Florestas. Grafos e Árvores Geradoras. Circuitos Eulerianos. Ciclos Hamiltonianos. Emparelhamento em Grafos. Cliques e Conjuntos Independentes. Número e Índice Cromático. Coloração de Vértices e Arestas. Planaridade. Grafos Direcionados. Classes de Grafos e Caracterizações. Método de Busca em Largura, Busca em Profundidade, Busca em Largura Lexicográfica, Algoritmos de Caminho Mínimo, Algoritmos de Fluxo Máximo e Multifluxo, Algoritmos de Fluxo de Custo Mínimo e Aplicações. CONTEÚDO PROGRÁMATICO: UNIDADE I – TEORIA DOS GRAFOS – DEFINIÇÕES E PROBLEMAS 1. Conceitos Básicos 1.1. Grafos Orientados 1.2. Não-Orientados 1.3. Vértice, Aresta, Grau, 1.4. Caminho, 1.5. Circuito, Ciclo, Pontes 1.6. Euleriano, Hamiltoniano 1.7. Planaridade 1.8. Isomorfismo 1.9. Classes de Grafos 1.10. Árvore, Floresta 1.11. Grafos Completo, Clique, Corte, Bipartido 1.12. Componentes Conexas e Fortemente Conexas, 1.13. Conjuntos independentes 1.14. Funções Geradoras – Definição e Exemplos de Aplicação. 1.15. Relações de Recorrência – Definição e Exemplos de Aplicação. 80 2. Representações 2.1 2.2 2.3 2.4 2.5 2.6 2.7 Matriz de Adjacências Matriz de Incidências Lista de Adjacências Lista de Arestas Complexidade de espaço para as estruturas Análise da Complexidade para certas operações como: grau de um vértice, busca de um vértice Vantagens e Desvantagens de cada estrutura UNIDADE II – PROBLEMAS CLÁSSICOS 1. Pontes de Konigsberg 2. Carteiro Chinês 3. Gás, Água e Eletricidade 4. Caixeiro Viajante 5. Coloração em Grafos 6. Conjunto Independente 7. Outros problemas UNIDADE III – Busca em Largura/Busca em Profundidade 1. Caminho mínimo e Busca em Largura 2. Busca em Profundidade 3. Busca em Largura Lexicográfica 4. Identificação de Componentes Conexas 5. Detecção e Contagem de Ciclos 6. Detecção de Pontes 7. Ordenação Topológica 8. Identificação de Componentes Fortemente Conexas 9. Caminho Mínimo em Grafos Acíclicos UNIDADE IV - Caminhos Mínimos 1. Árvore de caminhos mínimos 2. Bellman-ford 3. Djkstra (Heap) 4. Floyd-Warshall UNIDADE V - Árvores Geradoras 1. Prim 2. Kruskal 3. Union-Find 4. Aplicações UNIDADE VI - Fluxo em Redes 1. Teorema do Fluxo-Máximo Corte-Mínimo 2. Multifluxo 3. Fluxo de custo mínimo 4. Algoritmo de Ford-Fulkerson 5. Algoritmo de Edmonds-Karp 6. Aplicações UNIDADE VII – Emparelhamentos 81 1. Representação 2. Resolução por fluxo Aplicações 3. Emparelhamento Máximo / Maximal UNIDADE VIII – Grafos Eulerianos 1. Circuito Euleriano 2. Algoritmo de Fleury e Detecção de Pontes 3. Caminho Euleriano 4. Algoritmo de Fleury e Detecção de Pontes 5. Problema do Carteiro Chinês UNIDADE IX – Grafos Hamiltonianos 1. Caixeiro Viajante 2. Algoritmo Força Bruta 3. Algoritmos Construtivos 4. Algoritmo de Árvore Geradora Mínima 5. Algoritmo de Christofide 6. Limites inferiores e superiores BIBLIOGRAFIA BÁSICA: 1.T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. Algoritmos – Tradução da 2a Edição Americana – Teoria e Prática. Ed. Campus, 2002. 2.J.L. Szwarcfiter. Grafos e Algoritmos Computacionais. Ed. Campus, 1986. 3.J.P.O. Santos, M.P. Mello, I.T.C. Murari. Introdução à Análise Combinatória. UNICAMP, 2002. BIBLIOGRAFIA COMPLEMENTAR: 1.J.A. Bondy, U.S.R. Murty. Graph Theory with Applications. Elsevier, 1982. 2.P.O. Boaventura Netto. Grafos: Teoria, Modelos, Algoritmos. 4a Ed., Edgard Blucher,2006. 3.N. Maculan Filho, R.E. Campello. Algoritmos e Heurísticas: Desenvolvimento e Avaliação de Performance. Niterói: Editora da UFF, 1994. 4.A. Gibbons. Algorithmic Graph Theory. Cambridge University Press, 1985. 82 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ??? CRÉDITOS: 4 (4T-0P) ARQUITETURA DE COMPUTADORES II Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Arquitetura de Computadores I) INSTITUTO MULTIDISCPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA Ao final da disciplina o aluno deve: a. Compreender os mecanismos básicos de comunicação entre os vários módulos que compõem um sistema computacional; b. Compreender o armazenamento em memória; sistemas de entrada e saída. c. Compreender também como o desempenho do sistema computacional pode ser melhorado através do uso pipeline. EMENTA: Arquitetura básica de um processador. Sistemas de Entrada e Saída. Gerência de Memória. Melhora da performance com uso de Pipeline. Tópicos especiais. CONTEÚDO PROGRÁMATICO: UNIDADE I – ARQUITETURA BÁSICA DE UM PROCESSADOR 1. Seção de processamento e seção de controle. 2. O Processador: Caminho de Dados e Controle. 3. Projeto monociclo e multiciclo. UNIDADE II – SISTEMAS DE ENTRADA E SAÍDA 1. Conceito de abstração. 2. Interface entre programa e dispositivo 2.1 E/S Programada 3. Dispositivos periféricos e interfaces 3.1 Interfaces seriais 3.2 Interfaces paralelas 3.3 Interfaces de vídeo 4. Barramentos e chaveadores 5. Armazenamento secundário 83 UNIDADE III – GERÊNCIA DE MEMÓRIA 1 Hierarquia de memórias 1.1 Memória Cache 1.1.1 Conceitos, características e organização 1.1.2 Mapeamento de endereços 1.1.3 Políticas de atualização 1.2 Memória Virtual 1.2.1 Conceitos, características e organização 1.2.2 Sistemas paginados, segmentados e segmento-paginados 1.2.3 Políticas de alocação, relocação e busca 1.3 TLBs 1.4 Estudo de casos UNIDADE IV – MELHORA DA PERFORMANCE COM USO DE PIPELINE 1. Visão geral de pipelines 2. Caminho de dados no pipeline 3. Controle de processador com pipeline 4. Dependências de dados, de nomes e de controle 5. Processadores Superescalar UNIDADE V – TÓPICOS AVANÇADOS 1. Introdução ao pipelining avançado e paralelismo no nível das instruções básicas. 2. Processadores vetoriais 3. Multicore / manycores BIBLIOGRAFIA BÁSICA: 1. Patterson, David.; Hennessy, Jhon L. Organização de Computadores: A Interface Hardware/Software. 3a Edição.Campus, 2005 2.Tanenbaum, Andrew S.. Organização Estruturada de Computadores. 5a Edição. Prentice-Hall, 2006. BIBLIOGRAFIA COMPLEMENTAR: 1. Patterson, David.; Hennessy, Jhon L. Arquitetura de Computadores – Uma Abordagem Quantitativa. Campus, 2003. 2. Weber, Raul Fernando. Fundamentos de Arquitetura de Computadores. 2. ed. Porto Alegre: Sagra Luzzato, 2001. 84 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 860 CRÉDITOS: 4 (4T-0P) Estruturas de Dados II Cada Crédito corresponde a 15h/ aula (Pré-requisito: Estrutura de Dados I) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA Ao final da disciplina o aluno deve: a. Aplicar em soluções algorítmicas os conceitos de série e sequências; b. Compreender o conceito de classificação externa; c. Aplicar arquivos de acesso direto em soluções computacionais; d. Aplicar em soluções algorítmicas os conceitos arquivos indexados pela chave primária e por múltiplas chaves; e. Compreender normalização. EMENTA: Arquivos em Série e Sequências. Classificação Externa. Arquivos de Acesso Direto. Arquivos Indexados pela Chave Primária e por Múltiplas Chaves. Normalização. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO 1. Conceito de Arquivo. Arquivos Físicos; 2. Meios de armazenamento; 3. Paginação 4. Dispositivos de Entrada e Saída e seu Controle; 5. Interface com os sistemas operacionais; UNIDADE II – ARQUIVOS DE ACESSO DIRETO 1. Funções ‘"hash", Colisões; 2. Arquivos Extensíveis; UNIDADE III – ARQUIVOS INDEXADOS PELA CHAVE PRIMÁRIA 1. Arquivos Sequenciais Indexados; 85 2. Árvores Balanceadas; 2.1. Árvores B e Algoritmos; 2.2. Variações de árvores balanceadas. UNIDADE IV – ARQUIVOS INDEXADOS POR MÚLTIPLAS CHAVES 1. Arquivos Multilista. Arquivos Invertidos; 2. Processos de implementação de índices secundários; UNIDADE V –COMPRESSÃO DE ARQUIVOS 9. Conceito de compressão 10. Algoritmos de compressão sem perda 11. Algoritmos de compressão com perda UNIDADE V – TÓPICOS AVANÇADOS E APLICAÇÕES 1. Algoritmos para manipulação de arquivos grandes em ambientes distribuídos BIBLIOGRAFIA BÁSICA: 1.T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. Algoritmos – Tradução da 2a Edição Americana – Teoria e Prática. Ed. Campus, 2002. 2. A. Tharp. “File Organization and Processing”. John Wiley & Sons, Inc. 1988. 3. P.D. Smith, G.M. Barnes. “Files and Databases: An Introduction”. Addison Wesley –Series in Computer Science Reading, 1987. 4. E. Horowtiz, S. Sahni. “Fundamentos de Estruturas de Dados”. Editora Campus, Rio de Janeiro, 1984. BIBLIOGRAFIA COMPLEMENTAR: 1. N. Wirth. “Algorithms + Data Structures = Programs”. Prentice -Hall- Englewood Cliffs, 1976. 2. D.E. Knuth. “The Art of Computer Programming”. Addison-Wesley- Reading, 1973. 86 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE GRAFOS E ALGORITMOS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: c. Mobilizar o raciocínio lógico e abstrato; d. Aplicar os conhecimentos vistos na disciplina de grafos e algoritmos em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em grafos e algoritmos. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein. Algoritmos – Tradução da 2a Edição Americana – Teoria e Prática. Ed. Campus, 2002. 2.J.L. Szwarcfiter. Grafos e Algoritmos Computacionais. Ed. Campus, 1986. 3.J.P.O. Santos, M.P. Mello, I.T.C. Murari. Introdução à Análise Combinatória. UNICAMP, 2002. BIBLIOGRAFIA COMPLEMENTAR: 1.J.A. Bondy, U.S.R. Murty. Graph Theory with Applications. Elsevier, 1982. 2.P.O. Boaventura Netto. Grafos: Teoria, Modelos, Algoritmos. 4a Ed., Edgard Blucher, 2006. 3.N. MaculanFilho, R.E. Campello. Algoritmos e Heurísticas: Desenvolvimento e Avaliação de Performance. Niterói: Editora da UFF, 1994. 4.A. Gibbons. Algorithmic Graph Theory. Cambridge University Press, 1985. 87 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE ESTRUTURA DE DADOS II Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: c. Mobilizar o raciocínio lógico e abstrato; d. Aplicar os conhecimentos vistos na disciplina de Estrutura de Dados II em situações concretas da área de Ciência da Computação. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de Estrutura de Dados II. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula. BIBLIOGRAFIA BÁSICA: 1. A. Tharp. “File Organization and Processing”. John Wiley & Sons, Inc. 1988. 2. P.D. Smith, G.M. Barnes. “Files and Databases: An Introduction”. Addison Wesley –Series in Computer Science Reading, 1987. 3. E. Horowtiz, S. Sahni. “Fundamentos de Estruturas de Dados”. Editora Campus, Rio de Janeiro, 1984. BIBLIOGRAFIA COMPLEMENTAR: 1. N. Wirth. “Algorithms + Data Structures = Programs”. Prentice -Hall- Englewood Cliffs, 1976. 2. D.E. Knuth. “The Art of Computer Programming”. Addison-Wesley- Reading, 1973. 88 Quinto Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: CRÉDITOS: 4 (4T-0P) MÉTODOS NUMÉRICOS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer a representação binária de números; b. Aplicar os métodos numéricos na solução de problemas envolvendo sistemas de equações; c. Construir solução numérica de equações diferenciais ordinárias d. Distinguir os métodos de interpolação e integração numérica EMENTA: Representação Binária de Números. Erros. Zeros de Funções Reais. Resoluções de sistemas lineares. Interpolação. Integração Numérica. Solução numérica de Equações diferenciais ordinárias. CONTEÚDO PROGRAMÁTICO: UNIDADE I – REPRESENTAÇÃO BINÁRIA DE NÚMEROS. 1. Erros absolutos e relativos. 2. Zeros de Funções. 3. Refinamentos e Critérios de Parada. UNIDADE II – MÉTODOS 1. Métodos Iterativos 2. Métodos da Bisseção, da Falsa Posição, do Ponto Fixo, de Newton. 3. Determinação de Raízes Reais. 4. Eliminação de Gauss e fatoração LU. 5. Método de Gauss Jacobi e de Gauss-Seidel. 89 UNIDADE III – CRITÉRIOS, INTERPOLAÇÃO E INTEGRAÇÃO 1. Critério de Sassenfeld. 2. Testes de Parada dos Algoritmos. 3. Comparação dos métodos 4. Interpolação. 5. Métodos de Integração Numérica BIBLIOGRAFIA BÁSICA: 1. BURDEN, R.L. E FAIRES, J.D. "Análise Numérica", Ed. Pioneira Thomson Learning, 2003. 2. Sperandio, D., Mendes, J.T. E Silva, L.H.M. "Cálculo Numérico Características Matemáticas e Computacionais dos Métodos Numéricos", Prentice-Hall, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1.Thomas, G. B. Cálculo - Volume I. São Paulo, Ed. Pearson Education do Brasil, 2002. 2 Lopes, V. L. E Ruggiero, M. A. G. "Cálculo Numérico - Aspectos Teóricos e Computacionais", Makron Books, 1996. 3. BARROSO, L.C. Et Ai. "Cálculo Numérico (com aplicações)", HARBRA, 1987. 90 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 864 CRÉDITOS: 4 (4T-0P) LINGUAGENS DE PROGRAMAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisito: Linguagens formais e Autômatos ; Computação II ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Distinguir os conceitos básicos de linguagens de programação, tais como: sintaxe, semântica, análise léxica e sintática; b. Entender os tipos de dados, expressões e estruturas de controle componentes das linguagens de programação; c. Compreender os paradigmas de linguagens de programação. EMENTA: Introdução. Sintaxe, Semântica, Análise Léxica e Sintática. Tipos de Dados, Expressões e Estruturas de Controle. Paradigmas de Linguagens de Programação. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1. Avaliação de Linguagens de Programação. 2. Linguagem de Máquina. 3. Tradução de uma Linguagem de Programação em Linguagem de Máquina. 4. Compilação e Interpretação 5. Paradigmas de Linguagens de Programação. 6. Evolução das Linguagens de Programação. UNIDADE II – SINTAXE, SEMÂNTICA, ANÁLISE LÉXICA E SINTÁTICA 1. Métodos Formais para Descrição da Sintaxe. 2. Gramáticas de Atributos. 3. Semântica Dinâmica. 4. Introdução à Análise Léxica. 5. Análise Sintática. 91 UNIDADE III – TIPOS DE DADOS, EXPRESSÕES E ESTRUTURAS DE CONTROLE. 1. Dados Primitivos, Cadeias de Caracteres e Matrizes. 2. Registros, Uniões, Conjuntos e Ponteiros. 3. Expressões Aritméticas. 4. Conversões de Tipos e Instruções de Atribuição. 5. Instruções Compostas e de Seleção. 6. Instruções Iterativas e Desvios Condicionais. 7. Subprogramas – Introdução. UNIDADE IV – PARADIGMAS DE LINGUAGENS DE PROGRAMAÇÃO. 1. Imperativa. 1.1Nomes e Variáveis. 1.2Verificação de Tipos e Escopos. 1.3Tipos de Dados Primitivos. 1.4Expressões. 2. Orientada a Objetos. 2.1Abstração e Encapsulamento. 2.2Suporte para Orientação a Objetos. 2.3Herança e Polimorfismo. 3. Funcional 3.1Fundamentos da Programação Funcional LISP 4. Lógica. 4.1Fundamentos da Programação Lógica 5.PROLOG BIBLIOGRAFIA BÁSICA: 1. C. Ghezzi, M. Jazayeri. “Conceitos de Linguagens de Programação”. Editora Campus,1987. 2. R.W. Sebesta. “Conceitos de Linguagens de Programação”. 5a Edição. Bookman, 2003. 3. Friedman, Daniel, Wand, Mitchell, “Essentials of Programming Languages”, MIT Press, 1992 4. Sethi, Ravi, “Programming Languages: Concepts and Constructs”, Massachusetts, 1989 BIBLIOGRAFIA COMPLEMENTAR: 1.D.A. Watt. “Programming Language Design Concepts”. John Willey, 2004. 2.Watt, D. A. Programming Language Semantics. Prentice-Hall. 1991; 92 Addison-Wesley, Reading, 3.Appleby, Doris, “Programming Languages, Paradigm and Practices”, McGraw-Hill, 1991 4.Eckel, Bruce, “Thinking in Java”, President, MindView Inc., 1997, www.eckelobjects.com. 5. Steel, Guy L. Jr., “Common Lisp”, 2nd Ed. (HTML Version), http://www.cs.cmu.edu/Groups/AI/html/repository.html http://www.cs.virginia.edu/~vision/cltl2/clm/node1.html. 3.Fischer, A. E. e Grodzinsky F. S. The Anatomy of Programming Languages. Prentice-Hall. 1993. 93 or UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 870 CRÉDITOS: 4 (4T-0P) INTELIGÊNCIA ARTIFICIAL Cada Crédito corresponde a 15h/ aula (Pré-Requisito: Estruturas de Dados I; Lógica e Matemática Discreta para Computação) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer as principais tecnologias da área da Inteligência Artificial e exemplos de aplicação; b. Compreender o potencial dessas para o desenvolvimento de sistemas de apoio à decisão; c. Identificar as alternativas de tecnologias da área mais adequadas à solução dos vários tipos de problema; d. Desenvolver um raciocínio crítico, lógico e analítico voltado à concepção de soluções envolvendo a aplicação de recursos da Inteligência Artificial; e. Aplicar as tecnologias apresentadas em problemas de natureza diversa. EMENTA: Conceitos Básicos. Estratégias e Métodos de Busca. Heurísticas. Formalismos para Representação do Conhecimento. Programação em Lógica. Sistemas Especialistas. Lógica Nebulosa. Redes Neurais. Algoritmos Genéticos. CONTEÚDO PROGRAMÁTICO: UNIDADE I – FUNDAMENTOS 1.Conceitos Básicos 2.Introdução aos Formalismos para Representação do Conhecimento e Inferência 3.Heurísticas, Planejamento e Resolução de Problemas 4.Métodos de Busca (Hill Climbing, Best First, Simulated Annealing, A*, Minimax) UNIDADE II – LINGUAGEM PROLOG 1. Representação do Conhecimento (Predicados, Termos, Conectivos, Fatos e Regras) 2. Resolução e Inferência 3. Backtracking 4. Operadores Aritméticos 5. Listas 94 6. Cortes e Exceções 7. Predicados Embutidos 8. Entrada e Saída UNIDADE III – SISTEMAS ESPECIALISTAS 1. Caracterização 2. Especialistas e Analistas de Conhecimento 3. Bases de Conhecimento 4. Mecanismos de Inferência 5. Planilhas de Conhecimento 6. Árvores de Decisão 7. Sistemas Especialistas como Sistemas de Apoio à Decisão UNIDADE IV – LÓGICA NEBULOSA 1. Conceitos Básicos (Conjuntos, Operadores e Regras Nebulosos, Inferência) 2. Sistemas de Inferência Nebulosos (Componentes e Implementação) 3. Números Nebulosos 4. Aplicações UNIDADE V – INTRODUÇÃO ÀS REDES NEURAIS (RN) 1. Conceitos Básicos (Neurônio Artificial, Componentes, Arquiteturas, Aprendizagem) 2. Modelos (Perceptron, Adaline, Madaline, MLP, Hopfield, Kohonen) 3. Algoritmo de Aprendizado por Retropropagação de Erro 4. Aplicações UNIDADE VI – INTRODUÇÃO AOS ALGORITMOS GENÉTICOS (AG) 1. Conceitos Básicos 2. Problema, Representação de Soluções, Decodificação de Cromossoma 3. Avaliação 4. Seleção 5. Operadores Genéticos 6. Técnicas e Parâmetros 7. Aplicações UNIDADE VII – NOÇÕES COMPLEMENTARES 1. Aprendizado de Máquina 2. Agentes Inteligentes e Sistemas Multi-Agentes 95 3. Processamento de Linguagem Natural 4. Raciocínio Probabilístico 5. Sistemas Híbridos BIBLIOGRAFIA BÁSICA: 1.Russel, S.; Norvig, P. Artificial Intelligence – A Modern Approach. 3a. ed., Prentice Hall, 2010. 2.Rezende, S. Sistemas Inteligentes – Fundamentos e Aplicações. São Paulo: Manole, 2003. 3.Goldschmidt, R. Uma Introdução à Inteligência Computacional: Fundamentos, Ferramentas e Aplicações, Rio de Janeiro, 2010. Disponível em: http://www.faetec.rj.gov.br/ist- rio/app/images/livros/ic3.pdf BIBLIOGRAFIA COMPLEMENTAR: 1. Braga, A. P.; Carvalho, A. P.; Ludermir, T. B. Redes Neurais Artificiais – Teoria e Aplicações, 2ª. ed., Rio de Janeiro: LTC, 2007. 2. Haykin, S. Redes Neurais: Princípios e Prática. 2ª ed., Porto Alegre: Bookman, 2001. 3. Linden, R. Algoritmos Genéticos. São Paulo: Brasport, 2006. 4. Luger, G. F. Inteligência Artificial. Porto Alegre: Bookmann, 2004. 5. Clocksin, W. F.; Mellish, C. S. Programming in Prolog: Using the ISO Standard, Springer, 2003. 6. Oliveira, H.; Caldeira, A.; Machado M.; Souza, R.; Tanscheit, R. Inteligência Computacional Aplicada à Administração, Economia e Engenharia em Matlab. São Paulo: Thomson, 2007. 7. Nascimento, C.; Yoneyama, T. Inteligência Artificial em Controle e Automação. São Paulo: Edgard Blucher, 2004. 8. Rich, Elaine. Inteligência Artificial. São Paulo: Makron, 1992. 96 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM471 CRÉDITOS: 4 (4T-0P) ANÁLISE DE ALGORITMOS Cada Crédito corresponde a 15h/ aula (Pré-requisito: Estrutura de Dados I e Teoria dos Grafos) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Avaliar a complexidade de algoritmos computacionais; b. Aplicar métodos de busca em espaço de solução de problemas; c. Classificar as classes de problema. EMENTA: Complexidade de algoritmos. Método da divisão e conquista. Método guloso. Programação Dinâmica. Classes de problemas. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1 Máquinas RAM; 2 Tamanho de um problema; 3 Complexidade local e assintótica; 4 Complexidade de algoritmos recursivos; 5 Custo uniforme e custo logarítmico. UNIDADE II – MÉTODOS E ANÁLISE 1 Método da Divisão e Conquista 1.1 Princípios; 1.2 Busca binária e complexidade; 1.3 Máximo e Mínimo de uma lista e complexidade; 1.4 Ordenação (Quicksort, Mergesort, etc.), Limite inferior de problemas; 2 Método Guloso 2.1 Princípios; 2.2 Aplicações: armazenamento, árvore geradora mínima; 3 Programação Dinâmica 97 3.1 Princípios; 3.2 Princípio de Otimalidade de Bellman; 3.3 Aplicações: caminhos mínimos, escalonamento, etc. UNIDADE III – CLASSES DE PROBLEMAS 3.1 Problemas de decisão, localização e de otimização; 3.2 Algoritmos não determinísticos; 3.3 Classes P e NP dos problemas de decisão; 3.4 Classe dos problemas NP-completos; 3.5 Redução e extensão de problemas. BIBLIOGRAFIA BÁSICA: 1. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C. Algoritmos: Teoria e Prática. 1a ed., Ed. Campus, Rio de Janeiro, 2002. 2. Szwarcfiter, J.L. Grafos e Algoritmos Computacionais. Ed. Campus, Rio de Janeiro, 1984. BIBLIOGRAFIA COMPLEMENTAR: 1. Papadimitriou, C.H. ComputationalComplexity. Addison Wesley, 1994 98 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 868 CRÉDITOS: 4 (4T-0P) SISTEMAS OPERACIONAIS Cada Crédito corresponde a 15h/ aula (Pré-requisito: Arquitetura de Computadores II) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer os conceitos básicos e a estrutura dos sistemas operacionais; b. Entender as estratégias de gerenciamento de processos, memória e dispositivos realizadas pelo SO e seus principais reflexos na execução, desempenho e segurança das aplicações. EMENTA: Visão geral e conceitos básicos. Estrutura do sistema operacional. Processos e gerência dos processos. Gerência de memória. Gerência de arquivos e sistema de arquivos. Gerência de dispositivos. CONTEÚDO PROGRAMÁTICO: UNIDADE I – VISÃO GERAL E CONCEITOS BÁSICOS 1 História e evolução dos Sistemas Operacionais 2 Tipos de sistemas operacionais UNIDADE II – ESTRUTURA DO SISTEMA OPERACIONAL 1 Revisão dos componentes da arquitetura de computadores 2 Componentes e arquitetura de um SO 3 Serviços e chamadas ao SO 4 Máquinas virtuais UNIDADE III – PROCESSOS E GERÊNCIA DOS PROCESSOS 1 Modelo de processo 2 Estado do processo 3 Tipos de processo 4 Threds X processos 5 Comunicação entre processos 6 Sincronização de processos (concorrência, o problema de deadlocks e starvation) 7 Escalonamento de processos 99 UNIDADE IV – GERÊNCIA DE MEMÓRIA 1 Hierarquia de Armazenamento 1.1 Conceituação dos Tipos de Memória (Cache, Primária, Secundária e Virtual) 1.2 Organização Física dos Diferentes Tipos de Memória 1.3. Conceito de espaço de Endereçamento 2 Memória Cache 2 .1. Tipos de Cache 2 .2. Princípio da Localidade 2 .3. Formas de Acesso, Proteção e Compartilhamento 2 .4. Estratégias de Escrita 3 Memória Primaria 3.1. Alocação, Acesso, Proteção e Compartilhamento 3.2. Formas de Particionamento de memória (contígua, estática, etc.) 4. Memória Virtual 4.1 Fundamentos 4.2. Estrutura de Controle 4.3. Espaço de Endereçamento Virtual 4.4. Algoritmos de Alocação 4.5. Cache de Endereços (TLB) 4.6. Thrashing 5. Memória Secundária 5.1. Estrutura do Disco 5.2. Escalonamento das Requisições 5.3. Sistema RAID UNIDADE V – GERÊNCIA DE ARQUIVOS E SISTEMA DE ARQUIVOS 1 Arquivos e Gerenciadores de arquivos 2 Alocação de Espaço em Disco 3 Proteção de Acesso UNIDADE VI – GERÊNCIA DE DISPOSITIVOS 1 Operações de E/S 2 Device Drive 3 Controladores BIBLIOGRAFIA BÁSICA: 100 1.Stallings, W. Operating Systems: Internals and Design Principles. 6th edition. Macmillan Publishing Company, 2008. 2. Silberschatz A. et. all. Sistemas Operacionais com Java. Editora Campus. 7ª edição traduzida, 2008. 3.Tanenbaum, Andrew S.; Woodhull, Albert S. Sistemas Operacionais: Projeto e Implementação. 3a edição. Editora Bookman, 2006. BIBLIOGRAFIA COMPLEMENTAR: 1.Deitel H. M.; Deitel P. J. ; Choffnes D. R. Sistemas Operacionais. Editora Pearson, 3ª edição traduzida, 2005. 2.Machado, Francis B., Maia, Luiz Paulo. Arquitetura de Sistemas Operacionais 3ª edição Rio de Janeiro LTC Editora, 2002. 3.Flynn, Ida M., Mchoes, Ann M. Introdução aos Sistemas Operacionais Editora Thomson, 2002. 101 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE SISTEMAS OPERACIONAIS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar os conhecimentos vistos na disciplina de sistemas operacionais em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em sistemas operacionais. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Stallings, W. Operating Systems: Internals and Design Principles. 6th edition. Macmillan Publishing Company, 2008. 2. Silberschatz A. et. all. SistemasOperacionais com Java. Editora Campus. 7ª edição traduzida, 2008. 3. Tanenbaum, Andrew S.; Woodhull, Albert S. Sistemas Operacionais: Projeto e Implementação. 3a edição. Editora Bookman, 2006. BIBLIOGRAFIA COMPLEMENTAR: 1.Deitel H. M.; Deitel P. J. ; Choffnes D. R. Sistemas Operacionais. Editora Pearson, 3ª edição traduzida, 2005. 2.Machado, Francis B., Maia, Luiz Paulo. Arquitetura de Sistemas Operacionais 3ª edição Rio de Janeiro LTC Editora, 2002. 3.Flynn, Ida M., Mchoes, Ann M. Introdução aos Sistemas Operacionais Editora Thomson, 2002. 102 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE IA Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar os conhecimentos vistos na disciplina de inteligência artificial em situações concretas da área de Ciência da Computação. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de inteligência artificial. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula. BIBLIOGRAFIA BÁSICA: 1.Russel, S.; Norvig, P. Artificial Intelligence – A Modern Approach. 3a. ed., Prentice Hall, 2010. 2.Rezende, S. Sistemas Inteligentes – Fundamentos e Aplicações. São Paulo: Manole, 2003. 3.Goldschmidt, R. Uma Introdução à Inteligência Computacional: Fundamentos, Ferramentas e Aplicações, Rio de Janeiro, 2010. Disponível em: http://www.faetec.rj.gov.br/ist- rio/app/images/livros/ic3.pdf BIBLIOGRAFIA COMPLEMENTAR: 1. Braga, A. P.; Carvalho, A. P.; Ludermir, T. B. Redes Neurais Artificiais – Teoria e Aplicações, 2ª. ed., Rio de Janeiro: LTC, 2007. 2. Haykin, S. Redes Neurais: Princípios e Prática. 2ª ed., Porto Alegre: Bookman, 2001. 3. Linden, R. Algoritmos Genéticos. São Paulo: Brasport, 2006. 4. Luger, G. F. Inteligência Artificial. Porto Alegre: Bookmann, 2004. 5. Clocksin, W. F.; Mellish, C. S. Programming in Prolog: Using the ISO Standard, Springer, 2003. 6. Oliveira, H.; Caldeira, A.; Machado M.; Souza, R.; Tanscheit, R. Inteligência Computacional Aplicada à Administração, Economia e Engenharia em Matlab. São Paulo: Thomson, 2007. 7. Nascimento, C.; Yoneyama, T. Inteligência Artificial em Controle e Automação. São Paulo: Edgard 103 Blucher, 2004. 8. Rich, Elaine. Inteligência Artificial. São Paulo: Makron, 1992. 104 Sexto Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 473 CRÉDITOS: 4 (4T-0P) BANCO DE DADOS Cada Crédito corresponde a 15h/ aula (Pré-requisitos: Estrutura de Dados II) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Desenvolver, a partir de um conjunto de requisitos especificados, o projeto de banco de dados de aplicações relacionais, tomando como base o modelo relacional de dados; b. Conhecer a importância do paradigma de banco de dados frente à abordagem tradicional de arquivos; c. Compreender as técnicas de desenvolvimento de bases de dados, com especial enfoque ao modelo relacional, desde sua concepção até sua implementação; d. Acessar e manipular banco de dados por meio de linguagens de consulta estruturada; e. Entender a operação dos diversos módulos integrantes dos sistemas gerenciadores de banco de dados relacionais. EMENTA: Conceitos Básicos, Histórico, Modelos de Dados Representacionais (Hierárquico, Redes, Relacional e Orientado a Objetos), Modelagem Conceitual, Projeto Lógico, Projeto Físico, Normalização de Dados, Álgebra Relacional, Cálculo Relacional, SQL, Sistemas de Gerenciamento de Banco de Dados: Arquitetura, Gerenciamento de Transações e Controle de Concorrência, Otimização de Consultas, Segurança, Integridade e Recuperação de Falhas. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1. Características e Terminologia 2. Conceitos, Classificações e Arquitetura dos Sistemas Gerenciadores de Bancos de Dados 105 3. Modelos Representacionais: Hierárquico, Redes, Relacional e Orientado a Objetos UNIDADE II – MODELAGEM DE DADOS CONCEITUAL 1. Modelo Entidade-Relacionamento 2. Modelo de Classes de Domínio 3. Aplicações UNIDADE III – MODELO RELACIONAL 1. Fundamentos 2. Chaves Primárias e Estrangeiras 3. Restrições de Integridade UNIDADE IV – PROJETO DE BANCO DE DADOS 1. Projeto Lógico (Mapeamento do Modelo Conceitual para o Modelo Relacional) 2. Projeto Físico (Previsão de Crescimento, Criação de Índices e Tunning de Banco de Dados) 3. Normalização de Dados (Primeira, Segunda e Terceira Formas Normais e Forma Normal de BoyceCodd) 4. Engenharia Reversa (Mapeamento do Modelo Relacional para o Modelo Conceitual) 5. Implementação de Bancos de Dados UNIDADE V – LINGUAGENS DE CONSULTA EM SGBDR 1. Álgebra Relacional 2. Cálculo Relacional 3. SQL 4. PL/SQL (Procedimentos e Gatilhos) UNIDADE VI – CARACTERÍSTICAS DE IMPLEMENTAÇÃO EM SGBDR 1. Armazenamento e Organização de Arquivos 2. Estruturas de Indexação 3. Otimização de Consultas 4. Processamento de Transações e Controle de Concorrência 5. Recuperação de Falhas 6. Segurança em Bancos de Dados BIBLIOGRAFIA BÁSICA: 1. Elmasri, R.E., Navathe, S. Sistemas de Banco de Dados. 6a Ed., Pearson / Addison-Wesley, São Paulo, 2011. 106 2. Silberschatz, A., Korth, H., Sudarshan, S. Sistema de Banco de Dados. 5ª. ed., Rio de Janeiro: Campus, 2006. 3. Heuser, C.A. Projeto de Banco de Dados. 5a Ed., Sagra Luzzatto, Porto Alegre, 2004. BIBLIOGRAFIA COMPLEMENTAR: 1. Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. 2ª. ed., Rio de Janeiro: Campus, 2007. 2. Date, C. J. Introdução a Sistemas de Bancos de Dados, 8ª. ed., Campus, Rio de Janeiro, 2004. 3. Machado, F. N. Projeto de Banco de Dados. São Paulo: ERICA, 1995. 107 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 476 CRÉDITOS: 4 (4T-0P) REDES DE COMPUTADORES Cada Crédito corresponde a 15h/ aulas (Pré-requisitos: Sistemas Operacionais) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender o funcionamento do hardware e do software empregados em redes de computadores; b. Conceituar os modelos de referência OSI e TCP/IP; c. Analisar e categorizar os serviços de comunicação de dados. EMENTA: Introdução: o uso, o hardware e o software de redes de computadores; os modelos de referência OSI e TCP/IP; exemplos de redes; os serviços de comunicação de dados; o nível físico, o nível de enlace e o nível de rede. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1. Usos das Redes de Computadores; 2. A estrutura da Rede de Computadores; 3. A arquitetura dos computadores ligados em Rede; 4. O modelo de referência ISO; 5- Protocolos e Serviços; 6. Exemplos de Redes. UNIDADE II – O NÍVEL FÍSICO 1. Base teórica da comunicação de dados; 2. Os meios de transmissão; 3. A transmissão Analógica; 4. A transmissão digital; 5. Técnicas de Chaveamento; 6. A manipulação de terminais. 108 UNIDADE III – O NÍVEL DE ENLACE (DATA LINK LAYER) 1. Visão global; 2. A Detecção e Correção de Erros; 3. Os protocolos Elementares; 4. Os protocolos com mecanismos de janela; 5. O desempenho dos protocolos; 6. Exemplos do nível de enlace. UNIDADE IV – O NÍVEL DE REDE 1. Visão global; 2. Algoritmos de Encaminhamento; 3. Algoritmos para controlar congestionamento e Deadlocks; 4. Interligação entre Redes; 5. Exemplos do Nível de Rede. BIBLIOGRAFIA BÁSICA: 1. Soares, L.F.G., Lemos, G., Colcher, S. Redes de Computadores: Das LANs, MANs, e WANs às Redes ATM. , Ed. Campus, Rio de Janeiro, 2002. 2. Tanenbaum, A.S. Redes de Computadores. Tradução da 4a Ed., Campus, Rio de Janeiro, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1. Comer, D.E. Redes de Computadores e Internet. 2a Ed., Bookman, Porto Alegre, 2001. 2. Tittel, E. Rede de Computadores. Bookman, Porto Alegre, 2003. 109 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM861 CRÉDITOS: 4 (4T-0P) COMPILADORES Cada Crédito corresponde a 15h/ aula (Pré-requisito: Linguagens de Programação) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender a teoria e as técnicas usadas na construção de compiladores b. Projetar e testar um compilador completo para uma linguagem algorítmica. EMENTA: Análise léxica, sintática; Tradução dirigida pela sintaxe; Otimização; Recuperação de erros; Alocação de registradores. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1. Conceito de Arquivo. Arquivos Físicos; 2. Meios de armazenamento; 3. Dispositivos de Entrada e Saída e seu Controle; 4. Interface com os sistemas operacionais; UNIDADE II – ARQUIVOS EM SÉRIE E SEQÜÊNCIAS 1. Atualização; Em lotes, e Intercalação; UNIDADE III – CLASSIFICAÇÃO EXTERNA 1. Geração de Partições Classificadas; 2. Distribuição e Intercalação de Partições; UNIDADE IV – ARQUIVOS DE ACESSO DIRETO 1. Funções ‘"hash", Colisões; 2. Arquivos Extensíveis; UNIDADE V – ARQUIVOS INDEXADOS PELA CHAVE PRIMÁRIA 1. Arquivos Sequenciais Indexados; 110 2. Árvores Balanceadas; UNIDADE VI – ARQUIVOS INDEXADOS POR MÚLTIPLAS CHAVES 1. Arquivos Multilista. Arquivos Invertidos; 2. Processos de implementação de índices secundários; UNIDADE VII –NORMALIZAÇÃO 1. Modelo de Entidades e Relacionamentos; 2. Projeto de Entidades por Decomposição; 3. Formas Normais; UNIDADE VIII – O DESENVOLVIMENTO DE UM COMPILADOR 1.Técnicas de Análise Sintática 2.Ascendente: SLR 3.Descendente : Descendente Recursivo – Parser Preditivo (LL(K)) 4.Recuperação de Erros 5.Análise Semântica 6.Alocação de Memória 7.Geração e Otimização de Código 8. Projeto, definição e implementação de uma linguagem e o seu formalismo reconhecedor (Autômato, Autômato de Pilha, Máquina de Turing, Máquina de Post, etc.) BIBLIOGRAFIA BÁSICA: 1. A. Tharp. “File Organization and Processing”. John Wiley & Sons, Inc. 1988. 2. P.D. Smith, G.M. Barnes. “Files and Databases: An Introduction”. Addison Wesley – Series in Computer Science Reading, 1987. 3. E. Horowtiz, S. Sahni. “Fundamentos de Estruturas de Dados”. Editora Campus, Rio de Janeiro, 1984. BIBLIOGRAFIA COMPLEMENTAR: 1. N. Wirth. “Algorithms + Data Structures = Programs”. Prentice -Hall- Englewood Cliffs, 1976. 2. D.E. Knuth. “The Art of Computer Programming”. Addison-Wesley- Reading, 1973. 111 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) MODELAGEM DE SISTEMAS DE INFORMAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisito: Fundamentos de Sistemas; Computação II) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os conceitos da orientação a objetos; b. Entender as etapas que compõem a modelagem de sistemas de informação e as técnicas aplicadas nesta atividade; c. Aplicar as técnicas de modelagem gráfica em estudos de casos de documentação de sistemas de informação EMENTA: Introdução. Modelagem de Classes de Análise. Modelagem de Interações, de Estados e de Atividades. Arquitetura de Sistema. Padrões de Análise. Prática de Estudo de Caso. CONTEÚDO PROGRÁMATICO: UNIDADE I – INTRODUÇÃO 1.Revisão do processo de desenvolvimento de software e de requisitos 2.Visão da linguagem de modelam gráfica UML 3.Revisão da modelagem de casos de uso 4.Revisão dos Cenários – técnica para a descrição dos casos de uso UNIDADE II – MODELAGEM DE CLASSES DE ANÁLISE 1.Estágios do modelo de análise 2.Diagrama de classes e diagrama de objetos 3.Técnicas para identificação das classes (requisitos de persistência) 4.Construção do modelo de classes e prática de estudos de caso 5. Etapas que compõem o projeto e o desenvolvimento de Sistemas de Informação: UNIDADE III – MODELAGEM DE INTERAÇÕES 1.Elementos da modelagem de interações 2.Diagrama de sequência 3.Diagrama de comunicação 112 4.Construção do modelo de interações e prática de estudos de caso. UNIDADE IV – MODELAGEM DE ESTADOS 1. Diagrama de transição de estados 2. Construção de diagrama de transição de estados e prática de estudos de caso. UNIDADE V – MODELAGEM DE ATIVIDADES 1. Diagrama de atividades 2. Construção de diagrama de atividades e prática de estudos de caso. UNIDADE VI – ARQUITETURA DO SISTEMA 1. Arquitetura lógica e implantação física 2. Projeto da arquitetura no processo de desenvolvimento. UNIDADE VI – PADRÕES DE ANÁLISE 1. Padrões de Accountability (organização e responsabilidade) 2.Padrões de Observações e Medições 3.Padrões de Observações para a Finança Corporativa 4.Padrões de Inventário e Contabilidade 5.Padrões de Planejamento 6.Padrões para o Comércio 7.Padrões de Contratos de Derivativos. BIBLIOGRAFIA BÁSICA: 1. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 2.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Campus, 2007 3. Fowler, M. Analysis Patterns – Reusable Object Models, Addison-Wesley,1997. 4.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. BIBLIOGRAFIA COMPLEMENTAR: 1. GROUP,B. R. Business Rules Manifesto-The Principles of Rule Independence, 2003 2. IIBA. Guia BABOK – Versão 2.0: Um guia para corpo de conhecimento em análise de negócios. São Paulo, IIBA, 2011. Disponível para leitura online em http://portoalegre.iiba.org/index.php/noticias/29-iiba-sao-paulo-lanca-guia-babok-em-portugues 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 113 7.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 114 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisito: ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Variável a cada semestre, ficando vinculado ao ementário adotado para a oferta no semestre. EMENTA: Consultar a tabela de ofertas de Tópicos Especiais disposta na seçãoTópicos Especiais em Ciência da Computação. CONTEÚDO PROGRÁMATICO: Núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Nesta oferta de Tópicos Especiais em Ciência da Computação há um primeiro conjunto de possibilidades de conteúdos a serem ofertados disposta na seção Tópicos Especiais em Ciência da Computação. A escolha do conteúdo a ser ofertado dependerá da demanda e interesse dos discentes, das demandas dos projetos de pesquisa e extensão e da disponibilidade do professor para lecionar tal conteúdo. BIBLIOGRAFIA BÁSICA: 1.Consultar na proposta de oferta no semestre. BIBLIOGRAFIA COMPLEMENTAR: 1. Consultar na proposta de oferta no semestre. 115 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE BANCO DE DADOS E MODELAGEM Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: b. Aplicar os conhecimentos vistos na disciplina de banco de dados e modelagem de sistemas em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em de banco de dados e modelagem de sistemas. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1. Elmasri, R.E., Navathe, S. Sistemas de Banco de Dados. 6a Ed., Pearson / Addison-Wesley, São Paulo, 2011. 2. Silberschatz, A., Korth, H., Sudarshan, S. Sistema de Banco de Dados. 5ª. ed., Rio de Janeiro: Campus, 2006. 3. Heuser, C.A. Projeto de Banco de Dados. 5a Ed., Sagra Luzzatto, Porto Alegre, 2004. 4. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 5.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Campus, 2007 6. Fowler, M. AnalysisPatterns - ReusableObjectModels, Addison-Wesley,1997. 7.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. BIBLIOGRAFIA COMPLEMENTAR: 1. Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. 2ª. ed., Rio de Janeiro: Campus, 2007. 2. Date, C. J. Introdução a Sistemas de Bancos de Dados, 8ª. ed., Campus, Rio de Janeiro, 2004. 3. Machado, F. N. Projeto de Banco de Dados. São Paulo: ERICA, 1995. 4. GROUP,B. R. Business Rules Manifesto-The Principles of Rule Independence, 2003 116 . 5. IIBA. Guia BABOK – Versão 2.0: Um guia para corpo de conhecimento em análise de negócios. São Paulo, IIBA, 2011. Disponível para leitura online em http://portoalegre.iiba.org/index.php/noticias/29-iiba-sao-paulo-lanca-guia-babok-em-portugues 6. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 7.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 8. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 9.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 10.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 117 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE REDES DE COMPUTADORES Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: b. Aplicar os conhecimentos vistos na disciplina de redes de computadores em situações concretas da área de Ciência da Computação. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de redes de computadores. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula. BIBLIOGRAFIA BÁSICA: 1. Soares, L.F.G., Lemos, G., Colcher, S. Redes de Computadores: Das LANs, MANs, e WANs às Redes ATM. , Ed. Campus, Rio de Janeiro, 2002. 2. Tanenbaum, A.S. Redes de Computadores. Tradução da 4a Ed., Campus, Rio de Janeiro, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1. Comer, D.E. Redes de Computadores e Internet. 2a Ed., Bookman, Porto Alegre, 2001. 2. Tittel, E. Rede de Computadores. Bookman, Porto Alegre, 2003. 118 Sétimo Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) PROJETO DE SISTEMAS Cada Crédito corresponde a 15h/ aula (Pré-requisito: Modelagem de Sistemas de Informação) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender as etapas do projeto de software e aplicar em estudo de casos; b. Aplicar padrões de projeto em estudos de caso c. Aplicar as técnicas de modelagem de interface homem-computador em estudos de caso EMENTA: Fundamentos do Projeto de Sistemas. Modelagem da Solução. Padrões de Projeto. Modelagem de Interface Homem-Computador. Prática de Estudo de Caso. CONTEÚDO PROGRÁMATICO: UNIDADE I – FUNDAMENTOS DO PROJETO DE SISTEMAS 1.Princípios do projeto de software 2.Passagem da etapa de análise para o projeto de sistemas 3.Técnicas 4.Processo: Visão geral e atividades UNIDADE II – MODELAGEM DA SOLUÇÃO 1.Modelagem de classes de Projeto 2.Detalhamento dos diagramas de interação para inserção de decisões de projeto 3.Outras visões da solução: testes, arquitetura da solução, implementação, visão de dados, componentes e implantação 4.Prática de estudos de caso. UNIDADE III – PADRÕES DE PROJETO 1. Padrões GRASP 119 1.1 High Coesion 1.2 Low Coupling 1.3 Expert 1.4 Creator 1.5Controller 2. Outros Padrões relevantes. UNIDADE IV – PROJETO DE INTERFACE HOMEM-MÁQUINA 1. Fundamentos: Engenharia Cognitiva e Engenharia Semiótica 2. Modelagem dos usuários de software. 3.Modelagem das tarefas 3.1 Aplicação do Modelo de Casos de Uso da Análise 3.2 Detalhamento dos Cenários de Caso de Uso do ponto de vista da utilização da interface 3.3.Diagramas de atividades com tipagem dos requisitos de interação 3.4 Diagrama de navegação ente janelas 3.5 Storyboardings 3.6 Documentação dos storyboardings 3.5 Protótipos de baixa fidelidade BIBLIOGRAFIA BÁSICA: 1.Craig Larman, Utilizando UML e Padrões, Ed Bookman 2.Eric Gamma, et ali, Padrões de Projeto, Ed Bookman 3. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 4.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Campus, 2007 BIBLIOGRAFIA COMPLEMENTAR: 1. Fowler, M. AnalysisPatterns - ReusableObjectModels, Addison-Wesley,1997. 2.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 7.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 8.Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman 120 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) COMPUTAÇÃO III Cada Crédito corresponde a 15h/ aula (Pré-requisito: Computação II) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar padrões de projeto e técnicas profissionais de desenvolvimento de software em estudos de caso reais; b. Desenvolver um sistema de informação praticando todas as etapas do desenvolvimento de software profissional EMENTA: Desenvolvimento em N Camadas com Aplicação de Padrões de Projeto . Componentização. Frameworks. Prática de Estudo de Caso. CONTEÚDO PROGRÁMATICO: UNIDADE I – DESENVOLVIMENTO EM N CAMADAS 1.Fundamentos do desenvolvimento de software com arquiteturas avançadas 2.Etapas e conceitos do desenvolvimento em n camadas UNIDADE II – COMPONENTIZAÇÃO 1. Conceitos básicos e ambiente de desenvolvimento dos componentes 2.Metodologias e ferramentas. 3.Prática de estudos de caso. UNIDADE III – FRAMEWORKS 1. Conceitos básicos e ambiente de desenvolvimento com frameworks 2.Metodologias e ferramentas. 3.Prática de estudos de caso. BIBLIOGRAFIA BÁSICA: 1.Craig Larman, Utilizando UML e Padrões, Ed Bookman 2.Eric Gamma, et ali, Padrões de Projeto, Ed Bookman 3. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 4.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Junior: Campus, 2007 121 5.Szyperski, Clemens. Component Software: Beyond Object-Oriented Programming”. 2nd Edition. The Component Software Series, Addison Wesley Professional. 6. Cornell, G.; Horstmann, C. Core Java: Volume II-Recursos Avançados. São Paulo: Makron Books, 2001. BIBLIOGRAFIA COMPLEMENTAR: 1. Fowler, M. Analysis Patterns - Reusable Object Models, Addison-Wesley,1997. 2.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 7.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 8.Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman 122 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM873 CRÉDITOS: 4 (4T-0P) SISTEMAS DISTRIBUIDOS Cada Crédito corresponde a 15h/ aula (Pré-requisito: Redes de Computadores) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os conceitos, características e ferramentas existentes dos Sistemas Distribuídos; b. Identificar os componentes de um sistema distribuído, bem como, introduzir as principais técnicas de comunicação entre processos; c. Conhecer técnicas relacionadas a sistemas de arquivos distribuídos e tolerância a falhas. EMENTA: Introdução a Sistemas Distribuídos. O projeto de Sistemas Distribuídos. Comunicação em Sistemas Distribuídos. Sincronização em Sistemas Distribuídos. Segurança em Sistemas Distribuídos. Sistema de Arquivos Distribuídos. Componentes para Computação Distribuída. Sistemas Distribuídos baseados na WEB. Tópicos especiais. CONTEÚDO PROGRÁMATICO: UNIDADE I –INTRODUÇÃO A SISTEMAS DISTRIBUÍDOS 1. Definição, objetivos e tipos de Sistemas Distribuídos 2. Sistemas Distribuídos, Concorrentes e Paralelos: Categorização e terminologia básica 3. Arquitetura de sistemas distribuídos: centralizada, descentralizada e híbrida. UNIDADE II – O PROJETO DE SISTEMAS DISTRIBUÍDOS 1. Aspectos críticos que influenciam o projeto de SDs UNIDADE III – COMUNICAÇÃO NOS SISTEMAS DISTRIBUÍDOS 1. Protocolos em Camadas 2. Chamada Remota a Procedimentos 3. Modelo Cliente-Servidor 4. Modelo P2P 5. Usando Sockets e TCP/IP, RMI-Java e CORBA 6. Novas técnicas para distribuição de processamento: Comunicação híbrida - mensagem e memória 123 compartilhada - OpenMP + MPI. UNIDADE IV – SINCRONIZAÇÃO EM SISTEMAS DISTRIBUÍDOS 1. Sincronização através de clock e clocks lógicos 2. Exclusão mútua 3. Algoritmos eletivos 4. Deadlocks UNIDADE V – SEGURANÇA EM SISTEMAS DISTRIBUÍDOS 1.Introdução 2 Canais de segurança 3 Controle de acesso 4 Gerenciamento de segurança UNIDADE V – SISTEMA DE ARQUIVOS DISTRIBUÍDOS 1 Fundamentos, Nomeação e Acesso a arquivos remotos 2 Serviço e Replicação de Arquivos (estudo sobre replicação e consistência de dados) 3 O NFS - Network File System UNIDADE VII – COMPONENTES PARA COMPUTAÇÃO DISTRIBUÍDA 1. Fundamentos para a computação distribuída 2. RMI 3.CORBA UNIDADE VIII –. SISTEMAS DISTRIBUÍDOS BASEADOS NA WEB 1. Conceitos básicos 2. Web Servers UNIDADE IX – TÓPICOS ESPECIAIS 1 Clusters, Grids 2 CloudingComputing BIBLIOGRAFIA BÁSICA: 1.Coulouris, G. F. Distributed systems: concepts and design. 3nd. ed. London: Addison-Wesley, 2001 2.Tanembaum, A. S., Steen, M. V. Distributed Systems: Principles and Paradigms. 2nd. Pearson, 2007. BIBLIOGRAFIA COMPLEMENTAR: 1.Teixeira, José Helvécio. et al. Do Mainframe Para a Computação Distribuída - Simplificando a 124 Transição. Rio de Janeiro:Infobook, 1996. 2.Cornell, G.; Horstmann, C. Core Java: Volume II-Recursos Avançados. São Paulo: Makron Books, 2001. 3.Lynch, N. Distributed Algorithms. San Francisco (CA): Morgan Kaufmann Publishers, 1996. 4.Oram, A. (Ed.) Peer-To-Peer: o poder transformador das redes ponto a ponto. São Paulo: Berkeley, 2001. 5.Rischpater, R. Desenvolvimento Wireless para Web. São Paulo: Makron Books, 2001. 125 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) TÓPICOS ESPECIAIS EM BANCO DE DADOS E ENG.DE SOFTWARE Cada Crédito corresponde a 15h/ aula (Pré-requisito: ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Variável a cada semestre, ficando vinculado ao ementário adotado para a oferta no semestre. EMENTA: Consultar a tabela de ofertas de Tópicos Especiais disposta na seção Tópicos Especiais em Banco de Dados e Engenharia de Software. CONTEÚDO PROGRÁMATICO: Núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Nesta oferta de Tópicos Especiais em Ciência da Computação há um primeiro conjunto de possibilidades de conteúdos a serem ofertados disposta na seção Tópicos Especiais em Banco de Dados e Engenharia de Software. A escolha do conteúdo a ser ofertado dependerá da demanda e interesse dos discentes, das demandas dos projetos de pesquisa e extensão e da disponibilidade do professor para lecionar tal conteúdo. BIBLIOGRAFIA BÁSICA: 1. Elmasri, R.E., Navathe, S. Sistemas de Banco de Dados. 6a Ed., Pearson / Addison-Wesley, São Paulo, 2011. 2. Silberschatz, A., Korth, H., Sudarshan, S. Sistema de Banco de Dados. 5ª. ed., Rio de Janeiro: Campus, 2006. . 3. Heuser, C.A. Projeto de Banco de Dados. 5a Ed., Sagra Luzzatto, Porto Alegre, 2004. 4. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 5.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Campus, 2007 6. Fowler, M. AnalysisPatterns - ReusableObjectModels, Addison-Wesley,1997. 126 7.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. BIBLIOGRAFIA COMPLEMENTAR: 1. Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. 2ª. ed., Rio de Janeiro: Campus, 2007. 2. Date, C. J. Introdução a Sistemas de Bancos de Dados, 8ª. ed., Campus, Rio de Janeiro, 2004. 3. Machado, F. N. Projeto de Banco de Dados. São Paulo: ERICA, 1995. 4. GROUP,B. R. Business Rules Manifesto-The Principles of Rule Independence, 2003 5. IIBA. Guia BABOK – Versão 2.0: Um guia para corpo de conhecimento em análise de negócios. São Paulo, IIBA, 2011. Disponível para leitura online em http://portoalegre.iiba.org/index.php/noticias/29-iiba-sao-paulo-lanca-guia-babok-em-portugues 6. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 7.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 8. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 9.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 10.Turban E. et al. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 127 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) TÓPICOS ESPECIAIS EM INTELIGÊNCIA ARTIFICIAL Cada Crédito corresponde a 15h/ aula (Pré-requisito: ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Variável a cada semestre, ficando vinculado ao ementário adotado para a oferta no semestre. EMENTA: Consultar a tabela de ofertas de Tópicos Especiais disposta na seçãoTópicos Especiais em Inteligência Artificial. CONTEÚDO PROGRÁMATICO: Núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Nesta oferta de Tópicos Especiais em Ciência da Computação há um primeiro conjunto de possibilidades de conteúdos a serem ofertados disposta na seçãoTópicos Especiais em Inteligência Artificial. A escolha do conteúdo a ser ofertado dependerá da demanda e interesse dos discentes, das demandas dos projetos de pesquisa e extensão e da disponibilidade do professor para lecionar tal conteúdo. BIBLIOGRAFIA BÁSICA: 1.Russel, S.; Norvig, P. Artificial Intelligence – A Modern Approach. 3a. ed., Prentice Hall, 2010. 2.Rezende, S. Sistemas Inteligentes – Fundamentos e Aplicações. São Paulo: Manole, 2003. 3.Goldschmidt, R. Uma Introdução à Inteligência Computacional: Fundamentos, Ferramentas e Aplicações, Rio de Janeiro, 2010. Disponível em: http://www.faetec.rj.gov.br/ist- rio/app/images/livros/ic3.pdf BIBLIOGRAFIA COMPLEMENTAR: 1. Braga, A. P.; Carvalho, A. P.; Ludermir, T. B. Redes Neurais Artificiais – Teoria e Aplicações, 2ª. ed., 128 Rio de Janeiro: LTC, 2007. 2. Haykin, S. Redes Neurais: Princípios e Prática. 2ª ed., Porto Alegre: Bookman, 2001. 3. Linden, R. Algoritmos Genéticos. São Paulo: Brasport, 2006. 4. Luger, G. F. Inteligência Artificial. Porto Alegre: Bookmann, 2004. 5. Clocksin, W. F.; Mellish, C. S. Programming in Prolog: Using the ISO Standard, Springer, 2003. 6. Oliveira, H.; Caldeira, A.; Machado M.; Souza, R.; Tanscheit, R. Inteligência Computacional Aplicada à Administração, Economia e Engenharia em Matlab. São Paulo: Thomson, 2007. 7. Nascimento, C.; Yoneyama, T. Inteligência Artificial em Controle e Automação. São Paulo: Edgard Blucher, 2004. 8. Rich, Elaine. Inteligência Artificial. São Paulo: Makron, 1992. 129 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE PROJETO DE SISTEMAS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar os conhecimentos vistos na disciplina de projeto de sistemas em situações concretas da área de Ciência da Computação. EMENTA: Laboratório para atividades práticas em projeto de sistemas. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula.. BIBLIOGRAFIA BÁSICA: 1.Craig Larman, Utilizando UML e Padrões, Ed Bookman 2.Eric Gamma, et ali, Padrões de Projeto, Ed Bookman 3. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 4.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Janeiro: Campus, 2007 BIBLIOGRAFIA COMPLEMENTAR: 1. Fowler, M. AnalysisPatterns - ReusableObjectModels, Addison-Wesley,1997. 2.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 7.Turban E. et all. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 8.Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman. 130 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO ATIVIDADE ACADÊMICA COMPLEMENTAR CÓDIGO: AA... CRÉDITOS: 2 (0T-2P) LABORATÓRIO DE COMPUTAÇÃO III Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Aplicar os conhecimentos vistos na disciplina de computação III em situações concretas da área de Ciência da Computação. EMENTA: Atividades acadêmicas práticas em laboratório para o exercício de computação III. AVALIAÇÃO: A atividade deverá gerar um produto final a partir das técnicas vistas em sala de aula. BIBLIOGRAFIA BÁSICA: 1.Craig Larman, Utilizando UML e Padrões, Ed Bookman 2.Eric Gamma, et ali, Padrões de Projeto, Ed Bookman 3. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 4.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Junior: Campus, 2007 5.Szyperski, Clemens. Component Software: Beyond Object-Oriented Programming”. 2nd Edition. The Component Software Series, Addison Wesley Professional. 6. Cornell, G.; Horstmann, C. Core Java: Volume II-Recursos Avançados. São Paulo: Makron Books, 2001. BIBLIOGRAFIA COMPLEMENTAR: 1. Fowler, M. Analysis Patterns - Reusable Object Models, Addison-Wesley,1997. 2.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 7.Turban E. et all. Tecnologia da Informação para Gestão: transformando os negócios na economia 131 digital. 6ª.ed. Porto Alegre: Boockman, 2010. 8.Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman 132 Oitavo Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM 477 CRÉDITOS: 4 (4T-0P) OTIMIZAÇÃO LINEAR Cada Crédito corresponde a 15h/ aula (Pré-requisito: Álgebra Linear e Estrutura de Dados I) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Identificar problemas lineares; b. Construir soluções gráficas de problemas lineares; c. Aplicar métodos de otimização linear na solução de problemas de otimização linear; d. Compreender os conceitos de dualidade e análise de sensibilidade. EMENTA: Formulação de problemas lineares. Solução Gráfica.Método Simplex: Relação entre pontos extremos e soluções ótimas. Lema de Farkas e condições de otimalidade. Dualidade: formulação do problema dual. Análise de sensibilidade. Simplex revisado. CONTEÚDO PROGRAMÁTICO: UNIDADE I – O PROBLEMA DE PROGRAMAÇÃO LINEAR. 1. Definição do Problema. 2. Região factível. 3. Condições de otimalidade. UNIDADE II – MÉTODO SIMPLEX 1. O lema Farkas 2. O quadro simplex 3. Soluções degeneradas, soluções múltiplas 4. Análise de sensibilidade e Simplex revisado 133 5. Variáveis canalizadas. UNIDADE III – DUALIDADE 1. O problema Dual 2. Solução Primal-dual BIBLIOGRAFIA BÁSICA: 1.Rodrigues, P. C. P. ; Andrade, E. C. ; Furst, P. . Elementos de Programação Linear 2a edição. 2.ed. Seropédica: Editora Universidade Rural, 2001. v. 1. 168 p 2.M. S. Bazaraa, J. J. Davis e H. D. Sherali, Linear Programmingand Network Flows, John Wiley, 1990. 3.Murty, Linear and Combinatorial Programming, John Wiley, 1976. BIBLIOGRAFIA COMPLEMENTAR: 1.V. Chvátal, Linear Programming, Freeman, 1983. 2.S. C. Fang e S. Puthenpura, Linear Optimization and Extensions: Theory and Algorithms, PrenticeHall,1993. 134 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM866 CRÉDITOS: (4T-0P) ENGENHARIA DE SOFTWARE Cada Crédito corresponde a 15h/ aula (Pré-requisito: Projeto de Sistemas) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Conhecer os diferentes processos de desenvolvimento de software; b. Aplicar técnicas de gerenciamento de projetos de software; c. Planejar o emprego de métricas e aplicá-las em prática de exercícios de estudos de casos reais; d. Elaborar análise de risco de projetos de desenvolvimento de software; e. Conhecer os conceitos referentes à qualidade de produto e processo de software; f. Aplicar técnicas de teste de software em prática de exercícios de estudos de casos reais. EMENTA: Introdução. Processo de Software. Gerenciamento de Projeto. Planejamento de Projeto e Métricas de Software. Análise de Risco. Qualidade de Software. Teste de Software. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1. Histórico. 2. Visão geral do Desenvolvimento de software. 3. O Produto e o Processo. 4. Atribuições do Engenheiro de Software. 5. Desenvolvimento e Manutenção. UNIDADE II – GERENCIAMENTO DE PROJETO 1. Abordagens de Gerenciamento e Equipe. 2. Capability Maturity Model – CMM e Personal Software Process – PSP. 3. Analise de Valor Agregado. Acompanhamento de Erro. UNIDADE III – GERENCIAMENTO DE CONFIGURAÇÃO 135 1. Identificação, Documentação, Controle e Auditoria UNIDADE IV – PLANEJAMENTO DE PROJETO E MÉTRICAS DE SOFTWARE. 1. Planejamento de Software. 2. Avaliação e Revisão Técnica. 3. Estimativa de Custo de Software. 4. Teoria da Medida de Software. 5. Métricas do Produto e do Processo. UNIDADE V – ANÁLISE DE RISCO 1. Riscos de Software. 2. Identificação e Projeção de Riscos. 3. Mitigação, Monitoramento e Gerenciamento de Riscos. UNIDADE VI – QUALIDADE DE SOFTWARE 1. Conceitos de Qualidade. 2. Inspeção Formal. Técnicas de Revisão 3. Avaliação e Revisão Técnica. 4. Padrões IEEE para o Plano SQA. Padrões de Qualidade ISO 9000. UNIDADE VII – TESTE DE SOFTWARE 1. Fundamentos de Teste de Software. 2. Testes de Fluxo de Dados, Randômico, e de Fronteira. 3. Testes White-Box, Estruturas de Controle, e Black-Box. BIBLIOGRAFIA BÁSICA: 1. R. Pressman. “Engenharia de Software”. Makron Books do Brasil, 1995. 2. R.S. Pressman. “Software Engineering – A Practitioner’s Approach”. 5th Edition, 2001. BIBLIOGRAFIA COMPLEMENTAR: 1. D.A. Gustafson. “Engenharia de Software”. Coleção Schaum, Bookman, 2002. 136 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM472 CRÉDITOS: 4 (4T-0P) COMPUTAÇÃO GRÁFICA Cada Crédito corresponde a 15h/ aula (Pré-requisito: Álgebra Linear I e Estruturas de Dados I) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreendertransformações geométricas em duas e três dimensões; b. Entender coordenadas homogêneas e matrizes de transformação; c. Aplicar transformação entre sistemas de coordenadas 2d e 3d; d. Compreender os fundamentos da cor e de imagem digital. EMENTA: Introdução. Transformações geométricas em duas e três dimensões. Coordenadashomogêneas e matrizes de transformação. Transformação entre sistemas de coordenadas 2d e 3d.Fundamentos de cor. Imagem digital. CONTEÚDO PROGRAMÁTICO: UNIDADE I – INTRODUÇÃO 1 Áreas Correlatas; 2 Áreas de Aplicação; 3 Paradigmas de Abstração. UNIDADE II – TRANSFORMAÇÕES GEOMÉTRICAS 1 Geometria e transformações; 2 Transformações Afins; 3 A geometria da computação gráfica. UNIDADE III – TRANSFORMAÇÕES ENTRE SISTEMAS DE COORDENADAS 2D E 3D 1 Coordenadas retilínea no plano; 2 Coordenadas retilínea no espaço; 3 Coordenadas curvilíneas. UNIDADE IV – FUNDAMENTOS DA COR 137 1 Espaço espectral de cor; 2 Representação e Reconstrução de cor; 3 Sistemas físicos de cor; 4 Sistema padrão CIE-RGB; 5 Sistemas CIE-XYZ; 6 Sistemas de cor e computação gráfica. UNIDADE V – IMAGEM DIGITAL 1 Paradigmas de abstração para imagens; 2 Representação de uma imagem; 3 Quantização de cor e imagem; 4 Métodos de quantização; 5 Dithering; 6 Codificação de imagens. BIBLIOGRAFIA BÁSICA: 1. Gomes, J., Velho, L. Computação Gráfica – Vol. 1. IMPA, Rio de Janeiro, 1998. 2. Gomes, J., Velho, L. Fundamentos da Computação Gráfica. Série Computação e Matemática, IMPA, Rio de Janeiro, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1. Gomes, J., Velho, L. Computação Gráfica: Imagem. IMPA, Rio de Janeiro, 1994. 2. Watt, A.H. 3d Computer Graphics. 3rd Ed., Addison Wesley, 1999. 3. Gomes, J., Velho, L. Sistemas Gráficos 3D. Série Computação e Matemática, IMPA, Rio de Janeiro, 2001. 138 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) TÓPICOS ESPECIAIS EM PROGRAMAÇÃO DE COMPUTADORES Cada Crédito corresponde a 15h/ aula (Pré-requisito: ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Variável a cada semestre, ficando vinculado ao ementário adotado para a oferta no semestre. EMENTA: Consultar a tabela de ofertas de Tópicos Especiais disposta na seção Tópicos Especiais em Programação de Computadores. CONTEÚDO PROGRÁMATICO: Núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Nesta oferta de Tópicos Especiais em Ciência da Computação há um primeiro conjunto de possibilidades de conteúdos a serem ofertados disposta na seção Tópicos Especiais em Programação de Computadores. A escolha do conteúdo a ser ofertado dependerá da demanda e interesse dos discentes, das demandas dos projetos de pesquisa e extensão e da disponibilidade do professor para lecionar tal conteúdo. BIBLIOGRAFIA BÁSICA: 1.Craig Larman, Utilizando UML e Padrões, Ed Bookman 2.Eric Gamma, et ali, Padrões de Projeto, Ed Bookman 3. Filho, W.P.P. Engenharia de Software: fundamentos, métodos e padrões. 3ª. ed. São Paulo: LTC, 2009. 4.Bezerra, E. Princípios de Análise e Projeto de Sistemas com UML. Rio de Junior: Campus, 2007 5.Szyperski, Clemens. Component Software: Beyond Object-Oriented Programming”. 2nd Edition. The Component Software Series, Addison Wesley Professional. 6. Cornell, G.; Horstmann, C. Core Java: Volume II-Recursos Avançados. São Paulo: Makron Books, 2001. 139 BIBLIOGRAFIA COMPLEMENTAR: 1. Fowler, M. Analysis Patterns - Reusable Object Models, Addison-Wesley,1997. 2.Barbosa, G.M.G. Arquitetura de Software: Campina Grande: UFCG. 3. Sommerville, I. Engenharia de Software. 8ª. Ed. São Paulo: Pearson, 2007. 4.Pressman R. Engenharia de Software. 6a Ed. São Paulo: McGraw-Hill Interamericana do Brasil, 2006. 5. Pfleeger, S. Engenharia de Software: Teoria e prática. 2a. ed. São Paulo: Pearson/Prentice-Hall, 2004. 6.Stairs R. M. et all. Princípios de Sistemas de Informação. 9ª. ed. São Paulo: Cengage Learning, 2011 7.Turban E. et all. Tecnologia da Informação para Gestão: transformando os negócios na economia digital. 6ª.ed. Porto Alegre: Boockman, 2010. 8.Martin Fowler, Refatoração - Aperfeiçoando o projeto de código existente, Ed Bookman. 140 Nono Período UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM871 CRÉDITOS: 4 (4T-0P) COMPUTADORES E SOCIEDADE Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os fatores globais que influenciam o desenvolvimento da Informática; b. Analisar os impactos econômicos, tecnológicos, sociais, éticos e culturais dessa atividade. EMENTA: Ciência, Tecnologia e Sociedade. Estudos dos Aspectos Sociais, Econômicos, Legais e Profissionais de Computação. Aplicações Sociais da Computação. Software Proprietário e Software Livre. Internet. Ética Profissional. Doenças Profissionais. CONTEÚDO PROGRAMÁTICO: UNIDADE I - COMPUTADORES E SOCIEDADE 1. Ciência, Tecnologia e Sociedade. 2. Estudos dos Aspectos Sociais, Econômicos, Legais e Profissionais de Computação. 3.Aspectos Estratégicos do Controle da Tecnologia 4.Mercado de Trabalho 5.Previsões de Evolução da Computação UNIDADE II - APLICAÇÕES SOCIAIS DA COMPUTAÇÃO 1. Aplicações na Educação, Medicina, e Governo. UNIDADE III - INCLUSÃO DIGITAL 1. Software Proprietário 2.Software Livre. 141 UNIDADE IV - DIREITO DIGITAL 1. Internet: Direitos Fundamentais e Internet 2. Direito a Intimidade na Internet. UNIDADE IV – ÉTICA PROFISSIONAL 1.Segurança, Privacidade, Direitos de Propriedade 2. Acesso nãoAutorizado 3. Códigos de Ética Profissional. UNIDADE V – DOENÇAS PROFISSIONAIS 1. LER. 2.Boas práticas no exercício da profissão. BIBLIOGRAFIA BÁSICA: 1. P.C. Masiero. “Ética em Computação”. EDUSP, 2004. 2. T. Limberger. “O direito { intimidade na era da inform|tica.” Editora Livraria do Advogado, 2009. 3. M.C. Pereira. “Direito { intimidade na internet”. Editora Juru|, 2009. BIBLIOGRAFIA COMPLEMENTAR: 1. Souza, Sonia Maria Ribeiro de. Um outro olhar: filosofia. São Paulo, FTD, 1995. 2.Ceruzzi, Paul E, 1998. A History of Modern Computing. Massachusetts, MIT Press. 3.Edwards, Paul N., 1997. The Closed World : Computers and the Politics of Discourse in Cold War America. Massachussetts, MIT Press. 4.Haraway, Donna J., 1991, Simians, cyborgs and women: the reinvention of nature. New York, Routledge. 5.Hayles, N. Katherine , 1999, How We Became Posthuman : Virtual Bodies in Cybernetics, Literature, and Informatics. Chicago, University Of Chicago Press. 6.Latour, Bruno, 1987, Science in Action. Massachusetts, Harvard University Press. 142 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM877 CRÉDITOS: 4 (4T-0P) EMPREENDEDORISMO EM INFORMÁTICA Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender como exercer o papel de gestor em pequenos empreendimentos b. Conhecer e aplicar atitudes empreendedoras e ferramentas da administração de negócios c. Compreender os fatores globais que influenciam o desenvolvimento dos negócios em Informática. EMENTA: Estudo de mecanismos e procedimentos para criação de uma empresa. Estudar, analisar e desenvolver o perfil do empreendedor. Sistemas de Gerenciamento. Técnicas de Negociação; Marketing. Análise de Casos. Elaboração de plano de negócios. CONTEÚDO PROGRAMÁTICO: UNIDADE I - FUNDAMENTOS 1. Perfil do empreendedor. 2. Instituições (SEBRAE) e recursos de fomento ao empreendedorismo. UNIDADE II - EMPREENDEDORISMO 1. Capital de Risco 2.Incubadoras de Empresa 3.Empresa Junior 4.Plano de Negócios 5.Empreendedorismo e as Incubadoras de Empresa 6. Ética em gestão de pequenos negócios BIBLIOGRAFIA BÁSICA: 1. Degen, R.J., O Empreendedor: fundamentos da iniciativa empresarial. São Paulo: Makron Books, 1999. 2.Dolabela, F. Oficina do Empreendedor, São Paulo: Cultura Editora, 1999. 143 3.Dolabela, F., O Segredo de Luisa, São Paulo: Cultura Editores Associados, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1. Souza, Sonia Maria Ribeiro de. Um outro olhar: filosofia. São Paulo, FTD, 1995. 2.Ceruzzi, Paul E, 1998. A History of Modern Computing. Massachusetts, MIT Press. 3.Edwards, Paul N., 1997. The Closed World : Computers and the Politics of Discourse in Cold War America. Massachussetts, MIT Press. 4.Haraway, Donna J., 1991, Simians, cyborgs and women: the reinvention of nature. New York, Routledge. 5.Hayles, N. Katherine , 1999, How We Became Posthuman : Virtual Bodies in Cybernetics, Literature, and Informatics. Chicago, University Of Chicago Press. 6.Latour, Bruno, 1987, Science in Action. Massachusetts, Harvard University Press. 144 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: IM871 CRÉDITOS: 4 (4T-0P) GERÊNCIA DE PROJETOS Cada Crédito corresponde a 15h/ aula INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVO DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Compreender os conceitos de gerência de projetos; b. Aplicar os conceitos de gerência de projeto em projetos de desenvolvimento de sistemas de informação. EMENTA: Conceitos básicos da gerência de projetos. Metodologia de Gerência de Projetos. Planejamento Básico. Planejamento de Projetos. Estudo de viabilidade. Plano de Tarefas. Fatores Críticos de Sucesso; Alocação de Recursos. Gerência de Projetos de Sistemas de Informação. Técnicas de Estimativa: tempo, custo, pessoal, produtividade. Modelo de Estimativa de esforço. Riscos: Análise e Gerência. Determinação do Cronograma de Projeto. Medida de Software. CONTEÚDO PROGRAMÁTICO: UNIDADE I - FUNDAMENTOS 1.Conceitos básicos da gerência de projetos 2.Metodologia de Gerência de Projetos 3.Planejamento Básico 4.Planejamento de Projetos 5.Estudo de viabilidade. 6.Plano de Tarefas. 7.Fatores Críticos de Sucesso 8.Alocação de Recursos UNIDADE II - GERÊNCIA DE PROJETOS DE SISTEMAS DE INFORMAÇÃO 1. Técnicas de Estimativa: tempo, custo, pessoal, produtividade. 2.Modelo de Estimativa de esforço. 145 3.Riscos em projetos de desenvolvimento de sistemas de informação 4.Análise e Gerência. 5.Determinação do Cronograma de Projeto 6.Medida de Software. BIBLIOGRAFIA BÁSICA: 1. Martins, J. C. C. Gerenciando Projetos de Desenvolvimento de Software com PMI, RUP e UML. 4ª edição. Rio de Janeiro: Brasport, 2007. 2. Vazquez, C. E. SIMÕES, G. S. ALBERT, R. M. Análise de Pontos de Função: Medição, Estimativas e Gerenciamento de Projetos de Software. 5ª Edição. São Paulo: Érica, 2003. 3. Fernandes, A. A. Gerência de software através de métricas: garantindo a qualidade do projeto, processo e produto. São Paulo: Atlas, 1995. 4.Lencar, A. J. Schmitz, E. A. Análise de Risco em Gerência de Projetos. Rio de Janeiro: Brasport, 2006. 5.Dolabela, F., O Segredo de Luisa, São Paulo: Cultura Editores Associados, 2003. BIBLIOGRAFIA COMPLEMENTAR: 1. Souza, Sonia Maria Ribeiro de. Um outro olhar: filosofia. São Paulo, FTD, 1995. 2.Ceruzzi, Paul E, 1998. A History of Modern Computing. Massachusetts, MIT Press. 3.Edwards, Paul N., 1997. The Closed World : Computers and the Politics of Discourse in Cold War America. Massachusetts, MIT Press. 4.Haraway, Donna J., 1991, Simians, cyborgs and women: the reinvention of nature. New York, Routledge. 5.Hayles, N. Katherine , 1999, How We Became Posthuman : Virtual Bodies in Cybernetics, Literature, and Informatics. Chicago, University Of Chicago Press. 6.Latour, Bruno, 1987, Science in Action. Massachusetts, Harvard University Press. 146 UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO DECANATO DE ENSINO DE GRADUAÇÃO DEPARTAMENTO DE ASSUNTOS ACADÊMICOS E REGISTRO GERAL DIVISÃO DE REGISTROS ACADÊMICOS PROGRAMA ANALÍTICO DISCIPLINA CÓDIGO: ? ? ? CRÉDITOS: 4 (4T-0P) TÓPICOS ESPECIAIS EM OTIMIZAÇÃO Cada Crédito corresponde a 15h/ aula (Pré-requisito: ) INSTITUTO MULTIDISCIPLINAR DEPARTAMENTO DE TECNOLOGIAS E LINGUAGENS OBJETIVOS DA DISCIPLINA: Ao final da disciplina o aluno deve: a. Variável a cada semestre, ficando vinculado ao ementário adotado para a oferta no semestre. EMENTA: Consultar a tabela de ofertas de Tópicos Especiais disposta na seção Tópicos Especiais em Otimização. CONTEÚDO PROGRÁMATICO: Núcleo dos Tópicos Especiais oferece componentes curriculares abertos cujas ementas se adaptam para incorporar a evolução da área da computação. Esse núcleo compreende um total de 20 créditos, totalizando 300 horas-aula. Nesta oferta de Tópicos Especiais em Ciência da Computação há um primeiro conjunto de possibilidades de conteúdos a serem ofertados disposta na seção Tópicos Especiais em Otimização. A escolha do conteúdo a ser ofertado dependerá da demanda e interesse dos discentes, das demandas dos projetos de pesquisa e extensão e da disponibilidade do professor para lecionar tal conteúdo. BIBLIOGRAFIA BÁSICA: 1.Rodrigues, P. C. P. ; Andrade, E. C. ; Furst, P. . Elementos de Programação Linear 2a edição. 2.ed. Seropédica: Editora Universidade Rural, 2001. v. 1. 168 p 2.M. S. Bazaraa, J. J. Davis e H. D. Sherali, Linear Programmingand Network Flows, John Wiley, 1990. 3.Murty, Linear and Combinatorial Programming, John Wiley, 1976. BIBLIOGRAFIA COMPLEMENTAR: 1.V. Chvátal, Linear Programming, Freeman, 1983. 2.S. C. Fang e S. Puthenpura, Linear Optimization and Extensions: Theory and Algorithms, PrenticeHall, 1993. 147 DISCIPLINAS OPTATIVAS SEGUNDO EIXOS TEMÁTICOS MATEMÁTICA Código Nome Carga horária N° de créditos (T - P) Ementa Pré-requisitos IM846 MATEMÁTICA ELEMENTAR 60h 4T-0P Funções: Lineares, Quadrática, Modular, Exponencial, NENHUM Logarítmica, Polinômios. Número Complexo. IM844 GEOMETRIA EUCLIDIANA 60h 4T-0P Geometria Plana. Noções de Geometria Espacial. IM435 EQUACOES DIFERENCIAIS ORDINARIAS (EDO) 60 h 4T-0P Equações Diferenciadas de 1° ordem e aplicações. Teorema Cálculo II ( IM 404) e Álgebra de existência e Unicidade de soluções. Equações Linear I (IM 429). Diferenciais Lineares de 2° ordem e aplicações. Transformada de Laplace. Sistemas Autônomos nos Planos IM478 ÁLGEBRA LINEAR COMPUTACIONAL 60h 2T-2P Algoritmos para operações básicas entre vetores e Cálculo Numérico (IM 438). matrizes. Normas vetoriais e matriciais. Número de Condição. Análise da solução de sistemas lineares: existência e unicidade. Autovalores e autovetores. Fatoração de matrizes, decomposição SVD e suas aplicações numéricas ( incluindo resoluções de problemas de quadrado mínimo) IM436 ANALISE I 60 h 4T-0P Conjuntos finitos e infinitos. Número Reais. Sequências e Álgebra I (IM 847). Séries de números Reais, Topologia na Reta. IM442 VARIAVEIS COMPLEXAS 60 h 4T-0P Números Complexos. Funções Analíticas. Funções Análise I (IM 436). Elementares. Forma Integral de Cauchy. Teorema dos Resíduos. 148 NENHUM IM470 INTRODUÇÃO ÀS 60h EQUAÇÕES DIFERENCIAIS PARCIAIS 4T-0P Classificação das EDPs e curvas características. Séries de Equações Diferenciais Fourier.Equação de Ondas. Equação de Calor na Barra Ordinárias (IM 435). Finita. Problema de Dirichlet e de Neumman para a equação de Laplace no disco e no retângulo. IM475 MÉTODOS DE ELEMENTOS FINITOS 60h 4T-0P Métodos de Diferenças Finitas para Solução de Equações Cálculo Diferenciais Parciais Parabólicas, Hiperbólicas e elípticas. Método de elementos finitos; Casos Unidimensional e Numérico ( IM 438). Bidimensional, Exemplos de informações. IM467 SÉRIES 60h 4T-0P Sequências numéricas. Limite. Convergência e Divergência Cálculo II (IM 404). de Sequências. Séries de função. Limite. Convergência e Divergência de Séries de função. Séries de Taylor e Mclaurin. Séries de Fourier. IM488 GEOMETRIA DIFERENCIAL 60h 4T-0P Estudo local da curva em R2 e em R3: vetor tangente, vetor Análise I (IM 436). normal, curvatura, referencial de Frenét para curva em R2. Vetor binomial, torção, triedro de Frenet para curvas em R3. Teorema fundamental das curvas em R2 e R3. Estudo local das superfícies: plano tangente, vetor normal, aplicação normal de Gauss. Curvaturas de uma espécie. IM 479 ANÁLISE NUMÉRICA I 60h 4T-0P Melhor aproximação em subespaços de dimensão finita. Cálculo Numérico (IM 438). Interpolação Polinomial. Interpolação Polinomial por partes. Diferenciação numérica, solução numérica de EDO: diferenças finitas (em problemas de valores de contorno em equações diferenciais ordinárias). Runge-Kutta, passo variável e passos múltiplos. Integração numérica. Aplicações. IM482 CÁLCULO AVANÇADO 60h 4T-0P Funções vetoriais em Rn , diferenciabilidade. Teorema de Cálculo III ( IM 425 ). Schwartz. Desigualdade do valor médio. Teoremas da função implícita e da função inversa e aplicações. Teorema de Stokes. 149 IM493 MODELAGEM MATEMÁTICA DE SISTEMAS CONTÍNUOS 60h 4T-0P Formular matematicamente situações problemas, resolver Álgebra Linear (IM 429) e numericamente o sistema de equações daí resultantes e Cálculo II (IM 404). interpretar os resultados. IM485 OTIMIZAÇÃO INTEIRA 60h 4T-0P Definição e modelagem de problema de programação Programação Linear (IM 477). linear inteira. Resolução de problema de programação linear inteira pelo algoritmo Branch e Bound. Exemplos e aplicações: problema da Árvore Geradora Mínima. Problema do Caminho Mais Curto. Problema do Fluxo Máximo. Uso de Software de Otimização. IM847 ÁLGEBRA I 60h 4T-0P Lógica Matemática. Teoria dos conjuntos. Aritmética Introdução à Álgebra (IM Modular. Relações, funções e operações. 842). IM480 PROGRAMAÇÃO NÃOLINEAR 60h 2T-2P Definição do Problema da Programação não-linear. Cálculo II (IM 404) e Álgebra Minimização de funções sem restrições. Condições de Linear I ( IM 429). Otimalidade, métodos clássicos de descida. Minimização de funções com restrições lineares: condições de otimalidade, métodos de restrições ativas. Minimização de funções com restrições não lineares: condições de otimalidade de Karush-Kuhn-Tucker, métodos de resolução. IM426 ÁLGEBRA LINEAR II 60h 4T-0P Produto interno. Transformações lineares e matrizes. Álgebra Linear I (IM 429). Fatoração de Matrizes. Espaços Vetoriais sobre C. Matrizes Ortogonais e Operadores Hermitianos. Formas Lineares e Quadráticas. IM425 CÁLCULO III 60H 4T-0P Funções com Valores Vetoriais. Integrais de Linha. CÁLCULO II (IM406). Integrais de Superfícies. IM431 CÁLCULO IV 60H 4T-0P Funções com Valores Vetoriais. Integrais de Linha. CÁLCULO APLICADO(TM406) Integrais de Superfícies. 150 IM343 MATEMÁTICA FINANCEIRA 60h 4T-0T O valor do dinheiro no tempo. Juros Simples. Juros NENHUM Compostos. Taxas de Juros. Descontos. Mercado Financeiro e Tipos de Investimento. Anuidades: constantes, variadas e fracionadas. Critérios de Investimentos. Sistemas de Amortização. PROBABILIDADE E ESTATÍSTICA Código Nome IM440 PROBABILIDADE E ESTATISTICA I Carga horária 60h N° de créditos (T - P) 4T-0P Ementa Pré-requisitos Distribuições por amostragem. Estimação. Testes de Cálculo II (IM 404). significância. Análise Bidimensional. Análise de Variança. Regressão Linear Simples. Técnicas de Reamostragem. CONTEXTO SOCIAL E PROFISSIONAL Código Nome Carga horária N° de créditos (T - P) Ementa Pré-requisitos IM469 FILOSOFIA DA MATEMÁTICA 60h 4T-0P Deve ancorar o espaço para debater a evolução científica, NENHUM destacando a relevância da Matemática nesse processo culminando com o surgimento da computação, desde Charles Babbage até a criação do computador eletrônico 1946 e a internet ( que usamos) na década de 1990. IM207 INTRODUÇÃO À MICROECONOMIA 60h 4T-0P Noções de Economia; fundamentos teóricos de NENHUM microeconomia; leitura de gráficos e variáveis; sistemas 151 econômicos; mercado; demanda e oferta (individual, de mercado, curva e posição de curva); equilíbrio e mudança do equilíbrio; estruturas de mercado, papel de governo IM206 INTRODUÇÃO À MACROECONOMIA 60h 4T-0P Introdução à contabilidade social: medida de produto NENHUM agregado, índices de preço e taxa de desemprego, introdução à demanda agregada em uma economia fechada: funções de consumo ne investimento, multiplicador, setor governamental; conceito e funções da moeda; inflação: conceitos e medidas; introdução à economia do setor público: funções econômicas e estrutura tributária; introdução ao setor externo: taxa de câmbio e contas do balanço de pagamentos. IM101 UNIVERSIDADE, CONHECIMENTO E SOCIEDADE 60h 4T-0P Educação, sociedade e democracia; Universidade: NENHUM estrutura organizacional e funções; Produção e socialização do conhecimento: aplicação social da pesquisa; Rupturas epistemológicos e revoluções científicas; formação profissional, extensão e qualidade social, Demandas sociais contemporâneas. IM489 INFORMÁTICA APLICADA AO ENSINO DE MATEMÁTICA 60h 40-0P Análises de aplicativos de informática para o ensino da NENHUM Matemática nas escolas fundamental e média. Planejamento de aulas nas escolas fundamental e média em ambiente informatizado. Recursos de informática para o ensino profissionalizante: calculadoras, aplicativos, computadores e multimídia. Adaptação de aplicativos científicos para o ensino fundamental e médio IM209 MACROECONOMIA 1 60h 4T-0P O Sistema de Contas Nacionais; matriz insumo-produto; Introdução à Economia ( PPC modelo macroeconômico clássico; modelo keynesiano Economia). simples; modelo IS-LM para uma economia fechada; Determinação denível de preços e da taxa de juros e o papel das políticas fiscal e monetária; economia aberta; 152 regimes cambiais, movimento de capitais, paridade do poder de compra. IM208 MICROECONOMIA 1 60h 4T-0P Teoria do Consumidor: Orçamento; preferências e funções Introdução à Economia ( PPC de utilidade; maximização da utilidade; impostos; Economia). preferência revelada; Curva de demanda; Curva de Engel; equações de Slutsky; elasticidades; excedente de consumidor; escolha intertemporal; escolha envolvendo risco. Ativos de riscos e o CAPM: noções básicas. IM242 DESENVOLVIMENTO SOCIO-ECONOMICO 60h 4T-0P Conceitos de desenvolvimento e subdesenvolvimento. Economia Brasileira II (PPC Desenvolvimento da economia mundial do pós-guerra e Economia). influência na América Latina. Teorias do desenvolvimento econômico. Teoria da CEPAL sobre desenvolvimento na periferia. Contribuições recentes à teoria do desenvolvimento na periferia. IM239 ECONOMETRIA 1 60h 4T-0P O modelo de regressão linear Simples e Múltipla. Violações Probabilidade e Estatística e Soluções das hipóteses dos métodos Mínimos quadrados para Ciência da Computação ( ordinários. Comparação entre modelos lineares e não- IM 859). lineares: estimação por máxima verossimilhança com modelo linear e não-linear e propriedade dos estimadores de máxima verossimilhança. Tópicos de equações simultâneas: modelos de equações simultâneas; identificação e Mínimos Quadrados em dois Estágios IM461 LIBRAS 60h 4T-0P Prática da linguagem brasileira dos sinais. Nenhum IM884 PRODUÇÃO DE TEXTO 60H 4T-0P Adequação da língua portuguesa no âmbito profissional e cotidiano. Leitura crítica e produção de gêneros textuais. Estrutura de gêneros textuais acadêmicos. Coesão e coerência. Correção gramatical de textos. Expressão oral. Nenhum 153 IM869 EDUCAÇÃO E INFORMÁTICA 60H 4T-0P Utilização das novas tecnologias no processo ensino- NENHUM aprendizagem. Visão geral sobre teorias educacionais e evolução dos ambientes de ensino-aprendizagem assistidos por computador. Democratização, inclusão e exclusão digital INTRODUÇÃO AOS ESTUDOS DE FÍSICA Código Nome Carga horária N° de créditos (T - P) Ementa Pré-requisitos IM494 TÓPICOS EM MECÂNICA 60h 4T-0P Tensões e deformações. Estruturas isostáticas. Cálculo Numérico (IM 438). Propriedades gerais dos fluidos. Lei da viscosidade de Newton. Estática dos fluidos. Equação de Bernoulli. Equações de Navier Stokes. Primeira Lei da Termodinâmica. Segunda Lei da Termodinâmica. Transferência de Calor. Transporte de massas. IM862 FÍSICA III 60h 4T-0P Estudo introdutório de eletricidade e suas propriedades no NENHUM contexto da computação. IM858 FÍSICA II 60H 4T-0P Gravitaçao, Ondas e Termodinamica IM441 FÍSICA I 60h 4T-0P Aspectos da evolução da Física. Medidas. Cinemática e Cálculo II (IM441) Dinâmica da partícula. IM444 FÍSICA II 60h 4T-0P Eletromagnetismo e Ótica. IM 881 INTRODUÇÃO À COMPUTAÇÃO QUÂNTICA 60h 4T-0P Conceitos de Computação Clássica. O Computador Introdução à Álgebra (IM842) Quântico e o Bit Quântico. Introdução à Mecânica Quântica e Computação I (IM406). e Apresentação de Algoritmos Quânticos. 154 NENHUM Física I(IM441) ÉTICA E CIÊNCIA Código Nome Carga horária N° de créditos (T - P) Ementa Pré-requisitos IM102 ÉTICA, CIÊNCIA E EDUCAÇÃO 60h 4T-0P O horizonte da Ética e a sua relação com a Educação. Ética NENHUM e Pesquisa Científica. Tecnociência e Sociedade. Ciência e Poder. IM487 ÉTICA, SOCIEDADE E TECNOLOGIA 60h 4T-0P Sociedade e mudanças sociais. O desenvolvimento da NENHUM tecno-ciência. Ética e cidadania na sociedade de mudanças tecnológicas. IM897 ÉTICA EM COMPUTAÇÃO 60h 4T-0P Ética e Computação. Códigos de Ética Profissional. Acesso não autorizado. Propriedade Intelectual e Responsabilidade. A ética na Internet. JOGOS Código Nome Carga horária IM484 INTRODUÇÃO À TEORIA 60h DOS JOGOS N° de créditos (T - P) 4T-0P Ementa Pré-requisitos Teoria dos jogos. Histórico. Definições. Conceitos básicos. Lógica e Matemática Discreta Teoremas sobre equilíbrio. Exemplos. Aplicações. (IM 852). 155 SEGURANÇA E CRIPTOGRAFIA Código Nome IM 880 CRIPTOGRAFIA Carga horária 60h N° de créditos (T - P) 4T-0P Ementa Pré-requisitos Máximo Divisor Comum. Algoritmo Euclidiano Estendido. Introdução à Álgebra ( IM Números Primos. Teorema da Fatoração Única. Aritmética 842). Modular. Teorema de Fermat. Teorema Chinês do Resto. Testes de Primalidade. Criptografia da Chave Pública e Algoritmo RSA. HARDWARE E SOFTWARE BÁSICO Código Nome Carga horária N° de créditos (T - P) Ementa Pré-requisitos IM896 CIRCUITOS ELETRÔNICOS 60h 4T-0P Propriedades eletrônicas de Materiais. Semicondutores, Circuitos Digitais ( IM 853). junções semicondutoras e Diodos semicondutores. Transistores. Circuitos Integrados Lineares. Amplificadores Operacionais. Multivibradores e Osciladores. IM 878 TELEFONIA IP 60h 4T-0P Transmissão da Voz Digitalizada por Rede. Telefonia IP Rede de Computadores ( IM baseada em SIP. Telefonia H.323. Avaliação da Qualidade 476). de Áudio. Implementação e Resolução de Questões práticas. 156 ENGENHARIA DE SOFTWARE E BANCO DE DADOS Código Nome Carga Horária Número de Créditos (T - P) Ementa Pré-requisito IM 874 BANCO DE DADOS II 60h 4T-0P Descrição do Esquema de Dados Relacional. Conceitos de SQL. Utilização Banco de de SGBD comercial. Prática de manipulação avançada e utilização de Dados I (IM linguagem de programação. 473). IM 875 ENGENHARIA DE SOFTWARE II 60h 4T-0P Técnicas de Engenharia de Software e Software Livre. Controle de Engenharia de Qualidade de Software. Controle de Versões e Criação de Documentação. Software I ( IM 866). IM 876 DESENVOLVIMENTO DE APLICAÇÕES E INTERNET 60h 4T-0P Conceituação de projetos de sistemas de informação. Caracterização, Computação II análise e projeto de alternativa para interface computacional adequadas. (IM 407). Caracterização, análise e projeto de sistemas de informação. Desenvolvimento de aplicações para web e portais. IM 879 SISTEMAS MULTIMÍDIA 60h 4T-0P Introdução. Conversão de Sinais. Compactação e Compressão de Áudio e Rede de Vídeo. Aplicações. Computadores (IM 476). IM 882 INTERFACES USUÁRIO- 60h MÁQUINA 4T-0P Fatores Humanos em Software Interativo: teoria, princípios e regras básicas. Estilos Interativos. Linguagens de Comando. Manipulação Direta. Dispositivos de Interação. Padrões para Interface. Usabilidade: definição e métodos para avaliação. DISCIPLINAS DE TÓPICOS ESPECIAIS – PROPOSTAS DE EMENTÁRIO TÓPICOS ESPECIAIS EM OTIMIZAÇÃO 157 Código Nome Carga Horária Número de Créditos (T - P) Ementa Pré-requisito BIOLOGIA COMPUTACIONAL 60h 4T-0P Conceitos básicos de biologia molecular; Conceitos básicos de -----------computação; Comparação de bio-seqüências e pesquisa em Banco de Dados; Montagem de fragmentos de DNA; Mapeamento físico de DNA; Rearranjo de genomas ALGORITMOS RANDÔMICOS E APROXIMATIVOS 60h 4T-0P Tópicos em complexidade de algoritmos; Tópicos em probabilidade; -----------Métodos de Monte Carlo e de Las Vegas; Classes de complexidade; Algoritmos aproximativos determinísticos e randômicos PESQUISA OPERACIONAL 60h 4T-0P Modelos de Filas. Modelos de Estoque. Teoria de Decisão. METAHEURÍSTICAS 60h 4T-0P Introdução a heurísticas e metaheurísticas. Algoritmos construtivos. -----------Conceito de vizinhança. Algoritmos de busca local. Otimalidade local x otimalidade global.Estudo e implementação das metaheurísticas Busca Tabu, Algoritmos Genéticos, GRASP, VNS, entre outras. ------------ TÓPICOS ESPECIAIS EM BANCO DE DADOS E ENGENHARIA DE SOFTWARE Código Nome Carga Horária MINERAÇÃO DE DADOS 60h TEXTUAIS Número de Créditos (T - P) 4T-0P Ementa Pré-requisito Dificuldades no processamento de dados textuais. O processo de -----------descoberta de conhecimento em textos (KDT) e áreas de conhecimento relacionadas. Pré-processamento de documentos textuais: etapas, técnicas e algoritmos. Representação de documentos. Tarefas de 158 mineração de dados textuais: classificação de documentos, agrupamento de documentos, extração de informação e sumarização e algoritmos. Métricas de avaliação de desempenho. Exemplos de ferramentas e coleções de documentos. Exemplos de aplicações. MINERAÇÃO DE DADOS 60h MULTIMÍDIA 4T-0P Dificuldades no processamento de dados multimídia. A combinação entre -----------as áreas de Mineração de Dados e Multimídia. O processo de descoberta de conhecimento em dados multimídia (KDM) e outras áreas de conhecimento relacionadas. Arquitetura de um ambiente de mineração de dados multimídia. Abordagens de mineração de dados multimídia. Conceitos básicos. Pré-processamento de dados multimídia: etapas, técnicas e algoritmos. Representação de dados multimídia. Alinhamento de mídias. Tarefas de mineração de dados multimídia: classificação, agrupamento e sumarização. Métricas de avaliação de desempenho. Exemplos de ferramentas. Exemplos de aplicações. VISÃO COMPUTACIONAL 4T-0P Introdução. Fundamentos sobre imagens. Espaço versus frequência. -----------Realce. Segmentação. Morfologia matemática. Extração de atributos. Reconhecimento e classificação de imagens. Recuperação de imagens por similaridade. Agrupamento de imagens. Exemplos de aplicação. 60h TÓPICOS ESPECIAIS EM PROGRAMAÇÃO DE COMPUTADORES Código Nome LABORATÓRIO DE PROGRAMAÇÃO PARALELA Carga Horária 60h Número de Créditos (T - P) 4T-0P Ementa Pré-requisito Estudo de aplicações que requeiram computação de alto desempenho. -----------Estudo de ambientes de alto desempenho disponíveis atualmente. Avaliação de métodos de solução. Utilização das bibliotecas MPI, OpenMP ou POSIX Threads para comunicação entre processos ou threads para o desenvolvimento de aplicações de alto desempenho. 159 PROGRAMAÇÃO PARA WEB 60h 4T-0P Paradigma e padrões de desenvolvimento de aplicações para a Web. -----------Interface gráfica do usuário (GUI - GraphicalUser Interface) em ambiente Web. Plataforma Java para desenvolvimento de aplicações para a Web. Visão geral e Arquitetura de Servlets. Linguagem para conteúdo web dinâmico na arquitetura Java (JSP – Java Server Pages). Tratamento de Eventos em Java no ambiente Web. Acesso a Banco de dados em ambiente WEB (JDBC - Java DatabaseConnectivity). Estudos de caso de aplicações desenvolvidas com a linguagem Java para web. INTRODUÇÃO A 60h PROGRAMAÇÃO GPGPU 4T-0P Introdução a GPGPU. Fundamentos de programação CUDA. Toolkit e SDK -----------CUDA. Otimizações. Estudos de caso. DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS 4T-0P Redes móveis, rede de telefonia celular. Tecnologia wifi e wimax. -----------Bluetooth e irda. Conceitos de desenvolvimento de sistemas para PDAs, Plataforma J2ME, Linguagem SuperWaba, Controles de interface, acesso ao armazenamento de dados, comunicação em rede, noções de construção de conduits, ConnectedLimitedDeviceConfiguration (CLDC), Bibliotecas, Móbile InformationDevice Profile (MIDP), Bibliotecas de rede MIDP, Bibliotecas de persistência MIDP, MIDP 2.0, Desenvolvimento de aplicações. 60h TÓPICOS ESPECIAIS EM INTELIGÊNCIA ARTIFICIAL Código Nome APRENDIZADO MÁQUINA Carga Horária DE 60h Número de Créditos (T - P) 4T-0P Ementa Pré-requisito Introdução e Conceitos Básicos. Hierarquia do Aprendizado. Paradigmas -----------de Aprendizado: Simbólico, Estatístico, Baseado em Exemplos, Conexionista e Evolutivo. Aprendizado Supervisionado: Conceitos e Definições. Métodos e Critérios de Avaliação e Comparação de Algoritmos 160 de Aprendizado. REDES NEURAIS 60h 4T-0P Características e Conceitos Básicos: Aprendizado, Associação, -----------Generalização e Robustez; Histórico; Estrutura do Neurônio Artificial; Estruturas de Interconexão; Tipos de Aprendizado - Supervisionado e Não-Supervisionado; Algoritmos de Aprendizado: Perceptron, Algoritmos de Mínimos Quadrados, Back Propagation, Redes de Função de Base Radial, Redes Probabilísticas, Redes de Hopfield, Memórias Associativas Bidirecionais, Mapas Auto-Organizáveis, Aplicações. LÓGICA NEBULOSA 60h 4T-0P Definições e conceitos básicos; Conjuntos Nebulosos; Propriedades e -----------Características dos Conjuntos Nebulosos; Formatos de Conjuntos Nebulosos; Números Nebulosos; Operações Lógicas em Conjuntos Nebulosos; Relações e Composições Nebulosas; Modus Ponens Generalizada; Sistemas Nebulosos: Arquitetura Básica, Base de Regras, Módulos de Inferência, Fuzzificação, Defuzzificação; Aplicações. COMPUTAÇÃO EVOLUCIONÁRIA 60h 4T-0P Conceitos Básicos, Evolução e Seleção Natural; Componentes de um AG; -----------Tamanho da População; Métodos de Reprodução, Seleção, Mutação e Crossover; Técnicas e Parâmetros; Fundamentos Matemáticos de AGs e Convergência; Teoria de Schema; AG Enganosos (Deceptive) e Epistasia; Aplicações em Machine Learning; Aplicações em Problemas de Otimização Combinatorial; Introdução à Programação Genética; Ambientes e Técnicas de Programação de Ags. AGENTES INTELIGENTES 60h 4T-0P Conceitos básicos, Características, Tipos de Agentes. Arquitetura Geral de -----------um Agente. Sistemas Multiagentes. Interação entre Agentes. Taxonomia de Sistemas Multiagentes. Organizações de Agentes. Padronização. Aplicações. SISTEMAS INTELIGENTES HÍBRIDOS 60h 4T-0P Definição e Classificação de Sistemas Inteligentes Híbridos, Conceitos, -----------Abordagens, Algoritmos e Aplicações: Sistemas Neuro-Fuzzy, Sistemas Neuro-Genéticos, Sistemas Geno-Fuzzy, Sistemas Neuro-Fuzzy-Genéticos. 161 TÓPICOS ESPECIAIS EM CIÊNCIA DA COMPUTAÇÃO Código Nome Carga Horária Número de Créditos (T - P) Ementa Pré-requisito COMPUTAÇÃO PARALELA E DE ALTO DESEMPENHO 60h 4T-0P Arquiteturas paralelas (SIMD/MIMD) de processadores, computadores e -----------clusters. Modelos de programação paralela por troca de mensagens e memória compartilhada. Programação paralela aplicada, caracterização de carga de trabalho, e avaliação de desempenho. Escalonamento. Balanceamento de carga. Gerenciamento de recursos geograficamente distribuídos. Tolerância a falhas. Fundamentos de Cluster computing, Fundamentos Grid computing. ALGORITMOS DISTRIBUÍDOS 60h 4T-0P Modelo Distribuído. Modelo de Computação (Eventos, ordens e estados -----------globais, complexidade de computações distribuídas, sincronismo e assincronismo, programação com MPI). Algoritmos Básicos (Propagação de informação, conectividade de grafos, distâncias mais curtas, terminação, eleição de um líder, registro de estado global) Compartilhamento de recursos. Algoritmos em grafos. METAHEURÍSTICAS PARALELAS 60h 4T-0P Fundamentos de programação paralela. Estudo e implementação das -----------metaheurísticas Busca Tabu, Algoritmos Genéticos, GRASP, entre outras utilizando recursos paralelos. 162 METODOLOGIA DE APRENDIZAGEM As estratégias metodológicas de aprendizagem do Bacharelado em Computação visam alcançar o perfil do egresso e o desenvolvimento das competências estabelecidas neste projeto pedagógico. O planejamento destas estratégias se dará a cada semestre. O corpo social do curso, em especial docentes e discentes, construirá, de maneira colaborativa e cooperativa, oportunidades de articulação da tríade: ensino – pesquisa – extensão. Neste cenário, os alunos praticarão e sedimentarão o aprendizado de sala de aula por meio da pesquisa e a pesquisa atualizará e modernizará as práticas de ensino a cada semestre. O resultado desta articulação, ou seja, os produtos desenvolvidos na pesquisa terão aplicação imediata na extensão. Como uma das formas de estimular a integração da tríade ensino-pesquisa-extensão, os docentes são incentivados a elaborar um plano de disciplina (vide modelo em anexo) para cada oferta de componente curricular em que deve explicitar quais as contribuições da referida oferta nas dimensões de ensino, pesquisa e extensão. A aproximação da pesquisa com a extensão e vice-versa manterá os alunos conectados com as demandas locais. A extensão terá como foco prioritário a comunidade da baixada fluminense e os trabalhos desenvolvidos girarão em torno da computação aplicada. Este exercício didático-pedagógico de empregar como principal norte da aprendizagem o ensino apoiado pela pesquisa e pela extensão favorecerá a superação da fragmentação do saber disciplinar, da compartimentalização entre o pensar e o fazer e da dicotomia teoriaprática. Os alunos agregarão as partes do aprendizado disciplinar nos produtos da pesquisa e o pragmatismo da computação aplicada trará equilíbrio e evitará que pesquisa tome rumo muito acadêmico-científico ou esteja muito focada nas demandas das organizações regionais. A pesquisa inserida no ensino deverá buscar o equilíbrio ideal entre a teoria e a prática e a extensão, como resultado da sintonia fina – ensino e pesquisa – aproximando o pensar e o fazer. Permitirá ao aluno o verdadeiro exercício da prática. Para obter tais resultados, estas estratégias de aprendizagem estão organizadas e agrupadas em três núcleos: 163 1. Núcleo de Ensino: O principal núcleo e de referência para os demais é o Núcleo de Ensino. Constituído pelo conjunto de disciplinas e seus conteúdos –a execução da matriz curricular. As componentes curriculares, de ementa vari|vel, “Tópicos Especiais” e “Optativas”, bem como os projetos a serem desenvolvidos em “Orientação para Trabalho Final de Curso I e II” e nos diversos laboratórios, todas detalhadas na seção Composição da Matriz Curricular do Curso, têm por objetivo a integração e a potencialização dessa grade curricular. As características de transversalidade, multidisciplinaridade e interdisciplinaridade, citadas nas Diretrizes Curriculares do MEC para a área da Computação, e proposta com objetivos de integração dos conteúdos do curso estão abordadas neste projeto pedagógico. A forma de implementar esta integração está disposta na seção Integração de Conteúdos como Estratégia Pedagógica. Essas atividades podem ser enquadradas e classificadas como Programação Interdisciplinar. 2. Núcleo de Pesquisa em Computação Aplicada: Em maio de 2011, foi formalmente criado no IM o Núcleo de Pesquisas em Computação Aplicada (NPCA) da UFRRJ com a seguinte missão: “Apoiar, de forma sistemática e contínua, a concepção, a implantação, o desenvolvimento e o acompanhamento de programas, projetos e ações integradas de pesquisa na área da computação e informática promovidos pelo Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro”. Desde então, o NPCA vem cumprindo seu dever institucional, prioritariamente junto ao curso de bacharelado em Ciência da Computação, de incentivo à pesquisa aplicada e à formação de futuros pesquisadores e cientistas na área da computação. O NPCA tem como objetivo geral promover o avanço científico e tecnológico na área da computação por meio do desenvolvimento e da aplicação de pesquisas em benefício da sociedade. 3. Núcleo de Extensão: O papel do Núcleo de Extensão deve ser entendido como prática acadêmica e se interliga à educação superior nas suas atividades de ensino e de pesquisa em movimentos bidirecionais, importantes nos dois sentidos: leva à Sociedade produtos e benefícios gerados pela universidade e, com base na realidade encontrada e nos resultados obtidos, estimula a pesquisa por novos caminhos e as atividades de ensino que preparam o profissional do amanhã. São atribuições do Núcleo de Extensão: Oferecer cursos de extensão na área da computação e informática. 164 Apoiar a realização de eventos internos tais como semanas acadêmicas, palestras, seminários, integração de calouros, dentre outros. Apoiar a realização de visitas técnicas. Apoiar a implantação e a coordenar de uma Empresa Júnior na área da Computação. Apoiar a divulgação institucional. Buscar patrocínio junto às empresas da região. Criar e consolidar convênios e parcerias junto a universidades públicas e privadas do estado do Rio de Janeiro, preferencialmente. Criar e manter atualizado um banco de dados com a memória das ações realizadas pelo Núcleo. Acompanhar e divulgar calendários de editais de órgãos de fomento à extensão. Contribuir para a manutenção do e-Baixada Fluminense, portal de divulgação das ações e serviços promovidos pelos núcleos de ensino, pesquisa e extensão junto à comunidade. A materialização das ações de extensão no Curso de Ciência da Computação estão ocorrendo por meio de um portal web de serviços, atualmente em desenvolvimento pelos alunos do curso, que permitirá uma efetiva aproximação entre as comunidades de Nova Iguaçu, da Baixada Fluminense e do curso de Ciência da Computação do Instituto Multidisciplinar da UFRRJ, formando uma rede social virtual sobre assuntos de interesse regional. Denominado e-Baixada Fluminense, este portal deverá permitir a aplicação da pesquisa em computação desenvolvida pelo NPCA do IM/UFRRJ junto aos potenciais usuários da Baixada Fluminense, tais como: empresas públicas e privadas, escolas, membros da UFRRJ e pessoas físicas em geral. A seguir encontram-se alguns exemplos de possíveis serviços a serem oferecidos pelo e-Baixada Fluminense: Disponibilização de Vídeo Aulas (Assuntos diversos) Ofertas de cursos on-line (EAD) Recomendação personalizada de notícias, dicas, orientações e informações sobre temas como: Educação, Saúde, Esportes, Cultura e Lazer, Meio Ambiente, Trabalho, Segurança, dentre outros. Divulgação dos cursos da UFRRJ assim como seus eventos (Semanas Acadêmicas dos cursos de Computação e Matemática – por exemplo: SECCIM e SEMIM) e outras atividades extraclasse. 165 Links Úteis (ex. portais das Prefeituras e serviços públicos, dentre os quais a divulgação do Baixada Digital, projeto com fomento FAPERJ). Classificados on-line com oportunidades de empregos, de estágios, dentre outros. Divulgação dos serviços prestados pela Empresa Júnior do curso de Ciência da Computação às organizações da Baixada Fluminense, principalmente, aqueles direcionados a PME(Pequenas e Médias Empresas) da região. Divulgação das linhas de pesquisas e projetos da equipe docente dos cursos de Ciência da Computação e de Matemática Aplicada e Computacional bem como das formas de atuação empresa x escola, levando as inovações e pesquisa de ponta para as empresas da Baixada Fluminense. Em uma visão de futuro, o trabalho realizado, por estes três núcleos de Ensino, Pesquisa Aplicada e Extensão, de forma integrada junto ao curso de Computação, visa, a médio prazo, contribuir para a formalização de ideias voltadas à criação de um Centro de Estudos em Inovação Tecnológica em Computação(CEITeC) junto ao IM da UFRRJ em Nova Iguaçu que sistematize e amplie as ações de ensino, pesquisa e extensão realizadas pelo instituto na área da computação e informática. O CEITeC terá como missão: “Apoiar, de forma sistemática e contínua, a concepção, a implantação, o desenvolvimento e o acompanhamento de programas, projetos e ações integradas de ensino, pesquisa e extensão na área da computação e informática promovidos pelo Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro”. INTEGRAÇÃO DE CONTEÚDOS COMO ESTRATÉGIA PEDAGÓGICA O processo de integração de conteúdos junto ao Curso de Bacharelado em Ciência da Computação ocorre em diversas modalidades. Em todas as modalidades, o objetivo maior consiste em expandir a visão isolada de conteúdos por meio da interdisciplinaridade. Busca-se, portanto, promover a compreensão holística dos fatos, conceitos e situações, substituindo o conhecimento individual pelo conhecimento universal com a valorização dos múltiplos fatores de integração do processo pedagógico. O estímulo e o exercício da integração de conteúdos no âmbito do Curso de Bacharelado em Ciência da Computação possuem as seguintes modalidades: • Integração Teoria-Prática – Nesta modalidade, cada disciplina tem como objetivo desenvolver os seus assuntos segundo aspectos teóricos, conceituais e formais, todos 166 complementados com exercícios práticos que permitam ao discente assimilar os conteúdos abordados. • Integração Vertical de Disciplinas – Nesta modalidade, procura-se promover a integração de conteúdos entre as disciplinas de cada período previsto na estrutura curricular. Para tanto, as disciplinas realizam estudos de casos comuns permitindo ao aluno perceber as relações de conteúdo entre elas. • Integração Horizontal de Disciplinas – Nesta modalidade, a integração de conteúdos ocorre entre subconjuntos de disciplinas pertencentes a diversos períodos da estrutura curricular. De forma análoga à modalidade acima, as disciplinas realizam estudos de casos comuns permitindo ao aluno perceber, na medida em que amadurece no Curso, as relações de conteúdo entre elas. • Desenvolvimento do Trabalho Final de Curso – Este trabalho deve ser realizado no último ano do curso e nele o aluno deve congregar seus conhecimentos para solucionar problemas práticos reais identificados junto à Sociedade. Convém observar que as modalidades de integração vertical e horizontal de disciplinas têm potencial para viabilizar a geração de publicações semestrais dos alunos do curso contendo estudos de caso e as melhores soluções desenvolvidas pelos alunos em cada disciplina. Tais publicações devem servir de material de estudo para futuros alunos do Curso, além de estimular a produção científica junto aos corpos docente e discente. O estímulo e o exercício da integração de conteúdos entre o Curso de Bacharelado em Ciência da Computação e os demais Cursos de Graduação e Pós-Graduação oferecidos pela UFRRJ em seu Instituto Multidisciplinar possuem as seguintes modalidades: • Integração entre os Cursos de Graduação – Várias disciplinas previstas na estrutura curricular são comuns aos cursos de graduação de Matemática e Matemática Aplicada e Computacional. Essas disciplinas são normalmente oferecidas em conjunto para o corpo discente, permitindo, com isto, que os alunos dos vários cursos interajam entre si na prática das atividades acadêmicas, e, em particular, no desenvolvimento dos estudos de casos promovidos por tais disciplinas. Em geral, os trabalhos são realizados em grupos que devem mesclar alunos dos diversos cursos. Esta abordagem exercita o desenvolvimento do trabalho em equipes multidisciplinares. • Integração entre os Cursos de Graduação e de Pós-Graduação – Determinadas disciplinas técnicas do curso de Bacharelado em Ciência da Computação promovem 167 palestras sobre temas emergentes na área. De forma a estimular a integração entre o curso de Ciência da Computação e cursos de Pós-Graduação de instituições parceiras, alunos professores são convidados a apresentar palestras e seminários para os alunos do bacharelado sobre alguns dos temas que tenham sido desenvolvidos dentro suas especialidades. AVALIAÇÃO SISTEMA DE AVALIAÇÃO DO PROCESSO DE APRENDIZAGEM- AVALIAÇÃO DISCENTE O Regimento da UFRRJ prevê os seguintes critérios de aprovação em disciplina: frequência mínima de 75% e média final, calculada conforme definido por cada docente no início do período letivo, igual ou superior a cinco. A única restrição imposta pela universidade é que exista uma avaliação, denominada optativa, que seja escrita e que, conforme o nome sugere, o discente possa escolher entre realizá-la ou não, caso já tenha acumulado pontos suficientes para aprovação. Os casos em que a frequência do aluno seja inferior a 75% da carga horária da disciplina ou a média final obtida pelo aluno seja inferior a cinco correspondem à reprovação na referida disciplina. Os alunos do Curso de Ciência da Computação que apresentem dificuldades de assimilação de conteúdo e/ou apresentem desempenho abaixo da média podem recorrer aos serviços de monitoria de disciplina. Aos professores é sugerida a adoção de instrumentos de avaliação relacionados aos objetivos da disciplina que incluam não só provas convencionais, mas também trabalhos de pesquisa, trabalhos sobre conhecimento teórico-prático não esgotado em sala de aula, que se prestem a debates, que respondam ou que perguntem sobre conhecimento novo, que envolvam descobertas, individuais e em grupo. A efetividade da proposta da interdisciplinaridade deve ser valorizada por meio da implantação de atividades que integrem conteúdos e disciplinas (vide item referente à Metodologia de Aprendizagem). AVALIAÇÃO DOCENTE O objetivo da avaliação docente é parte do processo de busca contínua da melhoria no processo ensino-aprendizagem. É a forma proposta para apoiar e acompanhar o corpo docente no diagnóstico e aperfeiçoamento das suas competências, bem como da metodologia adotada em suas disciplinas. 168 A avaliação docente é realizada sob três pontos de vista: a avaliação discente, a institucional e a auto-avaliação. As três perspectivas consideram diferentes componentes da prática docente, tais como: atualização de conteúdo da disciplina ministrada, adequação da metodologia, domínio de diferentes procedimentos de avaliação, domínio dos processos de pesquisa, atenção e cuidado com os processos de relações interpessoais, cumprimento das obrigações junto ao controle acadêmico, participação nas reuniões do colegiado, conselhos e comissões institucionais, produção intelectual e participação técnica-profissional e ética nas atividades do curso. A avaliação docente do ponto de vista discente é o mecanismo de auxílio a ambos na reflexão sobre os atributos da prática docente, tendo como referência o Projeto Pedagógico. O instrumento de pesquisa deve incluir, pelo menos, perguntas a respeito: do planejamento das aulas; do conteúdo da disciplina; da metodologia adotada; dos recursos materiais utilizados; da metodologia de avaliação; dos resultados alcançados; da relação professor-aluno e do comprometimento profissional. A avaliação institucional é a forma encontrada para verificar a adesão aos princípios filosóficos e pedagógicos adotados pela universidade para o desenvolvimento das habilidades e competências previstas na proposta curricular do curso e para o relacionamento interpessoal da comunidade acadêmica, dentro e fora da sala de aula. Finalmente, a auto-avaliação se efetiva na reflexão das informações obtidas pelas avaliações realizadas entre os alunos e pelo curso/instituição e, fundamentalmente como critério pessoal de crescimento profissional. SISTEMA DE AVALIAÇÃO DO PROJETO DO CURSO- AUTO-AVALIAÇÃO Desde o início de suas atividades, o Curso de Ciência da Computação tem procurado manter um processo de auto-avaliação articulado a um processo mais amplo de avaliação institucional da UFRRJ, que pressupõe, não somente a auto-avaliação, ou análise interna da instituição e dos seus cursos, mas também a avaliação externa, a cargo de especialistas e realizada a partir do conhecimento dos resultados do movimento interno e dos documentos produzidos pela avaliação. A avaliação do curso se dá, portanto, através de metodologia processual e formativa, envolvendo reuniões do colegiado e de grupos específicos de docentes, por área de atividades. São considerados, além dos parâmetros numéricos, dados qualitativos, com a finalidade de verificar a eficiência e a eficácia da realização das propostas do curso para identificar os reajustes necessários. 169 O processo é contínuo, realizado através de ação colegiada, com avaliação sistematizada em relatórios parciais, utilizados como base para as alterações e inovações necessárias para o aperfeiçoamento do curso. O conjunto de informações a levantar e orientar esta auto-avaliação deve incluir pelo menos as seguintes categorias e indicadores: 1. Gestão administrativa do curso: taxa de evasão, estabilidade dos professores, quadro de dedicação docente, índice de reprovação por disciplina, dimensionamento da demanda, índice líquido de transferências. Um exemplo de ação de acompanhamento da taxa de evasão são os contatos telefônicos, feito pelo corpo social do curso (secretário do curso, estágio do curso e professores), para os alunos que estão com quantidade de faltas excessivas ou que formalizaram o trancamento do curso. Os contatos telefônicos já geraram resultados interessantes para o curso, que estão sendo implementados nas turmas dos períodos iniciais do Bacharelado em Computação. 2. Gestão do Conhecimento (objeto do curso): proposta curricular (programa de ensino), exigências de legislação, dinâmica profissional da área de Computação, quantidade e variedade de eventos organizados e/ou frequentados por membros da comunidade acadêmica ao longo do ano letivo, quantidade de projetos e trabalhos apresentados nos fóruns internos e externos. 3. Prática docente: planejamento das aulas; conteúdo da disciplina; metodologia adotada; bibliografia indicada/utilizada (propriedade e atualidade); recursos materiais utilizados; metodologia de avaliação; resultados (aproveitamento das turmas); relação professor-aluno e alcançados comprometimento profissional. 4. Produção Intelectual: publicação de livros e de capítulo de livros; artigo técnicocientífico publicado em periódico especializado ou em jornais e revistas não especializadas; publicação de artigo em anais; aprovação ou orientação de tese de doutorado, dissertação de mestrado ou entrega de monografia de especialização; orientação de trabalhos de iniciação científica; participação em cursos de capacitação, externo ou interno, como docente ou como aluno; participação como palestrante em congressos, simpósios, seminários e assemelhados; ministrar cursos de extensão, não vinculados a programas ou projetos; organizar congressos e simpósios, organizar debates e palestras ou seminários; produção de equipamentos e kits didáticos, utilizados em sala de aula; montagem de protótipo; registro de patente. 170 5. Interação interinstitucional: índice de empregabilidade dos alunos e de formandos; índice de aprovação em concursos para estágios e órgãos públicos, inclusive Universidades; acompanhamento de egressos; convênios e parcerias e estágios. COMPONENTES CURRICULARES DE APOIO À APRENDIZAGEM ATIVIDADES DE CONCLUSÃO DO CURSO O curso de Ciência da Computação possui duas componentes curriculares especificamente voltadas para o desenvolvimento do Trabalho Final de Curso: Trabalho Final de Curso I e Trabalho Final de Curso II. Requisito essencial para colação de grau, o Trabalho Final de Curso consiste da descrição técnica detalhada de uma solução para um problema real de natureza industrial, comercial ou científica. Todo Trabalho Final do Curso de Ciência da Computação deve conter uma contribuição científica, que o caracterize como um trabalho de natureza científica relevante e compatível com o nível de graduação. Deverá, portanto, ser um projeto vinculado ao NPCA – Núcleo de Pesquisa em Computação Aplicada. O Trabalho Final de Curso pode ser desenvolvido individualmente ou em grupo e requer o acompanhamento formal de um professor orientador. Maiores detalhes sobre o Trabalho de Final de Curso podem ser obtidos no anexo intitulado “Manual de Orientações para Elaboração e Apresentação de Projetos”. ATIVIDADES ACADÊMICAS COMPLEMENTARES Faz parte da proposta pedagógica do Curso de Bacharelado em Ciência da Computação a realização de Atividades Acadêmicas Complementares, que viabilizem percursos de aprendizagem variados e que possibilitem ao aluno autonomia na ampliação de seu universo cultural e enriquecimento de seu processo formativo, tendo como base a indissociabilidade entre Ensino, Pesquisa e Extensão. Essas atividades estão regulamentadas na Deliberação CEPE Nº78, de 05/10/2007 que define e implanta, no âmbito dos Cursos de Graduação da UFRRJ, as Atividades Complementares de natureza acadêmica, científica e cultural a que se refere à Resolução CNE/CP Nº2 de 19/02/2002, do Conselho Nacional de Educação, bem como os procedimentos a serem adotados para a atribuição e cômputo da carga horária. conforme exigência legal para a integralização do currículo. 171 As AC são realizadas ao longo de todo o curso, perfazendo um total de 200 horas distribuídas conforme Deliberação 78. Então, ficam estabelecidos os requisitos e limites para o aproveitamento e computo de carga horária conforme as tabelas listadas abaixo. GRUPO I – ENSINO Atividade Complementar Disciplina não curricular cursada fora da UFRRJ e disciplina de Livre Escolha Bolsas concedidas pela UFRRJ (monitoria, estágio interno, entre outras, exceto bolsa de permanência) Estágios extracurriculares Realização de curso regular de língua estrangeira Desenvolvimento de material didático Participação em concursos de monografia Requisito para Atribuição de Carga Horária Apresentação de histórico escolar oficial ou declaração da instituição testando a aprovação, anexando o programa da disciplina e bibliografia Declaração da instituição atestando a condição de bolsista durante o semestre e o tipo de bolsa e apresentação de relatório das atividades Declaração da instituição atestando a condição de estagiário, o horário do estágio e apresentação de relatório das atividades Declaração do curso atestando matrícula e aprovação no módulo ou nível no semestre Entrega do material ou declaração de docente atestando sua realização e sua relação com o ensino da disciplina Apresentação da monografia e declaração da instituição ou sociedade promotora do concurso Participação em intercâmbio ou Declaração da instituição onde foi convênio cultural aprovado pela realizado o intercâmbio, mencionado o instituição período de sua realização 172 Carga Horária Máxima 30 horas por disciplina 30 horas por semestre 30 horas por semestre 20 horas por semestre 30 horas por semestre 10 horas por concurso 30 horas por semestre GRUPO II – PESQUISA Atividade Complementar Bolsas de iniciação científica concedidas pela UFRRJ ou por agências de fomento Desenvolvimento de pesquisa com produto final Participação em artigos publicados em periódicos nacionais e internacionais, capítulo de livro ou autoria de livro Participação em resumos e anais de Eventos Científicos publicados a partir de Congressos, Simpósios, Jornadas de Iniciação Científica e de Extensão Apresentação de trabalho científico em eventos Requisito para Atribuição de Carga Horária Apresentação da carta-contrato ou termo de responsabilidade do bolsista, além de relatório da pesquisa aprovado realizado referente ao período de vigência da bolsa Apresentação do produto (resenha, relatório, artigo, monografia) Carga Horária Máxima 30 horas por semestre 10 horas por produto Apresentação do produto publicado no 20 horas por periódico, na obra coletiva ou o livro artigo Apresentação do texto publicado pelo evento 05 horas por artigo Certificado de participação no evento 10 horas por artigo 173 GRUPO III – EXTENSÃO Atividade Complementar Requisito para Atribuição de Carga Horária Carga Horária Máxima Participação na comissão organizadora em programas e projetos de extensão Declaração da Pró-reitora de Extensão ou do responsável pelo programa ou projeto e apresentação de relatório 30 horas por projeto Declaração ou Certificado de Realização de cursos de extensão participação e apresentação de ou participação em oficinas relatório sobre o curso/oficina Máximo de 30 horas por semestre (ou conforme especificado no certificado) Participação como ouvinte em congressos, seminários, simpósios, conferências, workshops, oficinas de trabalho Declaração ou Certificado de participação e apresentação de relatório sobre o curso/oficina 05 horas por evento Participação no Coral da UFRRJ Declaração do Maestro do Coral da UFRRJ 05 horas por semestre Participação em grupos de teatro Declaração da Pró-reitoria de Extensão 04 horas por ou grupos regionais da UFRRJ participação reconhecidos na UFRRJ Participação em atividades esportivas ou em competições internas da UFRRJ Participação, como voluntário, em atividades de caráter humanitário e social Participação em órgãos colegiados da UFRRJ ou Comissões designadas por portaria oficial Participação em eventos culturais, internos ou externos Declaração da Pró-reitoria de Extensão 02 horas por da UFRRJ semestre Declaração da Instituição beneficiada pelo trabalho voluntário 30 horas por participação Declaração da Secretaria dos Conselhos atestando a participação e a 10 horas por frequência do aluno no semestre ou semestre Portaria Declaração, Ingresso ou Certificado de participação e apresentação de relatório sobre o evento. 02 horas por evento CRITÉRIOS DE ACEITAÇÃO DA ATIVIDADE : 1. O aluno deverá realizar atividades de pelo menos 2 (dois) grupos; 2. Apresentar certificado, declaração ou outro documento semelhante que ateste a participação, constando carga horária, dia, mês, ano e instituição; 3. Quando não houver possibilidade de certificação, apresentar um breve relato por escrito da atividade que assistiu e/ou participou efetivamente, demonstrando a importância para sua formação profissional; datar e assinar e colher a assinatura de um responsável pela atividade; 174 4. Os documentos devem ser apresentados em original e em cópia (o original será devolvido após conferência). NÚCLEO DE PESQUISA EM COMPUTAÇÃO APLICADA – NPCA Alinhada ao plano nacional de expansão das universidades federais, a Universidade Federal Rural do Rio de Janeiro (UFRRJ), inicialmente sediada no município de Seropédica, estado do Rio de Janeiro, implantou durante o ano de 2005, seu Instituto Multidisciplinar (IM) em Nova Iguaçu, na Baixada Fluminense, ainda em instalações provisórias, a oferta de cinco cursos de graduação. Em 2010, foram inauguradas as instalações definitivas do IM no bairro da Posse. Entre os cursos de graduação regular oferecidos pelo IM, está o curso de bacharelado em Ciência da Computação, com implantação iniciada em 2010.1, e que possui atualmente cerca de 80 alunos e 5 docentes efetivos concursados em 2010.2. Em maio de 2011, foi formalmente criado no IM o Núcleo de Pesquisas em Computação Aplicada (NPCA) da UFRRJ com a seguinte missão: “Apoiar, de forma sistem|tica e contínua, a concepção, a implantação, o desenvolvimento e o acompanhamento de programas, projetos e ações integradas de pesquisa na área da computação e informática promovidos pelo Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro”. Desde então, o NPCA vem cumprindo seu dever institucional, prioritariamente junto ao curso de bacharelado em Ciência da Computação, de incentivo à pesquisa aplicada e à formação de futuros pesquisadores e cientistas na área da computação. O documento completo da estruturação e formalização do Núcleo de Pesquisas em Computação Aplicada encontra-se na seção de anexos deste projeto pedagógico. CORPO DOCENTE O curso de Ciência da Computação dispõe atualmente de um corpo docente fixo da área da Computação com cinco professores concursados. Desses, três são doutores e dois se encontram em doutoramento. Abaixo segue um resumo extraído do currículo lattes dos referidos docentes. Adria Ramos de Lyra CV Resumido: Possui graduação em Ciência da Computação pela Universidade Federal Fluminense (2002), mestrado (2004) e doutorado (2009) em Computação pela Universidade Federal Fluminense. Atualmente é professora de magistério 175 superior da Universidade Federal Rural do Rio de Janeiro e tutora a distância do Centro de Educação a Distância do Estado de Rio de Janeiro. Tem experiência na área de Ciência da Computação, com ênfase em Análise de Algoritmos, Complexidade de Computação e Otimização Combinatória. Carlos Eduardo Ribeiro de Mello CV Resumido: Professor do Departamento de Tecnologias e Linguagens do Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro. Mestre em Ciências em Engenharia de Sistemas e Computação pelo Instituto Luiz Alberto Coimbra de Pós-Graduação e Pesquisa de Engenharia da Universidade Federal do Rio de Janeiro. Realiza sua pesquisa de doutorado na Universidade Federal do Rio de Janeiro e na École Centrale Paris, sob o regime de co-tutela doutoral. Carlos Eduardo atua também como tutor a distância do consórcio Centro de Educação a Distância do Estado de Rio de Janeiro (CEDERJ), professor no curso de mestrado da Universidade Federal do Rio de Janeiro e co-orientador de dissertações de mestrado e projetos finais de curso de graduação. Tem experiência em desenvolvimento de software, soluções de Business Intelligence, Mineração de Dados e Sistemas de Recomendação. Isabel Fernandes de Souza CV Resumido: Possui graduação em Ciência da Computação pela Universidade do Sul de Santa Catarina UNISUL (1996), especialização em Docência do Nível Superior pelo Centro Universitário da Cidade do Rio de Janeiro UniverCidade (2003), mestrado em Computação com ênfase em Engenharia de Software pela Universidade Federal do Rio Grande do Sul UFRGS(2000) e doutorado em Engenharia de Produção pela COPPE - Universidade Federal do Rio de Janeiro (2009). Concluiu em 2010 o pós-doutorado, com bolsa CAPES-PRODOC, no Laboratório PROPME do Programa de Pós-graduação em Engenharia de Produção da COPPE/UFRJ. Atualmente é professora, classe adjunto com dedicação exclusiva , do curso de Computação do Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro. Experiência em docência no ensino superior, planejamento, organização e coordenação de atividades acadêmicas, principalmente em construção de cursos e currículos de graduação e graduação tecnológica. Larga experiência em educação a distância no ensino superior, implantação de projeto EaD em IES privada, coordenação da construção de conteúdo, planejamento de oferta de disciplinas na modalidade a distância, via 176 Internet, em curso de graduação presencial, coordenação de avaliação presencial em multi-pólo, organização e coordenação de atividades acadêmicas, monitoramentos das atividades dos tutores e tutoria de disciplinas. Embasamento e conhecimento da legislação educacional e de processos de avaliação de cursos de graduação nas modalidades presencial e a distância. Juliana Mendes Nascente Silva CV Resumido: Possui graduação em Ciência da Computação - Faculdades Integradas de Caratinga (FIC - 2002), mestrado em Computação pela Universidade Federal Fluminense (UFF - 2006) e doutoranda pela Universidade Federal Fluminense (UFF) na área de Sistemas Distribuídos e Processamento Paralelo. Atualmente é professora assistente do Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro. Tem experiência em coordenação de curso e de trabalho de conclusão de curso nos cursos de Sistemas de Informação e Ciência da Computação. Ronaldo Ribeiro Goldschmidt CV Resumido: Possui graduação em Matemática pela Universidade Federal Fluminense (1988), mestrado em Sistemas e Computação pelo Instituto Militar de Engenharia (1991) e doutorado em Engenharia Elétrica - Métodos de Apoio à Decisão pela Pontifícia Universidade Católica do Rio de Janeiro (2004). Atualmente é professor adjunto do Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro. Além disso, atua como professor colaborador do Instituto Militar de Engenharia e do Instituto Superior de Tecnologia do Rio de Janeiro (unidade de ensino da rede Faetec). Tem experiência na área de Ciência da Computação, com ênfase em Inteligência Computacional, atuando principalmente nos seguintes temas: sistemas de informação, banco de dados, sistemas de apoio à decisão, mineração de dados e descoberta de conhecimento em bases de dados. 177 Os demais professores atuantes no curso são concursados para a área de Matemática e se revezam na oferta de disciplinas obrigatórias na referida área. Abaixo segue um resumo dos currículos lattes dos referidos docentes. Aquiles Braga de Queiroz CV Resumido: possui graduação em Desenho Industrial pela Universidade Federal do Rio de Janeiro (1996), mestrado em Informática pela Universidade Federal do Rio de Janeiro (1999) e doutorado em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (2005). Atualmente é Professor Adjunto da Universidade Federal Rural do Rio de Janeiro. Tem experiência na área de Ciência da Computação, com ênfase em Teoria da Computação. Atuando principalmente nos seguintes temas: Algoritmos em Conjuntos Parcialmente Ordenados, Teoria dos Grafos. Carla Regina Gomes CV Resumido: Possui a graduação em licenciatura (1999) e bacharelado (2000) em matemática pela Universidade Federal Fluminense e mestrado em matemática pela Universidade Federal do Rio de Janeiro (2003). Atualmente é professor assistente III do Departamento de Tecnologias e Linguagens do Instituto Multidisciplinar, Campus de Nova Iguaçu, da UFRRJ. Claudia Mazza Dias CV Resumido: Possui Graduação em Engenharia Civil pela Universidade Santa Úrsula (1992), Mestrado em Engenharia Civil pela Universidade Federal do Rio de Janeiro - COPPE (1995) e Doutorado em Engenharia Civil pela Universidade Federal do Rio de Janeiro - COPPE (2001). Fez Pós-Doutorado em Matemática Aplicada e Computacional no LNCC (2005). Atualmente é professora (Adjunto I) do Instituto Multidisciplinar da UFRRJ - Universidade Federal Rural do Rio de Janeiro, no Departamento de Tecnologias e Linguagens. Tem experiência na área de Modelagem Computacional e Matemática Aplicada, atuando principalmente nos seguintes temas: integração reduzida, método dos elementos finitos, formulações estabilizadas, técnicas de pós-processamento, simulação numérica de contaminação de aquíferos e de escoamento em rios e lagos, modelos de dispersão e de invasão biológica. 178 Leandro Guimarães Marques Alvim CV Resumido: Professor assistente do Instituto Multidisciplinar da Universidade Federal Rural do Rio de Janeiro, possui graduação em Ciência da Computação pela Universidade Federal Fluminense (2005), mestrado em Informática pelo IM/NCE na Universidade Federal do Rio de Janeiro e atualmente está cursando o doutorado em informática pela Pontifícia Universidade Católica do Rio de Janeiro (Puc-Rio). Ronaldo Gregório CV Resumido: Possui graduação em Matemática pela Universidade Federal Rural do Rio de Janeiro (2001), mestrado e doutorado em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (2004 e 2008). Atualmente é professor adjunto II da Universidade Federal Rural do Rio de Janeiro. Tem experiência na área de otimização contínua, atuando no desenvolvimento de métodos de otimização para programação convexa. Dentre as áreas de interesse destacam-se: programação semidefinida e multiobjetivo, otimização em variedades riemannianas, algoritmos de ponto proximal, álgebra linear computacional, análise matricial e análise numérica. A carga horária média semestral em sala de aula dedicada ao curso é de cerca de dez horas semanais, sendo oito horas na oferta de disciplinas obrigatórias e duas em atividades acadêmicas. INFRAESTRUTURA PARA O CURSO Alinhada ao plano nacional de expansão das universidades federais, a UFRRJ, inicialmente sediada no município de Seropédica, estado do Rio de Janeiro, implantou durante o ano de 2005, seu Instituto Multidisciplinar (IM) em Nova Iguaçu, na Baixada Fluminense, ainda em instalações provisórias e a oferta de cinco cursos de graduação. Em 2010, foram inauguradas as instalações definitivas do IM no bairro da Posse. Com instalações próprias, o IM possui atualmente quatro blocos numa área de 44.000 m 2 com 74 salas de aula, 10 laboratórios, uma biblioteca e um auditório. Entre os laboratórios, 04 são de informática, sendo um exclusivamente do curso de Ciência da Computação. Ofertado no Instituto Multidisciplinar desde 2010.1, o curso de Bacharelado em Ciência da Computação da UFRRJ atende atualmente cerca de 80 alunos e conta com uma estrutura 179 de 12 professores, sendo 5dedicados exclusivamente ao referido curso e 1 servidor técnico-administrativo. O curso dispõe ainda de 9 salas de aula. Cada sala de aula possui cerca de 53 metros quadrados, com espaço para 54 carteiras, um quadro negro e um quadro branco. O curso também dispõe de 4 laboratórios, localizados nas salas 107 (que conta com 45estações), 209 (24 estações), 210 (20 estações) e 309 (30 estações), todos localizados no bloco da Informática, para uso em aulas e atividades extraclasse. O laboratório da sala 107 é de uso comum para os alunos do Instituto Multidisciplinar, com horário de funcionamento de 9:00 às 21:00h. O laboratório 309 é de uso exclusivo do curso de Ciência da Computação. E os das salas 209 e 210 podem ser reservados para aulas e outras atividades nas secretarias do Instituto Multidisciplinar ou do próprio departamento do curso, respectivamente. O anexo 01 apresenta as normas de reserva e utilização dos laboratórios que vêm sendo adotadas pelo curso. Recursos de apoio como projetores multimídia e notebooks são disponibilizados pelo Departamento de Tecnologias e Linguagens, unidade institucional a qual o curso se encontra vinculado. A disponibilização desses recursos se dá por meio de reserva antecipada feita pelos docentes do curso. Cabe ressaltar que os laboratórios de apoio ao curso possuem projetores multimídia fixos, dispensando a política de reserva antecipada comentada anteriormente. Todos os professores do curso possuem gabinetes de trabalho próprios providos de computadores com acesso à internet, armários, mesas de reunião e cadeiras. A biblioteca do IM possui atualmente cerca de xx títulos, sendo xx específicos da área da Computação e afins. Obedece às regras institucionais da universidade no que se refere à consulta local, em espaço próprio, e ao empréstimo de livros. O corpo discente possui espaço para representação estudantil (Diretório Acadêmico) em uma sala própria de 53 metros quadrados. PARCERIAS Apesar de sua juventude, o curso de Ciência da Computação já vem desenvolvendo diversas parcerias por meio de seus projetos de pesquisa. Alguns desses projetos recebem fomento oficial de órgãos públicos. 180 Também foram incluídos como parceiras, instituições em alguns dos docentes do curso estão engajados em programas de doutoramento. A relação atual de parceiros do curso de Ciência da Computação compreende as seguintes instituições: • Centro de Tecnologia da Informação e Comunicação do Estado do Rio de Janeiro – PRODERJ • Universidade Federal do Rio de Janeiro – UFRJ • Universidade Federal Fluminense – UFF • Instituto Militar de Engenharia – IME • Fundação de Apoio à Escola Técnica do Rio de Janeiro – FAETEC • Universidade do Estado do Rio de Janeiro – UERJ • Pontifícia Universidade Católica do Rio de Janeiro – PUC-Rio • Conselho Nacional de Desenvolvimento Científico e Tecnológico – CNPq • Fundação Carlos Chagas Filho de Amparo à Pesquisa do Estado do Rio de Janeiro – FAPERJ GESTÃO DO CURSO COLEGIADO O documento que estabelece os critérios para a composição e as normas que regem o Colegiado do Curso de Bacharelado em Ciência da Computação encontra-se na seção de anexos deste projeto pedagógico de curso. NDE-NÚCLEO DOCENTE ESTRUTURANTE O Núcleo Docente Estruturante (NDE) é definido pela INEP / Ministério da Educação, como “um conjunto de professores composto por 30% do corpo docente, de elevada formação e titulação, contratados em tempo integral e parcial, que respondem mais diretamente pela criação, implantação e consolidação do Projeto Pedagógico do Curso”. O NDE, em parceria com o Coordenador do Curso, tem autonomia para decidir sobre as questões relativas à dedicação parcial ou integral dos docentes componentes deste grupo. Tem como atribuições principais: Construir o perfil profissional do egresso do curso em consonância com as definições dos órgãos regulatórios e com as demandas sociais e mercadológicas; 181 Identificar as competências necessárias para uma inserção transformadora do discente na sociedade e que estejam alinhadas ao perfil do egresso; Participar das discussões para orientação e construção curricular, definindo os ciclos de formação geral, profissional e complementar; Monitorar o cumprimento do Projeto Pedagógico do Curso, sugerindo ações voltadas à sua implementação. Apoiar a elaboração e aplicação de ferramentas para avaliação interna do curso; Discutir os resultados das avaliações (internas e externas) e propor ações de melhoria contínua; Apoiar a definição dos conteúdos dos planos de ensino; Analisar e propor melhorias para os Planos de Aula elaborados pelos professores das disciplinas; Participar da definição do perfil dos docentes de cada disciplina e opinar sobre necessidades de concurso de novos docentes; Acompanhar as atividades do corpo docente e recomendar apoio ou capacitação sempre que necessário; Acompanhar e participar das ações para o ENADE. Manter atualizado o Projeto Pedagógico do Curso, em sintonia com as necessidades e tendências do mercado de trabalho, de forma alinhada ao Projeto Pedagógico Institucional. Apoiar e sugerir à comunidade acadêmica estratégias de integração de ações de ensino, pesquisa e extensão no contexto tanto do próprio curso quanto da instituição. A fim de acompanhar a organização curricular proposta pela Sociedade Brasileira de Computação e das Diretrizes Curriculares em Computação e Informática, o NDE do curso de Ciência da Computação foi estruturado da seguinte forma: 01 responsável pelo conjunto de disciplinas da área de Fundamentos da Computação 01 responsável pelo conjunto de disciplinas da área de Tecnologias da Computação 182 01 responsável pelo conjunto de disciplinas da área de Matemática e Ciências Básicas 01 responsável pelo conjunto de disciplinas de Contexto Social e Profissional Cabe ressaltar que, embora organizado com um responsável por cada uma das áreas propostas nas Diretrizes Curriculares em Computação e Informática, o NDE pode ser apoiado pelos demais professores do curso, em função de suas áreas de atuação. Atualmente, o NDE do curso de Ciência da Computação possui a seguinte composição: Responsável pelo conjunto de disciplinas da área de Fundamentos da Computação: Profa. Adria Ramos de Lyra Responsável pelo conjunto de disciplinas da área de Tecnologias da Computação: Prof. Ronaldo Ribeiro Goldschmidt Responsável pelo conjunto de disciplinas da área de Matemática e Ciências Básicas: Prof. Ronaldo Gregório Responsável pelo conjunto de disciplinas de Contexto Social e Profissional: Profa. Isabel Fernandes de Souza 183 REFERÊNCIAS BIBLIOGRÁFICAS CR2005. Currículo de Referência da SBC para Cursos de Graduação em Bacharelado em Ciência da Computação e Engenharia de Computação. [Acessado em 05/07/2011. Disponível em: http://www.sbc.org.br/index.php?option=com_jdownloads&Itemid=195&task=view.dow nload&catid=36&cid=183] HUMBOLDT, W. Sobre a Organização Interna e Externa das Instituições Científicas Superiores em Berlim. In.: CASPER, G.; HUMBOLDT, W. Um mundo sem Universidades?. Rio de Janeiro: EdUERJ, 1997. 184 ANEXOS CURRÍCULOS DOS PROFESSORES Adria Ramos de Lyra –http://lattes.cnpq.br/5312565962811745 Aquiles Braga de Queiroz – http://lattes.cnpq.br/4356065339264046 Carla Regina Gomes – http://lattes.cnpq.br/8662465564857093 Carlos Eduardo Ribeiro de Mello – http://lattes.cnpq.br/2417341890473612 Claudia Mazza Dias – http://lattes.cnpq.br/3801901177718984 Isabel Fernandes de Souza – http://lattes.cnpq.br/1491076564319624 Juliana Mendes Nascente Silva – http://lattes.cnpq.br/8035465631167768 Leandro Guimarães Marques Alvim – http://lattes.cnpq.br/3810771931191838 Ronaldo Gregório – http://lattes.cnpq.br/4502104424266743 Ronaldo Ribeiro Goldschmidt – http://lattes.cnpq.br/9602002760041175 NORMAS E PROCEDIMENTOS DO CURSO a. Composição e Normas do Colegiado do Curso de Bacharelado em Ciência da Computação a. Composicao_e_Normas_-_Colegiado_de_Ciencia_da_Computacao.pdf b. Procedimentos para o TCC: o NPCA - Manual de Orientações para Projetos.doc o NPCA - Formulário de Avaliação de Projetos - Comentários.xls o NPCA - Formulário de Avaliação de Projetos - Detalhado.xls o NPCA - Formulário de Avaliação de Projetos - Resumo.xls b. Regulamento de Criação do NPCA o NPCA - Regulamento Interno.doc c. Modelo de Plano de Disciplina o Modelo de Plano de Disciplina.doc ATAS E RESOLUÇÃO DE CRIAÇÃO DO NDE, EMPRESA JR., ETC. a. Ata NDE – Reunião realizada em 01 de junho de 2011. o ata_nde_01062011.doc 185 RELATÓRIOS TÉCNICOS DAS AÇÕES PESQUISA a. Produção Científica BCC o Produção Científica BCC - Histórico - v. 27-11-11.doc ENSINO a. Histórico das Ações de Ensino o Relatório das Práticas e Ações de Ensino.docx EXTENSÃO a. Histórico das Ações de Extensão o Relatório das Práticas e Ações de Extensão.docx RELATÓRIO CONSOLIDADO DOS SISTEMAS AVALIATIVOS DOCENTES a. Em desenvolvimento. DISCENTES a. Em desenvolvimento. CURSO a. Em desenvolvimento. 186