Software Engineering Processes

Course

URL study guide

https://studiegids.vu.nl/en/courses/2025-2026/XB_0089

Course Objective

The main goal of the course is to provide students with theory and practice on concepts, processes, and tools related to software development and maintenance. These include traditional software quality factors, software testing techniques, and modern software engineering processes (i.e., collaborative development and DevOps). Upon completion of the course, students will be able to:Understand and explain software quality factors (Knowledge and understanding);Understand, explain, and apply basic software testing techniques (Knowledge and understanding) (Applying knowledge and understanding);Understand and explain the fundamentals of DevOps and how DevOps teams can build and deliver software with the help of existing tools (Knowledge and understanding);Implement a Continuous Integration/Deployment pipeline (Applying knowledge and understanding).

Course Content

Developing real software systems is complex. They have various dimensions (e.g., they are usually large), they involve several people (having different backgrounds) collaborating and synchronizing with each other, they need various resources of different types, and their development often starts when the customer requirements are still unclear. The main steps of a software engineering process are analysis of requirements, software design, implementation, testing, and maintenance. While other courses cover early activities in a software engineering process (Requirements Engineering and Software Design), this course covers the continuous activities performed by software engineers to develop, maintain, and operate software systems. The topics covered by the course are:Introduction to software qualityIntroduction to software testing
- DevOpsContinuous Integration (CI) and Continuous Deployment (CD)Collaborative development (e.g., version control systems, code review)Open-source software development

Teaching Methods

The course contains lectures about the listed topics above. In addition, there will be at least one guest lecturer from the industry who will bring their case to show how software development and maintenance happens in practice.

Method of Assessment

To pass the course, students must achieve at least 55% in each assignment and in the exam. The final grade is then calculated as: (30% × Assignment 1) + (30% × Assignment 2) + (40% × Exam) Students are required to resit if:
• The exam grade is below 55%
• Assignment 1 grade is below 55%
• Assignment 2 grade is below 55%

Literature

The course material will be handed out by the lecturers and distributed online (Canvas). It is composed of a selection of book chapters, relevant scientific articles, and documentation of the used software/tools.

Target Audience

Bachelor Computer Science (Year 2).

Recommended background knowledge

Requirements Engineering, Software Design.

Explanation Canvas

Further information for this course will be made available online (Canvas). Group enrollment takes place in Canvas.
Academic year1/09/2531/08/26
Course level6.00 EC

Language of Tuition

  • English

Study type

  • Bachelor