Studiegids

nl en

Software Engineering

Vak
2024-2025

Admission requirements

Not applicable.

Description

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 www.ludev.nl).

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.

Course Objectives

  • 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)

Timetable

In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.

Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.

Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.

Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.

Mode of Instruction

  • Weekly lectures

  • Workshops on homework assignments

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

Assessment method

Due to the project-based nature of the course, presence during the first lecture and the two evaluation meetings is mandatory. Evaluation meetings are planned during scheduled lecture times.

The grade is attained through:

Project Work (60%)

  • Assessed during the two evaluation meetings.

Written Assignments (40%)

  • Comprising a provisional project plan (15%) and a final project plan (25%), each subdivided into smaller assignments.    

In order to pass the course, the project grade must be at least 5.5 and the average of the written assignments must be at least 5.5.

Reading list

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

  • Sheets and practice materials are made available on Brightspace

Registration

As a student, you are responsible for enrolling on time through MyStudyMap.

In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.

There are two enrolment periods per year:

  • Enrolment for the fall opens in July

  • Enrolment for the spring opens in December

See this page for more information about deadlines and enrolling for courses and exams.

Note:

  • It is mandatory to enrol for all activities of a course that you are going to follow.

  • Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.

  • Not being enrolled for an exam/resit means that you are not allowed to participate in the exam/resit.

Contact

Education coordinator LIACS bachelors

Remarks

Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.