Centralised programming system for process computer at Kimitsu works of Nippon Steel Corporation

Centralised programming system for process computer at Kimitsu works of Nippon Steel Corporation

Copyright Q IFACRealTimeProgramming Kyoto,Japan. 1981 CENTRALISED PROGRAMMING SYSTEM FOR PROCESS COMPUTER AT KIMITSU WORKS OF NIPPON STEEL CORPORATIO...

819KB Sizes 0 Downloads 52 Views

Copyright Q IFACRealTimeProgramming Kyoto,Japan. 1981

CENTRALISED PROGRAMMING SYSTEM FOR PROCESS COMPUTER AT KIMITSU WORKS OF NIPPON STEEL CORPORATION K. Inoue, Computer

H. Mitsuoka,

S. Fujii, J. Yamashita

and J. Matsuki

System Planning Office, Kim&u Works, Nippon Steel Corporation, Kimitsu City, Chiba, Japan

Abstract. Programs for a process computer system are prepared and tested using either a target computer or a business computer. At Kimitsu Works, a target computer had been used as a test machine until 1975, when a new program preparation facility employing a business computer was developed as a means to improve software productivity. We call this facility the CPS (abbreviation of Centralized Programming System). The CPS has numerous functions including a source program library. Programs for process computer systems installed at Kimitsu Works are prepared using the CPS. Adoption of the CPS in preparing programs for process computer systems has a number of advantages over the use of a target computer. Key Words. Process computer; programming; documentation; cross compiler; run simulator; source program library; programming facility.

PREFACE

MEASURES TAKEN TO IMPROVE SOFTWARE PRODUCTIVITY

Kimitsu Works started operation as an integrated steelworks in 1968. Initially, the Works has four process computer systems. Today, as many as 31 process computer systems are in operation, and the total number of application program steps amounts to approximately 1.5 million.

The improvement in software productivity has been attained mainly by: (1) Reorganization of process computer section of the System Planning Office in charge of process computers, and (2) Development of the CPS The reorganization and the circumstances which led to the development of the CPS were published in an IFAC paper (Practical Management and Control System in the Steel Industry: A Case Study of KIIS by H. Mitsuoka, Y. Inoue, K. Takanashi, Y. Iwahashi, 1981, International Federations of Automatic Control 8th Triennial World Congress Case Studies Sessions CS5.3 p ~~118). Therefore, emphasis shall be placed on the technical aspects of the CPS.

On the other hand, the number of personnel engaged in the development and maintenance of process computer systems has remained almost unchanged since 1970. Under such circumstances, various measures have been taken to ensure effective development and maintenance of process computer system with limited manpower. In the following sections, description shall be made of some of the typical measures taken to improve the software productivity of the process computer systems.

t

1,416 /

P 30

21 26

,h 20 4

;; 2

1,000 P =: Y

15

10 t:

31

50 b---J-48 47

45

4g

48

5'

40

z j_i 30 500

I0

~ 1970

Fig. 1.

72

74

76

78

80

The number of process computer systems.

1970

Fig. 2.

72

74

76

78

80

Program steps (Simple sum of steps in high level languages and steps in assembler languages).

77

Fig. 3.

The number of process computer personnel.

78

K. Inoue e-t: al, Source

POSITION OF THE CPS -

The development of software for a process computer system goes through the phases of planning, design, production of software, testing, and the process computer system makes a start in operation. The CPS is a software development facility that is applicable to the phases of production of software and unit testing of programs in the development of software for process computer systems. The scope of the CPS application is shown in Fig. 4.

Source Program Library

Program Entry __-._

Source Program Replacement, Correctionand Copy

-

Sequence Number __-_Rew1

ElCPS

Load Module/ -Object Module Library

* Structural design /m Production of software

'Flow chart drawing 'Cndino

Load Module and _. Object Module

Module Specification Auto-docu~n-

$ ::

----..;I

,Debugging -_ Testing

L.

System test Maintenance and improvement

Maintenance and improvement

Fig. 5. Functionsof the CPS. Fig. 4.

Software development works. (w ; CPS scope)

FEATURES AND FUNCTIONS OF THE CPS (1) Features of the CPS The CPS prepares and tests software for various kinds of process computer systems with different languages. * The CPS permits the programmer to interact with the business computer via a CRT and keyboard to prepare programs for process computer systems. * The CPS provides auto-documentation function which prepares module specifications, module configuration diagrams, module-to-module cross references, flowcharts, etc.. . The CPS puts out data necessary for software productivity management, such as the number of program steps prepared in a given period of time, the manpower and machine time spent, and the causes of program modifications.

Source program entry Source programs can be entered onto the CPS magnetic disc using a keyboard entry, card reader, CRT with keyboard, or paper tape reader. However, the keyboard entry is most frequently used for entry of programs.

l

(2) Functions of the CPS The CPS has six functions as shown in Fig. 5. Each of the six functions is described below. Source Program Library The CPS programs for each process computer system it supports are stored on magnetic discs. The Source Program Library registers source programs for each process computer system onto the CPS magnetic disc, or replaces, adds, or deletes programs already stored on the magnetic disc.

Source program replacement, correction and rl-ln" --l-r’ Uzg a CRT with keyboard, the programmer can easily add programs to the library, or correct, delete, or copy the source programs stored on the CPS disc. Sequence number reassignment If the sequence numbers of programs stored on the CPS disc are disordered by additions, corrections, or deletions of source programs, the programmer can reassign the proper sequence number to each source programs steps by giving a simple command.

"Cross Compiler/Cross Assembler" The "Cross Compiler/Cross Assembler" in this paper means such a group of software in which a business computer can compile or assemble programs for various process computer system, However, unless some measures are taken, a business computer can not compile nor assemble programs written by different target computer languages due to minor differences in the programming language by the type of target computers. As the measures, we have developed "generalpurpose cross compiler". Using a business computer, this "Cross Compiler" consists of

Centralized Programming System for Process Computer own-developed "general-purpose cross compiler" and other several types of unique cross-compilers which are recently preparedby computer suppliers. "Cross

Assembler" has the same kind of functions. Most of process computer systems at Kimitsu Works employ a high level programming language.

79

"load Module/Object Module Library" This library, using a business computer, permits preparation of load modules and object modules of programs for process computer systems, and permits outputs of those modules in the form of magnetic tape, card, paper tape, etc..

"Auto-documentation" "Run Simulator" The "Run Simulator" in this paper means such a group of software in which a business computer can check the logic of a program for a process computer system. The CPS has "Run Simulator" which consists of own-developed "general-purpose run simulator" and several types of run simulator for each specific systems prepared by computer suppliers. The "general-purpose run simulator" has the following features over the other types of run simulator:

* "General-purpose run simulator" prints process input/output data, CRT data, typewriter output data, etc., corresponding to the process flow.

* "General-purpose run simulator" prints data only when the contents of a file or table have been changed by processing.

* "General-purpose run simulator" traces program statement numbers.

(Translation of the 0

"Auto-documentation" in this paper means such a group of software in which a business computer can analyze the contents of programs in the source program library or load module library and printing out documents for design, maintenance, and improvement. This "auto-documentation" system developed for Kimitsu Works is capable of printing out various types of documents, such as module configuration diagrams, module lists, module specifications, flowcharts, and cross references. In addition, this system allows the use of Japanese characters and Chinese characters, as well as alphanumeric characters. Thus, it is especially useful for the Japanese. Some of the typical applications of "Autodocumentation" are given below. Module configuration diagram. This document diagrammatically shows the processing hierarchy and module configuration of a given process computer system. It is printed on a laser printer connected to a business computer. Fig. 6 shows an example of module configuration diagram.

above Japanese version)

Dl

DlA

E03DT

DlBl

EOZDT

i~~~~~~

Fig. 6.

Module configuration

diagram

(Example of actual computer output).

80

K.

Inoue

Task Name

Decision pro. cessing of abnormal q;ali;j data

ierachical

Indexins

ndex

Code

DlA

E03DT

al.

1

Module

No

et

Module

Name

Outline

of processing

.

1 Starting at an interva' of 2 seconds.

. .

Comment

St.eps

Pro

am Size

State-

Logic

Working

Inent

Size

Area Size

99

61

38

104

99

61

38

104

112

60

52

201

467

239

228

184

72

223

104

119

488

39

2 Judging data on abnormal fluctuation of mol. ten metal level in rold 3 If abnormal, sends dati to the host computer. 4 Updating data about molten metal level in mold.

Minor Total

.JOBN . TSKN LEVL P-NO

:e Card

Decision processing of abnormal qualit) data (H-08E)

JOBN = *TSKN= - LEVL = . P-NO =

Processing of nbnormal quality data entered autonatically at regular intervals

SOI Total

DlBlA

E02DT

Processing of abnormal quality data entered automatically at regular intervals

= = = =

1 Starting at an interval of 10 seconds by instantaneous data processing. 2 Checking the timming of initiation of abnormal quality data processing 3 Reserving file (LEIDB, LEODB) related to abnormal quality data. 4 Editing common

OlBlB

E02Dl

Connon processing of abnormal quality data entered automatically at regular intervals (1)

DlBlC

E02D2

Cornnon processing of abnormal quality data entered automatically at re ular intervals 9 2)

data.

1 Being linked by cornnon processing. 2 Deciding on abnormality of following items. 3 Updating quality control monitor file 2 according to the associated charge number.

I Being linked by process ing of abnormal quality data (1). 2 Deciding on abnormality of following item. 3 Deciding on abnormal quality data related on TD. 4 Performing decision processing of abnormal quality data concerning double teeming.

81

Centralized Programming System for Process Computer

Module list This document describes the tasks and modules included a given process computer system, a summary of processing of each module, the number of source cards, etc..

Table 3 shows an example of software productivity report print out by the CPS.

CPS SOFTWARE/HARDWARE CONF~GU~TIONS

Table 1 shows an example of module list.

The CPS software configuration is shown in Fig. 7. The CPS can operate in either interactive or batch mode. In interactive mode, the CPS permits the programmer to interact with a business computer to modify, compile, or run his program.

Cross reference The CPS can print out various cross reference lists (common area-to-module, file-to-module, module-to-module, etc.). Table 2 shows an example of common area-tomodule cross reference list.

The CPS hardware configuration is shown in Fig. 8. The CPS facility is operated on a business computer whose processing capacity is 2.5 million instructions per second, and is used for program development for a business computer and process computers. The shared printer is a laser printer that can print 10,000 lines per minute. This printer is capable of printing Kana characters (Japanese characters) and Chinese characters, as well as alphanumeric characters.

"CPS Maintenance and Improvement" In addition to the above-mentioned functions, the CPS has the function to collect and print out data concerning software productivity and software production cost such as manpower and machine time spent. This enables the supervisory system engineer to detect early any problems in preparing program for his system.

TABLE 2

Common Area-to Module Cross Reference List (Example of Actual Computer Output)

rlusber i Module Name c %?I x pfi

F-Af1 module names in the systeinreferenced by a given module

I

IOCTYW

‘I ~_

I

_

ARNlS

LBASB

5

AAOlS ADRCS ATD3S BDT3S BSMPS

TABLE 3



ATOUYC PAGEYC

CLTOYC PCTR%C

f%

e

xp 14

EFLOYC

EOCVYC

ARNlS _____..

ARN25

ARN35

BRNHN

BRNlS __~

BRNZS BRN3S --...

AANPS

ARN3S

BRNlS

BRS25

tlRN3S

AADSS ANC4S BADZS BMAlS BTA3S

AADBS ANCSS BAD35 BMAZS BTA4S

ARNlS

BRNHS

BRNlS

AADPS ANCTS ATD4S BDFCS BSMJS

AAD3S ANQS AldMN BDFHS BTAlS

AAD4S ANC3S BADTS EDRCS BTAZS

f~?-sAi&f$& 7%

80,866

968

266,958

137,059

1,875

467,711

251,822

_--e---_ ,,I-

c-

~Ir.insiatron

j

a

w

FTASYC

IJICYC

IJOCK

_..~~~__

ABSMN ASHUT BAD4S BMA3S BTA5S

ACOSS ASMlS BADSS BMA4S BYBlS

ACOST ASMZS BAD6S BMASS BYB3S

IOFTYC

LTIOfC

OPIOYC

._ -. __~_._._~

_... - _____.

.._-. . .___

ACDlS ASN35 BBSMN BMClS BYB4S

ACDZS ATAlS BCDSS BMCPS BTHMN

ADA15 ATAZS BCDST BMC3S

AOAES ATA3S BCDlS BMC4S

ADA3S ATAilS BCDPS BMC5S

ADFCS ATA BDATS BSHUT

ADFHS ATDIS BOA25 BSMlS

(Example of Actual Computer Output) 7@!@Y&t+?+F~~

(A)

310

_

h FSTSYC

j%-@

%(A/B)

ii&Et

597

>xt.A c -_____.

3 FOCVYC

.____.-

Control Table

i

% i-i, .__

FLDSYC

._

.>xiI. A .~__.J--H ---.

,

EFINYC TSRCYC

‘/7i.'1=



P

DTSTlC RCHKYC

Software Productivity

;;c%a%&

i

DTLAYC PIOSYC

119,887 -

12099

! 504,756

284,801

Of tile above ,rpanese version)

-Effective Programs* (A)

A system

Programs Produced** (E)

Yield Percentage

Quantity of Maintenance Program

82

K.

Inoue

et

az.

CPS

I Interactive Processing

Batch Processing

I I

I

I

I

I I

Maintenance and Improvement

Utilities

I Cross Compiler

Run Simulator

I Load-module Preparation and Output

I Auto-documentation

-CRT display output

.List output Card output

~II Module Specification

,Printing out manpower in each work phases

I /

-Magnetic tape output

Module Configuration Diagram

ing Fig. 7.

CPS software configuration. rects

Shared Resources

CPS Resources

Business Computer 2.5 MIPS Card Reader

Printer

Magnetic Disc

l

(-GG7x3

Keyboard Entry Device

Paper Tape Reader/Puncher

x 24

Fig. 8.

CPS hardware configuration.

it using the CRT with keyboard, then re-stores the program on the magnetic disc (step 3). The program which is proved the completion of logic tests puts out its load modules to cards, paper tape, magnetic tape, or other medium. Load modules which have been put out to the specified medium are loaded into the target computer (step 4). Any program loaded into the target computer is subjected to integration tests and system tests on the target computer (step 5). If the program fails the integration test and system tests on the target computer, it is returned to step 2. When all the programs have passed the integration tests and system tests, the process computer system becomes ready for making a start in operation.

SCOPE OF THE CPS APPLICATION At Kimitsu Works, most of the programs for the process computer systems in operation are prepared using the CPS. Table 4 shows the process computers supported by the CPS and its functional scope available for those computers.

EFFECT OF THE CPS PRACTICE OF SOFTWARE DEVELOPMENT USING THE CPS Fig. 9 shows the flow of software development using the CPS. The source program coded by the programmer is input to the business computer via a keyboard disc entry, and stored on the magnetic (step 1). The programmer calls his program stored on the magnetic disc using the CRT with keyboard, and the CPS compiles, assembles, and tests the program (step 2). If an error is detected, the programmer cor-

The CPS developed at Kimitsu Works has produced tangible results as follows:

(1) Improvement in software productivity: The use of the CPS has appreciably improved the software productivity for process computer systems, especially the productivity in the phases from preparation of programming to unit test.

(2) Redution of opportunity loss by timely software modifications: Formerly, software testing could be con-

83

Centralized Programming System for Process Computer

ii)

Magnetic Tape

[Scope of d Target Computer)

(Scope of the CPS)-----

9. Practiceof softwaredevelopment using the CPS.

Fig.

TABLE 4. __

--

Scope of the CPS Support

Functions

ducted only when the plants were not in operation (e.g., during regular maintenance of plants, etc.), The CPS permits conducting unit tests of software whenever deemed appropriate, enabling to reduce the opportunity loss due to delayed modifications of software.

(3) Standardization of programming procedures and documents: Thanks to the CPS, the programming procedures and documents have been completely standardized. Formerly, they were roughly standardized, with details left to the judgment af the supervisory engineer of each system.

(4) Centralized control of programs for process computer systems: Formerly, each system kept its programs in the form of paper tape, card, or magnetic tape, preventing thorough control of program modifications. It also frequently occurred that a load module did not match the source module, causing great difficulties in the modification of programs. The CPS permits using magnetic disc as the unified storage for programs, and makes it possible to implement thorough, integrated control of modifications to the source programs and load modules.

11. MELCOM 350

G) Leveling of programmer work-load by

ASS. Assembler

i\: Supported.

FOR: Fortran-equivalent Pr~~ra~iflg Language

a: x

Partly supported,

: Notsupported.

centralization and pooling of programmers: Formerly, each system had its own programmers, making it difficult to level the work-load of each individual programmer.

K. Inoue et al.

84 CONCLUSION

The CPS developed at Kimitsu Works has been playing a vital role in improving the software productivity and reducing the development cost. Almost all of the programs for process computers installed at Kimitsu Works are prepared by the CPS. By expanding the CPS functions, we have been endeavoring to improve the software productivity, prevent troubles due to modifications to programs, and thus respond to plant's necessity through timely program modification. Remarkable are the recent rise in personnel expenses and the resulting increase in the software production cost. We are determined to make ceaseless efforts to further improve the software productivity for process computer systems by reinforcing the functions of the CPS, such as reinforcing the simulator function, auto-documentation.

REFERENCES Mitsuoka H., Y. Inoue, K. Takanashi, and Y. Iwahashi, "Practical Management and Control System in the Steel Industry: A Case Study of KIIS," Proceeding of 8th IFAC Congress Case Studies Sessions CS-5.3 p cs118 TakanashiK.,S. Fujii, and K, Inoue (1976). Keisokugijutsu, Vol. 4, 1976. 8, Japan pp 78-86.