CA2182354C - Database driven automatic program production system - Google Patents

Database driven automatic program production system

Info

Publication number
CA2182354C
CA2182354C CA002182354A CA2182354A CA2182354C CA 2182354 C CA2182354 C CA 2182354C CA 002182354 A CA002182354 A CA 002182354A CA 2182354 A CA2182354 A CA 2182354A CA 2182354 C CA2182354 C CA 2182354C
Authority
CA
Canada
Prior art keywords
program
database
definition file
feature
driving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002182354A
Other languages
French (fr)
Other versions
CA2182354A1 (en
Inventor
Hideaki Tsuoka
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP7058772A priority Critical patent/JP2669387B2/en
Application filed by NEC Corp filed Critical NEC Corp
Priority to CA002182354A priority patent/CA2182354C/en
Publication of CA2182354A1 publication Critical patent/CA2182354A1/en
Application granted granted Critical
Publication of CA2182354C publication Critical patent/CA2182354C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database

Abstract

The object of the present invention is to provide a database driven automatic program production system which can change the structure of a driving database without having an influence on an existing program produced by a user. A program execution system which has driving database 4, feature program 6 and call processing program 5 and executes a computer program by driving the database includes driving database structure definition file 7, program structure definition file 1, feature definition file 2 and conversion program 3 which produces contents of driving database 4.
In this case, conversion program 3 can input driving database structure definition file 7, program structure definition file 1 and feature definition file 2. In order to change the contents of driving database 4, contents of feature definition file 2 or conversion program 3 are changed, and driving database 4 and program structure definition file 1 can have a relationship wherein they are independent of each other.

Description

nA~ARA.c~ DRIVEN AUTOMhTIC PROGRAM ~ODuullON SYSTEM

BA~UUN~ OF THE INVENTION

1. Field of the Invention:
This invention relates to a computer programming system, and more particularly to a database driven pLO~L i ng system.

2. Description of the Related Art:
As a typical example of the prior art of a data-base driven program system, there is an invention I'Database Driven Program Execution System" disclosed in Japanese Patent ~aid-open No. 121353/95. In the pro-gram execution system, pLO~LI ing signifies changing parameters of a database.
A system which makes use of the program execution system of the prior art makes it possible, when realiz-ing the various services defined in an intelligent network by the driving of a database, for a user to execute the addition of a new service to the system, the addition of functions of an existing service and change of functions of an existing service readily by merely changing parameters of the database without changing source codes.
In the program execution system described above, however, in order to sa-tisfy various demands of many ~ 21~2354 users, the database structure gradually becomes complex and advanced. Consequently, when changing parameters of a database, an operation more complex than describ-ing source codes of a program tends to be required of a user. Further, also when it becomes necessary to change the database structure as a result of a require-ment of a user to add new functions, a changing of the database structure cannot readily satisfy the require-ment of the user, which is another problem of the program execution system. Furthermore, if the struc-ture of a àatabase as an object of driving is changed, a user must change parameters of the database based on the change in structure, and therefore, a program produced by the user must be changed. Consequently, the program execution system has a further problem in that, as the scale of the system increases, considera-bly more time is required for a user to change the program.

It is an object of the present invention to pro-vide a database driven automatic program production system which can change the structure of a driving database without having an influence on an existing program produced by a user.

' 2182354 In order to achieve the object described above, a database driven automatic program production system of the present invention, is a program execution system which has a driving database, a feature program and a call processing program and executes a computer program by driving the database and includes a file (hereinaf-ter referred to as driving database structure defini-tion file) which defines a driving database structure, another file (hereinafter referred to as program struc-ture definition file) which defines a program struc-ture, a further file (hereinafter referred to as fea-ture definition file) which defines a feature to be described in the driving database, and a conversion program which produces contents of the driving data-base.
In the database driven automatic program produc-tion system of the present invention described ahove, the conversion program may receive as inputs thereto the driving database structure definition file, the program structure definition file and the feature definition file.
Further, in the database driven automatic program production system of the present invention described above, when the content.s of the driving database are to be changed, the contents of at least one of the feature definition file and the conversion program may be ~ ' 21 82354 changed, and the driving database and the program structure definition file may have a relationship wherein they are independent of each other.
The system of the present invention comprises the driving database structure definition file, the program structure definition file, the feature definition file, and the conversion program which receives as inputs thereto the driving database structure definition file, the program structure definition file and the feature definition file and produces contents of the driving database. And, the contents of the driving database are changed by changing the feature definition file and/or the conversion program, and the driving database and the program structure definition file are in~epPn~-ent of each other. Consequently, the user can separate the program structure definition file from the driving database structure and perform programming. Further, even if the driving database structure has been changed to add functions to meet a new requirement of the user, the database structure can be changed just by changing the feature definition file or the conversion program and the functions can be added without altering the existing program structure definition file made by the user.
Further, even if feature pl~L~lllo are added, modification to the program structure definition file - ~ 2 ~ 823 54 produced by the user is unnecessary.
Furthermore, the program structure is checked by the functions of the conversion program and change in the driving data base structure is absorbed into the inside, suppressing influence on the program structure definition file.
From the foregoing, also the knowledge required for production of a program is simplified by use of the feature definition file and the conversion program.
Consequently, the time required for production of and/or modification to a program is reduced.
Further, it is possible for the user to produce a program prior to designing of the driving database.
Consequently, the period required for development of a program i5 reduced.
The above and other objects, features, and advan-tages of the present invention will become apparent from the following description based on the accompany-ing drawing~ which illustrate an example of a preferred embodiment of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

Fig. 1 is a block diagram showing a call process-ing program system in an intelligent network system in an embodiment of the present invention;

- ~ ' 2 ~ 82354 .

Fig. 2 i8 a diagrammatic view showing the struc-ture of a driving database shown in Fig. l;
Fig. 3 is a diagrammatic view showing the struc-ture of a feature definition file shown in Fig. l;
Fig. 4 is a diagrammatic view showing the struc-ture of a program structure definition file shown in Fig. l;
Fig. 5 is a diagrammatic view showing the struc-ture of the driving database structure definition file shown in Fig. 1; and Fig. 6 is a flow chart illustrating automatic program production processing in the present embodi-ment.

DETAILED DESCRIPTION OF TXE Y~r~k~u EN~ODIMENT

An embodiment of the present invention will be de-scribed below with reference to the drawings.
Fig. 1 is a block diagram showing a call process-ing program system in an intelligent network system in an embodiment of the present invention.
The call processing program system shown in Fig. 1 has program structure definition file 1 produced by a user, feature definition file 2, conversion program 3, driving database ~, call processing program 5, a plu-rality of feature programs 6 and driving database structure definition file 7.
Program structure definition file 1, feature definition file 2 and driving database structure defi-nition file 7 which defines a schema structure of driving database 4 are inputted to conversion program 3. A predetermined record of driving database 4 is rewritten by conversion program 3.
If a call connection request is detected by call processing program 5, then driving database 4, which is to be executed next, is determined. A first record of the thus determined driving database 4 is read into call processing program 5. A plurality of driving databases 4 may be determined in this case. A feature name and a call parameter are described in the driving database record read into call processing program 5.
Feature program 6 which corresponds to a designated feature described in the driving database record is called with the designated call parameter into call processing program 5. A result of the call of feature program 6 is analyzed by call processing program 5 to determine a driving database record to be executed next. Call processing program 5 ends the call process-ing when no described data remains in driving database 4 or when end data is read out from driving database 4.
Fig. 2 is a diagrammatic view showing the struc-ture of the driving database shown in Fig. 1. Driving ~ . 2~82354 database 4 shown in Fig. 2 hafi a plurality of driving database records 21. Driving database 4 is produced by conversion program 3 shown in Fig. l. Each driving database record 21 of driving database 4 has feature name 22, table of input data 23 indicative of an input parameter group, table of output data 24 indicative of an output parameter group, and table of record number for next execution 25 indicative of driving database record 21 to be referred to next in accordance with a return value of a feature. This driving database record 21 is read into call processing program 5 de-scribed hereinabove referring to Fig. 1. Further, each of table of input data 23, table of output data 24 and table of record number for next execution 25 corre-sponds to a call parameter described hereinabove refer-ring to Fig. 1.
The structure of driving database record 21 is not limited to that described above, and driving database record 21 may have any other structure depending upon object processing.
Fig. 3 is a diagrammatic view showing the struc-ture of the feature definition file shown in Fig. 1.
Feature definition file 2 shown in Fig. 3 has a plural-ity of feature definition blocks 31. Feature defini-tion file 2 is referred to by conversion program 3 shown in E'ig. 1. Each feature definition block 31 of ~ ~ 2 1 82354 g feature definition file 2 has feature name 32, feature explanation 33 which explains a feature to be referred to by a user program editor or the like, range table for input data 34 which defines an effective range of input data, range table for output data 35 which de-fines an effective range of output data, and range table for return value 36 which defines a return value of a feature.
The structure of feature definition block 31 is not limited to that described above, and feature defi-nition block 31 may have any other structure depending upon object processing.
When a user adds feature program 6 in order to add functions, by adding feature definition block 31 to feature definition file 2, the functions can be added without changing the program.
Fig. 4 is a diagrammatic view showing the struc-ture of the program structure definition file shown in Fig. l. Program structure definition file 1 shown in Fig. 4 has a plurality of definition parts in page 41 and a plurality of feature definition parts 42. Pro-gram structure definition file 1 is produced by a user using an editor. In the present embodiment, program structure definition file 1 is produced using an editor which employs a graphical user interface. Further, program structure definition file 1 is constructed in units of a page displayed by the graphic editor and is described by a combination of definition parts in page 41 for each page. Definition part in page 41 has figure types 43 and display coordinates of figures in page 44. Some of figure types 43 have feature defini-tion part 42. Further, feature definition part 42 includes feature name 45, input parameter 46, output parameter 47, and figure number for next execution 48.
The structure of program structure definition file 1 is not limited to that described above, and program structure definition file 1 may have any other struc-ture depending upon object processing or difference in editor used.
Further, even when feature program 6 is added in order to add functions, since program structure defini-tion file 1 is produced based on feature name 45, program structure definition file 1 need not be modi-fied in feature definition part 42 which does not require added feature program 6.
Fig. 5 is a diagrammatic view showing the struc-ture of the driving database structure definition file shown in Fig. 1. Driving database structure definition file 7 shown in Fig. 5 has conditional part 51 and detail part 52. Conditional part 51 has information limiting the structure of driving database 4. Detail part 52 has a plurality of records indicative of the ~ 21823~4 table structure of driving database 4, and each record has a column name and an attribute and a size of the column name. However, the plurality of records are not independent of each other but are united as detail part 52.
Fig. 6 is a flow chart illustrating automatic program production processing in the present embodi-ment. The automatic program production processing in Fig. 1 will be described below with reference to Fig.
6.
By way of outline of processing, driving database structure definition file 7 is inputted to conversion program 3 (step 610; hereinafter referred to as S610), and feature definition block 31 of feature definition file 2 is inputted to conversion program 3, where proc-essing is executed (S621 to S624), thereafter program structure definition file 1 is inputted to conversion program 3 and converted into a file of the structure of driving database 4 and then stored into the driving database 4 (S631 to S635).
Details of the processing will be described. When a program is started, processlng is started. First, driving database structure definition file 7 is input-ted to conversion program 3 and read and stored into a memory of a computer (not shown) on which conversion program 3 is to be executed (5610).

2 1 ~2354 Then, it is det~rmin~ whether or not all feature definition blocks 31 have been inputted to conversion program 3 and read into the memory of the above-men-tioned computer on which conversion program 3 is to be executed (S621). If some feature definition block 31 for which reading in has not been completed remains, then it is read in (S622). It i6 de~rmin~d whether or not feature definition block 31 read in has a feature structure corresponding to the structure of driving database structure definition file 7 read in at S610 (S623). If an error is detected, then the process sequence returns to S621 in order to read in next feature definition block 31. An error here means, for example, that the number of input parameters of feature definition block 31 i8 excesslvely large.
If no error is detected in S623, feature defini-tion block 31 read in is stored into the memory of the computer on which conversion program 3 is to be execut-ed (S624), and then the process sequence returns to S621 in order to read in next feature definition block 31.
If it is determined in S621 that reading in of all feature definition blocks 31 is completed, then it is determined whether or not all program structure defini-tion files 1 are inputted to conversion program 3 and read into the memory of the above-mentioned computer on which conversion program ~ is to be executed (5631).
If some program structure definition file 1 for which reading in is not completed remains, then reading in of program structure definition file 1 is performed (S632). It is det~rmin~ whether or not program struc-ture definition filQ 1 read in meets the conditions of feature definition file 2 read in at S622 (5633). If an error i.s detected, then the process sequence returns to 5631 in order to continue reading in of next program structure definition file 1.
If no error is detected in S633, program structure definition file 1 is converted into a file of the structure of driving database 4 (5634). Converted information is stored into driving database 4 (5635), and the process sequence returns to 5631 in order to read in next program structure definition file 1.
If it is determined in S631 that reading in of all program structure definition files 1 is completed, the processing is ended.
It is to be understood that although the charac-teristics and advantages of the present invention have been set forth in the foregoing description, the dis-closure is illustrative only, and changes may be made in the shape, size, and arrangement of the parts within the scope of the appended claims.

Claims (4)

1. A database driven automatic program production system, having a driving database, a feature program and a call processing program, and comprising:
a file which defines a driving database structure, another file which defines a program structure, a further file which defines a feature to be described in said driving database, and a conversion program which produces contents of said driving database, a computer program being executed by driving said database.
2. A database driven automatic program production system as claimed in claim 1, wherein said conversion program receives as inputs thereto said file which defines the driving database structure, said file which defines the program structure, and said file which defines the feature.
3. A database driven automatic program production system as claimed in claim 1, wherein, when contents of said driving database are to be changed, contents of at least one of said conversion program and said file which defines the feature are changed, and said driving database and said file which defines the program structure have a relationship wherein they are independent of each other.
4. A database driven automatic program production system as claimed in claim 2, wherein, when contents of said driving database are to be changed, contents of at least one of said conversion program and said file which defines the feature are changed, and said driving database and said file which defines the program structure have a relationship wherein they are independent of each other.
CA002182354A 1995-03-17 1996-07-30 Database driven automatic program production system Expired - Fee Related CA2182354C (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7058772A JP2669387B2 (en) 1995-03-17 1995-03-17 Database driven automatic program generation system
CA002182354A CA2182354C (en) 1995-03-17 1996-07-30 Database driven automatic program production system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP7058772A JP2669387B2 (en) 1995-03-17 1995-03-17 Database driven automatic program generation system
CA002182354A CA2182354C (en) 1995-03-17 1996-07-30 Database driven automatic program production system

Publications (2)

Publication Number Publication Date
CA2182354A1 CA2182354A1 (en) 1998-01-31
CA2182354C true CA2182354C (en) 1999-11-09

Family

ID=25678590

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002182354A Expired - Fee Related CA2182354C (en) 1995-03-17 1996-07-30 Database driven automatic program production system

Country Status (2)

Country Link
JP (1) JP2669387B2 (en)
CA (1) CA2182354C (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000050247A (en) * 2000-05-30 2000-08-05 김호광 Control Structure Generating Apparatus and Method for Program by Conversation of Objects

Also Published As

Publication number Publication date
JP2669387B2 (en) 1997-10-27
CA2182354A1 (en) 1998-01-31
JPH08255076A (en) 1996-10-01

Similar Documents

Publication Publication Date Title
Tryon et al. The BC TRY computer system of cluster and factor analysis
US8566810B2 (en) Using database knowledge to optimize a computer program
US5528753A (en) System and method for enabling stripped object software monitoring in a computer system
US6668371B2 (en) Method and apparatus for software component analysis
US6502233B1 (en) Automated help system for reference information
US6026236A (en) System and method for enabling software monitoring in a computer system
US5459866A (en) Method of automatically producing job flow specification
AU8501798A (en) System and method for generating year 2000 test cases
US5303147A (en) Computer aided planning method and system
US5544298A (en) Code generation and data access system
CN111061488A (en) Method and device for detecting quality of front-end code, computer equipment and storage medium
US7035752B2 (en) Semiconductor test data analysis system
CA2182354C (en) Database driven automatic program production system
US5819287A (en) Database driven automatic program production system
US6282545B1 (en) Mechanism for information extraction and traversal from an object base including a plurality of object classes
US5448736A (en) Method for generating a program comprised of such a portion of a series of operator-inputted commands as will produce an operator-selected one of a number of results
CN114238467A (en) Structured data analysis method and system
JP3516843B2 (en) Database access method
CN116339744B (en) Custom function optimization method, device, computer equipment and medium
JPH05197534A (en) Program data base system
JP2000181691A (en) Program structure analysis system
JP2653882B2 (en) Database system
CN116804991A (en) Data management method, device, electronic equipment and computer readable storage medium
EP0657812A1 (en) System and method for monitoring library software
CN113138923A (en) Method and device for determining test range by analyzing modification code

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed