Академический Документы
Профессиональный Документы
Культура Документы
Chapter 1
Introduction
This dissertation presents research contributions that deal with the architecture
level modelling and analysis support for software performance in legacy systems.
In this chapter we lay out the research setting. We start with describing the
context of the research in section 1.1. Next to the context, in section 1.2
we elaborate research problems and state aim and objectives to solve these
problems. In section 1.3, we formulate a research strategy to achieve the defined
objectives. A summary of our contributions is given in section 1.4. We conclude
this chapter with an outline of the thesis text in section 1.5.
1.1 Context
3
“thesis” — 2011/2/25 — 15:51 — page 4 — #22
4 INTRODUCTION
quality factors makes it harder to agree upon a single widely accepted definition
of performance. However, we find following two definitions more expressive.
According to IEEE Standard Glossary of Software Engineering Terminology
[IEEE-610.12], performance is "The degree to which a system or component
accomplishes its designated functions within given constraints, such as speed,
accuracy, or memory usage" [14]. Smith in [30] describes performance as
"Performance refers to responsiveness: either the time required to respond to
specific events or the number of events processed in a given interval of time".
Based on these definitions, performance can be perceived as a characteristic of
the system that represents its timeliness behaviour.
PROBLEM STATEMENT 5
Within the context of evaluating QAs at architecture level for legacy systems,
we investigated two research problems. These problems deal with two aspects
of the performance: the use of parallelism and flow latencies. In the following
subsections we elaborate both research problems.
1.2.1 Parallelism
6 INTRODUCTION
RESEARCH STRATEGY 7
8 INTRODUCTION
1.4 Contributions
We can categorized the contribution of this PhD dissertation into following two
categories.
Major Contributions
• Parallelism Viewpoint:
An architecture viewpoint to model parallelism behaviour of parallelism
intensive software system. The key feature of the viewpoint is to
provide an insight into the thread model of the system to find anomalies.
The viewpoint identifies parallelism specific concerns and corresponding
stakeholders of a system. We propose a parallelism specific execution
metamodel, which helps in focusing on parallelism related performance
overheads. Moreover, we propose a structured approach to harvest
information for elements of the metamodel and generating domain specific
architectural models from this information.
THESIS OUTLINE 9
Minor Contributions
• Extension to AADL:
Architecture Analysis and Design Language (AADL) is one of the best
known and most actively used architecture description language [10].
Originally developed for modelling and analysis of systems in the domain
of avionics [8], it has been standardized by the Society of Automotive
Engineers. Because of its rich modelling and analysis capabilities it is
widely used for systems in other domains as well. A big community in
research and industry is working to extend AADL’s capabilities to make it
a general purpose modeling language, which is suitable for systems from
a verity of domains. In our research work, we extended AADL to provide
modeling support for composite flows. Although, AADL provides basic
support for modelling EtE flows it lacks support for composite flows. We
believe that our extension to AADL is a step forward, to make it suitable
for flow-intensive software systems.
• Toolset
The information harvesting and model generation activities of the
viewpoint require a lot of efforts, which we reduce by providing necessary
tool support. We also automize various activities of the thread pool
analysis to reduce the associated labour and to perform a quicker analysis.
This dissertation contains six chapters. The remainder five chapters are
structured as following:
Background: In this chapter we present background material on architecture
views and viewpoints, and architecture description languages. We describe
AADL architecture description language in some detail. In the end, we introduce
three research cases that we used to validate our research. Among them are
a software system for electron microscope, Mozilla Firefox web browser and a
large-scale vehicular network system.
Parallelism Viewpoint: A Viewpoint to Model Parallelism in
Parallelism-Intensive Software Systems: In this chapter we describe the
fundamental building blocks of the Parallelism Viewpoint. We start with
identifying parallelism-specific concerns and their corresponding stakeholders in
section 3.1. In section 3.2, we outline a parallelism-specific execution metamodel,
an approach to harvest information for elements of the metamodel and generate
“thesis” — 2011/2/25 — 15:51 — page 10 — #28
10 INTRODUCTION