Considerando a flexibilidade necessária para atender domínios diversificados de aplicação e as vocações institucionais, os cursos de bacharelado em Ciência da Computação devem prover uma formação profissional que revele, pelo menos, as habilidades e competências para:

  1. Compreender os fatos essenciais, os conceitos, os princípios e as teorias relacionadas à Ciência da Computação para o desenvolvimento de software e hardware e suas aplicações;
  2. Reconhecer a importância do pensamento computacional no cotidiano e sua aplicação em circunstâncias apropriadas e em domínios diversos;
  3. Identificar e gerenciar os riscos que podem estar envolvidos na operação de equipamentos de computação (incluindo os aspectos de dependabilidade e segurança);
  4. Identificar e analisar requisitos e especificações para problemas específicos e planejar estratégias para suas soluções;
  5. Especificar, projetar, implementar, manter e avaliar sistemas de computação, empregando teorias, práticas e ferramentas adequadas;
  6. Conceber soluções computacionais a partir de decisões visando o equilíbrio de todos os fatores envolvidos;
  7. Empregar metodologias que visem garantir critérios de qualidade ao longo de todas as etapas de desenvolvimento de uma solução computacional;
  8. Analisar quanto um sistema baseado em computadores atende os critérios definidos para seu uso corrente e futuro (adequabilidade);
  9. Gerenciar projetos de desenvolvimento de sistemas computacionais;
  10. Aplicar temas e princípios recorrentes, como abstração, complexidade, princípio de localidade de referência (caching), compartilhamento de recursos, segurança, concorrência, evolução de sistemas, entre outros, e reconhecer que esses temas e princípios são fundamentais à área de Ciência da Computação;
  11. Escolher e aplicar boas práticas e técnicas que conduzam ao raciocínio rigoroso no planejamento, na execução e no acompanhamento, na medição e gerenciamento geral da qualidade de sistemas computacionais;
  12. Aplicar os princípios de gerência, organização e recuperação da informação de vários tipos, incluindo texto imagem som e vídeo;
  13. Aplicar os princípios de interação humano-computador para avaliar e construir uma grande variedade de produtos incluindo interface do usuário, páginas WEB, sistemas multimídia e sistemas móveis.

A computação está presente em diversas atividades humanas, dentre elas a agricultura, comunicação, educação, meio ambiente, saúde e segurança pública, cabendo aos profissionais da área a responsabilidade pelo desenvolvimento de soluções, ferramentas e processos coerentes com valores éticos e de interesse social buscando o avanço social e o bem-estar social. Conforme a diretriz curricular, são previstos os estudos das seguintes áreas humanísticas:

  • História da computação: para promover o conhecimento da evolução histórica da área de computação de forma a permitir que o egresso se localize no processo evolutivo da área e seja capaz de avaliar novas tendências evolucionárias.
  • Empreendedorismo: para prover o egresso de produzir soluções criativas, competentes e inovadoras com foco para o mercado, reconhecendo e criando empreendimentos de sucesso por meio do reconhecimento e aproveitando as oportunidades do mercado.
  • Ética: para tratar questões e problemas relacionados ao exercício profissional estudando o impacto da automação e de técnicas mais avançadas como a inteligência artificial junto à sociedade provendo o conhecimento das influências individuais e sociais ao profissional da computação, sejam elas positivas ou negativas.
  • Sociologia: para prover ao profissional de computação uma posição crítica nos aspectos da vida social e cultural da qual os profissionais fazem parte, abordando os desafios frente a inovações tecnológicas, mudanças na forma de trabalho, novas exigências e qualificações impostas pelas novas tecnologias e o desenvolvimento do espírito critico em relação a compreensão e questionamento do mundo tecnológico e sociocultural que circula o profissional.
  • Filosofia: para possibilitar ao profissional de computação a ampliação da realidade na busca incessante do conhecimento científico e o relacionamento entre as teorias científicas e as experiências retratadas por ela.

O Curso de Bacharelado em Ciência da Computação tem a duração mínima de 4 anos e a máxima de 6 anos. O seu currículo pleno está estruturado em 8 semestres, em que os 3 primeiros semestres destinam-se às disciplinas de base física, matemática e programação de computadores, essenciais a formação básica do profissional. Os 4º e 5º semestres destinam-se às disciplinas de formação básica em computação necessárias para plena formação do profissional. Os 6º, 7º e 8º semestres destinam-se às disciplinas de formação tecnológica e complementar. Nesses períodos o aluno pode escolher o caminho que deseja trilhar através de um número de disciplinas optativas capazes de fornecer bases tecnológicas avançadas e diretamente ligadas às linhas de pesquisas do curso. As disciplinas eletivas fornecem bases complementares de formação humanística, empreendedora e ética.

As disciplinas do curso de Ciência da Computação da UFT estão dispostas em 4 grupos: (a) disciplinas obrigatórias, (b) disciplinas eletivas, (c) disciplinas optativas e, (d) disciplinas equivalentes. As disciplinas obrigatórias correspondem à formação necessária para o Bacharel em Ciência da Computação formado na UFT. Todas essas disciplinas devem ser cursadas para a conclusão do curso. As disciplinas eletivas possuem caráter obrigatório, isto é, o aluno precisa cursar os 8 créditos correspondentes às eletivas. A grade possui 4 opções de disciplinas eletivas. O aluno poderá escolher quais disciplinas cursar para cumprir estes créditos obrigatórios. A escolha pode ser feita entre as disciplinas da lista de eletivas do curso. A oferta de disciplinas eletivas será feita segundo a disponibilidade de professor e seguindo os objetivos do projeto pedagógico do curso. As disciplinas optativas não possuem caráter obrigatório e a sua finalidade é complementar a formação do aluno. O aluno pode escolher as disciplinas optativas que deseja cursar dentro da lista de disciplinas optativas do curso.

É importante destacar que segundo o Currículo de Referência da Sociedade Brasileira de Computação, as disciplinas foram organizadas em núcleos, onde cada disciplina abrange um campo específico de conhecimento. As disciplinas estão organizadas nos seguintes núcleos:

  • Fundamentos da Computação: compreende o núcleo de matérias que envolvem a parte científica e as técnicas fundamentais à formação sólida dos egressos;
  • Tecnologia da Computação: compreende o núcleo de matérias que representam um conjunto de conhecimento agregado e consolidado que capacitam o aluno para a elaboração de solução de problemas nos diversos domínios de aplicação;
  • Matemática: propicia a capacidade de abstração, de modelagem e de raciocínio lógico constituindo a base para várias matérias da área de Computação;
  • Ciências da Natureza: desenvolvem no aluno a habilidade para aplicação do método científico;
  • Contexto Social e Profissional: fornecem o conhecimento sociocultural e organizacional, propiciando uma visão humanística das questões sociais e profissionais, em consonância com os princípios da ética em computação.

Tabela Disciplinas x Núcleo Temático.

DISCIPLINAS DISTRIBUÍDAS POR NÚCLEOS DE CONHECIMENTO
Ciências da Natureza
Física Teórica e Experimental IFísica Teórica e Experimental II
Contexto Social e Profissional
Atividades ComplementaresIntrodução à Administração
Computadores e SociedadeIntrodução à Economia
Cultura Africana, Afro-brasileira e IndígenaIntrodução à Filosofia
Cultura, Desenvolvimento e Meio AmbienteLíngua Brasileira de Sinais (LIBRAS) – Decreto nº 5.626 /2005.
Direito e ComputaçãoMetodologia Científica
Empreendedorismo e InovaçãoPatrimônio Artístico e Cultural do Brasil
Educação AmbientalProjeto de Graduação I
Estágio SupervisionadoProjeto de Graduação II
Fundamentos de Computação
Estrutura de Dados IProgramação de Computadores
Estrutura de Dados IIProjeto e Análise de Algoritmos
Introdução à Ciência da ComputaçãoParadigmas de Linguagens de Programação
Lógica de ProgramaçãoSistemas Digitais
Organização de ComputadoresSistemas Operacionais
Pesquisa OperacionalTeoria da Computação
Programação Orientada a ObjetosTeoria dos Grafos
Matemática
Álgebra LinearCálculo Vetorial e Otimização
Cálculo Diferencial e Integral ILógica Matemática
Cálculo Diferencial e Integral IIMatemática Discreta
Cálculo NuméricoProbabilidade e Estatística
Tecnologia da Computação
Aprendizado de MáquinaLinguagens de Descrição de Hardware
Banco de DadosLinguagens Formais e Autômatos
Bancos de Dados Não ConvencionaisMétodos Computacionais em Engenharia
Bancos de Dados Paralelos e DistribuídosMicroprocessadores
Bioinformática e Biologia ComputacionalMineração de Dados
Busca e Recuperação de InformaçõesProcessamento de Imagens
Circuitos DigitaisProgramação Distribuída e Pararela
CompiladoresProjeto e Implementação de Sistemas Embarcados
Computação BioinspirdaProjeto em Banco de Dados
Computação Forense e Perícia DigitalProjetos de Sistemas
Computação GráficaProgramação Comercial
Desenvolvimento de Aplicações Móveis HíbridosRedes de Computadores
Desenvolvimento Aplicativos para Dispositivos Móveis iOSRedes Neurais e Aprendizado Profundo (Deep Learning)
Engenharia de SoftwareSegurança e Auditoria de Sistemas
Fundamentos de RobóticaSistemas de Informações Geográficas
Fundamentos de Sistemas de InformaçãoSistemas Embarcados
Gerência de ProjetosSistemas Distribuídos
Gerência de Redes de ComputadoresTeoria da Informação
Heurísticas e Meta-HeurísticasTópicos Avançados em Ciência da Computação
Internet das CoisasTópicos em Programação Matemática
Inteligência ArtificialVirtualização e Computação em Nuvem (Cloud Computing)
Interface Homem Computador 

As disciplinas optativas são divididas em áreas de pesquisa do curso:

  1. Banco de Dados e Engenharia de Software: Bancos de Dados Não Convencionais, Bancos de Dados Paralelos e Distribuídos, Desenvolvimento de Aplicações Móveis Híbridas, Desenvolvimento de Aplicações para Dispositivos Móveis, Gerência de Projetos, Fundamentos de Sistemas de Informação, Mineração de Dados, Programação Comercial, Sistemas de Informações Geográficas.
  2. Processamento Gráfico: Análise de Imagens, Animação Digital, Busca e Recuperação de Informações, Sistemas Multimídia.
  3. Sistemas de Computação: Computação Forense e Perícia Digital, Circuitos Digitais, Gerência de Redes de Computadores, Fundamentos de Robótica, Internet das Coisas, Linguagens de Descrição de Hardware, Projeto e Implementação de Sistemas Embarcados, Programação Paralela e Distribuída, Microprocessadores, Sistemas Embarcados, Virtualização e Computação em Nuvem, Teoria da Informação.
  4. Inteligência Artificial e Otimização: Aprendizado de Máquina, Computação Bioinspirada, Bioinformática e Biologia Computacional, Heurísticas e Metaheurísticas e Redes Neurais e Aprendizado Profundo.
  5. Modelagem Computacional de Sistemas: Cálculo Vetorial e Otimização, Métodos Computacionais para Engenharia e Tópicos em Programação Matemática

Disciplinas Eletivas são de livre escolha pelo aluno dentro da instituição, respeitando-se a modalidade presencial. Desta forma, o acadêmico pode escolher cursar as disciplinas eletivas em qualquer curso de graduação na Universidade Federal do Tocantins, sendo o seu aproveitamento deve ser solicitado pelo acadêmico junto ao protocolo do Campus de Palmas. O Curso de Ciência da Computação faz a sugestão das disciplinas à seguir, no entanto, destaca que a opção é do acadêmico:

  1. Administração e Empreendedorismo: Introdução à Administração, Introdução à Contabilidade e Introdução à Economia;
  2. Legislação e Ética: Direito e Computação;
  3. Contexto Social: Cultura Africana, Afro-brasileira e Indígena, Introdução à Filosofia, Linguagem Brasileira de Sinais (LIBRAS) e Patrimônio Artístico e Cultural do Brasil;
  4. Meio Ambiente: Cultura, Desenvolvimento e Meio Ambiente e Educação Ambiental.

Disciplinas optativas e eletivas conforme SINAES:

DISCIPLINAS OPTATIVAS E ELETIVAS CONFORME LEGISLAÇÃO
Decreto 5.626/2005 e Instrumento de Avaliação do SINAES 2017
Indicador Diretriz Componente Curricular
Estrutura
Curricular
Decreto nº 5.626/2005 Libras
Unidades
Curriculares
Promoção de conteúdos pertinentes às políticas de
educação ambiental
Cultura, Desenvolvimento e Meio Ambiente
Educação Ambiental
Promoção do ensino de história e cultura afro-brasileira,
africana e indígena
Cultura Africana, Afro-brasileira e Indígena
Promoção do ensino da educação em direitos humanos e
de educação das relações étnico-raciais
Cultura Africana, Afro-brasileira e Indígena
Conteúdos que diferenciam o curso dentro da área
profissional e induzem o contato com conhecimento
recente e inovador
Empreendedorismo e Inovação
Tópicos Avançados em Ciência da Computação