TY - BOOK
T1 - Quality-oriented software architecture development
T2 - Master's thesis
AU - Evesti, Antti
N1 - Project code: 562
PY - 2007
Y1 - 2007
N2 - Producing software products of good quality requires that
quality requirements are taken into account as early as
possible. In theory, the first place in which quality
requirements can be addressed is architectural models of
software. However, in practice, the software's
architecture is only used to describe the functionality
of the developed software. This means that the
implemented software may not fulfil its quality
requirements and some parts of the implementation process
might be useless. The main research problem in this work
is how to define and connect quality requirements with
the software architecture in such a way that the
requirements can vary between software components and
software family members.
An environment for defining and collecting software's
quality requirements was designed and implemented in this
work. The environment consists of three main parts:
quality meta-data management, quality modelling and
quality evaluation. The quality meta-data management
provides a possibility to define each quality attribute
into an ontology form. These ontologies are utilized when
quality requirements are defined in order to define the
requirements in a uniform way in the quality modelling
phase. Quality requirements are defined according to the
UML profile developed for that purpose, so that it would
be possible to represent these requirements in the
architectural models. Finally, the architecture's quality
is evaluated using evaluation tools. The purpose was to
implement the whole environment on the Eclipse platform
using available open source components. The Eclipse was
selected because it is a widely used open source
platform, which makes it easier to distribute the
software developed during this work. The Eclipse tool
evaluation confirmed that TOPCASED is the best available
UML tool for the Eclipse and the best Eclipse ontology
tool is EODM. However, EODM does not fulfil all the
desired requirements of this work and this enforced the
use of the Protégé ontology tool.
The implemented environment was tested using the defined
test scenarios. The tests proved that the implemented
environment works as expected. In addition, the developed
quality profile offered an appropriate way to connect the
defined quality requirements to the architectural models.
There are still many things that need additional research
and development before the environment and the quality
profile can be utilized in software design in industry.
AB - Producing software products of good quality requires that
quality requirements are taken into account as early as
possible. In theory, the first place in which quality
requirements can be addressed is architectural models of
software. However, in practice, the software's
architecture is only used to describe the functionality
of the developed software. This means that the
implemented software may not fulfil its quality
requirements and some parts of the implementation process
might be useless. The main research problem in this work
is how to define and connect quality requirements with
the software architecture in such a way that the
requirements can vary between software components and
software family members.
An environment for defining and collecting software's
quality requirements was designed and implemented in this
work. The environment consists of three main parts:
quality meta-data management, quality modelling and
quality evaluation. The quality meta-data management
provides a possibility to define each quality attribute
into an ontology form. These ontologies are utilized when
quality requirements are defined in order to define the
requirements in a uniform way in the quality modelling
phase. Quality requirements are defined according to the
UML profile developed for that purpose, so that it would
be possible to represent these requirements in the
architectural models. Finally, the architecture's quality
is evaluated using evaluation tools. The purpose was to
implement the whole environment on the Eclipse platform
using available open source components. The Eclipse was
selected because it is a widely used open source
platform, which makes it easier to distribute the
software developed during this work. The Eclipse tool
evaluation confirmed that TOPCASED is the best available
UML tool for the Eclipse and the best Eclipse ontology
tool is EODM. However, EODM does not fulfil all the
desired requirements of this work and this enforced the
use of the Protégé ontology tool.
The implemented environment was tested using the defined
test scenarios. The tests proved that the implemented
environment works as expected. In addition, the developed
quality profile offered an appropriate way to connect the
defined quality requirements to the architectural models.
There are still many things that need additional research
and development before the environment and the quality
profile can be utilized in software design in industry.
KW - quality-oriented software architecture
KW - software development
KW - quality requirements
KW - ontologies
KW - quality meta-data management
KW - quality modelling
KW - quality evaluation
KW - Unified Modeling Language
M3 - Book (author)
T3 - VTT Publications
BT - Quality-oriented software architecture development
PB - VTT Technical Research Centre of Finland
CY - Espoo
ER -