Software Engineering 2

Undergraduate course, HES-SO // University of Applied Sciences Western Switzerland, 2019

Teaching assistant for practical exercices for 2 years (2018-2020). This course is followed by bachelor students in computer science (3rd year).


At the end of the course the student knows how to:

  • Analyze, design, realize distributed computer applications: Component and deployment diagram.
  • Understand and apply design patterns.
  • Analyze, design, realize 3-tier computer applications.


  • Object-oriented architecture principles: Component and deployment diagrams.
  • Main design patterns
  • Principles of 3-tier architecture
  • Software components: Design and implementation of a client/server system.

My role in this course

  • Present the GUI that students have to use for their project (based on JavaFX)
  • Support the students in their project during the entire semester
  • Give a feedback each week based on the work produced by each students’ group