Apresentação

O Bacharelado em Ciência da Computação (BCC) está vinculado ao Centro de Matemática, Computação e Cognição (CMCC) da UFABC, tendo sido aprovado pelo Conselho de Ensino e Pesquisa (ConsEP) em 2007. O curso proporciona formação sólida em fundamentos de Matemática, Estatística e Computação, habilitando a atuação profissional e acadêmica em um largo espectro, que vai da teoria de algoritmos e arquitetura de computadores a métodos numéricos, simulação, pesquisa operacional, teoria dos números, linguagens de programação e desenvolvimento e suporte de sistemas.

O bacharel em Ciência da Computação da UFABC deverá conhecer os fundamentos de sua ciência, suas raízes históricas e suas interligações com outras ciências. Com isso, o egresso estará preparado para:

  • atuar no mercado de trabalho, propondo soluções adequadas para situações já conhecidas, bem como atuar de maneira inovadora em contextos e problemas ainda não explorados;
  • ingressar em cursos de pós-graduação na grande maioria das áreas de ciências e tecnologia;
  • ter a autonomia intelectual para desenvolver-se em um processo constante de educação continuada.

Sendo assim, este profissional pode continuar suas atividades na pesquisa, promovendo o desenvolvimento científico, ou aplicando os conhecimentos científicos, promovendo o desenvolvimento tecnológico. Além disso, há uma preocupação na formação de recusos humanos para a ampliação e desenvolvimento da área de recursos humanos para atuação na área acadêmica.

O BCC tem como objetivos específicos:

  • incentivar o perfil pesquisador do estudante, visando promover o desenvolvimento científico e tecnológico da Ciência da Computação;
  • preparar o estudante para atuar profissionalmente em organizações, com espírito empreendedor e com responsabilidade social;
  • proporcionar atividades acadêmicas que estimulem a interdisciplinariedade, bem como a aplicação e renovação dos conhecimentos e habilidades de forma independente e inovadora, nos diversos contextos da atuação profissional;
  • formar estudantes que possam estar em sintonia com a nova realidade e necessidade do aprendizado contínuo e autônomo, exigido pela sociedade do conhecimento e organizações dos dias atuais;
  • promover no estudante uma postura ética e socialmente comprometida com relação a seu papel e de sua contribuição no avanço científico, tecnológico e social do País.

Cabe observar que o curso de Bacharelado em Ciência da Computação está em linha com o caráter interdisciplinar da UFABC. Assim, o curso objetiva formar profissionais com caráter interdisciplinar, que possuam uma sólida formação teórica aliada à prática que os permita promover o conhecimento científico e tecnológico da Computação. Os egressos do curso também devem atender às demandas regional e nacional por profissionais de Computação, com uma postura reflexiva e ética com relação a seu papel na sociedade.

Competências

Do egresso do curso de Bacharelado em Ciência da Computação da UFABC espera-se uma predisposição e aptidões para a área, assim como competências relacionadas às atividades profissionais. Entende-se o termo competência como a capacidade de exercer aptidões, obtidas principalmente através dos conhecimentos e práticas adquiridos no decorrer do curso. Relacionada a cada competência há um conjunto de habilidades.

A seguir as competências a serem adquiridas pelos egressos são apresentadas, com suas respectivas habilidades.

1. Forte embasamento conceitual nas áreas de formação básica, e na formação de uma visão holística da área da Computação

Pretende-se com esta competência desenvolver o raciocínio lógico e abstrato do estudante, tendo como arcabouço a área de formação básica e suas matérias: Ciência da Computação, Matemática e Física. Com relação à Teoria da Computação, o egresso deve ter conhecimento da noção formal de algoritmos e linguagens, envolvendo os conceitos de complexidade, computabilidade, gramáticas formais, etc. Os fundamentos da Matemática devem auxiliar no desenvolvimento do raciocínio abstrato e lógico, no estudo de expressões lógicas, no entendimento da Teoria da Computação, dentre outros itens. Os fundamentos da Física, além de auxiliarem na construção do raciocínio abstrato e lógico, preparam para estudos relacionados a sistemas digitais, dispositivos de comunicação, dentre outros itens. A partir desta visão holística, o egresso deve ter consciência da abrangência e limitações da Ciência da Computação. As habilidades a serem desenvolvidas nos alunos são:

  • Forte conhecimento dos aspectos científicos e tecnológicos relacionados à área de Computação;
  • Visão sistêmica e integrada da área de Computação.
2. Domínio do processo de projeto e implementação de sistemas computacionais, envolvendo tanto software quanto hardware

O cientista da Computação tem como uma das principais atividades projetar sistemas computacionais em seu aspecto mais amplo, o que envolve elementos de hardware e software. A ele cabe analisar a aplicação a que se destina o sistema computacional, escolhendo as configurações, estruturas e funções mais adequadas para a aplicação em questão. Na área de hardware sua atuação estende-se ao planejamento e projeto de sistemas, considerando os requisitos e necessidades de hardware para o desenvolvimento e implantação do sistema, considerando também a tecnologia disponível. Na área de software sua atividade é estruturar e planejar arquiteturas de sistemas computacionais, identificando seus componentes e respectivas funções, as interfaces, as interações humano-máquina, e determinando a especificação quantitativa dos requisitos da aplicação. É, portanto, de sua responsabilidade a elaboração completa do projeto de sistema de software e dos manuais de operação, a serem empregados como diretrizes de implementação pelo analista encarregado de realizá-lo. Também deverá ter conhecimentos básicos para desenvolver sistemas científicos que envolvam, de forma integrada, modelagem matemática e computacional para a solução de problemas científicos e tecnológicos. A seguir são descritas as habilidades relacionadas nesse grupo:

  • Habilidade de, com base nos conceitos adquiridos, iniciar, projetar, desenvolver, implementar, validar, gerenciar e avaliar projetos de software;
  • Projetar e desenvolver sistemas que integrem hardware e software;
  • Pesquisar e viabilizar soluções de software para várias áreas de conhecimento e aplicação;
  • Conhecer aspectos relacionados à evolução da área de Computação, de forma a poder compreender a situação presente e projetar a evolução futura.
3. Aplicação dos conhecimentos específicos de diversas áreas da computação

Dentro deste domínio pretende-se aprimorar os conhecimentos e habilidades dos estudantes nas seguintes áreas:

  • Sistemas Operacionais;
  • Redes e Computação Distribuída;
  • Compiladores;
  • Banco de Dados;
  • Engenharia de Software;
  • Sistemas Multimídia, Interface Humano-Máquina, Realidade Virtual;
  • Inteligência Artificial;
  • Computação Gráfica e Processamento de Imagens.

O estudante deve considerar que as atuais tecnologias, métodos e ferramentas para cada uma destas áreas são uma instância momentânea das tecnologias da Computação, passíveis de renovação e evolução.

4. Atuação em empresas e como empreendedores

As habilidades relacionadas a este grupo envolvem planejar, ordenar atividades e metas, tomar decisões identificando e dimensionando riscos. A tomada de decisão deve analisar e definir o uso apropriado, a eficácia e o custo-efetividade de recursos humanos, de equipamentos, de materiais, de procedimentos e de práticas. As habilidades a serem desenvolvidas são as seguintes:

  • Utilizar conhecimentos sobre a área de Computação e sua familiarização com as tecnologias correntes para a solução de problemas nas organizações, para o desenvolvimento de novos conhecimentos, ferramentas, produtos, processos e negócios;
  • Desenvolver uma atitude pró-ativa e a capacidade empreendedora;
  • Considerar aspectos de negócio no processo de gerenciamento de um projeto;
  • Organizar, coordenar e participar de equipes multi e interdisciplinares.
5. Desenvolvimento de atividades de pesquisa

Esta competência está relacionada ao desenvolvimento de pesquisa científica e tecnológica, que permita ao aluno ingressar em cursos de pós-graduação, ou realizar estas pesquisas na indústria ou em organizações especializadas. Tal capacidade é de fundamental importância para o estudante desenvolver e organizar o pensamento científico, bem como adquirir técnicas para a produção de textos científicos. Pela característica da rápida evolução da computação, o futuro profissional tem que estar em um processo de contínuo aprendizado. É fundamental que o aluno adquira a capacidade de aprender a aprender, pois a habilidade em pesquisa está fortemente relacionada com o auto-aprendizado. As habilidades a serem desenvolvidas são as seguintes:

  • Aprofundamento do conhecimento em área (ou áreas) específica(s) da Computação, visando possibilitar uma contribuição para o desenvolvimento da área;
  • Conhecer e aplicar o método científico de produção e difusão do conhecimento na sociedade;
  • Ser capaz de identificar e especificar problemas para investigação, bem como planejar procedimentos adequados para testar as hipóteses levantadas;
  • Ter habilidade na apresentação de resultados científicos e técnicos em publicações, seminários e outras formas de expressão.
6. Formação integral do estudante

Com a rápida e constante evolução na área da Computação e demais áreas do conhecimento, o curso de Bacharelado em Ciência da Computação da UFABC deve preparar egressos para o processo de educação continuada, que os permitirá avançar além das tecnologias atuais, vencendo, desta forma, os desafios do futuro. Os egressos do curso devem apresentar um bom nível de comunicação, tanto oral quanto escrita, em uma variedade de contextos. Para tanto, é necessário que expressem suas idéias de maneira clara e objetiva, bem como apresentem críticas construtivas a outros trabalhos. Também, o egresso deve ser capaz de liderar e ser liderado com espírito de equipe, resolvendo situações com flexibilidade e adaptabilidade diante de problemas e desafios. A visão da importância em pautar seu trabalho pela ética profissional e pelo respeito humano deve ser uma característica marcante do futuro profissional. A interdisciplinariedade está presente nesta competência.

De acordo com o projeto pedagógico da UFABC, na segunda metade do século XX a necessidade de resgatar a integridade do conhecimento levou a uma nova abordagem, que consiste na articulação de várias disciplinas para atacar determinado problema ou problemática, caso a caso: é a chamada interdisciplinaridade. Essa técnica valoriza naturalmente o trabalho de equipes de pesquisadores filiados a diferentes disciplinas, empenhados na busca de soluções para o problema-caso em estudo. Para isso, os envolvidos precisam frequentemente deixar de lado temporariamente a lógica e o jargão disciplinares em favor de uma maior abrangência do escopo das suas pesquisas num contexto real. Sendo assim, no projeto pedagógico do BCC procura-se definir uma matriz interdisciplinar, que considera a revolução no progresso da ciência originada pela intercessão de várias áreas do conhecimento científico e tecnológico.

A seguir são descritas as habilidades relacionadas a esta competência:

  • Desenvolver aprendizagem contínua e autônoma, considerando o progresso científico cada vez mais acelerado e as demandas culturais resultantes deste fato;
  • Trabalhar em equipes interdisciplinares;
  • Apresentar um bom nível de comunicação oral e escrita;
  • Domínio de regras básicas que regem a ética profissional da área de Computação, bem como a ética social;
  • Compreender a atuação profissional como uma forma de intervenção do indivíduo na sociedade, devendo esta intervenção refletir uma atitude crítica, de respeito aos indivíduos, à legislação, à ética, ao meio ambiente, tendo em vista contribuir para a construção da sociedade presente e futura.