- Basics and motivations for quality and certification
- Overview on quality processes and quality management, with focus on software engineering
- Some well-known approaches (e.g., CMMI, SPICE)
- Certification processes and standards for safety-critical systems
- The standard ISO 61508 for functional safety
- Standards for the railway domain
- Overview on automotive and aerospace domains
Main reference for quality: P. Bourque and R.E. Fairley, eds., Guide to the Software Engineering Body of Knowledge, Version 3.0, IEEE Computer Society, 2014; www.swebok.org.
Main reference for certification: standard ISO 61508 Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems
Other references:
standards CEI EN 50128, CEI EN 50129, CEI EN 50159-1-2, CMMI, ASPICE.
Learning Objectives
Our daily activity is more and more bounded to the proper behaviour of
ICT systems. Low quality in the design and development process may
lead to production delays, increased costs, or solutions of low quality
(ultimately resulting in unsatisfied customers/users). Further, the
misbehaviour of these systems may lead to different consequences,
ranging to disservice and user unsatisfaction, to economic loss, and
ultimately damages or people harm.
Knowledge and understanding. The first part of this Course investigates
processes, methodologies and techniques for quality and quality
management, with attention to software engineering and related
processes. The second part of the course instead focuses on safetycritical
systems, and discusses related standards (and the recommended
processes and techniques) in different domains.
Applying knowledge and understanding. At the end of the course, abilities
will be acquired to:
i) recognize and understand the implications of quality procedure and
quality management, with knowledge on the most relevant processes
and methods for software quality;
ii) understand the items required to apply an assessment process, and
the peculiarities of its application in different domains.
Prerequisites
None
Teaching Methods
CFU: 6
Total hours of the course: 180
Hours reserved to private study and other individual formative activities: 132
Office Hours:
Dott. Andrea Ceccarelli, by appointment.
Contact professor by phone number or e-mail (andrea.ceccarelli@unifi.it).
DiMaI, Universita' di Firenze, Viale Morgagni, 65 - 50134 Firenze
Tel. 055 2751487
Dott. Lorenzo Falai, by appointment only. Contact by e-mail (lorenzo.falai@resiltech.com).
Type of Assessment
The Assessment consists of two parts:
- Oral presentation on a selected topic
- A project, based on the application of a selected method or methodology to a target system, and preparation of a report describing the applied process and the results achieved
The exam score is the average of the score assigned to the presentation and the score assigned to the project.
Course program
- Course presentation and basics: motivations for Quality and Certification
processes
- Quality Management: processes and methods
- Quality management in software engineering
- Overview on Quality Management and Professional Practise, from ethics
to communication skills
- Some famous processes: CMMI (Capability Maturity Model Integration),
SPICE (ISO/IEC 15504 Software Process Improvement and Capability
Determination), Automotive SPICE
- Certification of safety-critical systems: standard ISO 61508
- Certification of safety-critical systems in the railway domain: standards
50126/8/9/159-1-2 for system, software, hardware, network safety.
Description of processes and main techniques.
- Review of selected techniques or processes: code review, risk
assessment, testing.
- Brief overview on the automotive (ISO26262) and aerospace domains.