Università degli Studi di Urbino Carlo Bo / Portale Web di Ateneo


A.Y. Credits
2019/2020 9
Lecturer Email Office hours for students
Saverio Delpriori
Teaching in foreign languages
Course with optional materials in a foreign language English
This course is entirely taught in Italian. Study materials can be provided in the foreign language and the final exam can be taken in the foreign language.

Assigned to the Degree Course

Applied Informatics (L-31)
Date Time Classroom / Location
Date Time Classroom / Location

Learning Objectives

The aim is to provide a complete yet terse overview of the basics of object-oriented software development.


01. Software analysis and desing

  01.01 Object-oriented programming

  01.02 Other kinds of software development paradigms

  01.03 Introduction to software modelling

02. Unified modeling language (UML)

  02.01 Introduction to UML

  02.02 Structure diagrams

  02.03 Behaviour diagrams

  02.04 Robusteness analysis

  02.05 Interaction diagrams

  02.06 Finite state machines and other diagrams

03. C# language

  03.01 Introduction

  03.02 Data types, stetements, and methods

  03.03 Advanced concepts

04. Object-oriented software development

  04.01 Classes and objects

  04.02 Inheritance

  04.03 Polymorphism, abstract classes, and interfaces

  04.04 Exceptions

  04.05 Generics

05. Software design patterns

  04.01 Introduction to design patterns

  04.02 Creational patterns

  04.03 Structural patterns

  04.04 Behavioral patterns

06 Laboratory activities

  06.01 The Visual Studio environment

  06.02 How to write a simple class

  06.03 How to develop class hierarchy and polymorphism

  06.04 How to develop generics and how to manage exeptions

  06.05 Design pattern implementation

  06.06 Difference between software core logic and UI

  06.07 How to develop dynamic libraries

Bridging Courses

Although there are no mandatory prerequisites, it is advisable to follow this course after completing the courses of Procedural Programming and Algorithms and Data Structure.

Learning Achievements (Dublin Descriptors)

Knowledge and understanding

At the end of the course, the student will learn: to recognize and make use of the main techniques for developing and designing software; to understand the UML visual language and basic "design patterns" for software development.

Applying knowledge and understanding

The student will be able to employ UML to describe software architectures. She/He will learn to make use of standard ”design patterns.” The student will learn how to write accurately structured software using C# code.

Making judgements???????

The student will be able to evaluate a software source code in terms of modularity, maintainability, abstraction, structure, and code reuse.

Communication skills???????

The student will acquire the ability to communicate with other object-oriented developers using appropriate verbiage.

Learning skills???????

The student will be able to learn and understand the main features of any object-oriented language.

Teaching Material

The teaching material prepared by the lecturer in addition to recommended textbooks (such as for instance slides, lecture notes, exercises, bibliography) and communications from the lecturer specific to the course can be found inside the Moodle platform › blended.uniurb.it

Didactics, Attendance, Course Books and Assessment


Theory lectures and laboratory exercises, both face-to face and on-line.


Although recommended, course attendance is not mandatory.

Course books
  • Jon Skeet, "C# In Depth",  4th edition, Manning, 2019.
  • Fowler, "UML Distilled", Addison-Wesley, 2003 (and newer editions).
  • Gamma, Helm, Johnson, Vlissides, "Design Patterns: Elements of Reusable Object-Oriented Software", Addison-Wesley, 1995 (and newer editions).

Learning achievements will be evaluated through three types of assessments: individual project, written exam, and oral exam.

The individual project has to be submitted at least seven days before the written exam and. The student defines his/her project specification. The project is passed if the mark (which will be valid forever) is at least 18/30. Should the project be resubmitted in a subsequent exam call, the mark of the previously submitted project is cancelled.

The written exam can be taken only if the project has been passed. It is passed if the mark (which is valid only for the exam call in which the written exam is taken) is at least 18/30.

The oral exam can be taken only if the project and the written exam have been passed. It consists of a discussion concerning the project and the written exam, along with further questions about the course program. If passed, it determines a spread between -5/30 and +5/30 of the average of the two previous marks, thus yielding the final mark.

During lessons, further details about the exam structure will be communicated. A mid-term exam could be announced.

The oral exam, which can be taken only if the project and the written exam have been passed, consists of further questions about the course program. If passed, it determines a spread between -5/30 and 5/30 of the average of the two previous marks, thus yielding the final mark. 

« back Last update: 15/09/2020


Questo contenuto ha risposto alla tua domanda?

Il tuo feedback è importante

Raccontaci la tua esperienza e aiutaci a migliorare questa pagina.

Se sei vittima di violenza o stalking chiama il 1522

Il 1522 è un servizio pubblico promosso dalla Presidenza del Consiglio dei Ministri – Dipartimento per le Pari Opportunità. Il numero, gratuito è attivo 24 h su 24, accoglie con operatrici specializzate le richieste di aiuto e sostegno delle vittime di violenza e stalking.

Posta elettronica certificata



Performance della pagina

Università degli Studi di Urbino Carlo Bo
Via Aurelio Saffi, 2 – 61029 Urbino PU – IT
Partita IVA 00448830414 – Codice Fiscale 82002850418
2021 © Tutti i diritti sono riservati