Millennials are defined as the demographic cohort following Generation X, born between early 1980s and early 2000s. We are already educating most of them. Many more are reaching adulthood, and college age, about now, and will soon be in our classrooms. Educating the new breed of software engineers is tough. Millennials have been dominating the higher education programs for some time. This cohort has unique needs, learning styles, and skills. They are diverse, collaborative, tech-savvy, and keenly interested in emerging technologies. The software industry is in a constant state of flux, with new techniques, paradigms, and application domains popping up with increasing frequency. Companies quickly adjust to this shifting landscape, and their expectations and needs also shift with it. What about educators? How should software engineering curricula and educators' teaching styles adapt to these changes? Perspectives of students and educators should be heard to answer this question and identify solutions. Following last year's First International Workshop on Software Engineering Curricula for Millennials (SECM 2017), our goal in this second edition is to continue to bring together main stakeholders to discuss the unique needs and challenges of software engineering education for Millennials.
Proceeding Downloads
A minimally disruptive approach of integrating testing into computer programming courses
The problem of finding and evaluating effective ways of integrating software testing concepts and related techniques into introductory programming courses is still an open research question. In this paper, we present multiple studies that assess our ...
Teaching requirements engineering concepts using case-based learning
Requirements Engineering (RE) is known to be critical for the success of software projects, and hence forms an important part of any Software Engineering (SE) education curriculum offered at tertiary level. In this paper, we report the results of an ...
Team composition in software engineering project courses
Composing well-balanced, effective development teams for software engineering project courses is important for facilitating learning, fostering student motivation as well as obtaining a successful project outcome. However, team composition is a ...
Tech startup learning activities: a formative evaluation
The Tech Startup model is an approach where students in Software Engineering and Entrepreneurship courses form interdisciplinary teams to create businesses based on software products. The model combines Agile software development with compatible ...
Hiring millennial students as software engineers: a study in developing self-confidence and marketable skills
Software engineering courses and internships aim to equip students with skills that are vital in the software engineering industry. Millennial students are expected to emerge from an undergraduate education ready to step directly into software developer ...
Hackathons in software engineering education: lessons learned from a decade of events
Hackathons are currently a hot topic in industrial learning settings. Like intensive collaborative courses (e.g. code camps), hackathons have been shown to be successful tools for learning. However, current research has failed to adequately compare the ...
Scrum2kanban: integrating kanban and scrum in a university software engineering capstone course
Using university capstone courses to teach agile software development methodologies has become commonplace, as agile methods have gained support in professional software development. This usually means students are introduced to and work with the ...
A first implementation of a design thinking workshop during a mobile app development course project
Millennials prefer learning-by-doing and social learning, and project-based learning. At the same time, software engineering educators should take into account that software development projects require not only technical skills but also creativity---...
Integrating software engineering key practices into an OOP massive in-classroom course: an experience report
Programming and software engineering courses in computer science curricula typically focus on both providing theoretical knowledge of programming languages and best-practices, and developing practical development skills. In a massive course --- several ...
Software engineering for millennials, by millennials
Software engineers need to manage both technical and professional skills in order to be successful. Our university offers a 5.5 year program that mixes computer science, software and computer engineering, where the first two years are mostly math and ...
A manga-driven system requirements development PBL exercise
We conducted a Project-Based Learning (PBL)-type exercise incorporating Japanese cartoon ("manga") techniques into Requirements Development (RD) processes. Manga has established techniques, such as those for character setting and story development, that ...
An agile software engineering course with product hand-off
This paper describes a novel design for an agile software engineering course that emphasizes keeping product artifacts updated throughout development. The signature transformative event in the course is the mid-semester project "hand-off," at which ...
- Proceedings of the 2nd International Workshop on Software Engineering Education for Millennials
Recommendations
Software engineering for millennials, by millennials
SEEM '18: Proceedings of the 2nd International Workshop on Software Engineering Education for MillennialsSoftware engineers need to manage both technical and professional skills in order to be successful. Our university offers a 5.5 year program that mixes computer science, software and computer engineering, where the first two years are mostly math and ...
Advancing Software Engineering Professional Education
The importance and complexity of software systems require software engineers who possess the appropriate skills, knowledge, and experience to develop, maintain, and acquire such systems. Graduate education is key in advancing professional software ...