Integrating Quality Criteria and Methods of Evaluation for Software Models

Integrating Quality Criteria and Methods of Evaluation for Software Models

Anna E. Bobkowska (Gdansk University of Technology, Poland)
Copyright: © 2009 |Pages: 17
DOI: 10.4018/978-1-60566-006-6.ch004
OnDemand PDF Download:
$37.50

Abstract

Successful realization of the model-driven software development visions in practice requires high quality models. This chapter focuses on the quality of models themselves. It discusses context-free and context- dependent quality criteria for models and then moves on to methods of evaluation which facilitate checking whether a model is good enough. We use linguistic theories to understand groups of criteria and their impact on other models, software product and the process of software development. We propose a strict distinction of the impacts of visual modeling languages, models of the system and tools for quality criteria. This distinction is helpful when designing the methods of evaluation and making decision about the point in time, scope and personnel responsible for quality assessment. As the quality criteria and several methods of evaluation has usually been considered separately we propose a methodology which integrates them. Such an integrated approach provides the following benefits. It allows for designing methods of evaluation based on quality criteria and elements of the model (or modeling language) in the context of specific needs. It can be applied for management of the scope of evaluation with quality criteria as well as configuration of the method to a specific situation. It allows for flexible and efficient conduct of the evaluation with selection of the methods of evaluation. Finally, this chapter presents case studies which illustrate the approach.
Chapter Preview
Top

Introduction

Models play the central role in model-driven software development approaches. However, only good models really support work of analysts, managers and developers. Only good models have the potential to facilitate dealing with complexity, direct micro-process of software development, enable more efficient performance of the difficult tasks, facilitate management and increase satisfaction at work. On the opposite, “bad” models may cause mistake, waste time and be annoying in use. Despite that, much research has been done in the area of technology of model transformations and tools supporting this task. We argue that there is a need to focus on the quality of visual modeling languages (VML), which are used for creating the models as well as quality of models themselves.

This chapter takes a practical perspective to quality in modeling. In order to improve the quality of models one needs to understand quality criteria for models, know efficient methods for conducting evaluation and understand relations between them for effective configuration and management. The level of maturity of the technology is not satisfactory nowadays and one can observe several problems from the point of view of project and general knowledge.

From the point of view of the software project, there are several unrelated methods with limited scope of application. It is unclear what could be benefits of using them and how they could be integrated. Perhaps the most popular method for improving model quality are inspections or reviews with checklists. However, one often needs to customize the checklist provided with methodologies for a specific project. It is easy to remove unnecessary checkpoints, but the problem remains when deciding which checkpoints need to added. The problem of inflexible methods of evaluation appears even more clearly in the perspective of the current trend of software process configuration. It assumes that companies do not choose a process but rather they make aconfiguration of roles, artifacts and tasks for a given type of project within aframework. It means that model artifacts, modeling activities and model checking activities are objects of configuration. Thus, we need objective criteria to make decisions about the scope of modeling as well as methods of evaluation for software models.

From the point of view of maturity of modeling technology, some objective criteria and practical methods of evaluation are needed in order to provide frameworks for customization of the concrete software projects. There is a need to understand criteria why modeling languages should have such elements, diagrams, visualizations, etc. The methods of evaluation are useful for making efficient evaluation and quality criteria behind such decision allow for trade-offs when compromises are necessary. They could be applied by Object Management Group (OMG) members working on modeling standards, e.g., Unified Modeling Language (UML) and its profiles or Business Process Modeling Notation (BPMN). As these standards influence advances in practice, the increase of the maturity of modeling technology should result in better perception of this technology and more successful application in practice. This approach could be useful also for committees which work on application-type modeling languages, e.g., internet applications; special type of models, e.g., task models for user behavior modeling; and models for emerging technology, e.g., aspect-oriented technology. Finally, they could be applied in the area of domain specific modeling. The tasks of designing and evaluating modeling languages in this case are performed in software companies which means a universal application of the methods of visual modeling language evaluation.

The objective of this chapter is to present an approach to dealing with model quality in a way which integrates quality criteria and methods of evaluation. The quality criteria are useful for understanding which aspects are evaluated and for managing the scope of evaluation. The methods of evaluation are necessary for efficient conduct of evaluation. The integrated approach should provide the following benefits. It should allow for designing methods of evaluation based on quality criteria and elements of the model (or modeling language) in the context of specific needs. It should be applicable for management the scope of evaluation with quality criteria as well as configuration of the method to a specific situation. It should allow for flexible and efficient conduct of the evaluation with selection of the methods of evaluation. The most important features of the solution include:

Complete Chapter List

Search this Book:
Reset
Table of Contents
Foreword
Colin Atkinson
Preface
Jörg Rech, Christian Bunse
Acknowledgment
Jörg Rech, Christian Bunse
Chapter 1
Ariadi Nugroho
Many studies have been carried out to investigate what makes up good quality software. Some of the early models that define the quality of software... Sample PDF
Managing the Quality of UML Models in Practice
$37.50
Chapter 2
Teade Punter, Jeroen Voeten
This chapter argues that embedded systems design faces several challenges of which late integration and the difference in development productivity... Sample PDF
Quality in Model Driven Engineering
$37.50
Chapter 3
Examples and Evidence  (pages 57-77)
Sowmya Karunakaran
This chapter aims at highlighting the increased development productivity and quality that can be achieved by Model Driven Software Development... Sample PDF
Examples and Evidence
$37.50
Chapter 4
Anna E. Bobkowska
Successful realization of the model-driven software development visions in practice requires high quality models. This chapter focuses on the... Sample PDF
Integrating Quality Criteria and Methods of Evaluation for Software Models
$37.50
Chapter 5
Heiko Koziolek, Steffen Becker, Ralf Reussner, Jens Happe
Techniques from model-driven software development are useful to analyse the performance of a software architecture during early development stages.... Sample PDF
Evaluating Performance of Software Architecture Models with the Palladio Component Model
$37.50
Chapter 6
Esther Guerra, Juan de Lara, Paloma Díaz
The goal of this work is to facilitate the task of integrating measurement and redesign tools in modelling environments for Domain Specific Visual... Sample PDF
Integrating Measures and Redesigns in the Definition of Domain Specific Visual Languages
$37.50
Chapter 7
Measuring Models  (pages 147-169)
Martin Monperrus, Jean-Marc Jézéquel, Joël Champeau, Brigitte Hoeltzener
Model-Driven Engineering (MDE) is an approach to software development that uses models as primary artifacts, from which code, documentation and... Sample PDF
Measuring Models
$37.50
Chapter 8
Tom Mens, Gabriele Taentzer, Dirk Müller
In this chapter, we explore the emerging research domain of model-driven software refactoring. Program refactoring is a proven technique that aims... Sample PDF
Model-Driven Software Refactoring
$37.50
Chapter 9
Michael Wahler
Class models are typically specified at a high level of abstraction and subsequently refined with textual constraints to obtain higher maturity... Sample PDF
A Pattern Approach to Increasing the Maturity Level of Class Models
$37.50
Chapter 10
Miroslaw Staron
Introducing Model Driven Software Development (MDSD) into industrial projects is rarely done as a “green field” development. The usual path is to... Sample PDF
Transitioning from Code-Centric to Model-Driven Industrial Projects: Empirical Studies in Industry and Academia
$37.50
Chapter 11
Antonio Bucchiarone, Davide Di Ruscio, Henry Muccini, Patrizio Pelliccione
When engineering complex and distributed software and hardware systems (increasingly used in many sectors, such as manufacturing, aerospace... Sample PDF
From Requirements to Java Code: An Architecture-Centric Approach for Producing Quality Systems
$37.50
Chapter 12
Silvia Abrahão, Marcela Genero, Emilio Insfran, José Ángel Carsí, Isidro Ramos, Mario Piattini
Model-Driven Architecture (MDA) is a software engineering approach that promotes the use of models and model transformations as primary development... Sample PDF
Quality-Driven Model Transformations: From Requirements to UML Class Diagrams
$37.50
Chapter 13
Pankaj Kamthan
As software systems become ever more interactive, there is a need to model the services they provide to users, and use cases are one abstract way of... Sample PDF
A Framework for Understanding and Addressing the Semiotic Quality of Use Case Models
$37.50
Chapter 14
Stefan Wagner, Florian Deissenboeck, Stefan Teuchert, Jean-François Girard
In model-driven software development as much as in classical code-driven development maintenance costs make up the bulk of the total life cycle... Sample PDF
Assuring Maintainability in Model-Driven Development of Embedded Systems
$37.50
Chapter 15
Tibor Farkas
Premium quality and innovation are the cornerstones of the leading positions of car manufacturers and suppliers in the world market. The permanently... Sample PDF
Quality Improvement in Automotive Software Engineering Using a Model-Based Approach
$37.50
Chapter 16
Claus Pahl, Boškovic Marko, Ronan Barrett, Wilhelm Hasselbring
Service engineering and service-oriented architecture as an integration and platform technology is a recent approach to software systems... Sample PDF
Quality-Aware Model-Driven Service Engineering
$37.50
Chapter 17
Sven Abels, Wilhelm Hasselbring, Niels Streekmann, Mathias Uslar
This chapter introduces model-driven integration in complex information systems by giving two practical examples. It relies on the experiences the... Sample PDF
Model-Driven Integration in Complex Information Systems: Experiences from Two Scenarios
$37.50
Chapter 18
Jane M.C. Oh
This chapter examines the experience of using model-based design in the context of development of critical software. The software is being developed... Sample PDF
High-Quality Software Models of the Mid-Infrared Instrument for the James Webb Space Telescope
$37.50
About the Contributors