Software Quality. Introduction " Martin Glinz. Chapter 1. Department of Informatics!



Similar documents
Software Quality. Process Quality " Martin Glinz. Chapter 5. Department of Informatics!

Hitex Germany. White Paper. Unit Test of Embedded Software

Status Report: Practical Software Measurement

Lecture 1: Introduction to Software Quality Assurance

Advanced Testing Techniques

Application of software product quality international standards through software development life cycle

Software Engineering Compiled By: Roshani Ghimire Page 1

The Role of Information Technology Studies in Software Product Quality Improvement

Evaluation of the Iceland State Financial and Human Resource System REPORT OF THE INDIVIDUAL EVALUATOR. Annex 2 SYSTEM AND SOFTWARE QUALITY

An integrated life cycle quality model for general public market software products

Software Metrics and Measurements

Syllabus Agile Management Foundation

Overview. Software engineering and the design process for interactive systems. Standards and guidelines as design rules

ISO 14001:2004 vs. ISO 14001:2015

Title: Topic 3 Software process models (Topic03 Slide 1).

Why process models? Topic 3 Software process models. 3. Process models. What is a process model?

Quality Management. Lecture 12 Software quality management

Software Quality. Unit9. Software Quality Standards

Design Specification for IEEE Std 1471 Recommended Practice for Architectural Description IEEE Architecture Working Group 0 Motivation

Modeling Systems - External and Internal Behavior Models

Information Technology Engineers Examination. Information Security Specialist Examination. (Level 4) Syllabus

Software Engineering from an Engineering Perspective: SWEBOK as a Study Object

Basic academic skills (1) (2) (4) Specialized knowledge and literacy (3) Ability to continually improve own strengths Problem setting (4) Hypothesis

Measurement Information Model

On Non-Functional Requirements

Certified Software Quality Engineer (CSQE) Body of Knowledge

Software Engineering. Software Evolution und Reengineering! Kapitel 12

ISO 9001:2015 vs. ISO 9001:2008

DIS (DRAFT INTERNATIONAL STANDARD) EN ISO 9001:2015

Software Engineering Reference Framework

What changes will ISO 9001:2015 bring?

Revision of ISO 9001 Quality Management Systems Requirements

Class Objectives. Total Quality Management. TQM Definitions. TQM Definitions. TQM Definitions. TQM Definitions. Basic concepts on TQM

Introduction to Software Project Management. CITS3220 Software Requirements & Project Management

Design and Analysis in Software Engineering. Part 1: The Language of Case Studies and Formal Experiments

Version: January 2008 ASTM E-31: EHR and Informatics Standards Education For Health Professional Disciplines. Background

BA 655: Marketing Management and Strategy in Life Sciences Summer, 2012 (May 14 July 6)

MANAGEMENT REVIEW FOR LABORATORIES AND INSPECTION BODIES

Software Engineering Tools and Methods

Moving from ISO 9001:2008 to ISO 9001:2015

THE PROCESS APPROACH IN ISO 9001:2015

ISO 9001 Quality Management System Lead Auditor Training (IRCA)

BCS Specialist Certificate in Business Relationship Management Syllabus. Version 1.9 March 2015

How To Understand Software Engineering

Translation Service Provider according to ISO 17100

Data Mining Carnegie Mellon University Mini 2, Fall Syllabus

Quality Management of Software and Systems: DIN ISO 9000-Standards

Achieving ISO 9001 Certification for an XP Company

Lecture Softwareengineering-Vertiefung

CREDENTIALS & CERTIFICATIONS 2015

European Forum for Good Clinical Practice Audit Working Party

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...

SYLLABUS IM 662 MIS: PROJECT DEVELOPMENT & MANAGEMENT FALL TRI-MESTER 2015

ITIL V3 Release, Control and Validation (RCV) Certification Program - 5 Days

Using Quality Assurance Standards. Don t assume quality, ensure quality

SOFTWARE QUALITY MODELS: A COMPARATIVE STUDY

INTERMEDIATE QUALIFICATION

The use of Trade-offs in the development of Web Applications

PROJECT QUALITY MANAGEMENT

ISO 27001: Information Security and the Road to Certification

(Refer Slide Time: 01:52)

Quality Assurance For Mathematical Modeling Systems

Guidelines for Implementing a Quality Management System in Hydrology August 2013

University of Cambridge Information Services Committee Governance of ISC Projects Originated January 2009 (updated December 2011; awaiting further

ISO 9001 : 2000 Quality Management Systems Requirements

Syllabus BAE Financial Management and Control I WS 15/16

Verification and Validation of Software Components and Component Based Software Systems

Comparative Analysis of Different Software Quality Models

Applying Integrated Risk Management Scenarios for Improving Enterprise Governance

Curriculum Map. Discipline: Computer Science Course: C++

International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research)

Geschäftsprozesse mit Enterprise SPICE und ISO verbessern und ihre Reife messen

Requirements engineering

Selection and use of the ISO 9000 family of standards

ISO 9001 Quality Management Systems. Tips for Internal Auditing

SWEBOK Certification Program. Software Engineering Management

Objectives. The software process. Basic software process Models. Waterfall model. Software Processes

Dependable (Safe/Reliable) Systems. ARO Reliability Workshop Software Intensive Systems

An Integrated Model of ISO 9001:2000 and CMMI for ISO Registered Organizations

ISO 9001 Quality Systems Manual

Australian Standard. Information technology Service management. Part 2: Guidance on the application of service management systems

Basic Testing Concepts and Terminology

FSSC Q. Certification module for food quality in compliance with ISO 9001:2008. Quality module REQUIREMENTS

An Analysis on Objectives, Importance and Types of Software Testing

INFORMATION SYSTEM AUDITING AND ASSURANCE

Best Practices for Verification, Validation, and Test in Model- Based Design

Software Product Quality Practices Quality Measurement and Evaluation using TL9000 and ISO/IEC 9126

MECH 5105 Orbital Mechanics and Control. Steve Ulrich Carleton University Ottawa, ON, Canada

Transcription:

Department of Informatics! Martin Glinz Software Quality Chapter 1 Introduction 2014 Martin Glinz. All rights reserved. Making digital or hard copies of all or part of this work for educational, non-commercial use is permitted. Using this material for any commercial purposes and/or teaching is not permitted without prior, written consent of the author. Note that some images may be copyrighted by third parties.

1.1 About this Course 1.2 Quality Principles 1.3 Quality management Software Quality 1. Introduction 2014 Martin Glinz 2

Software quality matters Software Quality 1. Introduction 2014 Martin Glinz 3

Contents This is an advanced course about software quality It covers selected aspects of software quality, in particular Model Checking Advanced testing Debugging Process quality External and internal product quality Dependability Familiarity with the basics of software quality is a prerequisite (see next slide) Software Quality 1. Introduction 2014 Martin Glinz 4

Prerequisites Familiarity with the basics of software quality, as covered in a course or textbook in Software Engineering is expected From the Software Engineering course at UZH, we expect that you are familiar with these chapters: Kapitel 2: Ziele und Qualität Kapitel 7: Validierung und Verifikation Kapitel 8: Testen von Software Kapitel 9: Reviews Kapitel 10: Messen von Software Kapitel 11: Statische Analyse Kapitel 16: Software-Qualitätsmanagement Kapitel 17: Bewertung und Verbesserung von Prozessen und Qualität Software Quality 1. Introduction 2014 Martin Glinz 5

Learning Goals Students acquire knowledge and skills in advanced topics of software quality, thus enabling them to analyze, assess and improve software quality develop high-quality software Students deepen and extend their knowledge in Advanced testing techniques Quality management Product and process quality Students learn about Model Checking as an important verification procedure Systematic debugging as a means for locating causes of errors Software Quality 1. Introduction 2014 Martin Glinz 6

Tentative Schedule 2014-02-17 Introduction 2014-02-24 Model Checking 2014-03-03 Advanced Testing Techniques 2014-03-10 Debugging 2014-03-17 Process Quality 2014-03-24 External and Internal Software Quality 2014-03-31 Dependability, Q&A 2014-04-14 Final exam Software Quality 1. Introduction 2014 Martin Glinz 7

Passing the course Pass the two assignments (pass/fail) and Pass the final exam (graded) The course grade will be the grade achieved in the final exam Software Quality 1. Introduction 2014 Martin Glinz 8

1.1 About this Course 1.2 Quality Principles 1.3 Quality management Software Quality 1. Introduction 2014 Martin Glinz 9

Intuitive notion of quality What s your personal intuitive notion of quality? Intuitively, quality is typically associated with High-grade products or services Durable products, carefully made according to highest standards Software Quality 1. Introduction 2014 Martin Glinz 10

Industrial notion of quality Quality The degree to which a set of inherent characteristics of an entity fulfills requirements. [ISO 9000:2005] Inherent characteristic A characteristic that forms a constituent part of an entity, as opposed to assigned characteristics Entity A product, service, process, system, organization,... Example: A drug Inherent characteristic: Ingredients Explicitly assigned: Price Software Quality 1. Introduction 2014 Martin Glinz 11

Remarks The industrial notion of quality does not fully match the intuitive one. Quality means satisfying requirements. Requirements may be explicitly stated or implicitly given by a shared notion. Quality is no absolute degree of goodness. Considering quality merely as fitness for purpose or customer satisfaction falls short of the full meaning. Quality does not emerge by itself. Quality must be defined and explicitly created. Software Quality 1. Introduction 2014 Martin Glinz 12

Software quality The entity (that the inherent characteristics of which shall fulfill requirements) is a software system or component Software is different: not tangible manifests only in effects and documentation, especially the source code Software Quality 1. Introduction 2014 Martin Glinz 13

External vs. internal software quality The pragmatic view External quality is quality as perceived by stakeholders Internal quality is the quality of the software, particularly of the source code that eventually delivers external quality The ISO standards view [ISO/IEC 25010:2011] The ISO software quality standards distinguish quality from a measurement viewpoint (cf. Chapter 6) Internal measures: internal quality External measures: external quality Usage measures: quality in use Software Quality 1. Introduction 2014 Martin Glinz 14

1.1 About this Course 1.2 Quality Principles 1.3 Quality management Software Quality 1. Introduction 2014 Martin Glinz 15

Principles of modern quality management Feedback! [ISO 9000:2005] Involvement of people: everybody takes full responsibility Customer focus Process-oriented, systemic approach Customer relationship Management! responsibilty Continual! improvement Customer! Resource! management Quality! management! system Measurement! Analysis! Improvement Requirements Product realization! Service provision Customer satisfaction Product or! Service Software Quality 1. Introduction 2014 Martin Glinz 16

Quality management terminology [ISO 9000:2005] Quality management Coordinated activities to direct and control an organization with regard to quality Quality planning Part of quality management focused on setting quality objectives and specifying necessary operational processes and related resources to fulfill the quality objectives Quality control Part of quality management focused on fulfilling quality requirements Quality assurance Part of quality management focused on providing confidence that quality requirements will be fulfilled Quality improvement Part of quality management focused on increasing the ability to fulfill quality requirements Software Quality 1. Introduction 2014 Martin Glinz 17

Procedures of quality management!!quality planning Definition of requirements: We want to achieve this!!!quality control constructive: this is how we need to work. analytic: did we work correctly? (quality checking) Quality improvement!what works how well? Where can we spot weaknesses? We want to improve this! Software Quality 1. Introduction 2014 Martin Glinz 18

Constructive quality control Using processes that prevent/avoid faults Rigorous and early quality checking Continuous improvement of quality and processes Software Quality 1. Introduction 2014 Martin Glinz 19

Analytic quality control Checking the product Static methods Reviewing Static analysis Formal verification Checking the process(es) Audits Process capability assessment Model checking Dynamic methods Testing Simulation Prototyping Software Quality 1. Introduction 2014 Martin Glinz 20

Analytic techniques: a quiz Testing Why do we test? What are the ingredients of a systematic test? Which forms of testing do you know? Reviewing What is a review? Which forms of reviews do you know? What are the rules for systematic reviewing? Static analysis What is static analysis? What are typical things one can check with static analysis? Software Quality 1. Introduction 2014 Martin Glinz 21

Analytic techniques: a quiz 2 Prototyping What is a software prototype? Which forms of prototyping do you know and what do they serve for? Throw-away prototypes vs. evolutionary prototyping? Auditing What is an audit? What does auditing mean in the context of software quality? Which forms of software quality audits do you know? How is an audit carried out? Software Quality 1. Introduction 2014 Martin Glinz 22

Quality improvement Just fixing quality defects is not enough Necessary for achieving product quality in software However: frequently fixes symptoms only Modifying quality related processes and/or the quality management system based on Systematic evaluation of Observed errors/failures and their causes Findings in reviews Product and process measurement Findings in audits Process improvement Software Quality 1. Introduction 2014 Martin Glinz 23

Process improvement The Deming cycle: Plan-Do-Check-Act (Deming 1986) Adapt Eliminate weaknesses Automate Act Plan Design Document Measure Analyze Control Check Do Train Institutionalize Perform Software Quality 1. Introduction 2014 Martin Glinz 24

References W.E. Deming (1986). Out of the Crisis. Cambridge, Mass.: M.I.T. Press. M. Glinz, T. Fritz (2013). Software Engineering. Course Slides. University of Zurich. ISO (2005). Quality management systems Fundamentals and vocabulary. International standard ISO 9000:2005. ISO (2008). Quality management systems Requirements. International standard ISO 9001:2008. ISO (2011). Managing for the sustained success of an organization A quality management approach. International Standard ISO 9004:2011. ISO/IEC (2011). Systems and software engineering Systems and software Quality Requirements and Evaluation (SQuaRE) System and software quality models. International Standard ISO/IEC 25010:2011 B. Kitchenham, S.L. Pfleeger (1996). Software Quality: The Elusive Target. IEEE Software 13(1):12 21. P. Liggesmeyer (2002). Software-Qualität: Testen, Analysieren und Verifizieren von Software. Heidelberg; Berlin: Spektrum Akademischer Verlag. K. Schneider (2012). Abenteuer Softwarequalität. 2. Auflage. Heidelberg: dpunkt. M. Wieczorek, D. Meyerhoff (eds.) (2001). Software Quality: State of the Art in Management, Testing, and Tools. Berlin: Springer. Software Quality 1. Introduction 2014 Martin Glinz 25