Technische Universität München

A Unifying Model for Software Quality Workshop on Software Quality Szeged 2011

Klaus Lochmann, Andreas Göb

Technische Universität München

Motivation & Problem Statement •

Software quality is – intermingled with most activities of software engineering • Requirements • Design & Architecture • Implementation • Test – intermingled with most disciplines of software engineering • Security engineering • Usability engineering



Common foundation to describe software quality is missing

2

Technische Universität München

Motivation & Problem Statement • Different approaches in each discipline: – – – –

Checklists and guidelines Static code analysis tools Dynamic tests Quality models

• Common foundation is missing  Loss of information between the different development phases  Additional tracking effort

3

Technische Universität München

Quality Meta-Model • Objective: – Describing concepts related to software quality – Integrate the different concepts

• Meta-Model: – Based on Quamoco *

* http://www.quamoco.de/

Technische Universität München

Quality Meta-Model Entity

Impacts

Property

Attribute

Measures Measure 1) Property

[redness@apple]

2) Entity

„apple“

3) Attribute

„redness“

4) Impact

[redness@apple] [mellowness@apple]

5) Measure

„weight in lbs“

Technische Universität München

Quality Model An exemplary instance of the meta model, showing the concepts of • activity based quality models • static code analysis tools • checklists • functional test cases • guidelines • ISO 25010 „-ilities“

6

Modeling > Activity-based Quality Models Technische Universität München

Product Properties

Activity Properties

Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > Static Code Analysis

Technische Universität München

Product Properties

Activity Properties

Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Static Code Analysis FindBugs “INT_BAD_REM_BY_1”

Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > Manual Inspections

Technische Universität München

Product Properties

Activity Properties

Manual Inspections Checklist Item

Checklist Item

Static Code Analysis FindBugs “INT_BAD_REM_BY_1”

Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > Functional Test Cases

Technische Universität München

Product Properties Functional Properties

Register Customer @Product

Activity Properties Eff. & Eff. @Book flight

Password @Product Manual Inspections Checklist Item

Checklist Item

Static Code Analysis FindBugs “INT_BAD_REM_BY_1”

Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > Functional Test Cases

Technische Universität München

Product Properties Functional Test Cases Functional Test Case 1 Functional Test Case 2 Manual Inspections Checklist Item

Checklist Item

Static Code Analysis FindBugs “INT_BAD_REM_BY_1”

Functional Properties

Register Customer @Product

Activity Properties Eff. & Eff. @Book flight

Password @Product Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > Guidelines

Technische Universität München

Product Properties Functional Test Cases Functional Test Case 1 Functional Test Case 2 Manual Inspections Checklist Item

Checklist Item

Static Code Analysis FindBugs

Functional Properties

Register Customer @Product

Eff. & Eff. @Book flight Password @Product Structural Properties

Effectiveness @Attack

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

“INT_BAD_REM_BY_1”

Environment Metrics

Activity Properties

Environment Properties

Fortified @Hardware

Physical Accessibility @Hardware

Existence @Debugger

Adequateness @Development Tools

Eff. & Eff. @Perceive

Eff. & Eff. @Maintain

Modeling > ISO 25010 „-ilities“

Technische Universität München

Product Properties Functional Test Cases Functional Test Case 1 Functional Test Case 2 Manual Inspections

Functional Properties

Register Customer @Product

Activity Properties Eff. & Eff. @Book flight

Where Password do the ISO 25010 „-ilities“ fit in here? @Product Structural Properties

Maintainability Encryption @Communication and efficiency with “The degree of effectiveness which the product can be modified.”

Effectiveness @Attack

Checklist Item

Checklist Item

Static Code Analysis FindBugs “INT_BAD_REM_BY_1”

Environment Metrics Fortified @Hardware Existence @Debugger

Color independent @UI Element Unnec. complicated @Arith. Expression

Eff. & Eff. @Perceive

Eff. & Eff. Security @Maintain “The degree to which information and data are protected so that unauthorized persons or systems Environment Properties cannot read or modify them and authorized persons or Physical Accessibility systems are not denied access to them.” @Hardware Adequateness @Development Tools

Modeling > ISO 25010 „-ilities“

Technische Universität München

Product Properties Functional Test Cases Functional Test Case 1 Functional Test Case 2 Manual Inspections Checklist Item

Checklist Item

Static Code Analysis FindBugs

Functional Properties

Quality Attributes

Register Customer @Product

Functional Correctness @Product

Eff. & Eff. @Book flight

Password @Product Security @Product

Effectiveness @Attack

Accessibility @Product

Eff. & Eff. @Perceive

Maintainability @Product

Eff. & Eff. @Maintain

Structural Properties

Encryption @Communication

Color independent @UI Element Unnec. complicated @Arith. Expression

“INT_BAD_REM_BY_1”

Environment Metrics

Activity Properties

Environment Properties

Fortified @Hardware

Physical Accessibility @Hardware

Existence @Debugger

Adequateness @Development Tools

Technische Universität München

Summary • Quality meta-model and exemplary quality model for describing various concepts related to software quality – other quality models – checklists & guidelines – static and dynamic testing

• Quality model able to describe these concepts • Further work: – a more complete quality model – especially: reliability, safety, etc.

15

A Unifying Model for Software Quality

Static code analysis tools. – Dynamic tests. – Quality models .... “The degree to which information and data are protected so that unauthorized persons or ...

84KB Sizes 3 Downloads 201 Views

Recommend Documents

A Software Quality Model for SOA
Sep 4, 2011 - A Software Quality Model for SOA / A. Goeb. 2 ... Existing software quality models lack SOA concepts .... Automatically by analyzing logs.

A Software Quality Model of a Developer's View
DEVELOPER'S VIEW ON THE SOFTWARE QUALITY MODEL ..... Table 1 that the H-SQM solved the problem of overlapping while meeting other requirements.

Unifying Service- and Aspect-Oriented Software Development
There is a recent interest in integrating the service- and aspect-oriented software development paradigms. However, most of the approaches proposed thus far.

A revised model for the cost of quality
A revised model for the cost of quality. 291. Received October 2002. Revised March 2003. International Journal of Quality &. Reliability Management. Vol. 21 No. ...... 580-91. Gryna, F.M. (1988), “Quality costs”, in Juran, J.M. and Gryna, F.M. (E

Towards a Model for Optimizing Technical Debt in Software Products
Mar 26, 2013 - debt at various lifecycle stages of a software product. We discuss the use ... limited view, failing to account for the evolutionary way in which the ...

A Unifying Probability Measure for Logic-Based ...
Mar 25, 2011 - Institute of Computer Science ..... Boolean attribute BA we specify its sample space as ΩBA := ... ⊥BA represents all domain values which do.

Idea: A Unifying Theory for Evaluation Systems
Abstract. Secure systems for voting, exams, auctions and conference paper management are theorised to address the same problem, that of secure evaluations. In support of such a unifying theory comes a model for Secure Evaluation Systems (SES), which

A Unifying Orchestration Operating Platform for 5G - Fulvio Risso
services, allocated and executed in network slices, will require orchestration ca- pabilities, a ... 5G-OP does not intend to develop one more control-orchestration.

Scale-Free Networks Provide a Unifying Framework for ...
Aug 26, 2005 - We study the evolution of cooperation in the framework of evolutionary game theory, ... P>S. As a result, in a single round of the PD it is best.

A Unifying Probability Measure for Logic-Based ...
Mar 25, 2011 - A Boolean logic-based evaluation of a database query re- turns true on match and ... vance [16]: What is the probability that a user rates a data object as relevant? ...... and Mining Uncertain Data, chapter 6. Springer-Verlag ...

A Unifying Approach to Scheduling
University of California ... ment of Computer Science, Rutgers University, New Brunswick, NJ. 08903 ... algorithms serve as a good approximation for schemes.

Relativistic diffusions: a unifying approach - CiteSeerX
Mar 26, 2009 - ated transport equations, in both standard (3+1) and manifestly covariant form ... noted hereafter by M. Let ba(M), a = 0, 1, 2, 3, be, for all M ∈ S, ...

Relativistic diffusions: a unifying approach - CiteSeerX
Mar 26, 2009 - presented in Section 4.3 to extend the H-theorem [4, 27] already existing for the ..... Central Limit Theorem for a Class of Relativistic Diffu- sions.

Tangential Eigenmaps: A Unifying Geometric ...
spaces and Euclidean spaces, we develop a natural map via tangentials, ... Given a cloud of data points x1,...,xc, where c is the number of points, we proceed by ...

A Unifying Approach to Scheduling
the real time r which the job has spent in the computer system, its processing requirement t, an externally as- signed importance factor i, some measure of its ...

A Context Quality Model to Support Transparent ...
sures and (2) the use of uncertain reasoning techniques. In this paper, ... quantify vague context or difficulty in defining accurate inference rules [14]. Existing work in the ... across the layers must be addressed in order to produce a meaningful

A Behavioural Model for Client Reputation - A client reputation model ...
The problem: unauthorised or malicious activities performed by clients on servers while clients consume services (e.g. email spam) without behavioural history ...