Programming language processors — Test methods — Guidelines for their development and acceptability

This Technical Report type 3 describes a methodology for determining whether a programming language processor possesses the required characteristics stated in the International Standard for the particular programming language for which it is intended.

Processeurs de langage de programmation — Méthodes d'essai — Lignes directrices pour leur élaboration et acceptabilité

General Information

Status
Published
Publication Date
30-Mar-1988
Current Stage
9093 - International Standard confirmed
Completion Date
30-Oct-2013
Ref Project

Buy Standard

Technical report
ISO/TR 9547:1988 - Programming language processors -- Test methods -- Guidelines for their development and acceptability
English language
6 pages
sale 15% off
Preview
sale 15% off
Preview
Technical report
ISO/TR 9547:1988 - Processeurs de langage de programmation -- Méthodes d'essai -- Lignes directrices pour leur élaboration et acceptabilité
French language
6 pages
sale 15% off
Preview
sale 15% off
Preview
Technical report
ISO/TR 9547:1988 - Processeurs de langage de programmation -- Méthodes d'essai -- Lignes directrices pour leur élaboration et acceptabilité
French language
6 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

TECHNICAL REPORT 9547
Published 1988-04-01
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION* MEX,QYHAPOfiHAFl OPTAHM3AlJMfl IlO CTAHflAPTM3A~MM. ORGANISATION INTERNATIONALE DE NORMALISATION
Programming language processors - Test methods -
Guidelines for their development and acceptability
L ignes direc trices pour leur klabora tion et accep tabilit&
Processeurs de langage de programmation - M&hodes d’essai -
IS0 (the International Organization for Standardization) is a worldwide federation of national standards bodies (IS0 member bodies).
The work of preparing International Standards is normally carried out through IS0 technical committees. Each member body
interested in a subject for which a technical committee has been established has the right to be represented on that committee.
International organizations, governmental and non-governmental, in liaison with ISO, also take part in the work.
The main task of IS0 technical committees is to prepare International Standards. In exceptional circumstances a technical committee
may propose the publication of a technical report of one of the following types :
-
type 1, when the necessary support within the technical committee cannot be obtained for the publication of an International
Standard, despite repeated efforts;
-
type 2, when the subject is still under technical development requiring wider exposure;
-
type 3, when a technical committee has collected data of a different kind from that which is normally published as an
International Standard (“state of the art”, for example).
Technical reports are accepted for publication directly by IS0 Council. Technical reports types 1 and 2 are subject to review within
three years of publication, to decide if they can be transformed into International Standards. Technical reports type 3 do not
necessarily have to be reviewed until the data they provide is considered no longer valid or useful.
ISO/TR 9547 was prepared by Technical Committee ISO/TC 97, Information processing systems.
This type 3 Technical Report has been prepared to provide guidelines for those developing test methods for programming languages
and also to aid those developing the programming languages themselves. It should facilitate the preparation of specific test methods
which will help implementors to produce standard-conforming language processors, thereby benefitting end users.
UDC 681.3.068
: 620.1
Ref. No. ISO/TR
9547 : 1988 (E)
Descriptors : data processing, computer programs, programming languages, language processors, tests.
0 International Organization for Standardization, 1988 l
Printed in Switzerland
Price based on 6 pages

---------------------- Page: 1 ----------------------
ISO/TR 9547 : 1988 (El
CONTENTS
3
0 .
INTRODUCTION
3
1 . SCOPE AND FIELD OF APPLICATION
2 DEFINITIONS 3
CONFIGURATION 3
2'1
4
2'2 EXTENSION
4
2'3 IMPLEMENTATION DEFINED
4
2'4 PROCESSOR
4
2'5 TEST
4
2'6 TEST METHOD
4
2-8 2'7 TEST PROGRAM
4
TEST REPORT
4
2'9 TEST SUITE
4
2:lO TEST TOOLS
4
2.11 REQUIRED DOCUMENTS
4
2.12 SUBSET
3 . OBJECT TO BE TESTED
4
4 DESCRIPTION OF TEST METHODS
4'1 TEST SUITE
4'2 TEST TOOLS
4'3 TECHNICAL PROCEDURES
4:3.1 OVERALL SCHEME FOR THE TESTING
4.3.2
RELATED DOCUMENTATION
5
GUIDELINES FOR THE DEVELOPMENT OF THE TEST METHODS
5'1
CONSIDERATION OF EXISTING TEST METHODS
5.2 CRITERIA FOR DESIGN OF TEST SUITES
5.3 TESTABILITY
5'4 LANGUAGE FEATURES NUT COVERED BY THE TEST SUITE
5'5 SUBSET TESTING
5'6 PORTABILITY REQUIREMENTS
5'7 . TEST TOOLS
6 . MAINTENANCE AND REVISION OF TEST SUITES 9
7 l AVAILABILITY 9
8 ACCEPTABILITY OF TEST METHODS 9
8'1 CRITERIA FOR ACCEPTABILITY OF THE TEST METHOD 9
8'2 . REVISION OF THE TEST METHOD 10
2

---------------------- Page: 2 ----------------------
lSO/TR 9547: 1988 (E)
0
. INTRODUCTION
The programming language area is a living topic: new
languages are developed, old ones are revised. In those two
cases, conformity requirements should not be forgotten:
therefore, test considerations should be included in the
development of language standards and their revisions.
The aim of this document is to provide guidelines for the
development of a test method based on a set of test programs and
precise steps that should be taken in order for a test method to
get formal approval from ISO. These guidelines should be read in
conjunction with a given ianguage standard so as to produce a
specific test method for programming language processors.
These guidelines are written for test method developers and
for those who will approve these test methods in ISO. The
availability
of specific test methods will help implementors in
producing standard conforming language processors, thereby
benefiting end users.
When reading these guidelines, it should be borne in mind
that programming language standards have not yet reached a level
of precision and completeness to alluw conformity tests to be
produced for every aspect and feature of a language described in
a progamming language standard. Testing issues are rarely the
primary objective
of standardization committees, and this may
cause problems in applying these guidelines strictly to any given
programming language standard.
1
*. SCOPE AND FIELD OF APPLICATION
These guidelines describe a methodology for determining
whether
a programming language processor possesses the required
characteristics stated in the International Standard for the
particular programming language for which it is iritended,
Assessment of conformity of a language processor can be
carried
out with the “Test Suite Methodology”. Other
methodologies are not excluded but are not described here.
2 . DEFINITIONS
For the purpose of these guidelines, the following terms
apply l
2.1 CONFIGURATION : host and target computers, any operating
system(s) and software used to operate a processor.

---------------------- Page: 3 ----------------------
ISO/TR 9547 : 1988 E)
2.2 EXTENSION : a facility in the implemented language that is
not given in the language standard but that does not cause
ambiguity or contradiction when added to the language
any
standard (although, in some languages, it may serve to lift
a restriction).
2.3 IMPLEMENTATION DEFINED : dependent on the processor but
required by the language standard to be defined and
documented by the implementor.
2.4 PROCESSOR : a compiler, translator or interpreter working
in combination with a configuration.
2.5 TEST : technical operation that consists of the
determination of one or more characteristics of
a given
product, process or service according to a specified
(ISO/IEC Guide 24986)
procedure.
2.6 TEST METHOD : specified technical procedure for performing
a test. (ISO/IEC Guide 24986)
2.7 TEST PROGRAM : a sequence of characters intended to be
submitted to a processor in order to determine whether or
not this processor exhibits a specific instance of a
certain property,
2.8 TEST REPORT : document that presents test results and other
information relevant to a test. (ISO/IEC Guide 2-1986)
2.9 TEST SUITE : a reference set of test programs that is
to assess a processor with a
designed conformity of
language standard.
2.10 TEST TOOLS l
any additional means that can improve the
efficiency, the reliability and the ease of use of the
different phases of testing (e.g. implementation of the
test suite, ensuring integrity,processing of the test
suite, collecting test results, analysis of test results,
producing a test report).
2.11 REQUIRED DOCUMENTS : the set of documents required by the
programming language standard.
2.12 SUBSET : a subset S of programming language L is a
programming language such that every program in S
- is also a program in L and
- has the same meaning in S as it has in L.
3 . OBJECT TO BE TESTED
As a processor only works in combination with a
configuration, some conditions should be taken into account.
3.1 The processor to be tested, including selected options, and
the configuration relevant to the testing should be fully
specified.
4

---------------------- Page: 4 ----------------------
lSO/TR 9547 : 1988 (E)
3.2 A single copy of a processor should be tested on a specific
configuration.
4 . DESCRIPTION OF TEST METHODS
the technical procedure utilizes
In this context a test
suite, test tools and possibly data.
4.1 TEST SUITE
A test suite should be designed to test conformity of
processors by submitting test programs to them. Each test
exercises some rules of the language standard and their
interaction. A test suite should be designed for conformity
testing and not for assessing other aspects of a processor.
The test suite should,
wherever feasible, cover all aspects
of the language standard and investigate implementation issues as
far as conformity is concerned.
The test suite should not be too large: the economical
aspects should be taken into account (e.g., relative costs of
conformity testing versus development cost of an implementation).
The test suite should be written in such a way that it can
be readily maintained under version control and subject to a
review procedure.
The test suite should be designed so as to take into account
the possible levels or options specified in the language
standard. Thus the test suite should be modular.
The test programs should, as far as possible, be independent
of each other, and their sequence of execution should not
influence each other’s results. Where this is not possible or
desirable, due to some aspects of language design, the
relationship between any tests (or source code modules) which
depend upon each other should be clearly documented.
Each test program should have a single objective related to
standard’s requirements. When this is not practical results
the
be readily identifiable. Test
of individual objectives must
should produce a result in accordance with the stated
programs
objectives.
The test suite should contain tes
...

RAPPORT TECHNIQUE 9547
Publié 1988-04-01
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION. MEXAYHAPOAHAH OPTAHM3A~MFI n0 CTAHAAPTM3A~MM. ORGANISATION INTERNATIONALE DE NORMALISATION
Processeurs de langage de programmation - Méthodes
- Lignes directrices pour leur élaboration et
d’essai
acceptabilité
Programming language processors - Test methods - Guidelines for their developmen t and accep tability
L’ISO (Organisation internationale de normalisation) est une fédération mondiale d’organismes nationaux de normalisation (comités
membres de I’ISO). L’élaboration des Normes internationales est normalement confiée aux comités techniques de I’ISO. Chaque
comité membre intéressé par une étude a le droit de faire partie du comité technique créé à cet effet. Les organisations
internationales, gouvernementales et non gouvernementales, en liaison avec I’ISO participent également aux travaux.
La tâche principale des comités techniques de I’ISO est d’élaborer les Normes internationales. Exceptionnellement, un comité
technique peut proposer la publication d’un rapport technique de l’un des types suivants:
- type 1 : lorsque, en dépit de maints efforts au sein d’un comité technique, l’accord requis ne peut être réalisé en faveur de la
publication d’une Norme internationale;
-
type 2: lorsque le sujet en question est encore en cours de développement technique et requiert une plus grande expérience;
-
type 3: lorsqu’un comité technique a réuni des données de nature différente de celles qui sont normalement publiées comme
Normes internationales (ceci pouvant comprendre des informations sur l’état de la technique, par exemple).
La publication des rapports techniques dépend directement de l’acceptation du Conseil de I’ISO. Les rapports techniques des types 1
et 2 font l’objet d’un nouvel examen trois ans au plus tard après leur publication afin de décider éventuellement de leur transformation
en Normes internationales. Les rapports techniques du type 3 ne doivent pas nécessairement être révisés avant que les données
fournies ne soient plus jugées valables ou utiles.
L’ISO/TR 9547 a été préparé par le comité technique ISO/TC 97, Systèmes de traitement de l’information.
Le présent rapport technique du type 3 a été élaboré afin de fournir des lignes directrices aux concepteurs des méthodes d’essai pour
les langages de programmation et afin d’aider également les concepteurs des langages de programmation proprement dits. II devrait
faciliter la préparation de méthodes d’essai spécifiques qui aideront les réalisateurs à fabriquer des processeurs de langage conformes
à la norme, dont bénéficiera l’utilisateur final.
CDU 681.3.068 : 620.1 Réf. no ISO/TR 9547 : 1988 (F)
Descripteurs : traitement de l’information, programme de calculateur,
langage de programmation, processeur de langage, essai.
0 Organisation internationale de normalisation, 1988 l
Imprimé en Suisse Prix basé sur 6 pages

---------------------- Page: 1 ----------------------
ISO/TR 9547 : 1988 (FI
Table des matières
3
Introduction
0
3
Objet et domaine d'application
1
Définitions
2 3
Configuration 3
2.1
2.2 Extension 4
4
2.3 Défini par la réalisation
4
2.4 Processeur
4
Essai
2.5
4
2.6 Méthode d'essai
4
Programme de test
2 7
4
2'8 Rapport de test
0
4
Jeu de test
2 9
4
2'10 Outils de test
4
2'11 Documents requis
4
2'12 Sous-ensemble
0
3 Objet soumis au test 4
4 Description des méthodes d'essai
Jeu de test
4.1
Outils de test
4.2
Procédures techniques
4 l 3
4.3.1 Plan global de test
4.3.2 Documents requis
,.
5 Lignes directrices pour l'élaboration des méthodes d'essai 7
Examen des méthodes d'essai existantes 7
5.1
Critères de conception des jeux de test 7
5.2
Faisabilité de l'essai 8
5 3
5'4 Caractéristiques du langage non couverts par le jeu de test
8
5'5 Test des sous-ensembles 9
l
Exigences de portabilité 9
5 6
9
5'7 Outils de test
l
6 Maintenance et révision des jeux de test
9
7 Disponibilité
9
8 Acceptabilité des méthodes d'essai
9
Critères d'acceptation de la méthode d'essai 9
8.1
Révision de la méthode d'essai 10
8.2
2

---------------------- Page: 2 ----------------------
ISO/TR 9547 : 1988 (F)
0 Introduction
Le domaine des langages de programmation est un sujet en évolution
I
constante : on met au point de nouveaux langages, on révise les
anciens. Dans les deux cas, il ne faut pas oublier les exigences de
conformité ; aussi faut-il étudier le problème des tests au moment de
l'élaboration et de la révision des normes de langages.
L'objectif du présent document est de donner des lignes directrices
pour l'élaboration d'une méthode d'essai basée sur un jeu de
programmes de test et d'étapes précises devant être suivies pour
qu'une méthode d'essai soit formellement approuvée par 1'ISO. Il
convient de lire ces lignes directrices conjointement à la norme d'un
langage donné afin d'élaborer une méthode spécifique pour des
processeurs de langages de programmation.
Ces lignes directrices sont écrites à l'usage des concepteurs de
méthodes d'essai et de ceux qui les approuveront au sein de 1'ISO. La
disponibilité de méthodes d'essai spécifiques aidera les réalisateurs
à fabriquer des processeurs de langage conformes à la norme, ce qui
profitera de ce fait à l'utilisateur final.
En lisant ces lignes directrices, il ne faut surtout pas oublier que
les normes des langages de programmation n'ont pas encore atteint un
.
niveau de précision et de complétude permettant l'élaboration de tests
de conformité pour chacun des aspects et caractétistiques d'un langage
décrit dans une norme de langage de programmation.
Les questions relatives aux essais sont rarement l'objectif principal
des comités de normalisation, ce qui peut poser des problèmes pour
l'application rigoureuse de ces lignes directrices à une quelconque
norme donnée de langage de programmation.
1 Objet et domaine d'application
Les présentes lignes directrices décrivent une méthodologie permettant
de déterminer si un processeur conçu pour un langage de programmation
particulier possède les caractéristiques requises telles au'elles sont
I
indiquées dans la Norme internationale de ce langage de programmation.
L'évaluation de la conformité d'un processeur de langage peut être
"Méthodologie de Jeu de test". On n'exclut pas
faite au moyen de la
l'utilisation d'autres méthodologies, mais celles-ci ne sont pas
traitées dans le présent document.
2 Définitions
Pour les besoins des présentes lignes directrices, les termes suivants
s'appliquent :
2.1 Configuration : Ordinateurs hôte et cible, avec tout (ou tous)
système(s) d'exploitation et logiciels utilisés pour faire fonctionner
un processeur.

---------------------- Page: 3 ----------------------
ISO/TR 9547 : 1988 (FI
2.2 Extension : Possibilité du langage qui ne figure pas dans la
norme du langage, mais qui n'engendre ni d'ambiguïté ni de
contradiction lorsqu'elle est ajoutée à la norme du langage (bien que,
dans quelques langages, elle puisse servir à lever une restriction).
2.3 Défini par la réalisation : Dépendant du processeur, mais
devant selon la norme du langage, être défini et documenté par les
réalisateurs.
traducteur on interprète travaillant
2.4 Processeur : Compilateur,
en association avec une configuration.
Opération technique qui consiste à déterminer une ou
2.5 Essai :
plusieurs caractéristiques d'un produit, processus ou service donné,
selon un mode opératoire spécifié. (Guide ISO/CEI No 2 - 1986).
2.6 Méthode d'essai : Procédure technique définie pour la
réalisation d'un essai. (Guide ISO/CEI No 2 - 1986).
2.7 Programme de test :Suite de caractères destinée à être soumise
à un processeur afin de déterminer si oui ou non ce processeur
présente un cas spécifique d'une propriété déterminée.
2.8 Rapport d'essai : Document qui présente les résultats d'un
essai et d'autres informations s'y rapportant. (Guide ISO/CEI No 2 -
1986).
Un ensemble de programmes de tests de référence
2.9 Jeu de test :
destiné à évaluer la conformité d'un processeur à la norme d'un
langage.
2.10 Outils de test : Tout moyen supplémentaire permettant
la fiabilité et la facilité d'emploi des
d'améliorer l'efficacité,
différents stades des essais (par exemple, mise en oeuvre du jeu de
test, garantie de l'intégrité, du traitement du jeu de test, collecte
des résultats des essais, analyse des résultats des essais, édition du
rapport d'essai).
2.11 Documents requis : Ensemble de documents exigés par la norme
du langage de programmation.
2.12 Sous-ensemble : Un sous-ensemble S du langage de
programmation L est un langage de programmation tel que tout programme
en S
- est également un programme de L, et
- a le même sens en S qu'en L.
3 Objet soumis au test
Etant donné qu'un processeur ne fonctionne qu'en association avec une
configuration, quelques conditions doivent être respectées :
3.1 Spécification intégrale du processeur soumis au test, y compris
les options sélectionnées, et de la configuration adoptée pour
l'essai.
4

---------------------- Page: 4 ----------------------
ISO/TR 9547 : 1988 (FI
3.2 Test d'une seule et même copie d'un processeur sur une
configuration déterminée.
4 Description des méthodes d’essai
Dans le présent contexte, la procédure technique utilise un jeu de
test, des outils de test et, éventuellement des données.
4.1 Jeu de test
IJn jeu de test doit être conçu pour contrôler la conformité des
processeurs en les soumettant au programmes de test. Chaque essai
porte sur quelques lignes directrices de la norme du langage et leur
interaction. Un jeu de test doit être conçu pour tester la conformité
et non pour évalier d'autres caractéristiques d'un processeur.
Le jeu de test doit, si possible, couvrir tous les aspects de la norme
du langage et examiner les problèmes de mise en oeuvre touchant à la
conformité.
Le jeu de test ne doit pas être trop volumineux : on doit tenir compte
des aspects économiques (par exemple, coûts relatifs du contrôle de la
conformité par rapport aux coûts de développement d'une mise en
oeuvre).
Le jeu de test doit être écrit de manière à pouvoir être révisé
facilement sous un système de gestion de version et soumis à une
procédure de révision.
Le jeu de test doit être conçu de façon à prendre en compte tous les
niveaux ou options possibles spécifiées dans la norme du langage.
le jeu de test doit-il être modulaire.
Ainsi,
Les programmes de test doivent être, dans la mesure du possible,
independants les uns des autres et l'ordre d'exécution des programmes
de test ne doit pas influer sur les résultats des uns ou des autres.
raison de
Là où cela n'est pas possible ou pas souhaitable, en
1 c onvient de
certains aspects dûs à la conception du langage, i
(ou les
spécifier et documenter les relations entre tous les tests
dépendent les uns des autres.
modules du code source) qui
Chaque programme de test doit avoir un seul objectif en rapport avec
les exigences de la norme. Lorsque cela n'est pas pratique, il faut
pouvoir identifier facilement les résultats des objectifs
particuliers. Les programmes de test doivent fournir un résultat
conformément aux objectifs stipulés.
Le jeu de tes
...

RAPPORT TECHNIQUE 9547
Publié 1988-04-01
INTERNATIONAL ORGANIZATION FOR STANDARDIZATION. MEXAYHAPOAHAH OPTAHM3A~MFI n0 CTAHAAPTM3A~MM. ORGANISATION INTERNATIONALE DE NORMALISATION
Processeurs de langage de programmation - Méthodes
- Lignes directrices pour leur élaboration et
d’essai
acceptabilité
Programming language processors - Test methods - Guidelines for their developmen t and accep tability
L’ISO (Organisation internationale de normalisation) est une fédération mondiale d’organismes nationaux de normalisation (comités
membres de I’ISO). L’élaboration des Normes internationales est normalement confiée aux comités techniques de I’ISO. Chaque
comité membre intéressé par une étude a le droit de faire partie du comité technique créé à cet effet. Les organisations
internationales, gouvernementales et non gouvernementales, en liaison avec I’ISO participent également aux travaux.
La tâche principale des comités techniques de I’ISO est d’élaborer les Normes internationales. Exceptionnellement, un comité
technique peut proposer la publication d’un rapport technique de l’un des types suivants:
- type 1 : lorsque, en dépit de maints efforts au sein d’un comité technique, l’accord requis ne peut être réalisé en faveur de la
publication d’une Norme internationale;
-
type 2: lorsque le sujet en question est encore en cours de développement technique et requiert une plus grande expérience;
-
type 3: lorsqu’un comité technique a réuni des données de nature différente de celles qui sont normalement publiées comme
Normes internationales (ceci pouvant comprendre des informations sur l’état de la technique, par exemple).
La publication des rapports techniques dépend directement de l’acceptation du Conseil de I’ISO. Les rapports techniques des types 1
et 2 font l’objet d’un nouvel examen trois ans au plus tard après leur publication afin de décider éventuellement de leur transformation
en Normes internationales. Les rapports techniques du type 3 ne doivent pas nécessairement être révisés avant que les données
fournies ne soient plus jugées valables ou utiles.
L’ISO/TR 9547 a été préparé par le comité technique ISO/TC 97, Systèmes de traitement de l’information.
Le présent rapport technique du type 3 a été élaboré afin de fournir des lignes directrices aux concepteurs des méthodes d’essai pour
les langages de programmation et afin d’aider également les concepteurs des langages de programmation proprement dits. II devrait
faciliter la préparation de méthodes d’essai spécifiques qui aideront les réalisateurs à fabriquer des processeurs de langage conformes
à la norme, dont bénéficiera l’utilisateur final.
CDU 681.3.068 : 620.1 Réf. no ISO/TR 9547 : 1988 (F)
Descripteurs : traitement de l’information, programme de calculateur,
langage de programmation, processeur de langage, essai.
0 Organisation internationale de normalisation, 1988 l
Imprimé en Suisse Prix basé sur 6 pages

---------------------- Page: 1 ----------------------
ISO/TR 9547 : 1988 (FI
Table des matières
3
Introduction
0
3
Objet et domaine d'application
1
Définitions
2 3
Configuration 3
2.1
2.2 Extension 4
4
2.3 Défini par la réalisation
4
2.4 Processeur
4
Essai
2.5
4
2.6 Méthode d'essai
4
Programme de test
2 7
4
2'8 Rapport de test
0
4
Jeu de test
2 9
4
2'10 Outils de test
4
2'11 Documents requis
4
2'12 Sous-ensemble
0
3 Objet soumis au test 4
4 Description des méthodes d'essai
Jeu de test
4.1
Outils de test
4.2
Procédures techniques
4 l 3
4.3.1 Plan global de test
4.3.2 Documents requis
,.
5 Lignes directrices pour l'élaboration des méthodes d'essai 7
Examen des méthodes d'essai existantes 7
5.1
Critères de conception des jeux de test 7
5.2
Faisabilité de l'essai 8
5 3
5'4 Caractéristiques du langage non couverts par le jeu de test
8
5'5 Test des sous-ensembles 9
l
Exigences de portabilité 9
5 6
9
5'7 Outils de test
l
6 Maintenance et révision des jeux de test
9
7 Disponibilité
9
8 Acceptabilité des méthodes d'essai
9
Critères d'acceptation de la méthode d'essai 9
8.1
Révision de la méthode d'essai 10
8.2
2

---------------------- Page: 2 ----------------------
ISO/TR 9547 : 1988 (F)
0 Introduction
Le domaine des langages de programmation est un sujet en évolution
I
constante : on met au point de nouveaux langages, on révise les
anciens. Dans les deux cas, il ne faut pas oublier les exigences de
conformité ; aussi faut-il étudier le problème des tests au moment de
l'élaboration et de la révision des normes de langages.
L'objectif du présent document est de donner des lignes directrices
pour l'élaboration d'une méthode d'essai basée sur un jeu de
programmes de test et d'étapes précises devant être suivies pour
qu'une méthode d'essai soit formellement approuvée par 1'ISO. Il
convient de lire ces lignes directrices conjointement à la norme d'un
langage donné afin d'élaborer une méthode spécifique pour des
processeurs de langages de programmation.
Ces lignes directrices sont écrites à l'usage des concepteurs de
méthodes d'essai et de ceux qui les approuveront au sein de 1'ISO. La
disponibilité de méthodes d'essai spécifiques aidera les réalisateurs
à fabriquer des processeurs de langage conformes à la norme, ce qui
profitera de ce fait à l'utilisateur final.
En lisant ces lignes directrices, il ne faut surtout pas oublier que
les normes des langages de programmation n'ont pas encore atteint un
.
niveau de précision et de complétude permettant l'élaboration de tests
de conformité pour chacun des aspects et caractétistiques d'un langage
décrit dans une norme de langage de programmation.
Les questions relatives aux essais sont rarement l'objectif principal
des comités de normalisation, ce qui peut poser des problèmes pour
l'application rigoureuse de ces lignes directrices à une quelconque
norme donnée de langage de programmation.
1 Objet et domaine d'application
Les présentes lignes directrices décrivent une méthodologie permettant
de déterminer si un processeur conçu pour un langage de programmation
particulier possède les caractéristiques requises telles au'elles sont
I
indiquées dans la Norme internationale de ce langage de programmation.
L'évaluation de la conformité d'un processeur de langage peut être
"Méthodologie de Jeu de test". On n'exclut pas
faite au moyen de la
l'utilisation d'autres méthodologies, mais celles-ci ne sont pas
traitées dans le présent document.
2 Définitions
Pour les besoins des présentes lignes directrices, les termes suivants
s'appliquent :
2.1 Configuration : Ordinateurs hôte et cible, avec tout (ou tous)
système(s) d'exploitation et logiciels utilisés pour faire fonctionner
un processeur.

---------------------- Page: 3 ----------------------
ISO/TR 9547 : 1988 (FI
2.2 Extension : Possibilité du langage qui ne figure pas dans la
norme du langage, mais qui n'engendre ni d'ambiguïté ni de
contradiction lorsqu'elle est ajoutée à la norme du langage (bien que,
dans quelques langages, elle puisse servir à lever une restriction).
2.3 Défini par la réalisation : Dépendant du processeur, mais
devant selon la norme du langage, être défini et documenté par les
réalisateurs.
traducteur on interprète travaillant
2.4 Processeur : Compilateur,
en association avec une configuration.
Opération technique qui consiste à déterminer une ou
2.5 Essai :
plusieurs caractéristiques d'un produit, processus ou service donné,
selon un mode opératoire spécifié. (Guide ISO/CEI No 2 - 1986).
2.6 Méthode d'essai : Procédure technique définie pour la
réalisation d'un essai. (Guide ISO/CEI No 2 - 1986).
2.7 Programme de test :Suite de caractères destinée à être soumise
à un processeur afin de déterminer si oui ou non ce processeur
présente un cas spécifique d'une propriété déterminée.
2.8 Rapport d'essai : Document qui présente les résultats d'un
essai et d'autres informations s'y rapportant. (Guide ISO/CEI No 2 -
1986).
Un ensemble de programmes de tests de référence
2.9 Jeu de test :
destiné à évaluer la conformité d'un processeur à la norme d'un
langage.
2.10 Outils de test : Tout moyen supplémentaire permettant
la fiabilité et la facilité d'emploi des
d'améliorer l'efficacité,
différents stades des essais (par exemple, mise en oeuvre du jeu de
test, garantie de l'intégrité, du traitement du jeu de test, collecte
des résultats des essais, analyse des résultats des essais, édition du
rapport d'essai).
2.11 Documents requis : Ensemble de documents exigés par la norme
du langage de programmation.
2.12 Sous-ensemble : Un sous-ensemble S du langage de
programmation L est un langage de programmation tel que tout programme
en S
- est également un programme de L, et
- a le même sens en S qu'en L.
3 Objet soumis au test
Etant donné qu'un processeur ne fonctionne qu'en association avec une
configuration, quelques conditions doivent être respectées :
3.1 Spécification intégrale du processeur soumis au test, y compris
les options sélectionnées, et de la configuration adoptée pour
l'essai.
4

---------------------- Page: 4 ----------------------
ISO/TR 9547 : 1988 (FI
3.2 Test d'une seule et même copie d'un processeur sur une
configuration déterminée.
4 Description des méthodes d’essai
Dans le présent contexte, la procédure technique utilise un jeu de
test, des outils de test et, éventuellement des données.
4.1 Jeu de test
IJn jeu de test doit être conçu pour contrôler la conformité des
processeurs en les soumettant au programmes de test. Chaque essai
porte sur quelques lignes directrices de la norme du langage et leur
interaction. Un jeu de test doit être conçu pour tester la conformité
et non pour évalier d'autres caractéristiques d'un processeur.
Le jeu de test doit, si possible, couvrir tous les aspects de la norme
du langage et examiner les problèmes de mise en oeuvre touchant à la
conformité.
Le jeu de test ne doit pas être trop volumineux : on doit tenir compte
des aspects économiques (par exemple, coûts relatifs du contrôle de la
conformité par rapport aux coûts de développement d'une mise en
oeuvre).
Le jeu de test doit être écrit de manière à pouvoir être révisé
facilement sous un système de gestion de version et soumis à une
procédure de révision.
Le jeu de test doit être conçu de façon à prendre en compte tous les
niveaux ou options possibles spécifiées dans la norme du langage.
le jeu de test doit-il être modulaire.
Ainsi,
Les programmes de test doivent être, dans la mesure du possible,
independants les uns des autres et l'ordre d'exécution des programmes
de test ne doit pas influer sur les résultats des uns ou des autres.
raison de
Là où cela n'est pas possible ou pas souhaitable, en
1 c onvient de
certains aspects dûs à la conception du langage, i
(ou les
spécifier et documenter les relations entre tous les tests
dépendent les uns des autres.
modules du code source) qui
Chaque programme de test doit avoir un seul objectif en rapport avec
les exigences de la norme. Lorsque cela n'est pas pratique, il faut
pouvoir identifier facilement les résultats des objectifs
particuliers. Les programmes de test doivent fournir un résultat
conformément aux objectifs stipulés.
Le jeu de tes
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.