nl en

Software Engineering



Not applicable.


Software systems are typically built over a longer period of time with diverse teams (in terms of organizational roles and skill sets), as well as with constantly changing requirements. This results in various challenges with respect to engineering and project management. In addition, the wishes of a client are not always easy to translate to a set of functional requirements for a software system. And various non-functional requirements, such as, performance, maintenance costs, and reliability of the software system, only come into real focus once a system has been deployed in the real-world environment.

In the course “Software Engineering,” we study techniques for managing software development processes and for engineering high-quality software systems. These skills are honed in the context of the real-world corporate environment provided by LUdev, a software house fully ran by students. Students join LUdev in teams, which are tasked to complete a real-world software project for an actual client. Completing this project requires more than just programing skills, as the team is also in charge of project management, version management, client communication, collaborations within LUdev (involving students from other courses) and product deployment. LUdev facilitates these acivities with infrastructure, tutorials, manuals and technical support, so student teams can be as productive as possible (for previous results see the website

Study content:

  • Development processes and methodology

  • Software project management

  • Business processes

  • Requirement elicitation and analysis

  • System modeling using UML

  • Quality Assurance & Testing

Programming and algorithmic skills are required to participate in the course.


  • Managing the software development process using agile approaches

  • Learning the differences between various software development methodologies

  • Practical experience with project management and team-based software development

  • Modeling the design of software systems and business processes in UML

  • Applying version control, testing and quality metrics to software under development

  • Using modern software development tools (IDEs, version control, continuous integration, etc)


De meest recente roosters zijn te vinden op de Studenten-website:


  • Weekly lectures

  • Workshops on homework assignments

  • A project on a real-world software development project inside the virtual company LUdev


Due to the project-based nature of the course, presence during the first lecture and the evaluation meetings is mandatory. Evaluation meetings are planned during scheduled lecture times. The meeting schedule will be made available on Brightspace.

The final grade consists of the project grade, amended with bonus points for individual team members, based on their participation in the project.

The teacher will inform the students how the inspection of and follow-up discussion of the exams will take place.


  • Book (optional): H. van Vliet, Software Engineering: Principles and Practice, ISBN: 9780470031469

  • Sheets and practice materials are made available on Brightspace


Aanmelding voor vakken verloopt via uSis. Hiervoor is de uSis-code van het vak nodig, die te vinden zijn in de Studiegids. Meer info over het inschrijven voor vakken of tentamens is hier te vinden.


In MyTimetable kun je alle vak- en opleidingsroosters vinden, waarmee jij je persoonlijke rooster kunt samenstellen. Onderwijsactiviteiten waarvoor je in uSis staat ingeschreven, worden automatisch in je rooster getoond. Daarnaast kun je My Timetable gemakkelijk koppelen aan een agenda-app op je telefoon en worden roosterwijzigingen automatisch in je agenda doorgevoerd; bovendien ontvang je desgewenst per e-mail een notificatie van de wijziging.

Vragen? Bekijk de video-instructie, lees de instructie of neem contact op met de ISSC helpdesk.


Inschrijving voor vakken verloopt via uSis. Wanneer je je hier inschrijft voor een bepaald vak krijg je automatisch ook toegang tot de omgeving van dit vak via Brightspace.

Voor meer informatie over Brightspace kun je op deze link klikken om de handleidingen van de universiteit te bekijken. Bij overige vragen of problemen kan contact opgenomen worden met de helpdesk van de universiteit Leiden.


Onderwijscoördinator Informatica, Riet Derogee.