Building MVPs: An Experience Report of a Software Engineering Capstone Course
Software engineers and software engineering managers are often faced with a challenge to create new products under a tight timeline to meet client and market demand. Often the problem is ill defined, and the stakeholders vary in their view of what the product should be with only one thing common among all and that is a new or improved product is needed to address a problem, issue, gap, or question. As part of a new graduate program in software engineering at the University of Maryland Baltimore County (UMBC), we set out to design a software engineering capstone course that addresses this need. The course is a semi-independent capstone experience that provides the framework and structure for the student to apply knowledge, skills, and experiences gained in the program towards a real-world software intensive product. It may include a project in three major categories including new product introduction, community and business opportunities creation, or software engineering research. Students are expected to work individually to complete a significant applied project that demonstrate their ability to envision, plan, design, architect, deploy, and manage a software product. The project needs to solve a real-world problem and is conducted with a sponsor from UMBC, the community, or the industry. In this paper, we provide a brief overview of the program and its overarching goals, discuss the course learning outcomes and course design approach, reflection and lessons learned since the course was launched in Fall 2023, and future works and next steps. We hope that this experience paper provides valuable insights to others who are seeking to create a similar course or who are looking for new approaches in engineering capstone course design.