EVALUATION OF THE QUALITY OF THE SOFTWARE

Degree course: 
Corso di Second cycle degree in INFORMATICA
Academic year when starting the degree: 
2017/2018
Year: 
2
Academic year in which the course will be held: 
2018/2019
Course type: 
Supplementary compulsory subjects
Credits: 
6
Period: 
First Semester
Standard lectures hours: 
48
Detail of lecture’s hours: 
Lesson (48 hours)
Requirements: 

Students are required to have good knowledge about software products and artifacts produced during software development, which is taught at undergraduate level in Computer Science courses.
The knowledge of the English language, both written and oral, is required, so the students can take ful advantage of the course material made available by the instructor or generally available online, in addition to the classes taught in English by the instructor.

The students’ learning extent is assessed via a written test (duration: 2 hours) and an individual project, autonomously developed by each student. A mid-term and a final tests are carried out during the course. Students that pass both are exempted from taking the written exam.

The goal of the written test (as well as the mid-term and final tests) is to assess the learning degree and the understanding of the elements related to software quality evaluation from both a theoretical and an application (on problems of limited complexity) points of view. Written tests (as well as the mid-term and final tests) consist of:
- exercises for the assessment of the students’ understanding and knowledge about software verification and validation techniques;
- exercises for the assessment of the students’ understanding and knowledge about software product measures;
- exercises for the assessment of the students’ ability to lay down measurement plans for industrial environments;
- questions on the conceptual aspects.

The project allows the students to use their skills and knowledge for the building of software quality estimation models. The project presentation has the goal of assess the students’ communication skills in two areas: 1) the students’ their technical competencies and use of the correct terminology; 2) the student’s skills for communicating a complete and organized view of the work they carried out.

The grade of the written test (as well as the mid-term and final tests) and of the project is in thirtieths. The overall grade is determined by the grade of the written part with a variation of at most three thirtieths for the project.

Assessment: 
Voto Finale

The course presents the most important conceptual and application elements related to the verification, validation, evaluation, estimation, and prediction of the quality of software systems. The primary goal of the course is to provide students with the necessary knowledge for the definition of verification, validation, and measurement plans and their introduction in industrial settings. The students acquire the ability to analyze existing software systems, so as to be able to evaluate them and, if necessary, modify. The students also develop the ability of identifying strengths and weaknesses of the existing techniques of measurement, evaluation, and prediction of software qualities, to analyze software systems, so as to evaluate them and modify them, if needed.

At the end of this course, the students:
- know the conceptual foundations of software verification and validation;
- know the most important software verification and validation techniques;
- know the conceptual foundations of software quality evaluation;
- know the most important software quality evaluation measures and techniques;
- are able to correctly apply measurement to evaluate software systems and predict their qualities.

At the end of the course, the students have the necessary knowledge and understanding skills to analyze a software system from the point of view of its quality and to identify the techniques and measures that are the most rigorous ones from a conceptual point of view.

At the end of the course, the students is able to apply the general principles of software verification, validation, and measurement and the related techniques. In addition, the students is able to introduce measurement programs in even fairly complex software organizations.

At the end of the course, the students have acquired enough knowledge to be able to evaluate software quality and autonomously judge the existing measurement techniques, not all of which are theoretically well-founded, nor easily applicable, nor validated as practically useful. Thus, the students are able to select the ones that are actually useful to reach the goals of the specific application cases they need to deal with.

At the end of the course, the students are able to use the correct terminology for the characteristics of software measures and the quality-related techniques. In addition, the students can receive and interpret indications coming from the developers, to build and present a plan for software quality measurement and evaluation that addresses the developers’ needs.

The various knowledge and abilities will be acquired along the entire course, in which the following topics will be taught.

Introduction to software quality: lessons 2 hours.
Quality models. The ISO9126 quality model: lessons 2 hours.
Software Testing and debugging: lessons 6 hours.
Software Analysis and Inspection: lessons 4 hours.
Measurement Theory: lessons 4 hours.
Axiomatic Approaches: lessons 4 hours.
Product measures: lessons 6 hours.
Function Points: lessons 6 hours.
The Goal/Question/Metric paradigm: lessons 6 hours.
Data analysis techniques: lessons 8 hours.

The materials related to the topics of the course can be found on

- slides (in English and in Italian) on https://elearning.uninsubria.it/

- additional material on https://elearning.uninsubria.it/

- Pezzè M., Young M.: Software Testing And Analysis: Process, Principles And Techniques. Wiley 2007

- Fenton, N.E., Bieman, J., Software Metrics: A Rigorous and Practical Approach, CRC Press, 2014

- Juristo, N., Moreno, A.M., Basics of Software Engineering Experimentation, Kluwer 2001

Convenzionale

Lectures (48 hours).

During the period in which the course is held, the students can meet with the instructor on class days. In the remainder of the year, the students need to contact the instructor to set up an appointment (sandro.morasca@uninsubria.it).

Borrowed from

click on the activity card to see more information, such as the teacher and descriptive texts.