Repository logo
 

Search Results

Now showing 1 - 2 of 2
  • Aligning software engineering teaching strategies and practices with industrial needs
    Publication . Metrôlho, José Carlos; Ribeiro, Fernando; Graça, Paula; Mourato, Ana; Figueiredo, David; Vilarinho, Hugo
    Several approaches have been proposed to reduce the gap between software engineering education and the needs and practices of the software industry. Many of them aim to promote a more active learning attitude in students and provide them with more realistic experiences, thus recreating industry software development environments and collaborative development and, in some cases, with the involvement of companies mainly acting as potential customers. Since many degree courses typically offer separate subjects to teach requirements engineering, analysis and design, coding, or validation, the integration of all these phases normally necessitates experience in a project context and is usually carried out in a final year project. The approach described in this article benefits from the close involvement of a software house company which goes beyond the common involvement of a potential customer. Students are integrated into distributed teams comprising students, teachers and IT professionals. Teams follow the agile Scrum methodology and use the OutSystems low-code development platform providing students with the experience of an almost real scenario. The results show that this approach complements the knowledge and practice acquired in course subjects, develops the students’ technical and non-technical skills, such as commitment, teamwork, and communication, and initiates them in the methodologies and development strategies used in these companies. The feedback from the teachers involved, software companies and students was very positive.
  • Preparing students for the software industry new demands
    Publication . Metrôlho, José Carlos; Ribeiro, Fernando; Batista, Rodrigo; Graça, Paula; Pacheco, Diogo
    A solid preparation in terms of soft skills and state-of-the-art technical skills in Software Engineering (SE) is a goal for the academy. It also contributes to reducing the gap between Software Engineering education and the software industry's new demands. Generally, in computer science or computer engineering courses, there are separate subjects to teach requirements engineering, analysis, design, coding, or validation. However, integrating all these subjects usually requires experience in developing a complete project. This article describes aspects of an active and collaborative learning approach involving academia and industry actors. The approach presented in this article involved staff from a software company in collaboration with staff from an academic institution. It resulted in a student being involved in an entire software development project. The student was involved in an agile team of faculty and Information Technology (IT) professionals. The Scrum agile framework was followed, and the product was developed using a Low-code development platform. This article presents the approach, details of the project design and implementation, results achieved, lessons learned, and guidelines for the future. The results show that this agile, full-stack approach allows students to develop cutting edge technical and non-technical skills.