SlideShare a Scribd company logo
The Benchmark for Software Quality
www.uni-stuttgart.de




                       The Quamoco
                       Product Quality Modelling
                        and
                       Assessment Approach

                                                   Stefan Wagner
                                     Institute of Software Technology

                                                              ICSE 2012
                                                     Zürich, Switzerland
                                                             8 June 2012
"Quality is a complex and multi-faceted concept...
          it is also the source of great confusion."
                                     –David A. Garvin
Software Quality Models
                                                                              IEC 61508
                                               Siemens Technical
                                                     Topic
CMMI                                             Classification
                         COQUALMO                                           ISO 15504 -
                                                                               SPICE
          ISO 9126
                                      Maintainability Index
                     Musa basic                                     SAP Q-Index
Visser et al.
                                         Activity-Based
                Musa-Okumoto             Quality Models                     Littlewood-Verall
                                                                                 Bayesian
iDAVE                              Avizienis et al.
                    Marinescu &                           Boehm et al.            MISRA
                       Ratiu
   McCall &                              Dromey                 Common Criteria
   Walters
                            NHPP                                               ISO 15005
                                              SAP Quality
Capgemini sd&m                                 Standards           SQUID
Software-Blutbild         ISO 25000                                                 ROSQ
                                                                   Models
ISO 9126
                   Reliability

 Functionality                   Performance
                     Quality
                     model

 Maintainability                  Usability

                   Portability
Quality Models
                              in Practical Use
                 Percentages of answers, multiple answers possible


Company-specific 71


       ISO 9126 28


 Domain-specific 20


          None 4
                                                     Wagner et al., 2010
„The -ilities are good
for management talk only.“
                         –Anonymous developer




Wagner et al., ESEM'09
ISO 9126
                 ISO 25010
Quality
attribute



            Comment           Clone
              ratio          coverage
Measure           Cyclomatic
                  complexity
ISO 9126
                  ISO 25010
Quality
attribute



              ?
            Comment            Clone
              ratio           coverage
Measure            Cyclomatic
                   complexity
Quality attribute
       ISO 9126
      ISO 25010




Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126
      ISO 25010




Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010




Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010              Not operationalised




Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010              Not operationalised
                             Not adaptable



Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010              Not operationalised
                             Not adaptable
                             Unreproducible
                             assessments
Measure
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010              Not operationalised
                             Not adaptable
                             Unreproducible
                             assessments
Measure
                             Differing definitions
 Comment           Clone
   ratio          coverage

        Cyclomatic
        complexity
Quality attribute            Multitude of models
       ISO 9126              Too abstract
      ISO 25010              Not operationalised
                             Not adaptable
                             Unreproducible
                             assessments
Measure
                             Differing definitions
 Comment           Clone
   ratio          coverage   Unclear relationship
                             to quality goals
        Cyclomatic
        complexity
1
Quality
 Model
ISO 9126
                  ISO 25010
Quality
attribute



              ?
            Comment            Clone
              ratio           coverage
Measure            Cyclomatic
                   complexity
ISO 9126
                 ISO 25010
Quality
attribute




            Comment           Clone
              ratio          coverage
Measure           Cyclomatic
                  complexity
ISO 9126
                 ISO 25010
Quality
attribute




            Comment           Clone
              ratio          coverage
Measure           Cyclomatic
                  complexity
ISO 9126
                 ISO 25010
Quality
attribute


Product
factor

            Comment           Clone
              ratio          coverage
Measure           Cyclomatic
                  complexity
Maintainability

  Analysability      Modifiability




Duplication of source code parts



              Clone
             coverage
Quality
attribute


Product
factor

Measure
Quality
attribute


Product
factor

Measure

Instrument
Maintainability
Quality
attribute       Analyzability



Product       Usefulness of
                method
factor

               Statically
Measure     unused method

Instrument     Gendarme:         PMD: Unused
             Avoid Uncalled     Private Method
              Private Code
Base Model

                  root




    C        object-oriented   GUI




   C++            Java         C#
2
    Quality
Assessment
Quality
attribute


Product
factor

Measure

Instrument
Quality
attribute


Product
factor

Measure

Instrument
                      Measurement
             Software product
Quality                 Aggregation

attribute        Aggregation     Aggregation



Product
                  Evaluation     Evaluation
factor

Measure

Instrument
                       Measurement
             Software product
Quality                Aggregation

attribute       Aggregation     Aggregation



Product
                 Evaluation     Evaluation
factor

Measure
                  Measurement
            Software product
Quality                Aggregation

attribute       Aggregation     Aggregation



Product
                 Evaluation     Evaluation
factor

Measure
                  Measurement                 Normalisation
            Software product
Quality                Aggregation

attribute       Aggregation     Aggregation



Product                                          Utility
                 Evaluation     Evaluation
factor                                           functions

Measure
                  Measurement                 Normalisation
            Software product
Quality                Aggregation
                                                 Weights
attribute       Aggregation     Aggregation



Product                                          Utility
                 Evaluation     Evaluation
factor                                           functions

Measure
                  Measurement                 Normalisation
            Software product
Calibration for Java
  6000 compilable open source systems
Calibration for Java
  6000 compilable open source systems
               Random selection
Calibration for Java
  6000 compilable open source systems
               Random selection

       110 open source systems
Calibration for Java
  6000 compilable open source systems
               Random selection

       110 open source systems
               Measurement
Calibration for Java
  6000 compilable open source systems
               Random selection

       110 open source systems
               Measurement

     Distributions for all measures
Calibration for Java
  6000 compilable open source systems
               Random selection

       110 open source systems
               Measurement

     Distributions for all measures
               Calculations and reviews
Calibration for Java
  6000 compilable open source systems
               Random selection

       110 open source systems
               Measurement

     Distributions for all measures
               Calculations and reviews

          Evaluation functions
Interpretation with School Grades
                                                                   10


                 Worst
             6
Assessment




             5
             4
             3
             2
                                                            Best
             1

             0.80 0.82 0.84 0.86 0.88 0.90 0.92 0.94 0.96 0.98 1.00
                                Evaluation (Utility)

Fig. 7. Interpretation Model
3
   Tool
Support
HTML
Quality Model Editor                   Dash-
                                       board




                       Code, documentation,
                       tool results
Published under
Apache License, Version 2.0


      Available at
    www.quamoco.de
4
 Empirical
Validation
Experiment with OSS Projects

        Ranking         Ranking
         Model          Experts
Good    Checkstyle      Checkstyle
       Log4J RSSOwl       Log4J
                         RSSOwl
        TV-Browser      TV-Browser
Bad
          JabRef          JabRef
Experiment with Industry System

        Ranking         Ranking
         Model          Expert
Good    Subsystem D    Subsystem D
        Subsystem A    Subsystem A
        Subsystem C   Subsystem B, E
        Subsystem E    Subsystem C
Bad     Subsystem B
Visibility of Quality
 Improvements
Grade
    4.2




    2.8
                                   Investment in
                                   quality improvement

    1.4




        0
         1.9.0   2.0.0   2.0.1         2.0.2    2.1.0    2.2.1

                                 Version
Drill-Downs
Drill-Downs


„Modeled relations are comprehensible
and reasonable.“
Drill-Downs


„Modeled relations are comprehensible
and reasonable.“
„It is good to get an overall view on the
quality of a software product.“
Drill-Downs


„Modeled relations are comprehensible
and reasonable.“
„It is good to get an overall view on the
quality of a software product.“
„It clarifies software metrics.“
Drill-Downs


„Modeled relations are comprehensible
and reasonable.“
„It is good to get an overall view on the
quality of a software product.“
„It clarifies software metrics.“
„It is the best that can be done
with static code analysis.“
Integrated attributes,
measures and
evaluations
Integrated attributes,
measures and
evaluations
Modular
Integrated attributes,
measures and
evaluations
Modular
Automatic and
systematic evaluations
Integrated attributes,
measures and
evaluations
Modular
Automatic and
systematic evaluations
Base model
Integrated attributes,
measures and
evaluations
Modular
Automatic and
systematic evaluations
Base model
Calibration
Integrated attributes,
measures and
evaluations
Modular
Automatic and
systematic evaluations
Base model
Calibration
Tool support
Integrated attributes,
measures and
evaluations
Modular
Automatic and
systematic evaluations
Base model
Calibration
Tool support
Empirically validated
The Benchmark for Software Quality
www.uni-stuttgart.de




                       The Quamoco
                       Product Quality Modelling
                        and
                       Assessment Approach
                         Stefan Wagner, Klaus Lochmann, Lars Heinemann, Michael
                            Kläs, Adam Trendowicz, Reinhold Plösch, Andreas Seidl,
                                                Andreas Goeb and Jonathan Streit
Linear Utility Function


           1.0
                                    Measure M4
                                                 Linear decreasing
          0.74
                                                   utility function
Utility




           0.0
              min = 0.0   M4 = 2.17E-06                  max = 8.50E-6

More Related Content

What's hot

Yazılım kalitesi ve Standartlar
Yazılım kalitesi ve StandartlarYazılım kalitesi ve Standartlar
Yazılım kalitesi ve Standartlarİbrahim ATAY
 
Iso9001 2015webinar-final
Iso9001 2015webinar-finalIso9001 2015webinar-final
Iso9001 2015webinar-final
rscyuzon
 
SGS Global Brochure
SGS Global BrochureSGS Global Brochure
SGS Global Brochuremctavano
 
Overview of Computerized Systems Compliance Using the GAMP® 5 Guide
Overview of Computerized Systems Compliance Using the GAMP® 5 GuideOverview of Computerized Systems Compliance Using the GAMP® 5 Guide
Overview of Computerized Systems Compliance Using the GAMP® 5 Guide
ProPharma Group
 
AgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSqlAgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSql
Kisung Kim
 
Chapter 3 - Test Automation
Chapter 3 - Test AutomationChapter 3 - Test Automation
Chapter 3 - Test Automation
Neeraj Kumar Singh
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
Neeraj Kumar Singh
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality Characteristics
Neeraj Kumar Singh
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e Teste de Software
Camilo Almendra
 
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
제관 이
 
Видове софтуерни тестове
Видове софтуерни тестовеВидове софтуерни тестове
Видове софтуерни тестове
Kalin Vasilev
 
Computer system validation
Computer system validationComputer system validation
Computer system validation
Gaurav Kr
 
ISO 14589-1:2016 Record Mgt Awareness
ISO 14589-1:2016 Record Mgt AwarenessISO 14589-1:2016 Record Mgt Awareness
ISO 14589-1:2016 Record Mgt Awareness
Ali Fuad R
 
AS 9100 rev D
AS 9100 rev DAS 9100 rev D
Benefits of Document management system
Benefits of Document management systemBenefits of Document management system
Benefits of Document management system
Digismartek
 
Dev ops Introduction
Dev ops IntroductionDev ops Introduction
Dev ops Introduction
영기 김
 
GUIA PARA LA Estructura documental
GUIA PARA LA Estructura documental GUIA PARA LA Estructura documental
GUIA PARA LA Estructura documental
Alexander Guanipa
 
Good Documentation Practices
Good Documentation Practices Good Documentation Practices
Good Documentation Practices
vishnu gupta
 
Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Tony Barber
 
Iso 9000 2000 Internal Audits
Iso 9000 2000 Internal AuditsIso 9000 2000 Internal Audits
Iso 9000 2000 Internal Audits
ahmad bassiouny
 

What's hot (20)

Yazılım kalitesi ve Standartlar
Yazılım kalitesi ve StandartlarYazılım kalitesi ve Standartlar
Yazılım kalitesi ve Standartlar
 
Iso9001 2015webinar-final
Iso9001 2015webinar-finalIso9001 2015webinar-final
Iso9001 2015webinar-final
 
SGS Global Brochure
SGS Global BrochureSGS Global Brochure
SGS Global Brochure
 
Overview of Computerized Systems Compliance Using the GAMP® 5 Guide
Overview of Computerized Systems Compliance Using the GAMP® 5 GuideOverview of Computerized Systems Compliance Using the GAMP® 5 Guide
Overview of Computerized Systems Compliance Using the GAMP® 5 Guide
 
AgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSqlAgensGraph: a Multi-model Graph Database based on PostgreSql
AgensGraph: a Multi-model Graph Database based on PostgreSql
 
Chapter 3 - Test Automation
Chapter 3 - Test AutomationChapter 3 - Test Automation
Chapter 3 - Test Automation
 
Chapter 1 - Testing Process
Chapter 1 - Testing ProcessChapter 1 - Testing Process
Chapter 1 - Testing Process
 
Chapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality CharacteristicsChapter 4 - Testing Quality Characteristics
Chapter 4 - Testing Quality Characteristics
 
Verificação, Validação e Teste de Software
Verificação, Validação e Teste de SoftwareVerificação, Validação e Teste de Software
Verificação, Validação e Teste de Software
 
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
ISMS 개발보안, 시큐어코딩을 위한 sonarqube의 활용.건국대학교병원.이제관 기술사
 
Видове софтуерни тестове
Видове софтуерни тестовеВидове софтуерни тестове
Видове софтуерни тестове
 
Computer system validation
Computer system validationComputer system validation
Computer system validation
 
ISO 14589-1:2016 Record Mgt Awareness
ISO 14589-1:2016 Record Mgt AwarenessISO 14589-1:2016 Record Mgt Awareness
ISO 14589-1:2016 Record Mgt Awareness
 
AS 9100 rev D
AS 9100 rev DAS 9100 rev D
AS 9100 rev D
 
Benefits of Document management system
Benefits of Document management systemBenefits of Document management system
Benefits of Document management system
 
Dev ops Introduction
Dev ops IntroductionDev ops Introduction
Dev ops Introduction
 
GUIA PARA LA Estructura documental
GUIA PARA LA Estructura documental GUIA PARA LA Estructura documental
GUIA PARA LA Estructura documental
 
Good Documentation Practices
Good Documentation Practices Good Documentation Practices
Good Documentation Practices
 
Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016Testing Centre of Excellence Model 2016
Testing Centre of Excellence Model 2016
 
Iso 9000 2000 Internal Audits
Iso 9000 2000 Internal AuditsIso 9000 2000 Internal Audits
Iso 9000 2000 Internal Audits
 

Viewers also liked

Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
Stefan Wagner
 
Educational lifecycle process assessment
Educational lifecycle process assessmentEducational lifecycle process assessment
Educational lifecycle process assessment
Stéphane Jacquemart
 
Software and product quality for videogames
Software and product quality for videogamesSoftware and product quality for videogames
Software and product quality for videogames
Antonio García-Domínguez
 
03 club qualimetrie_presentation_s_qua_re
03 club qualimetrie_presentation_s_qua_re03 club qualimetrie_presentation_s_qua_re
03 club qualimetrie_presentation_s_qua_reCapgemini
 
Quality Models for Web Sites
Quality Models for Web SitesQuality Models for Web Sites
Quality Models for Web Sites
Roberto Polillo
 
Quesionnaire
QuesionnaireQuesionnaire
Quesionnaire
ASAP
 
Evaluacion del software educativo
Evaluacion del software educativoEvaluacion del software educativo
Evaluacion del software educativo
leonor trujillo
 
Evaluating and Improving Software Usability
Evaluating and Improving Software UsabilityEvaluating and Improving Software Usability
Evaluating and Improving Software Usability
XBOSoft
 
Iwsm2014 performance measurement for cloud computing applications using iso...
Iwsm2014   performance measurement for cloud computing applications using iso...Iwsm2014   performance measurement for cloud computing applications using iso...
Iwsm2014 performance measurement for cloud computing applications using iso...
Nesma
 
Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluationEric Lai
 
Quality characteristics
Quality characteristicsQuality characteristics
Quality characteristics
Sigma Software
 
Guide25 vs ISO/IEC17025
Guide25 vs ISO/IEC17025Guide25 vs ISO/IEC17025
Guide25 vs ISO/IEC17025SEREE NET
 
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
PECB
 
Capturing Measurable Non Functional Requirements
Capturing Measurable Non Functional RequirementsCapturing Measurable Non Functional Requirements
Capturing Measurable Non Functional Requirements
Shehzad Lakdawala
 
Exigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsExigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logiciels
Pierre
 
Web application security test tools
Web application security test toolsWeb application security test tools
Web application security test tools
Phuoc Nguyen
 
SonarQube et la Sécurité
SonarQube et la SécuritéSonarQube et la Sécurité
SonarQube et la Sécurité
Sébastien GIORIA
 
Analyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSource
Sébastien GIORIA
 

Viewers also liked (19)

Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
Begrüssung Erstsemester am Fachbereich Informatik – Wintersemester 2014/15
 
Educational lifecycle process assessment
Educational lifecycle process assessmentEducational lifecycle process assessment
Educational lifecycle process assessment
 
Software and product quality for videogames
Software and product quality for videogamesSoftware and product quality for videogames
Software and product quality for videogames
 
03 club qualimetrie_presentation_s_qua_re
03 club qualimetrie_presentation_s_qua_re03 club qualimetrie_presentation_s_qua_re
03 club qualimetrie_presentation_s_qua_re
 
Quality Models for Web Sites
Quality Models for Web SitesQuality Models for Web Sites
Quality Models for Web Sites
 
Quesionnaire
QuesionnaireQuesionnaire
Quesionnaire
 
Evaluacion del software educativo
Evaluacion del software educativoEvaluacion del software educativo
Evaluacion del software educativo
 
Analisis iso 25010
Analisis iso 25010Analisis iso 25010
Analisis iso 25010
 
Evaluating and Improving Software Usability
Evaluating and Improving Software UsabilityEvaluating and Improving Software Usability
Evaluating and Improving Software Usability
 
Iwsm2014 performance measurement for cloud computing applications using iso...
Iwsm2014   performance measurement for cloud computing applications using iso...Iwsm2014   performance measurement for cloud computing applications using iso...
Iwsm2014 performance measurement for cloud computing applications using iso...
 
Software quality requirements and evaluation
Software quality requirements and evaluationSoftware quality requirements and evaluation
Software quality requirements and evaluation
 
Quality characteristics
Quality characteristicsQuality characteristics
Quality characteristics
 
Guide25 vs ISO/IEC17025
Guide25 vs ISO/IEC17025Guide25 vs ISO/IEC17025
Guide25 vs ISO/IEC17025
 
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
Estimation of Measurement Uncertainty in Labs: a requirement for ISO 17025 Ac...
 
Capturing Measurable Non Functional Requirements
Capturing Measurable Non Functional RequirementsCapturing Measurable Non Functional Requirements
Capturing Measurable Non Functional Requirements
 
Exigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logicielsExigences de qualité des systèmes / logiciels
Exigences de qualité des systèmes / logiciels
 
Web application security test tools
Web application security test toolsWeb application security test tools
Web application security test tools
 
SonarQube et la Sécurité
SonarQube et la SécuritéSonarQube et la Sécurité
SonarQube et la Sécurité
 
Analyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSourceAnalyser la sécurité de son code source avec SonarSource
Analyser la sécurité de son code source avec SonarSource
 

Similar to The Quamoco Quality Modelling and Assessment Approach

Btd erik bits bernd beersma 1.4
Btd erik bits bernd beersma 1.4Btd erik bits bernd beersma 1.4
Btd erik bits bernd beersma 1.4Bernd Beersma
 
ISO 26262 Unit Testing | Functional Safety in Automotive
ISO 26262 Unit Testing | Functional Safety in Automotive ISO 26262 Unit Testing | Functional Safety in Automotive
ISO 26262 Unit Testing | Functional Safety in Automotive
Embitel Technologies (I) PVT LTD
 
Soa Test Methodology
Soa Test MethodologySoa Test Methodology
Soa Test Methodology
chintala999
 
SQA Monitoring en organisation agile - Olivier Garrigues
SQA Monitoring en organisation agile - Olivier GarriguesSQA Monitoring en organisation agile - Olivier Garrigues
SQA Monitoring en organisation agile - Olivier Garrigues
TelecomValley
 
Scrum on business management based on iso requirements
Scrum on business management based on iso requirementsScrum on business management based on iso requirements
Scrum on business management based on iso requirementsPaolo Cruz
 
ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
 ISO series, guide of pharmaceutical manufacturing facilities, productivity b... ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
Kailash Vilegave
 
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
David Rosenblum
 
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
TelecomValley
 
Java Code Quality Improvements - DevWeek
Java Code Quality Improvements - DevWeekJava Code Quality Improvements - DevWeek
Java Code Quality Improvements - DevWeek
Zoltan Iszlai
 
Intel Cloud Summit ODCA - NAB Customer presentation
Intel Cloud Summit ODCA - NAB Customer presentationIntel Cloud Summit ODCA - NAB Customer presentation
Intel Cloud Summit ODCA - NAB Customer presentationIntelAPAC
 
20080610 03 - SQuaRE, évolution de la norme iso9126
20080610 03 - SQuaRE, évolution de la norme iso912620080610 03 - SQuaRE, évolution de la norme iso9126
20080610 03 - SQuaRE, évolution de la norme iso9126
LeClubQualiteLogicielle
 
Offshore Software Development, Software Testing by CAMO Solutions
Offshore Software Development, Software Testing by CAMO SolutionsOffshore Software Development, Software Testing by CAMO Solutions
Offshore Software Development, Software Testing by CAMO SolutionsCAMO Solutions LLC
 
Usability modeling and measurement
Usability modeling and measurementUsability modeling and measurement
Usability modeling and measurement
XBOSoft
 
ISO-26262-Webinar.pptx
ISO-26262-Webinar.pptxISO-26262-Webinar.pptx
ISO-26262-Webinar.pptx
Karthika Keshav
 
Modern SDLC and QA.pptx
Modern SDLC and QA.pptxModern SDLC and QA.pptx
Modern SDLC and QA.pptx
Zaid Shabbir
 
Overview of the proposed Photovoltaic Solar Quality Management System standard
Overview of the proposed Photovoltaic Solar Quality Management System standardOverview of the proposed Photovoltaic Solar Quality Management System standard
Overview of the proposed Photovoltaic Solar Quality Management System standard
Govind Ramu
 
2014_pvmrw_81_ramu.pdf sun power corporation
2014_pvmrw_81_ramu.pdf  sun power corporation2014_pvmrw_81_ramu.pdf  sun power corporation
2014_pvmrw_81_ramu.pdf sun power corporation
manishpunjabi269
 
[Kartuku] Software Quality
[Kartuku] Software Quality[Kartuku] Software Quality
[Kartuku] Software Quality
Alamanda Shantika Santoso
 

Similar to The Quamoco Quality Modelling and Assessment Approach (20)

Btd erik bits bernd beersma 1.4
Btd erik bits bernd beersma 1.4Btd erik bits bernd beersma 1.4
Btd erik bits bernd beersma 1.4
 
ISO 26262 Unit Testing | Functional Safety in Automotive
ISO 26262 Unit Testing | Functional Safety in Automotive ISO 26262 Unit Testing | Functional Safety in Automotive
ISO 26262 Unit Testing | Functional Safety in Automotive
 
Soa Test Methodology
Soa Test MethodologySoa Test Methodology
Soa Test Methodology
 
CISQ Introduction & Objectives - Dr. Bill Curtis
CISQ Introduction & Objectives - Dr. Bill CurtisCISQ Introduction & Objectives - Dr. Bill Curtis
CISQ Introduction & Objectives - Dr. Bill Curtis
 
SQA Monitoring en organisation agile - Olivier Garrigues
SQA Monitoring en organisation agile - Olivier GarriguesSQA Monitoring en organisation agile - Olivier Garrigues
SQA Monitoring en organisation agile - Olivier Garrigues
 
Scrum on business management based on iso requirements
Scrum on business management based on iso requirementsScrum on business management based on iso requirements
Scrum on business management based on iso requirements
 
ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
 ISO series, guide of pharmaceutical manufacturing facilities, productivity b... ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
ISO series, guide of pharmaceutical manufacturing facilities, productivity b...
 
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
Software System Scalability: Concepts and Techniques (keynote talk at ISEC 2009)
 
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
Soirée du Test Logiciel - SQA monitoring et gestion du risque en organisation...
 
Java Code Quality Improvements - DevWeek
Java Code Quality Improvements - DevWeekJava Code Quality Improvements - DevWeek
Java Code Quality Improvements - DevWeek
 
Intel Cloud Summit ODCA - NAB Customer presentation
Intel Cloud Summit ODCA - NAB Customer presentationIntel Cloud Summit ODCA - NAB Customer presentation
Intel Cloud Summit ODCA - NAB Customer presentation
 
Testing with Spring
Testing with SpringTesting with Spring
Testing with Spring
 
20080610 03 - SQuaRE, évolution de la norme iso9126
20080610 03 - SQuaRE, évolution de la norme iso912620080610 03 - SQuaRE, évolution de la norme iso9126
20080610 03 - SQuaRE, évolution de la norme iso9126
 
Offshore Software Development, Software Testing by CAMO Solutions
Offshore Software Development, Software Testing by CAMO SolutionsOffshore Software Development, Software Testing by CAMO Solutions
Offshore Software Development, Software Testing by CAMO Solutions
 
Usability modeling and measurement
Usability modeling and measurementUsability modeling and measurement
Usability modeling and measurement
 
ISO-26262-Webinar.pptx
ISO-26262-Webinar.pptxISO-26262-Webinar.pptx
ISO-26262-Webinar.pptx
 
Modern SDLC and QA.pptx
Modern SDLC and QA.pptxModern SDLC and QA.pptx
Modern SDLC and QA.pptx
 
Overview of the proposed Photovoltaic Solar Quality Management System standard
Overview of the proposed Photovoltaic Solar Quality Management System standardOverview of the proposed Photovoltaic Solar Quality Management System standard
Overview of the proposed Photovoltaic Solar Quality Management System standard
 
2014_pvmrw_81_ramu.pdf sun power corporation
2014_pvmrw_81_ramu.pdf  sun power corporation2014_pvmrw_81_ramu.pdf  sun power corporation
2014_pvmrw_81_ramu.pdf sun power corporation
 
[Kartuku] Software Quality
[Kartuku] Software Quality[Kartuku] Software Quality
[Kartuku] Software Quality
 

Recently uploaded

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 

Recently uploaded (20)

Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 

The Quamoco Quality Modelling and Assessment Approach

  • 1. The Benchmark for Software Quality www.uni-stuttgart.de The Quamoco Product Quality Modelling and Assessment Approach Stefan Wagner Institute of Software Technology ICSE 2012 Zürich, Switzerland 8 June 2012
  • 2. "Quality is a complex and multi-faceted concept... it is also the source of great confusion." –David A. Garvin
  • 3. Software Quality Models IEC 61508 Siemens Technical Topic CMMI Classification COQUALMO ISO 15504 - SPICE ISO 9126 Maintainability Index Musa basic SAP Q-Index Visser et al. Activity-Based Musa-Okumoto Quality Models Littlewood-Verall Bayesian iDAVE Avizienis et al. Marinescu & Boehm et al. MISRA Ratiu McCall & Dromey Common Criteria Walters NHPP ISO 15005 SAP Quality Capgemini sd&m Standards SQUID Software-Blutbild ISO 25000 ROSQ Models
  • 4. ISO 9126 Reliability Functionality Performance Quality model Maintainability Usability Portability
  • 5. Quality Models in Practical Use Percentages of answers, multiple answers possible Company-specific 71 ISO 9126 28 Domain-specific 20 None 4 Wagner et al., 2010
  • 6. „The -ilities are good for management talk only.“ –Anonymous developer Wagner et al., ESEM'09
  • 7. ISO 9126 ISO 25010 Quality attribute Comment Clone ratio coverage Measure Cyclomatic complexity
  • 8. ISO 9126 ISO 25010 Quality attribute ? Comment Clone ratio coverage Measure Cyclomatic complexity
  • 9. Quality attribute ISO 9126 ISO 25010 Measure Comment Clone ratio coverage Cyclomatic complexity
  • 10. Quality attribute Multitude of models ISO 9126 ISO 25010 Measure Comment Clone ratio coverage Cyclomatic complexity
  • 11. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Measure Comment Clone ratio coverage Cyclomatic complexity
  • 12. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Not operationalised Measure Comment Clone ratio coverage Cyclomatic complexity
  • 13. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Not operationalised Not adaptable Measure Comment Clone ratio coverage Cyclomatic complexity
  • 14. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Not operationalised Not adaptable Unreproducible assessments Measure Comment Clone ratio coverage Cyclomatic complexity
  • 15. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Not operationalised Not adaptable Unreproducible assessments Measure Differing definitions Comment Clone ratio coverage Cyclomatic complexity
  • 16. Quality attribute Multitude of models ISO 9126 Too abstract ISO 25010 Not operationalised Not adaptable Unreproducible assessments Measure Differing definitions Comment Clone ratio coverage Unclear relationship to quality goals Cyclomatic complexity
  • 18. ISO 9126 ISO 25010 Quality attribute ? Comment Clone ratio coverage Measure Cyclomatic complexity
  • 19. ISO 9126 ISO 25010 Quality attribute Comment Clone ratio coverage Measure Cyclomatic complexity
  • 20. ISO 9126 ISO 25010 Quality attribute Comment Clone ratio coverage Measure Cyclomatic complexity
  • 21. ISO 9126 ISO 25010 Quality attribute Product factor Comment Clone ratio coverage Measure Cyclomatic complexity
  • 22. Maintainability Analysability Modifiability Duplication of source code parts Clone coverage
  • 25. Maintainability Quality attribute Analyzability Product Usefulness of method factor Statically Measure unused method Instrument Gendarme: PMD: Unused Avoid Uncalled Private Method Private Code
  • 26. Base Model root C object-oriented GUI C++ Java C#
  • 27. 2 Quality Assessment
  • 30. Quality Aggregation attribute Aggregation Aggregation Product Evaluation Evaluation factor Measure Instrument Measurement Software product
  • 31. Quality Aggregation attribute Aggregation Aggregation Product Evaluation Evaluation factor Measure Measurement Software product
  • 32. Quality Aggregation attribute Aggregation Aggregation Product Evaluation Evaluation factor Measure Measurement Normalisation Software product
  • 33. Quality Aggregation attribute Aggregation Aggregation Product Utility Evaluation Evaluation factor functions Measure Measurement Normalisation Software product
  • 34. Quality Aggregation Weights attribute Aggregation Aggregation Product Utility Evaluation Evaluation factor functions Measure Measurement Normalisation Software product
  • 35. Calibration for Java 6000 compilable open source systems
  • 36. Calibration for Java 6000 compilable open source systems Random selection
  • 37. Calibration for Java 6000 compilable open source systems Random selection 110 open source systems
  • 38. Calibration for Java 6000 compilable open source systems Random selection 110 open source systems Measurement
  • 39. Calibration for Java 6000 compilable open source systems Random selection 110 open source systems Measurement Distributions for all measures
  • 40. Calibration for Java 6000 compilable open source systems Random selection 110 open source systems Measurement Distributions for all measures Calculations and reviews
  • 41. Calibration for Java 6000 compilable open source systems Random selection 110 open source systems Measurement Distributions for all measures Calculations and reviews Evaluation functions
  • 42. Interpretation with School Grades 10 Worst 6 Assessment 5 4 3 2 Best 1 0.80 0.82 0.84 0.86 0.88 0.90 0.92 0.94 0.96 0.98 1.00 Evaluation (Utility) Fig. 7. Interpretation Model
  • 43. 3 Tool Support
  • 44. HTML Quality Model Editor Dash- board Code, documentation, tool results
  • 45.
  • 46. Published under Apache License, Version 2.0 Available at www.quamoco.de
  • 48. Experiment with OSS Projects Ranking Ranking Model Experts Good Checkstyle Checkstyle Log4J RSSOwl Log4J RSSOwl TV-Browser TV-Browser Bad JabRef JabRef
  • 49. Experiment with Industry System Ranking Ranking Model Expert Good Subsystem D Subsystem D Subsystem A Subsystem A Subsystem C Subsystem B, E Subsystem E Subsystem C Bad Subsystem B
  • 50. Visibility of Quality Improvements Grade 4.2 2.8 Investment in quality improvement 1.4 0 1.9.0 2.0.0 2.0.1 2.0.2 2.1.0 2.2.1 Version
  • 52. Drill-Downs „Modeled relations are comprehensible and reasonable.“
  • 53. Drill-Downs „Modeled relations are comprehensible and reasonable.“ „It is good to get an overall view on the quality of a software product.“
  • 54. Drill-Downs „Modeled relations are comprehensible and reasonable.“ „It is good to get an overall view on the quality of a software product.“ „It clarifies software metrics.“
  • 55. Drill-Downs „Modeled relations are comprehensible and reasonable.“ „It is good to get an overall view on the quality of a software product.“ „It clarifies software metrics.“ „It is the best that can be done with static code analysis.“
  • 56.
  • 61. Integrated attributes, measures and evaluations Modular Automatic and systematic evaluations Base model Calibration
  • 62. Integrated attributes, measures and evaluations Modular Automatic and systematic evaluations Base model Calibration Tool support
  • 63. Integrated attributes, measures and evaluations Modular Automatic and systematic evaluations Base model Calibration Tool support Empirically validated
  • 64. The Benchmark for Software Quality www.uni-stuttgart.de The Quamoco Product Quality Modelling and Assessment Approach Stefan Wagner, Klaus Lochmann, Lars Heinemann, Michael Kläs, Adam Trendowicz, Reinhold Plösch, Andreas Seidl, Andreas Goeb and Jonathan Streit
  • 65. Linear Utility Function 1.0 Measure M4 Linear decreasing 0.74 utility function Utility 0.0 min = 0.0 M4 = 2.17E-06 max = 8.50E-6

Editor's Notes

  1. I‘m delighted to present to you the results on quality modelling and assessment of our three year research project Quamoco.\nI‘ve always found quality an interesting concept because it determines so much about a system, but also it is very complex.\n
  2. As David Garvin pointed out: Quality is complex and multifaceted and therefore it is also the source of great confusion“.\nSo what do computer scientists do to handle complexity? They abstract! Researchers have developed a variety of software quality models.\n\n
  3. The range of quality models goes from collections of metrics over academic models, domain standards to company-specific models. But none of them has been able to get really broad acceptance. When we set out to work on quality assessments, we wanted to find a good basis. What do you do when there is no clear leader? You looked at the ISO standard, here 9126.\nISO 15005: Road vehicles - Ergonomic aspects of transport information and control systems - Dialogue management principles and compliance procedures\nNHPP: Non-homogeneous Poisson process (reliability growth models)\n
  4. It breaks down quality into quality attributes such as reliability or maintainability – the „-ilities“. It then breaks them further down and gives some metrics to measure them.\nHow well is it doing in practice? We asked over a hundred practicioners.\n
  5. And the result is not pretty good.\nOnly 28% of the respondents of our international survey said that they use ISO 9126. Only 28%. A bit more than a quarter.\nWhy is that so? We asked in detailed interviews about the reasons.\n
  6. The developers told us taht there is a huge gap between the abstract quality attributes of ISO 9126 and the concrete implementation and assessment on the product. Operationalising the quality attributes is considered extremely difficult. Hence, they use some metrics.\nThe existing metrics are concrete but lack a clear connection to quality goals.\n
  7. Hence, we have the abstract quality attributes of ISO 9126 or similarly the new standard 25010 as well as various measures.\n
  8. And there is this gap that prevents quality attributes from being assessed and measures from clearly contributing to quality goals.\n
  9. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  10. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  11. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  12. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  13. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  14. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  15. The Quamoco project has worked three years on providing – among other things – four results to help to overcome this problems.\n
  16. \n
  17. \n
  18. Schließen der Lücke, durchgängie Zusammenhänge\n
  19. Beispiel\n
  20. The higher in this quality model, the more general the model should be. So on the top level, we have ISO 25010 quality attribute, which are almost applicable to all software products.\nThe product factors should be quite generally applicable but on the measure level, we are often specific for technologies or languages. To have general measures and to decouple them from technical implementations, we introduced instruments.\n
  21. For example, we have a product factor „Uselessness of Methods“, which we measure, for example, with „Statically unused method“. This measure is applicable to different languages. Hence, we refine this with an instrument that uses Gendarme for C# and PMD for Java.\n
  22. Base model describes qualities important for almost any kind of software\nAim is to use it as basis for more specific quality models and also to be able to apply it directly for very popular paradigms and technologies\nIt has a modular structure\nroot contains quality attributes and very general product factors, modules for object-oriented factors and operationalisation for Java and C#\nmostly static analysis tools and inspection\nprototypical development for C, C++ and GUI\n 284 Faktoren\n 524 Maße\n
  23. \n
  24. With that, we can do an actual assessment or evaluation of a software product.\nWe measure using the instruments and collect values for all the measures.\nNow, we need evaluations and aggregations for the product factors and quality attributes.\n
  25. With that, we can do an actual assessment or evaluation of a software product.\nWe measure using the instruments and collect values for all the measures.\nNow, we need evaluations and aggregations for the product factors and quality attributes.\n
  26. \n
  27. \n
  28. \n
  29. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  30. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  31. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  32. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  33. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  34. From over a hundred systems, found typical distributions, eliminated outliers and analysed quartiles\nThe result of an evaluation function is a value between 0 and one.\n
  35. The model was a dictation in school, if you have some errors you will get a bad grade\nHere: German school grades but you could plug in any interpretation wodel\n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. Eine solche Bewertung muss valide sein, um Entscheidungen darauf abzustützen. Haben wir eine gute Aussage über das System gemacht?\nHier haben wir unsere Bewertungen mit Expertenbewertungen verglichen.\nEs ergab sich fast exakt die gleiche Rangfolge. Wir waren in dieser Auflösung also bereits so gut wie Experten.\n
  42. Hier für fünf Subsysteme eines kommerziellen Systems für den Maintainability-Teil.\n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. And with that I want to close with a a thanks to all the Quamoco partners and supporters!\n
  56. \n