A Lacuna entre a Academia e a Indústria no Ensino de Engenharia de Software

Tempo de leitura: 7 minutos
engenharia de software

Engenharia de Software (Fonte: VectorJuice - Freepik)

A Engenharia de Software (ES), como área do conhecimento, trata essencialmente da aplicação de abordagens sistemáticas, disciplinadas e quantificáveis para desenvolver, operar, manter e evoluir software. Em outras palavras, é a área da Computação que se preocupa em propor e aplicar princípios de engenharia na construção de software (VALENTE, 2020).

Segundo um estudo de 2019 da BRASSCON (Associação Brasileira das Empresas de Tecnologia da Informação e Comunicação), o número de concludentes em áreas ligadas à Computação (como Engenharia de Software) é insuficiente para atender o mercado de Tecnologia da Informação nos próximos anos: o Brasil forma 46 mil pessoas com perfil tecnológico por ano, mas seriam necessárias 70 mil para atingir a necessidade do mercado. Além disso, há uma grande quantidade de alunos evadidos nos cursos acadêmicos relacionados à Computação, chegando a 32,7% do total de matrículas.

Especificamente no ensino de ES, a quantidade e a qualidade dos profissionais está, entre outros fatores, diretamente relacionada à qualidade da educação que, entre outros pontos, pode contribuir significativamente para diminuir a evasão dos estudantes, para a melhoria do estado da arte do desenvolvimento de software e para auxiliar na solução de alguns problemas tradicionais e crises relacionadas com as práticas da indústria (PRIKLADNICKI et al., 2009).

No entanto, ainda é possível perceber uma lacuna entre a academia e a indústria com relação à formação dos futuros profissionais. Frequentemente a academia com seu ensino convencional, com aulas expositivas e grande conteúdo teórico, não atende às necessidades da indústria, que é dinâmica e em constante transformação, onde o engenheiro de software deve ser capaz de desenvolver habilidades técnicas e não técnicas a fim de cumprir com suas atribuições (OGUZ; OGUZ, 2019).

Normalmente, o conteúdo em disciplinas de ES é apresentado como um denso conteúdo teórico-conceitual e é ensinado de forma tradicional, com aulas expositivas e leituras complementares (CUNHA; MARQUES; LEMOS; CÂMARA; VASCONCELLOS, 2018). A natureza fundamentalmente prática da ES, na maioria das vezes, entra em confronto com a maneira teórica com que se dá o ensino nestas disciplinas.

Por um lado, o ensino focado apenas na parte teórica pode ocasionar a desmotivação dos estudantes, visto que, eles podem não conseguir entender como os problemas surgem ou quais suas principais causas e consequências em um ambiente real (TONHÃO et al., 2021).

Em outras situações, o curso de ES pode até contemplar a competência prática, mediante o desenvolvimento de um projeto final (CUNHA; MARQUES; LEMOS; CÂMARA; VASCONCELLOS, 2018). No entanto, os estudantes percebem que os projetos da vida real são diferentes daqueles que realizaram durante sua educação universitária. Essa situação cria uma grande lacuna entre a academia e a indústria onde, entre os possíveis motivos, estão:

  • A profissão de engenheiro de software é capaz de reagir rapidamente a novas plataformas e tendências que exigem a aquisição de novas habilidades, enquanto que a academia não o é;
  • A academia não é rápida o suficiente para incorporar as mudanças da profissão em seu currículo;
  • É um desafio criar experiências realistas no ensino de engenharia e
  • A falta de experiências realistas torna mais desafiador para os alunos adquirir habilidades básicas que são necessárias para a colaboração no desenvolvimento de projetos de software em grande escala  (OGUZ; OGUZ, 2019).

Pode-se acrescentar que as próprias diretrizes curriculares do ACM/IEEE enfatizam a necessidade de proporcionar aos alunos experiências práticas que sejam suficientes para o desenvolvimento das competências esperadas em profissionais de ES (ARDIS et al., 2015). No Brasil, baseados nas Diretrizes Curriculares Nacionais, os referenciais de formação para os cursos de graduação na área da Computação, incluindo ES, apresentam uma proposta baseada em competências, em vez de conteúdo.  O termo “competência” relaciona-se à aptidão do indivíduo em aplicar os conhecimentos adquiridos, assim como as habilidades e qualidades pessoais nas mais diversas situações da atividade profissional. (ZAITSEVA; MISNEVS, 2019).

Nesse contexto, soft skills, ou habilidades não técnicas, como liderança, trabalho em equipe, tomada de decisão, negociação e autorreflexão, são competências importantes para a prática de ES, uma vez que o desenvolvimento de software também envolve diversos aspectos humanos e sociais. Embora existam muitos estudos que enfatizam a importância das habilidades sociais, elas também são uma das causas da lacuna entre a academia e a indústria, uma vez que os engenheiros de software em início de carreira relatam que não se sentem preparados para a comunicação e o trabalho em equipe, onde as soft skills são mais necessárias (OGUZ; OGUZ, 2019).

Integrar teoria e prática é realmente um grande desafio para as universidades em cursos de ES, sendo que esse processo exige tempo e recursos. Estudos apontam que, além de tudo, seriam necessários também professores com experiência em desenvolvimento de software e, em alguns casos, clientes reais para atuarem em contrapartida nos projetos (CUNHA; MARQUES; LEMOS; CÂMARA; VASCONCELLOS, 2018).

Assim, segundo Oguz e Oguz (2019), as universidades podem considerar, entre outras, as seguintes opções para diminuir a lacuna entre a academia e a indústria:

  • Os professores devem se envolver em projetos reais da indústria para acompanhar as novas metodologias da profissão;
  • Os profissionais da indústria podem ser convidados para realizar exposições e apresentações para o corpo discente em disciplinas de ES;
  • O realismo nos projetos do curso pode ser obtido convidando clientes reais para expor suas necessidades, em colaboração direta com a indústria;
  • Os professores devem apresentar projetos interessantes para atrair a atenção dos alunos, de modo que eles fiquem motivados a trabalhar;
  • A academia deve revisar o programa do curso com práticas técnicas e sociotécnicas, para englobar não apenas as hard skills, mas também as soft skills e
  • Os currículos dos programas de ES devem considerar diferentes abordagens de ensino e aprendizagem como, por exemplo, metodologias ágeis como, por exemplo, a aprendizagem baseada em problemas.

Dessa forma, podem ser criadas metodologias e abordagens inovadoras, que possam atender aos estudantes não apenas em relação aos níveis de aprendizagem, mas também em relação à satisfação destes em relação ao curso, e posteriormente, ao mercado de trabalho.

 

Referências

ARDIS, Mark et al. SE 2014: Curriculum Guidelines for Undergraduate Degree Programs in Software Engineering. Computer, v. 48, n. 11, p. 106-109, 23 fev. 2015. Institute of Electrical and Electronics Engineers (IEEE). http://dx.doi.org/10.1109/mc.2015.345.

CUNHA, José Adson O. G. da; MARQUES, Gabriel Araújo; LEMOS, Wellington Lourenço; CÂMARA, Uélio Dornelas; VASCONCELLOS, Francisco J. S.. Software engineering education in Brazil. Proceedings of the XXXII Brazilian Symposium on Software Engineering – SBES ’18, p. 348-356, set. 2018. ACM Press. http://dx.doi.org/10.1145/3266237.3266259.

OGUZ, Damla; OGUZ, Kaya. Perspectives on the Gap Between the Software Industry and the Software Engineering Education. IEEE Access, v. 7, p. 117527-117543, 04 set. 2019. Institute of Electrical and Electronics Engineers (IEEE). http://dx.doi.org/10.1109/access.2019.2936660.

PRIKLADNICKI, Rafael et al. Ensino de Engenharia de Software: Desafios, Estratégias de Ensino e Lições Aprendidas. FEES-Fórum de Educação em Engenharia de Software, p. 1-8, nov. 2009.

TONHÃO, Simone de França et al. Uma abordagem prática apoiada pela aprendizagem baseada em projetos e gamificação para o ensino de Engenharia de Software. Anais do I Simpósio Brasileiro de Educação em Computação (EDUCOMP 2021), p. 143-151, 26 abr. 2021. Sociedade Brasileira de Computação. http://dx.doi.org/10.5753/educomp.2021.14480.

VALENTE, Marco Tulio. Engenharia de Software Moderna: Princípios e Práticas para Desenvolvimento de Software com Produtividade. 2020. 408 p. Disponível em: https://engsoftmoderna.info/. Acesso em: 25 maio 2021.

ZAITSEVA, Larissa; MISNEVS, Boriss. Competency-Based Approach Teaching Software Engineering. Smart Education and e-Learning 2019, v. 1444, p. 231-241, 1 jun. 2019. Springer Singapore. http://dx.doi.org/10.1007/978-981-13-8260-4_22.

Escrito por...

  • Mestre em Ciência da Computação e professora do Curso Técnico em Informática e do Bacharelado em Ciência da Computação no IFCE - Tianguá. Atua em áreas de pesquisa de Engenharia de Software tais como Engenharia de Requisitos, Interface Humano-Computador, Arquitetura de Software e Reuso de Software. É orientadora no Projeto Lua desde 2019.

Você pode gostar...