Shopping Cart

No products in the cart.

BSI PD ISO/IEC TR 14369:2018

$215.11

Information technology. Programming languages, their environments and system software interfaces. Guidelines for the preparation of language-independent service specifications (LISS)

Published By Publication Date Number of Pages
BSI 2018 78
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

This document provides guidelines to those concerned with developing specifications of information technology services and their interfaces intended for use by clients of the services, in particular by external applications that do not necessarily all share the environment and assumptions of one particular programming language. The guidelines do not directly or fully cover all aspects of service or interface specifications, but they do cover those aspects required to achieve language independence, i.e. required to make a specification neutral with respect to the language environment from which the service is invoked. The guidelines are primarily concerned with the interface between the service and the external applications making use of the service, including the special case where the service itself is already specified in a language-dependent way but needs to be invoked from environments of other languages. Language bindings, already addressed by ISO/IEC TR 10182, are dealt with by providing advice on how to use the two documents together.

This document provides technical guidelines, rather than organizational or administrative guidelines for the management of the development process, though in some cases the technical guidelines can have organizational or administrative implications.

PDF Catalog

PDF Pages PDF Title
2 National foreword
9 Foreword
10 Introduction
13 1 Scope
2 Normative references
3 Terms and definitions
16 4 Abbreviated terms
5 Overview
5.1 Services, interfaces, service providers and service users
5.2 Information technology services
17 5.3 Services and language independence
18 5.4 Language-independent specifications
19 5.5 Problems of language dependence and inbuilt assumptions
5.5.1 General
5.5.2 Representational assumptions
5.5.3 Implementation assumptions
20 6 Guidelines on strategy
6.1 General
6.2 General guidelines
6.2.1 Guideline: Dependence of the interface on the service
6.2.2 Guideline: What to do when there are interoperability, concurrency, or time constraint issues
6.2.3 Guideline: Use of marshalling/unmarshalling
21 6.2.4 Guideline: Recruiting expertise from a variety of backgrounds
6.3 What to do if starting from scratch
6.3.1 General
6.3.2 Guideline: Avoidance of implementation assumptions
6.3.3 Specifying the service in language-independent form
22 6.3.4 Specifying the interface to the service in language-independent form
6.4 What to do if starting from an existing language-dependent specification
6.4.1 General
6.4.2 General guidelines
24 6.4.3 Converting an existing language-dependent specification of the service into language-independent form
25 6.4.4 Converting an existing implicit interface into an explicit language-independent interface
26 6.4.5 Specifying a language-independent interface to a service whose specification is language-dependent
27 7 Guidelines on document organization
7.1 General
7.2 Guideline: The general framework
7.2.1 General
7.2.2 Checklist of parts for inclusion
28 7.3 Guideline: Production and publication
7.4 Guideline: Document organization when starting from a language-specific specification
29 8 Guidelines on terminology
8.1 General
8.2 Guideline: The need for rigour
8.3 Guideline: The need for consistency
8.4 Guideline: Use of undefined terms
8.5 Guideline: Use of ISO 2382
30 8.6 Guideline: Use of definition by reference
8.7 Guideline: Terminology used in bindings
9 Guidelines on use of formal specification languages
9.1 Guideline: Use of a formal specification language
9.2 Checklist of formal specification languages
9.2.1 General
9.2.2 Estelle
31 9.2.3 Lotos
9.2.4 VDM-SL
9.2.5 Z
32 9.2.6 Extended BNF
9.3 Guideline: Using formal specifications from the outset
9.4 Guideline: Use of operational semantics
33 10 Guidelines on interoperability
10.1 General
10.1.1 Interoperability with what?
34 10.1.2 The nature of the interoperation
10.1.3 How interoperation is invoked
10.2 Guidelines on interoperability with other instantiations of the same service
10.2.1 Guideline: Identifying features affecting interoperability
10.2.2 Guideline: Precise definition and rigorous conformity requirements
35 10.2.3 Guideline: Importance of exchange values
10.3 Guidelines on interoperability with other services
10.3.1 General
10.3.2 Guideline: Interoperability with other services being defined at the same time
10.3.3 Guideline: Interoperability with a pre-defined service
36 11 Guidelines on concurrency issues
11.1 General
11.2 Guidelines on concurrency within the service specification
11.2.1 Guideline: Avoidance of unnecessary concurrency requirements
11.3 Guidelines on concurrency of interaction with service users
11.3.1 General
37 11.3.2 Guideline: Handling of concurrent service requests
11.3.3 Guideline: Number of concurrent service requests handled
11.3.4 Guideline: Order of processing of service requests
11.3.5 Guideline: Criteria for prioritizing service requests
11.4 Guidelines on concurrency requirements on bindings
11.4.1 General
11.4.2 Guideline: Avoidance of concurrency requirements
38 11.4.3 Guideline: Specification of unavoidable concurrency requirements
12 Guidelines on the selection and specification of datatypes
12.1 General
12.2 Guideline: Use of ISO/IEC 11404 General-Purpose Datatypes (GPD)
12.3 Guideline: Specification of datatype parameter values
39 12.4 Guideline: Treatment of values outside the set defined for the datatype
12.5 Guideline: Specification of operations on data values
12.6 Guideline: Recommended basic set of datatypes
12.7 Guideline: Specification of arithmetic datatypes
40 12.8 Guideline: Approach to language bindings of datatypes
12.9 Guideline: Avoidance of representational definitions
13 Guidelines on specification of procedure calls
13.1 General
41 13.2 Guideline: Avoidance of unnecessary operational assumptions or detail
13.3 Guideline: Use of ISO/IEC 13886 procedure calling model
13.4 Guidelines on the use of ISO/IEC 13886
13.4.1 General
42 13.4.2 Guideline: Selection of datatypes of parameters
13.4.3 Guideline: Selection of parameter passing modes
43 13.4.4 Guideline: Use of bindings to LIPC
13.5 Interfacing via remote procedure calling (RPC)
13.5.1 General
13.5.2 Guideline: Avoid limiting the service specification because of constraints on the interface specification
44 13.5.3 Guideline: Specification of RPC interface
13.5.4 Guideline: Use of subsets
13.5.5 Guideline: Use of ISO/IEC 11578
13.6 Guideline: Guidance concerning procedure calling to those defining language bindings to the language-independent service specification
45 14 Guidelines on specification of fault handling
14.1 General
46 14.2 Guideline: Fault detection requirements
14.3 Checklist of potential faults
14.3.1 Invocation faults
14.3.2 Execution faults
47 14.4 Guideline: Recovery from non-fatal faults
15 Guidelines on options and implementation dependence
15.1 General
48 15.2 Guidelines on service options
15.2.1 Guideline: Optional service features
15.2.2 Guideline: Avoidance of assumptions about the use of the service
15.2.3 Guideline: Use of query mechanism
15.2.4 Guideline: Management of optional service features
49 15.2.5 Guideline: Definition of optional features
15.3 Guidelines on interface options
15.3.1 Guideline: Completeness of interface
15.3.2 Guideline: Interface to service with options
15.4 Guidelines on binding options
15.4.1 Guideline: Completeness of binding
15.4.2 Guideline: Binding to a service with options
50 15.4.3 Guideline: Binding to a language with optional features
15.5 Guidelines on implementation dependence
15.5.1 Guideline: Completeness of definition
15.5.2 Guideline: Provision of implementation options
51 15.5.3 Guideline: Implementation-defined limits
52 16 Guidelines on conformity requirements
16.1 General
53 16.2 Guidelines for specifying conformity of implementations of the service
16.2.1 Guideline: Avoidance of assumptions about the implementation language
16.2.2 Guideline: Avoidance of representational assumptions
16.2.3 Guideline: Avoidance of implementation model
16.2.4 Guideline: Requiring end results rather than methods
16.3 Guidelines for specifying conformity of implementations of the interface
16.3.1 Guideline: Requirements on implementation-defined aspects
54 16.4 Guidelines for specifying conformity of bindings
16.4.1 Guideline: Propagating requirements to conforming bindings
16.4.2 Guideline: Adherence to defined semantics
17 Guidelines on specifying a language binding to a language-independent interface specification
17.1 General
17.2 Guideline: Use of bindings to LID and LIPC
17.3 Guideline: Adherence to defined semantics
55 17.4 Guideline: Binding document organization
17.5 Guideline: “Reference card” binding documents
56 18 Guidelines on revisions
18.1 General
18.2 Kinds of change that a revision can introduce
18.2.1 General
18.2.2 Addition of a new feature
18.2.3 Change to the specification of a well-defined feature
18.2.4 Deletion of a well-defined feature
18.2.5 Deletion of ill-defined feature
57 18.2.6 Clarification of ill-defined feature
18.2.7 Change or deletion of obsolescent feature
18.2.8 Change of level definition
18.2.9 Change of specified limit to implementation-defined value
18.2.10 Change of other implementation requirement
18.2.11 Change of conformity clause
18.3 General guidelines applicable to revisions
18.3.1 Guideline: Revision compatibility
18.4 Guidelines on revision of the service specification
18.4.1 Guideline: Determining impact on interface and language bindings
58 18.4.2 Guideline: Minimising impact on interface and language bindings
18.4.3 Guideline: Use of incremental approach to revision
18.5 Guidelines on revision of the service interface
18.5.1 Guideline: Buffering unrevised bindings from changes
18.5.2 Guideline: Use of incremental amendments
18.6 Guidelines on revision of language bindings following revision of the service interface
18.6.1 Guideline: Buffering application programs from changes
18.6.2 Guideline: Use of incremental amendments
59 18.7 Guidelines on revision of a language binding following revision of the language
18.7.1 Guideline: Use of new language features
18.7.2 Guideline: Buffering “legacy” application programs from changes
18.7.3 Guideline: Buffering application programs by use of options
60 Annex A (informative) Brief guide to language-independent standards
63 Annex B (informative) Glossary of language-independent terms
76 Bibliography
BSI PD ISO/IEC TR 14369:2018
$215.11