SLIDE 1 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019
Τεχνολογία Λογισμικού
Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, nickie@softlab.ntua,gr Β.Βεσκούκης, Αν.Καθ. ΣΑΤΜ, v.vescoukis@cs.ntua,gr Κ.Σαΐδης, ΠΔ 407, saiko@softlab.ntua.gr
SLIDE 2
Software Quality Assurance, ISO/IEC/IEEE standards
SLIDE 3 Quality assurance
A way of doing things in a way that achieves the required quality attributes of the product/service being developed/offered Quality relates to…
n
The process
n
The product under development
Quality metrics need to be defined
n
Many processes share common process quality attributes
n
Generally depend on the product and application domain (services, construction, space, software)
Software quality metrics are difficult to define and (especially) measure
SLIDE 4 Software quality assurance
Involves the {definition, auditing, measurement of compliance to}:
n
Guidelines, Standards, Processes
…in order to satisfy certain quality criteria, including but not limited to:
n
Reliability, Dependability, Controllability, Portability, Ease of use, Effectiveness, Adaptability, Security, Fault tolerance, Maintainability, Understandability, Resilience, and more
Quality criteria/measures have different weights, depending on the case We cannot satisfy all (sometimes we cannot measure most), but we do whatever can be done!
SLIDE 5 Software quality assurance: what can be done
Define organization-wide standards for processes and software artifacts In every software development project
n
Select which ones to apply
n
Create guidelines about how to apply the selected quality standards
Run quality audits Collect feedback and improve practices
SLIDE 6
Software quality assurance from an “ISO 9000” viewpoint
Generic quality standards/models Organization-wide adaptation of standards Quality plan for project 1 Quality plan for project 2 Quality plan for project N Quality management process
SLIDE 7
Software quality assurance is an ongoing process
SLIDE 8 Software quality assurance is based on standards
Credit: Alan McSweeney, The Myth of Requirements
SLIDE 9
ISO/IEC/IEEE 29148:2011
SLIDE 10 Software quality assurance plan – a basic layout
Introduction
n
Scope, revision process, abbreviations, distribution list, reference
Project description Project management
n
Roles, team structure, scheduling, QA audits
Deliverables
n
Identification and classification of project deliverables
SLIDE 11 Software quality assurance plan – a basic layout
Software documentation templates
n
Requirements, design/architecture, user manual, test plan, test reports
Software development process
n
Life cycle model
n
Development tasks
n
Requirements engineering process
n
Design/architecture process
n
Source code requirements
SLIDE 12 Software quality assurance plan – a basic layout
Subcontractors
n
Testing and acceptance process
n
Documentation requirements
n
Other requirements
Internal quality audits
n
Process
n
Documentation
Development team update
SLIDE 13
ISO/IEC/IEEE 29148:2011
SLIDE 14
ISO/IEC/IEEE 29148:2011
SLIDE 15
ISO/IEC/IEEE 29148:2011
SLIDE 16
ISO/IEC/IEEE 29148:2011
SLIDE 17
ISO/IEC/IEEE 29148:2011
SLIDE 18
ISO/IEC/IEEE 29148:2011