. . Login | Feed | Imprint

Glossary

This page defines terms which are used throughout many of the documents, deliverables as well as the website published by the Q-ImPrESS project.

General Terms

This section contains general terms crossing boundaries of particular packages which follow.

  • service architecture meta-model (SAMM) = Common meta-model which contains everything to describe the information needed for quality prediction analysis. Serves as shared data-repository for all quality analysis methods.
  • service architecture model (SAM) = an instance of the SAMM

Static package

This section contains terminology used in the part of the model which can be found in the source code and could be in principle extracted through static analysis.

  • component = A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only. A software component can be deployed independently and is subject to third-party composition. (Szyperski)
  • connector = Connectors are architectural building blocks used to model interactions among components and rules that govern those interactions. (Medvidovic)
  • static structure = description of component and connector composition that captures the static architecture of a service at the time of deployment
  • black-box component = a component having only interface information. Black-box components cannot be analysed using tools of static analysis, because they have no information about their internals, however, black-box components can be monitored. In order to apply static analysis, a black-box component needs to be turned into a grey-box component.
  • grey-box component = a component having interface information and additional model information (QoS annotations + behavioural aspects in case of composite components) needed for analysis
  • white-box component = a component with available source-code
  • service = a deployed component
  • service architecture = a set of services connected to each other via connectors. A subject to analysis.

Behaviour package

This section contains terminology used in the part of the model describing the behavioural aspects of the system.

  • behaviour = control flow and data flow within the components of the static structure
  • reverse engineering = extraction of information based on source code/byte code only, performed not at runtime
  • re-engineering = extraction of information from source code and byte code. Opposed to reverse engineering, also a certain degree of abstraction is performed before creating a model.
  • Generalized Abstract Syntax Tree (G-AST) = Abstract Syntax Tree with resolved dependencies
  • reverse engineering of static structure = extraction of the static structure of the SAMM
  • reverse engineering of behavioural aspects = extraction of behavioural aspects of the SAMM
  • TBP = Threaded Behaviour Protocols, a behaviour model of a component/service specifying traffic on service provided and required interface ports as visible from outside, i.e., by other services communicating with this one

Quality annotations

This section terms related to reliability prediction

  • quality attribute = performance, reliability or maintainability
  • quality metric = a metric used to measure an aspect of a quality attribute (average execution time, resource consumption, mean time between failures, etc.)
  • usage profile parameter = a parameter used to describe the usage profile (number of loop iterations, buffer size, frequency of service requests, etc.)
  • Quality of Service (QoS) = performance and reliability of a service
  • Quality Annotation = information about performance and reliability of a service present in SAM or implementation in a form of code annotations

Resources and Environment

This section defines the terms related to modelled resources

  • resource = a physical (hardware) or logical (software) entity of limited capacity required by a component for execution
  • physical resource = a hardware entity that can be acquired/exploited by a service, e.g., CPU, memory, network.
  • logical resource = a software entity provided by a framework/middleware that can be used by a service, e.g., thread, lock.
  • resource model = an abstract description of a resource specifically tailored to serve some analysis purpose (e.g., reliability analysis)

Allocation

This section contains terminology regarding deployment of components

  • deployment = a collective term used to encompass all activities required to make a component implementation a running and accessible service (includes for example installation on the target resources, configuration, and start-up)
  • allocation = the relationship between a component implementation and its required resources
  • allocation model = a set of bindings between components and modelled resources, assigning each component the resources it requires for execution, this information is normally present in a deployment diagram
  • assembly = a deployment unit, set of components deployed together onto a single resource, typically a single computer

Usage

This section defines terms related to runtime and usage of services

  • monitoring = measuring of facts like timing, variable values, loop counts, etc. from existing and running systems
  • evolution = a change to the system or its environment, which would require an update of the SAM; the environment stands for entities using the system, e.g., other services or users.
  • change scenario = a new situation requiring some changes to / adaptations of the service architecture. It is described in textual form as a set of new / changed requirements.
  • usage profile = description of usage of a service/services. This includes the order in which the services are called, timing, and data passed as input parameters. The usage profile can be parametrized by usage profile parameter.
  • prediction model = software model aimed at obtaining predictions concerning quality attributes of the modelled system
  • generated prediction model = prediction model systematically generated through transformational approaches that usually rely on techniques and tools that emerge from Model Driven Architectures and Generative Programming research areas
  • measured value = the value of a quality metric measured for an implemented system
  • predicted value = the value of a quality metric predicted by the Q-ImPrESS quality impact prediction tools
  • prediction validation = measuring of the implemented system in order to compare the measured value with the predicted value of a quality metric
  • prediction error = difference between predicted value and measured value
  • predictability = the ability to predict properties of a component based on a model (e.g. the predictability of a component would be low if it behaves non-deterministically)
  • prediction precision = (prediction error / measured value)
  • design alternative = a snapshot of the SAM reflecting the changes described in a change scenario
  • trade-off = Results of analyses between different quality attributes
  • analytical hierarchical process (AHP) = a structured technique for helping people deal with complex decisions. Rather than prescribing a “correct” decision, the AHP helps people to determine one. (Wikipedia.org)

Scalability

This section defines terms related to scalability of the Q-ImPrESS method

  • scalability = a relationship of an input attribute to an output value (a meta-attribute). Relevant examples include relationship between system’s response time (output) and the number of users (input) or relationship between the throughput (output) and the type and size of the user’s parameters (input).
  • capacity = number of users supported by system without degradation of quality of experience
  • number of users = the number of users concurrently working with the system