- 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 standards
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 safety-critical 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 topic assigned by the Teacher
- A project, consisting in the application of a method or methodology studied during the course, and delivery of a report describing such application 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