Navigation auf uzh.ch
Any software project of significant size is built in a team, is stored in a repository, and is continuously built from a build server to guarantee quality and timely integration of new features. Working in a team has an overhead that is immediately clear to anybody who at some point had to fix a merge conflict in a repository or who had to fix a failing build that was caused by a seemingly unrelated change in a different part of the system. Unfortunately, developers only realize this conflict after the fact, when they thought that they have actually finished their task and when they are ready to move on to the next one. This delayed notification is not only annoying for the developer, it also adds overhead, because a fix takes longer the later the conflict is identified.
We envision that better tools can help to identify such conflicts early on in the process. The assumption is that this makes them easier to fix or maybe prevent them completely by facilitating a better team communication directly when the conflict is introduced. In this master project, the students will build an infrastructure that connects the development environments of different team members. Sharing details about their development activities with each other improves their team awareness and allows conflict detection long before changes are being committed or built. The build server is the central entity that should be used as a synchronization point for all clients.
This project will be supervised by Sebastian Proksch and Carmine Vassallo. Please reach out to us if you have further questions about the project.
The following steps are required for a successful project:
This project will be conducted in the .Net ecosystem and should be based on Visual Studio/ReSharper (IDE) and TeamCity (build server).