Publication Type

Conference Proceeding Article

Version

publishedVersion

Publication Date

4-2024

Abstract

Experienced and skillful software developers are needed in organizations to develop software products effective for their business with shortened time-to-market. Such developers will not only need to code but also be able to work in teams and collaboratively solve real-world problems that organizations arefacing. It is challenging for educators to nurture students to become such developers with strong technical, social, and cognitive skills. Towards addressing the challenge, this study presents a Collaborative Software Development Project Framework for a course that focuses on learning microservices architectures anddeveloping a software application for a real-world business. Students get to work in teams to solve a real-world problem of their own choice. They are given opportunities to recognize that the software development process goes beyond writing code and that social and cognitive skills in engaging with each other are alsoessential. By adopting microservices architectures in the course, students learn to break down the functionalities of their applications into smaller pieces of code with standardized interfaces that can bedeveloped, tested, and deployed independently. This not only helps students to learn various technical skills needed for developing and implementing the functionalities needed by the application in the form of microservices but also facilitates task allocation and coordination among their team members and provides a platform for them to solve problems collaboratively. Upon completion of their projects, students are also asked to reflect on their development process and encouraged to think beyond the basics for better software design and development approaches. The course curriculum incorporates the framework, especially for the student team projects. The earlier teaching weeks introduce a combination of concepts and lab exercises to students as the building blocks. The survey studies show that the framework iseffective in enhancing the students’ learning of technical, social, and cognitive skills, while further improvements, such as closer collaboration with other courses, can be done to improve a holisticlearning curriculum.

Keywords

software development, collaborative problem-solving, real-world, solutions, microservices architectures

Discipline

Higher Education | Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

ICSE-SEET 2024: Proceedings of the IEEE/ACM 46th International Conference on Software Engineering: Software Engineering Education and Training: Lisbon, April 14-20

First Page

22

Last Page

33

ISBN

9798400704987

Identifier

10.1145/3639474.3640064

Publisher

ACM

City or Country

New York

Additional URL

https://doi.org/10.1145/3639474.3640064

Share

COinS