Related papers: Integrating Software Engineering Key Practices int…
The discipline of Software Engineering (SE) allows students to understand specific concepts or problems while designing software. Empowering students with the necessary knowledge and skills for the software industry is challenging for…
Software Engineering (SE) is the systematic design, development, maintenance, and management of software applications underpinning the digital infrastructure of our modern world. Very recently, the SE community has seen a rapidly increasing…
Based on the old but famous distinction between "in the small" and "in the large" software development, at Nancy Universit\'e, UHP Nancy 1, we experience for a while software engineering education thanks to actual project engineering. This…
In this paper, we share our lessons learned from more than a decade of teaching software quality aspects within Software Engineering (SE) courses, where the focus is on Agile/Scrum settings: final year software development projects and the…
Nowadays, software is pervasive in our everyday lives. Its sustainability and environmental impact have become major factors to be considered in the development of software systems. Millennials-the newer generation of university…
Context: Empirical studies in software engineering are typically centered on human subjects, ranging from novice to experienced developers. The experience of these individuals is a key context factor that should be properly characterized…
Formal software testing education is important for building efficient QA professionals. Various aspects of quality assurance approaches are usually covered in courses for training software testing students. Automated Test Tools is one of…
Feedback is critical in education. This Innovative Practice Full Paper reports lessons learned from improving the quality of feedback in a semi-capstone software engineering course, with particular focus on how to deliver productive…
In this paper, we introduce the concept of the research practice gap as it is perceived in the field of software requirements engineering. An analysis of this gap has shown that two key causes for the research-practice gap are lack of…
Environmental sustainability is a major and relevant challenge facing computing. Therefore, we must start teaching theory, techniques, and practices that both increase an awareness in our student population as well a provide concrete advice…
Software architecture education remains challenging for instructors, students, and software industry professionals. Several initiatives have been proposed to mitigate the inherent challenges, including games, supporting tools, collaborative…
The use of agile principles and practices in software development is becoming a powerful force in today's workplace. In our quest to develop better products, therefore, it is imperative that we strive to learn and understand the application…
Contribution: A flipped classroom approach to teaching empirical software engineering increases student learning by providing more time for active learning in class. Background: There is a need for longitudinal studies of the flipped…
Open source software (OSS) development offers a unique opportunity for students in Software Engineering to experience and participate in large-scale software development, however, the impact of such courses on students' self-efficacy and…
\textbf{Context:} Empathy is increasingly recognized as a critical human capability for software engineers, supporting collaboration, ethical awareness, and user-centered design. While many disciplines have long explored empathy as part of…
Empirical Software Engineering has received much attention in recent years and became a de-facto standard for scientific practice in Software Engineering. However, while extensive guidelines are nowadays available for designing, conducting,…
Systems Engineering (SE) is the set of processes and documentation required for successfully realising large-scale engineering projects, but the classical approach is not a good fit for software-intensive projects, especially when the needs…
When teaching Programming and Software Engineering in Bachelor's Degree programs, the emphasis on creating functional software projects often overshadows the focus on software quality, a trend that aligns with ACM curricula recommendations.…
Software Engineering is the process of a systematic, disciplined, quantifiable approach that has significant impact on large-scale and complex software development. Scores of well-established software process models have long been adopted…
It's long been accepted that continuous integration (CI) in software engineering increases the code quality of enterprise projects when adhered to by it's practitioners. But is any of that effort to increase code quality and velocity…