SOFTWARE DESIGN

Course objectives

General outcomes: Knowledge of the Java programming language and the UML design language. In particular: objects, methods, classes, interfaces, inheritance, polymorphism, generics, packages, iterators and exceptions. Understanding of methodologic aspecs of the design of programming applications of medium to large size: modularity, robustness, reusability, maintainability, all achieved via abstractions, encapsulation, information hiding, generalization and specialization. Specific outcomes: Knowledge and understanding: Object-oriented programming and its design methodology for large-scale projects. The UML design language and the Java programming language. Applying knowledge and understanding: Being able to design and realize an application comprising several classes and associations, and performing a number of activities involving them. Making judgements: Being able to evaluate the quality of an application, discriminating the data modeling aspects from those related to processing modeling. Communication: The projects and lab activities empower the students with the ability to communicate and share the requirements of an application of medium complexity, its design choices and development methodologies. Lifelong learning skills: Besides the usual skills of learning from theoretical descriptions, the course stimulates the students at autonomously learning some of its topics; especially the lab activities encourages working in groups and applying the ideas and tecniques learned.

Channel 1
PAOLO LIBERATORE Lecturers' profile

Program - Frequency - Exams

Course program
Object-oriented programming. UML
Prerequisites
Computer programming.
Books
Handouts
Frequency
Three lectures per week.
Exam mode
Written test. Lab test.
Lesson mode
Lectures and lab
PAOLO LIBERATORE Lecturers' profile

Program - Frequency - Exams

Course program
Object-oriented programming. UML
Prerequisites
Computer programming.
Books
Handouts
Frequency
Three lectures per week.
Exam mode
Written test. Lab test.
Lesson mode
Lectures and lab
Channel 2
PAOLO LIBERATORE Lecturers' profile

Program - Frequency - Exams

Course program
Object-oriented programming. UML
Prerequisites
Computer programming.
Books
Handouts
Frequency
Three lectures per week.
Exam mode
Written test. Lab test.
Lesson mode
Lectures and lab
PAOLO LIBERATORE Lecturers' profile

Program - Frequency - Exams

Course program
Object-oriented programming. UML
Prerequisites
Computer programming.
Books
Handouts
Frequency
Three lectures per week.
Exam mode
Written test. Lab test.
Lesson mode
Lectures and lab
  • Lesson code1018706
  • Academic year2024/2025
  • CourseComputer and System Engineering
  • CurriculumInformatica
  • Year2nd year
  • Semester1st semester
  • SSDING-INF/05
  • CFU9
  • Subject areaIngegneria informatica