Working towards the next version of the SWIM Supporting Material

Page tree

Working towards the next version of the SWIM Supporting Material

Skip to end of metadata
Go to start of metadata
Page Table of Content

Version

This page concerns v2.0 of the Specification. Supporting material on v1.0 is SWIM-SERV-014 Quality of service

Requirement

Title

Quality of service

Identifier

SWIM-SERV-180

Requirement

A service description shall include or refer to information about the minimum quality of service offered with regards to:

  • performance;
  • reliability; and
  • security.

Rationale

This is a key criterion in deciding to use the service.

Statements on the quality of service are typically included in the formal arrangements made between the service provider and a service consumer when contracting to use the service. The information in the service description informs contract negotiations between consumers and providers.

Verification

Completeness: Verify that quality statements are included in the service description.

Consistency: Not Applicable.

Correctness: Not Applicable.

Examples/Notes

Example performance includes:

  • Capacity of a service
  • Time behaviour of a service

Example reliability includes:

  • Availability of a service
  • Recoverability of a service

Example security includes:

  • Confidentiality of a service
  • Integrity of a service

Note: A list of parameters can be found in ISO 25010 [RD 16].

Note: The availability is typically expressed as a percentage representing the ratio between minimum target uptime versus maximum uptime. The service provider needs to describe the service outages he intends to mask/alleviate. The availability information needs to be expressed for various situations, e.g., planned and unplanned outages. The service provider needs to describe the schedule of planned outages.

Example of availability: ≥ 99.95 % of Continuous Operations.

Note: The time behaviour expressing the delay to process a service request could include: delay in seconds, percentage of messages, message size.

Example of response time: 2s delay for 95% of messages of average size 1MB, with no compression.

Example of response time: max 3s response to complete a service request, measured from the time the service provider agent receives the request to the time the service provider transmits the response.

Note: The capacity is typically expressed as a number of service requests that the service can accommodate within the given time period.

Example of throughput: 200 service requests per minute.

Note: Integrity and confidentiality may be ensured at network, transport and/or message level. Integrity ensures that errors or attacks will not lead to damage to the state of the information service, including service interfaces and information. Confidentiality ensures that an unauthorized user will not be able to access and understand protected exchanged information. A statement can be given that mechanisms to ensure integrity and confidentiality have been implemented.

Example of integrity and confidentiality: Integrity and confidentiality mechanisms have been implemented.

Note: the mechanisms are documented under requirement SWIM-SERV-160.

Note: It is a good practice to describe the measuring conditions of the quality of service figures given.

Level of Implementation

Mandatory

Guidance

The ISO 25010 standard provides a classification of quality characteristics to be taken into account when evaluating the properties of a software product based. See: https://iso25000.com/index.php/en/iso-25000-standards/iso-25010 for an overview of the standard. Although the standard targets software products, it can be adapted to services. The examples below use this standard.

The quality of service informs the negotiations of the "formal arrangement". This is further explained at Formal Arrangements - Service Level Agreements.

A service provider may state that a given parameter is "according to the service level agreement" or is on "best effort" rather than provide a precise figure in the service description. For a paid service, "according to the service level agreement" is more precise. "Best effort" is more appropriate for free services.

The examples/notes to the specification contain a list of example parameters. A service provider may state "none" or "not assessed" when no data on these parameter exists e.g. when no data on the availability of the service exists.

Other parameters can be included if the information to complete them is available.

Verification Support

Completeness

Check that:

[  ] The service description includes or refers to information about the minimum quality of service offered with regards to performance.

[  ] The service description includes or refers to information about the minimum quality of service offered with regards to reliability.

[  ] The service description includes or refers to information about the minimum quality of service offered with regards to security.

Examples

The following example shows the content as a table.

quality of service

performance efficiency

capacity

2000 service requests per hour

time behaviour2s delay for 95% of messages
reliability

availability

99.95 % outside the planned outages
Schedule of planned outages: http://www.donlon-airport.com/swim/planned-outages

recoverabilitybest effort
security

confidentiality

Confidentiality mechanisms have been implemented.

integrityIntegrity mechanisms have been implemented.


The following example shows an extract of the content of a JSON file that conforms to the Service Metadata Schema

Example of SWIM-SERV-180 using Service Metadata Schema
"generalDescription": {
 "qualitiesOfService": {
  "performance": [{
   "name": "CAPACITY",
   "description": "2000 service requests per hour"
  }, {
   "name": "TIME BEHAVIOUR",
   "description": "2s delay for 95% of messages"
  }],
  "reliability": [{
   "name": "AVAILABILITY",
   "description": "99.95 % outside the planned outages Schedule of planned outages: http://www.donlon-airport.com/swim/planned-outages"
  }, {
   "name": "RECOVERABILITY",
   "description": "best effort"
  }],
  "security": [{
   "name": "CONFIDENTIALITY",
   "description": "Confidentiality mechanisms have been implemented."
  }, {
   "name": "INTEGRITY",
   "description": "Integrity mechanisms have been implemented."
  }]
 }
}

Complete examples are available at Example service description.

  • No labels