Innovations Syst Softw Eng (2008) 4:3–15
DOI 10.1007/s11334-007-0039-7
ORIGINAL PAPER
The EMISQ method and its tool support-expert-based evaluation
of internal software quality
R. Plösch · H. Gruber · A. Hentschel · Ch. Körner ·
G. Pomberger · S. Schiffer · M. Saft · S. Storck
Received: 13 December 2007 / Accepted: 19 December 2007 / Published online: 12 January 2008
© Springer-Verlag London Limited 2008
Abstract There is empirical evidence that internal software
quality, e.g., the quality of source code, has great impact on
the overall quality of software. Besides well-known manual
inspection and review techniques for source code, more
recent approaches utilize tool-based static code analysis for
the evaluation of internal software quality. Despite the high
potential of code analyzers the application of tools alone can-
not replace well-founded expert opinion. Knowledge, expe-
rience and fair judgment are indispensable for a valid, reliable
quality assessment, which is accepted by software developers
and managers. The EMISQ method (Evaluation Method for
Internal Software Quality), guides the assessment process
for all stakeholders of an evaluation project. The method is
R. Plösch (B ) · H. Gruber · G. Pomberger · S. Schiffer
Institut für Wirtschaftsinformatik—Software Engineering,
Johannes Kepler University Linz, Linz, Austria
e-mail: reinhold.ploesch@jku.at
H. Gruber
e-mail: harald.gruber@jku.at
G. Pomberger
e-mail: gustav.pomberger@jku.at
S. Schiffer
e-mail: stefan.schiffer@jku.at
A. Hentschel · Ch. Körner · M. Saft
Siemens AG, Corporate Technology–SE 1,
Otto-Hahn-Ring 6, Munich, Germany
e-mail: anja.hentschel@siemens.com
Ch. Körner
e-mail: christian.koerner@siemens.com
M. Saft
e-mail: matthias.saft@siemens.com
S. Storck
Siemens Corporate Research Inc.–SCR SE,
755 College Road East, Princeton, NJ, USA
e-mail: stephan.storck@siemens.com
supported by the Software Product Quality Reporter (SPQR),
a tool which assists evaluators with their analysis and rating
tasks and provides support for generating code quality
reports. The application of SPQR has already proved its use-
fulness in various code assessment projects around the world.
This paper introduces the EMISQ method and describes the
tool support needed for an efficient and effective evaluation
of internal software quality.
1 Introduction and motivation
Commonly, the general term software quality combines
external and internal software quality. The standard ISO 9126
[1] defines software quality as “the totality of characteristics
of a software product that bear on its ability to satisfy stated
and implied needs”. However, this general definition of soft-
ware quality does not suffice for practical application. With
the help of quality models, the concept of quality is operatio-
nalized by deriving subconcepts, with external and internal
software quality at the highest level of abstraction.
External software quality covers those quality aspects that
are noticeable by the users of a software product. Typical
examples of external quality attributes are usability and func-
tionality. Assessing the external quality of a software product
requires an operational product that has to be executed in
order to be evaluated.
Internal software quality covers quality aspects that are
primarily visible to software architects, developers and tes-
ters; it focuses on the source code, internal documentation,
architectural descriptions, etc. Even if users do not directly
get in touch with internal software quality, it is an intui-
tive observation that internal quality affects external qua-
lity to a high degree. This observation is also supported by
123