First cycle
degree courses
Second cycle
degree courses
Single cycle
degree courses
School of Science
Course unit
SCP4065580, A.A. 2018/19

Information concerning the students who enrolled in A.Y. 2016/17

Information on the course unit
Degree course First cycle degree in
SC1167, Degree course structure A.Y. 2011/12, A.Y. 2018/19
bring this page
with you
Number of ECTS credits allocated 13.0
Type of assessment Mark
Course unit English denomination SOFTWARE ENGINEERING
Website of the academic structure
Department of reference Department of Mathematics
Mandatory attendance No
Language of instruction Italian
Single Course unit The Course unit can be attended under the option Single Course unit attendance
Optional Course unit The Course unit can be chosen as Optional Course unit

Teacher in charge TULLIO VARDANEGA INF/01
Other lecturers RICCARDO CARDIN

ECTS: details
Type Scientific-Disciplinary Sector Credits allocated
Core courses INF/01 Computer Science 13.0

Course unit organization
Period Annual
Year 3rd Year
Teaching method frontal

Type of hours Credits Teaching
Hours of
Individual study
Practice 1.0 8 17.0 No turn
Laboratory 4.0 32 68.0 No turn
Lecture 8.0 64 136.0 No turn

Start of activities 01/10/2018
End of activities 28/06/2019

Examination board
Board From To Members of the board
3 a.a 2018/2019 01/10/2018 28/02/2020 VARDANEGA TULLIO (Presidente)
CARDIN RICCARDO (Membro Effettivo)
CONTI MAURO (Supplente)
FILE' GILBERTO (Supplente)
2 a.a. 2017/2018 01/10/2016 28/02/2019 VARDANEGA TULLIO (Presidente)
CARDIN RICCARDO (Membro Effettivo)
CONTI MAURO (Membro Effettivo)
FILE' GILBERTO (Membro Effettivo)

Prerequisites: The subject taught in this class requires basic knowledge of:
- the programming languages (C and C++) and associated programming paradigms (imperative and object-oriented) taught in the first two years of the curriculum; and
- the principal functionalities of data base management systems and of their most common SQL-based implementation technologies;
demonstrated by successful marks obtained in the corresponding 2nd-year classes.
Access to the class activities of Software Engineering will only be granted to students that meet the above requirements.
Target skills and knowledge: The class spans two semesters. In the first one, it presents the body of knowledge at the base of the software engineering profession. In the first half of the subsequent semester, it engages the students in the direct application of the earlier teachings, by means of an ambitious and demanding collaborative work centered on the development of a software product commissioned by external entities and subject to formal conduct rules and calendar.
Specifically, the student following this class is expected to acquire familiarity with:
1) methods and techniques to organize and manage collaborative work (project planning, task assignment, task scheduling, progress monitoring, verification of outcomes);
2) business-driven interaction with external customers around product requirements, user needs, prototype demonstrations, product releases;
3) methods and techniques for self-learning and knowledge sharing ;
4) methods and techniques for presentation and commmunication.
Examination methods: The final exam for this class is made of two distinct parts.
The first part is individual and it is taken at the end of the teaching period (shortly after the start of the second semester): in it, the student answers a number of theoretical and technical questions on subjects addressed in the class teaching. This part contributes 40% of the final marks.
The remainder 60% proceeds from the mean of the evaluation of the progress reviews made by the instructor on the partial and final outcomes of the project work conducted by the student groups.
Assessment criteria: The written examination is comprised of 3 questions with technical and practical bearing (centered on problem-solving) and 3 questions focused on fundamental elements of the body of knowledge of software engineering.
Those six questions collectively aim at ascertaining the degree of maturation achieved by the student with regard to the principal themes addressed in both class and project work.
To gauge the collaboration skills acquired by the student in the collaborative project, two of the six questions in the written examination will require a coordinated answer to be provided by groups of two to three students randomly formed by the instructor.

The evaluation of the progress reviews collectively measures the gradient of improvement in the quality of product delivery (for both documents and software artifacts) as well as of public presentations and demonstrations, achieved by each group.
Course unit contents: For an up-to-date sample of the lecture topics addressed in the class, see <>, which include lecture slides and complementary learning material.
Planned learning activities and teaching methods: 1) class lectures;
2) flipped-classroom activities centered on selected topics that help prepare the students' awareness of certain software engineering tools;
3) exercises for theory, with immediate feedback from the instructor;
4) practical activities, with progressive feedback from the instructor.
Additional notes about suggested reading: All of the lecturing material presented in class is posted on a page dedicated to the class, organized by lecture schedule. In addition to that, the class page offers additional learning material that the students may freely download.
Textbooks (and optional supplementary readings)
  • IEEE Computer Society. Software Engineering Coordinating Committee, Guide to the Software Engineering Body of Knowledge. --: --, 2014.
  • Ian Sommerville, Software Engineering (10th edition). --: Pearson Education, 2015. Cerca nel catalogo
  • Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software. --: Pearson Education, 1995. Cerca nel catalogo

Innovative teaching methods: Teaching and learning strategies
  • Problem based learning
  • Interactive lecturing
  • Working in group
  • Problem solving
  • Flipped classroom

Innovative teaching methods: Software or applications used
  • Latex
  • Collaboration aids (issue tracking, versioning, configuration)