• Aucun résultat trouvé

This report contains procedural language compiler features considered important for comparative analysis. These features are identified in a form expressly for inclusion in the Three Step Method for Software Evaluation

N/A
N/A
Protected

Academic year: 2022

Partager "This report contains procedural language compiler features considered important for comparative analysis. These features are identified in a form expressly for inclusion in the Three Step Method for Software Evaluation "

Copied!
64
0
0

Texte intégral

(1)

ESD-TR-66-113

ESD RECORD COPY

\<ti :'•

SCIENTIFIC & TE'' '^ DIVISION (ESTI1 Bl'»WOt»»G \i\\

MTR - 197

ESD ACCESSION 'LISToiume n ESTI Call No. AL 5 5953

Copy No.

./__ - -JL

CT»

A METHOD FOR THE EVALUATION OF SOFTWARE VOLUME n

Procedural Language Compilers — Particularly COBOL and FORTRAN

APRIL 1967

A. E. Budd

Prepared for

EDP EQUIPMENT OFFICE

ELECTRONIC SYSTEMS DIVISION AIR FORCE SYSTEMS COMMAND UNITED STATES AIR FORCE L. G. Hanscom Field, Bedford, Massachusetts

Distribution of this document is unlimited.

Project 8510

Prepared by

THE MITRE CORPORATION Bedford, Massachusetts

(2)

This document may be reproduced to satisfy official needs of U.S. Government agencies. No other repro- duction authorized except with permission of Hq.

Electronic Systems Division, ATTN: ESTI.

When US Government drawings, specifications, or other data are used for any purpose other than a definitely related government procurement operation, the government thereby incurs no responsibility nor any obligation whatsoever; and the fact that the government may have formulated, furnished, or in any way supplied the said drawings, specifications, or other data is not to be regarded by implication or otherwise, as in any manner licensing the holder or any other person or corporation, or conveying any rights or permission to manufacture, use, or sell any patented invention that may in any way be related thereto.

Do not return this copy. Retain or destroy.

(3)

ABSTRACT

This report contains procedural language compiler features considered important for comparative analysis. These features are identified in a form expressly for inclusion in the Three Step Method for Software Evaluation

(Volume 1 of this series) under Category ONE: Procedural Language Com- pilers — Particularly COBOL and FORTRAN.

REVIEW AND APPROVAL

This technical report has been reviewed and is approved.

S. P. STEFFE5

M

I Colonel, USAF

V Chief, EDP Equipment Office

in

(4)

TABLE OF CONTENTS

SECTION ONE SECTION TWO

SECTION THREE

Pa£e INTRODUCTION 1 MATRIX OF FEATURES 4 I. SOURCE LANGUAGE ORIENTED FEATURES 5 II. LOGIC AND CONTROL OF INPUT/OUTPUT

DEVICES 7 III. COMPILER FEATURES 9 IV. PROGRAMMER ERROR DIAGNOSTICS 12

V. HARD-COPY OUTPUT AND FACILITY

DOCUMENTATION 14 VI. MANUAL AND AUTOMATIC OPERATIONS 16 VII. FACILITY ADMINISTRATION 18 DESCRIPTION OF PROCEDURAL LANGUAGE COMPILER

FEATURES 19 I. SOURCE LANGUAGE ORIENTED FEATURES 19 II. LOGIC AND CONTROL OF INPUT/OUTPUT

DEVICES 22 III. COMPILER FEATURES 25 IV. PROGRAMMER ERROR DIAGNOSTICS 31

V. HARD-COPY OUTPUT AND FACILITY

DOCUMENTATION 34 VI. MANUAL AND AUTOMATIC OPERATIONS 36 VII. FACILITY ADMINISTRATION 38

\

(5)

TABLE OF CONTENTS (CONCLUDED)

SECTION FOUR

SECTION FIVE

QUESTIONNAIRE I. INTRODUCTION

II. FUNCTIONAL DIVISIONS COMPILER BENCHMARK PROGRAMS

I. INTRODUCTION

II. GENERAL REQUIREMENTS III. TEST PROGRAM FEATURES

Page 41 41 41 52 52 52 53

vi

(6)

SECTION ONE INTRODUCTION

This report contains the important features of procedural lan- guage compilers, particularly COBOL and FORTRAN. The compiler fea- tures identified are those which have been known to vary significantly from vendor to vendor, and are easily determined by appropriate ques- tioning or actual demonstration. These features are a composite from which the evaluator, in conjunction with the user, may select provid- ing they are consistent with the system requirements. The evaluator would first select those features which are of significant importance to the user. This list would be part of the basic system requirements of the evaluation team in which one vendor's answer or result for one feature would form one entry. This would provide a convenient method of comparing the features of one vendor as well as comparing the ven- dor's response to any one feature.

The evaluator must work with the user to determine his specific needs. For instance, the user may require emphasis on compilation since the major activity is to develop experimental programs which wilx be executed only a few times and discarded. On the other hand, his needs may require a very efficient object code from the compiler because once the program has been checked out it will be executed many times per day for several years with only slight modifications. Which- ever the case may be, these needs must be determined through the user so that the resulting system selection will meet his specific require- ments.

Any evaluation must begin with a precise identification of the user requirements. Failure to determine user requirements with suffi- cient precision can lead to identification of a grossly unsuitable system as the optimal one. Two types of user requirements mu'st be identified. First, features of possible systems must be examined to determine their utility to the user; in the initial stages of the evaluation process this utility need not take the form of a precise weight but need only be determined sufficiently to select the subset of possible features to be analyzed during the evaluation process.

Once the proper group of features has been selected, a standard of quality must be set for each one. This requires that a minimum level of performance regarding each feature be established. Obviously, instances will occur in which the presence or absence of the feature

(7)

is the only matter of concern, but in the case of certain features particularly amenable to quantitative measurement a minimum perform- ance level together with some valuation on above minimum performance must be established.

The features are presented in three sections. The first of these, SECTION TWO, contains summary titles of each feature in the matrix form required for the three step procedure described in Volume

I of this series. The next section, SECTION THREE, contains a descrip- tion of what is meant by each summary titled feature, which measures of software capability are affected by this feature and, where neces- sary, further explanation indicating what aspects are especially u»eful to an EDP installation or specific application. The last section, SECTION FOUR, contains a questionnaire which may be used by evaluator personnel to determine what important features are prevalent relative to vendor's COBOL or FORTRAN compilers.

It should be remembered that these features and questions are a composite and therefore, only those features or questions deemed impor- tant relative to the specific application or installation under con- sideration should be selected.

Each section is presented in the following seven groups:

I. Source Language Oriented Features - those relating primarily to characteristics.

II. Logic and Control of Input/Output Devices - features referring specifically to the control of input/output devices and associated program logic (buffer control, device assignment, etc.).

III. Compiler Features - features of the processor (i.e. the implementation of the language) rather than the lan- guage itself.

IV. Programmer Error Diagnostics - features relating to the facilities for error detection.

V. Hard-Copy Output and Facility Documentation - character- istics relating to the nature and frequency of documents produced by the compiler system (listings, error reports, etc.) as well as to available documentation about the processor and the language.

VI. Manual and Automatic Operations - compiler and object

system characteristics pertaining to running the compiler, updating to produce new compiler versions, etc.

(8)

VII. Facility Administration - matters pertaining to the administration of a facility using the software package in question as well as those not conveniently included under any other category.

(9)

SECTION TWO MATRIX OF FEATURES

The COBOL language is oriented toward business data-processing problems which involve manipulation of files of data. Business pro- blems are represented by a relatively small amount of algebraic and

logical processing. Instead, considerable emphasis is placed on manipulation of large files of basically similar records. The alge- braic compilers used in scientific calculation (FORTRAN, ALGOL, etc.) require emphasis on the procedures involved in a complex mathematical problem using numerical approximation, complicated logical structures, etc. In fact, in FORTRAN, all calculations at the highest level are performed on floating point numbers or integers each requiring a full word in word organized machines. Any data packing must be performed at the machine language level. On the other hand, in COBOL the source

language level provides the means to structure data items in records and working storage in a very flexible way. Furthermore, there are rewards in program running time for the programmer who carefully con- siders different methods of structuring the items in the DATA DIVISION and WORKING STORAGE. To do this he should know the word lengths and other unique features of this particular computer hardware, but he

implements his knowledge at the source language level rather than at the machiie language level. These differences require that features of COBOL will exhibit emphasis mainly in the description and manipula- tions of (1) data items, and (2) input-output record handling.

Each feature designated as important for comparative compiler analysis has been identified and placed in this section with the for- mat appropriate for inclusion in the three step procedure described in ESD-TR-66-113, Volume I. Features which reference COBOL are ones which are applicable only to COBOL; similarly, FORTRAN referenced features apply only to FORTRAN. Those having no language reference apply to COBOL, FORTRAN and other procedural language compilers.

The character "X" has been used to show which measures of soft- ware capability are affected by the features. It is apparent that any one feature may, in some esoteric way, affect each and every mea- sure of software capability; however, an "X" has been placed under those measures which significantly affect the feature in question.

The user-evaluator team must determine what measures are of particular importance to them, in addition to deciding whether each measure will be affected favorably or unfavorably (and to what degree) according to the system.requirements. This will establish ground rules such that proposals may be evaluated relative to preestablished specifica- tions appropriately adjusted to reflect characteristics of the appli- cation.

(10)

ONINIVHI "

MOixviNawnDoa

30N3aN3d3(INI X X X X

N0IIN3AH3XNI 30NVNZINIVW AiisNvnnwis

Ainiaixaii HIMO^O X

aovaois AHVCINOOSS

AW0N0D3 iDnacrad X X

Noixvznun o/i X X

Nonnoaxa X

NOIlVlIdWOD X X

inosoaHO X X

ONIWWTODOHCI X X X X X X

<

CO

cu o d

CO X> CO CO CU

cu 0) d cu < U

CO w ;H •H U o U CU

U

a

H / W u 4J i-l •H 3 o CM

M

/ I

•i-l 3 4-1 4J 4J C4-I

!=>

8

Si

.-I o i—1 a" CO CO •H

% 1—1

5

fa

/ s

cr3 1 cj

£

4-1 3 fa CU 4-1 c Q

a

o CO •«». /

/ s

ta r!| fa CO a CO CD E <D -a I-I 1-1 CU CO •H

j fa u <u cu

A

i-l CO > X!

1

w o / Q u bo CO a XI •i-l cu

/ I

to M CO 3 H M H | a CO CT 3 X) 3

z / 5a H 60 <U 3 4J w M

Cd O / w 3 J3 4J 0) XI co

/ M <# CO 4J CO N H 4-1 JJ

/ . « J O 4) •H CO CO \^. o 3

/ ^ O a, u-> fa CO 4J •3 <j 2 CU

/ S3

w M cu CJ CO a) vo cr> r-l X) Q CO 3 CO CM H CO e

s /. *s

1*5 o Q H 00 i-i CO N 4-1 OS cu 4J

«5 5! 3 CO

s

O X) CO O (4 CO

/ Si

/5

o H OS

8

<u CO O 3

a d o

•H

•H o

4J

CU 4J CO

s 1

o fa

<

4J 3

CO 4J CO

/ o / ^ / J

s

O fa

3

3 o

3

•H 4J •i-l XJ o <u 53 co

< fa a)

E^

<!

(Li OS w <0 C H 0)

X>

W

XI < H

<3

14-1 o i i |

/ d 1 O

g

•J 4J 0) r-l 1 1 i i CO 2 z z

/ •*£

2

Q & a) CO CO 4-1 <E 2 J

/ Q* 55 o o 3 r-l J hJ J •J CJ PS CM

1 & W <! CO M cr •i-l o O o o cu fcH fcH fa

/ Q >J 3 cu CO pa PQ pq CQ M-l Cd cd CC

/ U M

H

o •a > o

5

O O <4-l O o o

/ a

fa

5

o o m H CO < <! u u U CJ w fa fa fa

/ fa u u < « o .-3 w fa o X M ^ w iNawa^inba^

fa

CJ

s

(11)

ONINIVHX

noiiviNaNnooa

3DN3aN3d3dNI X

NOIlN3AaaiNI 30NVN3XNIVW

AiiaNvnnwis

AXI1I31X333 HXM02D

| 3DVH0XS AHVCINOD3S

AWONOD3

xanao^d

X

Noixvznixn o/i

i i

1

NOIXnD3X3 1I0IXV3IJK03

xnoxoaHo

ONIWWVHOOHd X

co (U o

a

01 l-l cu c

CO w >-i y-i 0

w OS H M-H •l-l

s

<: M ••-I CO

CO

K

l-l M Q •r4 >

<: b

S3

4-1 0

g

o CO P-. < / •H •H g OH u

•J fa U i-l 4-1 1

§

w o / H TJ

c

01

1

1

W

/ « ^N / W TD / M 01

c

CO 6

4-1 01

1

CJ / PS 3

/ O G 4-1 CO a

4-1

/ >• •H a. CO

/ d

u ?*,

/o

z 1

a u .a CJ CO u c 01

/ < CJ H

z

a D

/8

M H oS O J w CO cr 01

/ l"J 0*

UH BS

o

a

fa

/ l-J 1 o OS < i 1

/ 9

Q Z <

O tn

CO

i 1 z

/ Q

3

H H

/ w M J " OS OS

/ «

OH O 1—1 O O

s

PQ En fa

/ as o O

/ p* cj U . •

•J S3

XNawaraint)3H

z UJ

CJ -J

H^ H

H d.

< g

a o

j u

<

S3

UJ

<

w r i Pi CO

< z E* <

fa o K-l

CO

S3

OS s

o

5

fa w

Q u o

O QS EC OH H W

2

W

fa g

W O

H CO >

w o 0-

w ! 1

2 UJ rr f-

—H <C

(12)

DNINIVHI

noiiviNawnooa

30N3dN3d3(INI N0IIN3Ay3XNI 3DNVH3INIVW AXISNVXllTHIS X

X X X

Ainiaix3i3 HiMoyo X

3DVHOXS AHVCIN0D3S

AWON003 iDnaoad X X X X

Noixvznixn o/i X X X X X X X X 1

NOIXnD3X3 X X X X X X

HOIXVlIdWOD XnO>D3H0

ONiwwvaoo^d X X

co

CO c

01 o

i—i •M

CO w JH •H 4-1

u

s

3 1

H •M

59

fa

O H

CO 01

i-H 4-J

o

00 c o

M

co u o

o

M

i

o CO fa < 4-1 O •H fa CO fa 3 M •H 00 c •H •1-1 o C iM 4-1 ;>•. w u u co cu c

,_} r 1 O M M u > CO c •H "O

i

•H 00 c ^^ M o y 01 4-1 01 c •H ?> M CO u 01 c o 01 M M •H cu o 4-1 3 O •0 cu CO

55 / w 4-1 CM fa M tu •H 3 > fa Q

/ fa w •H O co 01 4-1 U CU .-1

/ ou )-l o ?s CJ cfl c a O

/ M 3 60 ^**. 4J 0) •M 4-1 o ""-•-. CO

/ >* hJ > c M •M u > 9 u o M ^.

/ i

,1 f-T- J^J o w fa Q H Z H •1-1 •a 60 c •H CM M 01 CM o •H o u ^ a •H > CU Q O at CJ a. e o •o 4-1 cu "^^ i—i c •H 00 C < CO 3

/CJ) ;z> n2 o ;=> CO CM 60 fa N—. CO 0 ;>-,

/< CJ H U fa 01 3 c o M c > r~< e CO

/ 8

H OJ o Q P H fa pq •1-1 H CM o ^. M CM o •H 4-1 CO 01 fa CC fa i- cu C

/ i

r? <; <1 *-« z o CO 3 CO 3 CM 01 c M O CO C t 1 < CJ •H H CO c 3 0 1 -H 4-1

/ l-J fa fa ^ H O O 4-1 o O co o c H k 3

o U 3 CU 01 3 •H CM U •M •!- co CM fa O

/ 3

M fa c B pq 4J oo •U C

4-1 T) O M

fp

a' •3 o z O H 4J co 4J CO 01 CO N CO c 4-1 CO •M u c n e 4-1 01 4- 3

/ i

/ H

< _l i-H i-H r-i •M o c M l- 3 CO O 0 CO

u

3 3 43 i-H •M CO 4-1 )• 01 .c ••- 1

M .J E g 3 •M 4-1 > CO C o fa M ^C O

/ 8

T:

b

PQ M CO -r-< CO •r4 Q o 3 4J o fa < T3 fa c 01 s ^N. M fa CU X 01 c ^~ M

/ s

d o l-l

/ fa o u

-< m <_> a w fa o sc M *-> X

xN3W3ainb3^i

o

H

<

<

>

hi u

s

<

fa o

cc

fa O

fa

Q O w X fa w

CO

tu fa

s

c5 W H fa

CJ

w o

u

5

w u

§ fa

w Z o

>•

a O

a w

t-

(13)

ONINIVHI

1

noiiviNawnDoa

3DN3CIN3d3(INI N0IIN3AH3INI 3DNVN3INIVW

AiiaNvnnwis

AIIIIHIXSli HXMOHO

aovaois AHVCINODSS

ARONOD3 lonaoHd

Noixvznun o/i X X

Noiinosxs X X X

MOIIVUdWOD

MO)D3H0 X

DNIWWVHOOtfd

CO M 06 P

CO <

i

hJ w

z w o

u

Ed <

B

fa

O

CO

fa o

>*

H

M

•J 1—1

<c

CJ

/I

P a

as

a

CJ H H OS <

CM l

g s

M cm

CJ

H as o as O

<a z

<C

o « o

CJ

II.LOGICANDCONTROLOF*^\^^ INPUT/OUTPUTDEVICES(CONTINUED) COBOL- NumberofI/OAreasSupplied - forRESERVE „COBOL- ActionTakenWhenBufferHolds M *

SeveralRecords

CO 0) CJ

•H >

a 01

o

H CD CO 01 CJ

< cj

£

O

C

CM O

^

•H i-l

•H 4J

P

z

CO co 01 CJ

< CJ

e o

•u C c2 c o c o

•1-1 4-1 o

01 i-H 0) CO

-a u o u

Ol

Pi i

s

o

CJ

6

CO 4-1

p1 4-1 co Ol H H O H-l 01 00 CO u o

4J CO co CO 0) CJ

< CJ

g o

•a c

s

1 hJ

§

o

CJ

Oi*

IN3W3HinbaH

S

OS U

(14)

DNINIVHI

noiiviNHwnooa

X!

30N3UN3d3G*NI X

N0IIN3AH3INI 3DNVN3INIVW AIISNVnflHIS

Aim 91X313 HIMOHD X

30VH0IS AtfVdNODSS

AW0N0D3 IDfldOHd X X X X

Noiivznun o/i

NOIinD3X3 X X

MOIIVIIdWOO X

inO>ID3HD X X

DNIWWVHOOtfd

X X X X

co CO

y-i E

co u •• U-l cd

Ed

3 9

H 1-1 O u 60 c o

S3

3 i

b M 'O u 01 co O H •H 4-1

9

•u cd c PH D.

$ u •r-l M o i-i •H

CO fa > 60 H •1-1 T-I o l-l

•< o C 4-1 i-l u CJ

hJ -fa u H •i-l ?-. u < 4-1 CO

1

o / CO CM x; U c 01 c 01

/ 1

CJ 4-1 C 3 60 l-l o Q

w ai 4-1 c ai 01 M-l U O u

/ e

60 cd P-I cd

•H o •H o o XI 3

3^

4-1 B J3 o f-l cu 1

O 3 fa •H u CO c co cd l-l •r-l

/ . c2 60 .—i CM 60 O 01 u cd fa

/ i*" fa c w c <4-l 4-1 c C -r- o 60 > 01

/ i

fa

3 •3

> •H 60 w o 01 0 p •H 4-1 C cc a 0) O i-l l-i <-< CO "O c /. *? !r£

3

CO 01 ""I £ C 4-> l-l Pi CC ?s Cd

<5 60 01

s

J2 o 3 c a) U M

/^ u> fa |—I c 0) Q •H o cj DS a 4-1 4-1 -r- cd T3

/ •< u H

1

•H 60 H B CD o 6 it l-l

/8

M H Pi O

8

JZ u cd 3 •1-1 c 4-1 14-1 o 4-1 0 l-l 6 O 0 fa a c CC ja •H o u

/ 5

< fa CJ 4-1 cd 60 a CO o ;•> c 4-1 CO 4-1 cd

.2(5

>J cu

/ ^ fa fa p-i

3

M 60 o 0 01 cd 4-1 CJ

o 0) C c •H t-i a Q cd o •r-l •a

/ N? I ""^- 1—1 r-< 4-1 •H 01 4-1 3 B o c 4-1 I-I

/ 3 £

a «4 l-l M •H CO 01 u 01

i

i-l J3 •1-1 CJ co u T3 cc <u u c o •H C 4-1 0 cd B T3 cd

/ 3 w ^1 CJ 1*1 cd cd •H Cd CJ 6 S •H S o c

/ Q h-l 01 3 U CO CM a. O 0 g T3 C 4J cd

/ w M H-l Cv, O cd •H <4-l 01 u u o O 01

2 co 3 4-1

/ 8 s

o CO CO fa Q w CO PH PH CJ -J: CO

/ OJ o

/ fa CJ cj

<c

« u Q w fa CJ PC M <-> X

ihrawaninbra

7'. w o •J

H H

H fa

<

hJ

5

U

<

s

<

U p

Oi C5

< Z

3 3

o

fa -i

CO

I

os ^>

O Q

fa M

a CJ O

o b3

33 fa

H U

s

w

fa g

ij o

H

CO >-

U fa O

UJ C5

2 Ld rr H

<d

Références

Documents relatifs

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Doing so, zinc allows to substantially extend snakes and Neco in various ways: efficient firing and statespace computation, Petri nets coloured by potentially any programming

Range bound errors are always detected, unless runtime checks are disabled.. set

The jit-compiler maps the Java model to the active object model, and compiles the java byte-code using the data-layout and facili- ties provided by the kernel; the jit-compiler and

In this article we present the main linguistic and phonetic features of Galician which need to be considered in the development of speech technology applications for this language..

Combined with the new, mixed boundary conditions recently introduced by the authors ( Brisard et al. , 2013b ), the resulting numerical method is an attractive tool for

In this paper, we report on an experiment using DiaSpec (both the design language and compiler) to develop a standard robotics application.. We discuss the benefits and problems

The Committee considered that the collection and analysis of health service statistics facilitated the administration and co-ordination of curative, preventive and environmental