nl en

Systems Development (ICTiB&PS)


Admission requirements

Not applicable


This course covers the concepts, principles, techniques and tools used in large-scale enterprise information systems development. It discusses the analysis and design phases of the software development process using the Unified Modeling Language (UML), and the target architecture of modern enterprise systems. Students will gain an in-depth understanding of the complete set of diagrams available for modelling the structural and dynamic aspects of complex systems. The challenges of integrating with existing legacy systems, and with external systems in the overall architectural mix in large organisations will be discussed. The objective of this course is to understand these processes and architectures, and identify the best practices for large software development projects in a multi-actor environment.

Course objectives

Students will attain an understanding of:

  • A historical perspective of system architectures, from mainframe batch and file, via relational DB and 4GL, to OO and Components, and finally to modern Service Oriented Architectures.

  • Architectural principles such as functional abstraction, data abstraction, data mapping, communication and interaction patterns, component and sub-system based interface abstraction, interactions in the context of a system of systems, quality of service, customisation and extensibility mechanisms.

  • The core technologies underlying the different tiers in a modern system architecture, and their interdependencies, such as ◦ Relational, NoSQL, OO, Real Time and In-memory Database Servers ◦ Application Server components, such as DB mapping, BPEL, Web Services, Rules Engine, and Enterprise Service Bus ◦ User interface technologies for mobile, browser and OS based multi channel applications

  • The impact of Cloud and Grid based technologies on the architecture and development process.

  • The role of advanced technologies such as model driven architectures (MDA), meta date driven architectures, event systems, coordination servers, micro containers and services, blockchain technologies, and AI on enterprise systems.

  • The complete set of UML diagrams used for structural and dynamic aspects of computer systems, and what UML's core concepts are, i.e. those that are used 80% of the time, versus more advanced, but less used, concepts.

  • The architecture of the UML standard and its application will be discussed in terms of meta levels, and in terms of model, views and diagrams.

  • The different development methodologies that UML supports, such as data driven, use case driven, process driven.

  • The different ways in which UML is applied in projects: white boarding; documentation; code generation; executable models.

  • The use of UML Profiles to create Domain Specific Languages and customisations of the UML standard, such the SysML profile for systems engineering.

  • A comparative review of commercial UML modelling tools, focusing on modelling functionality, as well as code generation capabilities.

The course consists of lectures and an in-depth team based practical component that focuses on the analysis and design of an end to end application to be deployed in a service oriented architecture.


The schedule can be found on the Leiden University student website

Detailed table of contents can be found in blackboard.

Mode of instruction

6 Interactive lectures

Assessment method

  • Presence and participation: 20%

  • Written assignment: 30%

  • Written Exam: 50%



Reading list

  • Software Engineering: Principles and Practice, Hans van Vliet, 3rd edition, John Wiley & Sons, 2008.

Lecture slides and extra reading materials will be made available online on blackboard.

Signing up for classes and exams

You have to sign up for classes and examinations (including resits) in uSis. Check this link for more information and activity codes.

There is only limited capacity for external students. Please contact the programme Co-ordinator

Contact information

Programme Co-ordinator: ms. Esme Caubo


Also register for every course in Blackboard. Important information about the course is posted here.