Perfil do egresso

Levando em consideração a flexibilidade necessária para atender domínios diversificados de aplicação as vocações institucionais, espera-se que os egressos do curso de bacharelado em Ciências da Computação:

  1. Possuam sólida formação em Ciência da Computação e Matemática que os capacitem a construir aplicativos de propósito geral, ferramentas e infraestrutura de software de sistemas de computação e de sistemas embarcados, gerar conhecimento científico e inovação e que os incentivem a estender suas competências à medida que a área se desenvolva;
  2. Possuam visão global e interdisciplinar de sistemas e entendam que esta visão transcende os detalhes de implementação dos vários componentes e os conhecimentos dos domínios de aplicação;
  3. Conheçam a estrutura dos sistemas de computação e os processos envolvidos na sua construção e análise;
  4. Conheçam os fundamentos teóricos da área de Computação e como eles influenciam a prática profissional;
  5. Sejam capazes de agir de forma reflexiva na construção de sistemas de computação por entender que eles atingem direta ou indiretamente as pessoas e a sociedade;
  6. Sejam capazes de criar soluções, individualmente ou em equipe, para problemas complexos caracterizados por relações entre domínios de conhecimento e de aplicação;
  7. Reconheçam que é fundamental a inovação e a criatividade e entendam as perspectivas de negócios e oportunidades relevantes.

Além desse perfil genérico, os egressos do curso de bacharelado em Ciências da Computação precisam ainda ter desenvolvido as seguintes competências e habilidades:

  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.