CN101599014B - Generating device of program or design documents - Google Patents

Generating device of program or design documents Download PDF

Info

Publication number
CN101599014B
CN101599014B CN2009101426496A CN200910142649A CN101599014B CN 101599014 B CN101599014 B CN 101599014B CN 2009101426496 A CN2009101426496 A CN 2009101426496A CN 200910142649 A CN200910142649 A CN 200910142649A CN 101599014 B CN101599014 B CN 101599014B
Authority
CN
China
Prior art keywords
program
information
definition information
design
document
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.)
Active
Application number
CN2009101426496A
Other languages
Chinese (zh)
Other versions
CN101599014A (en
Inventor
今村大辅
保坂真由美
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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
Application filed by Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Publication of CN101599014A publication Critical patent/CN101599014A/en
Application granted granted Critical
Publication of CN101599014B publication Critical patent/CN101599014B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention provides a generating device of programs and design documents used for generating programs and design documents thereof. The generating device of programs and design documents (100) converts input design information into abstract formal model information (104a) in specific standard independent on each program and then the information is output, the design documents are generated according to specific model of the model information, meta model information and design documents and are written in the memory part (105) of design documents, simultaneously the specific model documents inside a template memory part (102) are determined according to the model information (104a) and the meta model information, and the program (106a) is written in the program memory part (106) according to the meta model information through the model information (104a), the meta model information and the determined specific model document. Therefore, programs and design documents can be generated, the standard generating the object can be set flexibly, and the production efficiency of application and development can be improved.

Description

The generating apparatus of program or design document
Technical field
The present invention relates to be used for the program of generator program (program) or its design document or the generating apparatus of design document.
Background technology
In the field that the application (application) of generator program or its design document is developed; From the viewpoint of the burden that alleviates the developer, for example proposed program creating device (for example with reference to the spy open the 2004-318260 communique (the 10th section, Fig. 8-Figure 11; Figure 46; The 283-286 section, the 292nd section etc.) and 2005-228235 communique (the 24th section, Fig. 1 etc.)).
Open in the 2004-318260 communique (to call document 1 in the following text) the spy, disclose through input and described portion and the physical specification portion of description physical specification that constitute, detailed, the technology of generator program through traffic profile.In addition, in document 1, disclose, only generated " picture program " in the stage of the input that does not have physical specification, after display frame is confirmed, the technology of input physical specification.
On the other hand; In 2005-228235 communique (to call document 2 in the following text); Disclose through obtaining professional term from the design information storage unit; Extract the identifier corresponding out from professional term storage unit, through being embedded in them the technology that generates the program of specific transactions in the template of preserving in template (template) storage unit with professional term.
But, disclosed technology in the document 1,2, though do not have special problem usually, through the inventor's research, following some room for improvement is arranged.
Disclosed technology in the document 1 is imported the throughput rate reduction that detailed physical specification causes application and development easily, and this point has room for improvement.
Disclosed technology in the document 2 can use one group of template to generate the program of specific transactions, and its reverse side is that because can not use many group templates flexibly, so can not change the specification of appending the program of hoping generation neatly, this point has room for improvement.
In addition, disclosed technology in the document 1,2, though can generator program, can not generate the design document of this program, this point has room for improvement.
Summary of the invention
The generating apparatus that the purpose of this invention is to provide a kind of program or design document, it can generator program and design document, can set the specification of formation object neatly, can improve the throughput rate of application and development.
One aspect of the present invention (aspect) is the generating apparatus of program or design document, and it is used for generating a plurality of programs of formation application program (application program) and the design document of said each program respectively, has following unit:
The meta-model storage unit; Be used to store following meta-model (meta model) information; This meta model information comprises: root directory definition information; It is for each table (table); The Table I D ground that comprises routine package (package) name of the program ID that representes said application program, said application program and represent said table has defined that representation program generates first root directory (root directory) value of destination and for each said application program, defined the second root directory value of representation program generation destination with comprising said program ID; Abstract template file (template file) definition information; It is shown for each; Defined the first template particular key (key) corresponding and for each pattern (pattern) customizing messages of said application program, defined and the second corresponding template particular key of each program of generation with each program that generates; Concrete template file definition information, it has defined the concrete template file of each program and design document for each said template particular key; With relative path definition information, it has defined the relative path (path) of program generation destination for each said template particular key with comprising Table I D;
Template storage unit, its storage is through the concrete template file of said concrete template file definition information definition;
Design information input block, its input comprise the design information of program ID, routine package name, pattern customizing messages, Table I D;
Model information output unit, its said design information are exported after being transformed to model (model) information of abstract form of the concrete specification that does not rely on said each program;
The design document generation unit; It is according to the concrete template of the Table I D in the said model information, said relative path definition information, said design document; Generation comprises the design document that guide look is presented at the complete list of file (file) name of this Table I of combination D in the said relative path definition information, writes said design document storage unit to this design document;
According to abstract template file definition information in the Table I D in the said model information and pattern customizing messages, the said meta model information and concrete template file definition information, determine the unit of the concrete template file in the said template storage unit; With
The program generation unit; It generates the filename of each program according to Table I D in the said model information and said relative path definition information; Through this document name each program of filename generation, write said program storage unit (PSU) to this each program according to said root directory definition information and said relative path definition information as the concrete template file of said decision.
As one aspect of the present invention,, but be not limited thereto in addition, also can use other such classification performances such as storage medium of method, program, stored program embodied on computer readable as the device performance.
According to an aspect of the present invention, when input comprises the design information of program ID, routine package name, pattern customizing messages, Table I D, export after being transformed to design information the model information of abstract form of the concrete specification that does not rely on each program.Concrete template according to the Table I D in this model information, relative path definition information and design document; Generation comprises the design document that guide look is presented at the complete list of the filename that has made up this Table I D in the relative path definition information, writes the design document storage unit to this design document.
In addition, according to abstract template file definition information in the Table I D in the model information and pattern customizing messages and the meta model information and concrete template file definition information, the concrete template file in the decision template storage unit.Filename according to the Table I D in the model information and each program of relative path definition information generation.Through this document name each program of filename generation, in program storage unit (PSU), write this each program as concrete template file.
Therefore, different with existing mode in one aspect of the invention, can generator program and design document because not importing detailed physical specification, so can improve the throughput rate of application and development.In addition, because determine concrete template file according to the pattern customizing messages, thus different with existing mode, can set the specification of formation object neatly.
Description of drawings
Fig. 1 is program or the generating apparatus of design document and the concept map of peripheral structure thereof of expression first embodiment of the present invention.
Fig. 2 is the concept map of an example of the root directory definition information in this embodiment of expression.
Fig. 3 is the concept map of an example of the root directory definition information in this embodiment of expression.
Fig. 4 is the concept map of an example of the abstract template file definition information in this embodiment of expression.
Fig. 5 is the concept map of an example of the abstract template file definition information in this embodiment of expression.
Fig. 6 is the concept map of an example of the abstract template file definition information in this embodiment of expression.
Fig. 7 is the concept map of an example of the concrete template file definition information in this embodiment of expression.
Fig. 8 is the concept map of an example of the relative path definition information in this embodiment of expression.
Fig. 9 is the concept map of the example of duplicating (copy) obj ect file definition information in this embodiment of expression.
Figure 10 is the concept map of an example of the copy source document definition information in this embodiment of expression.
Figure 11 is the concept map of the example of duplicating destination document definition information in this embodiment of expression.
Figure 12 is the concept map of an example of the model information in this embodiment of expression.
Figure 13 is the concept map of an example of the model information in this embodiment of expression.
Figure 14 is the concept map of an example of the specification of the design information of expression in this embodiment.
Figure 15 is the concept map of an example of instrument (tool) the information input picture in this embodiment of expression.
Figure 16 is the concept map of an example of the application message input picture in this embodiment of expression.
Figure 17 is the concept map of an example of application model (application pattern) the information input picture in this embodiment of expression.
Figure 18 is the concept map of an example of the table information input picture in this embodiment of expression.
Figure 19 is order (sequence) figure that is used for explaining the action of this embodiment.
Figure 20 is the precedence diagram that is used for explaining the action of this embodiment.
Figure 21 is the process flow diagram (flowchart) that is used for explaining the action of this embodiment.
Embodiment
Below use description of drawings embodiment of the present invention.In addition,, but be not limited thereto, can generate program arbitrarily in following embodiment illustrated Java (registered trademark) program.In addition, the following program or the generating apparatus of design document can be implemented with the unitized construction of hardware configuration or hardware resource and software (software).As the software of unitized construction, can use in advance the functional programs that generating apparatus (install), that be used to make realization program or design document is installed from network (network) or storage medium.
(first embodiment)
Fig. 1 is program or the generating apparatus of design document and the concept map of peripheral structure thereof of expression first embodiment of the present invention.The generating apparatus 100 of this program or design document can be communicated by letter with user terminal 200 and data library device 300 through network 400.
Here; The generating apparatus 100 of program or design document has meta-model (meta model) storage part 101, template (template) storage part 102, storehouse (library) storage part 103, model (model) information storage part 104, design document storage part 105, program storage part 106, all control parts 107, design information input part 108, proof department 109, model information efferent 110, design document generation portion 111 and program generation portion 112.
Here, meta-model storage part 101 is the memory storages that can be read/write and can be read by program generation portion 112 by all control parts 107.Meta-model storage part 101 writes the meta model information that defines information 101d, duplicates (copy) obj ect file (file) definition information 101e, copy source document definition information 101f and duplicate destination document definition information 101g as root directory (root directory) definition information 101a, abstract template file (template file) definition information 101b, concrete template file definition information 101c, relative path (path) in advance.In addition, use the generation respectively define information 101a~101g to handle, remove the situation of the pattern that obstructed pattern customizing messages (pattern) d7 that states later selects, each of each row of the middle expression of execution graph 2~Figure 11 is gone successively basically.Therefore, use the generation that respectively defines information 101a~101g to handle,, can generate a large amount of achievement thing (program and design document) for a little design information.
Root directory definition information 101a; Like Fig. 2 and shown in Figure 3; For every table (table), be the information that the Table I D ground of routine package (package) name and expression table that comprises program ID, the application program of expression application program (application) has defined the first root directory value of representation program generation destination; For each application program, be the information that has defined the second root directory value of representation program generation destination with comprising program ID; For each kind of xcopy object, be the information that the 3rd root directory value of destination is duplicated in definition.
Abstract template file definition information 101b; Like Fig. 4, Fig. 5 and shown in Figure 6, be for each table definition the first template particular key (key) corresponding and defined the information with the corresponding second template particular key of each program of generation for each pattern customizing messages of application program with each program that generates.
Concrete template file definition information 101c, as shown in Figure 7, be the information that has defined the concrete template file of each program and design document for each template particular key.
Relative path definition information 101d, as shown in Figure 8, be the information that has defined the relative path of program generation destination for each template particular key with comprising Table I D.
Duplicate object document definition information 101e, as shown in Figure 9, be for each class definition of duplicate object file the information of copy source filename.
Copy source document definition information 101f, shown in figure 10, be the information that has defined the memory location of copy source file for each copy source filename.
Duplicate destination document definition information 101g, shown in figure 11, be to have defined the information of duplicating the destination document name for each copy source filename.
Template stores portion 102 is the memory storages that can be read/write, can be read by design document generation portion 111 and program generation portion 112 by all control parts 107.Template stores portion 102 writes the concrete template file through concrete template file definition information definition in advance.Here; Concrete template file; By forming with design document template file 102b, 102d and common process template file (the program template file) 102e and the design document template file 102f of each kind of process template file 102a, 102c and the design document of pattern customizing messages each kind corresponding, program of application program (typing (stereotype)).
Library storage portion 103 is the memory storages that can be read/write, can be read by program generation portion 112 by all control parts 107.Library storage portion 103 writes in advance and uses storehouse 103a.Here, using storehouse 103a, is the existing storehouse of reference when the program of compiling (compile) and execution generation.For example, using storehouse 103a, is to be used in the storehouse of the framework (framework) of the structure of the typing given application of regulation or the storehouse of the assembly (component) of the processing that daily record (log) etc. is general.Be the storehouse that the redundancy of the source code (source code) that makes the program of generation reduces in a word.
Model information storage part 104 is the memory storages that can be read/write, can be read by design document generation portion 111 and program generation portion 112 by all control parts 107 and model information efferent 110.Model information storage part 104, storage is from the model information 104a of model information efferent 110 outputs.Model information 104a like Figure 12 and shown in Figure 13, is the data (data) with the abstract form performance design information of the concrete specification of each program of not relying on generation.As the form of model information 104a, for example can use XML (Extensible Markup Language) form.This model information 104a as intermediary, is used to design document generation and program and generates.
Design document storage part 105 is the memory storages that can be read/write by all control parts 107 and design document generation portion 111.Design document storage part 105, the design document 105a that storage generates through design document generation portion 111.Design document 105a is the design document that generates through design document generation portion 111, is the design document of program 106a.In design document, complete list or chart (diagram), the interactional complete list of (f) representation class or the kind of chart of the static information of (a) picture complete list, (b) picture item definition list, (c) table complete list, (d) list item definition list, (e) representation class (class) (perhaps program) for example arranged.
Program storage part 106 is the memory storages that can be read/write by all control parts 107 and program generation portion 112.Program storage part 106, each program 106a that storage generates through program generation portion 112.Program 106a is the program that generates through program generation portion 112.Only,, also can move even the user does not carry out any installation of appending through under suitable test (test) operating environment, preserving the program 106a that generates.
All control parts 107, have each one 108~112 of control in case carry out after the function of the action represented among Figure 19, Figure 20 and Figure 21 of stating.For example, all control parts 107 have the checking and the output of model information to design information input part 108 indication design informations, indicate the generation of design documents to design document generation portion 111, to the function of the generation of program generation portion 112 instruction programs.
Design information input part 108 has following each function (f108-1) and (f108-2).
(f108-1) be to be provided for from the user terminal user interface (user interface) of 200 input design informations, to store from the user terminal function of 200 design informations imported temporarily to user terminal 200.
(f108-2) be function from the checking that receives from proof department 109 inerrancy as a result (error) (verify successfully) to model information efferent 111 that export design informations to proof department 109 output design informations during with the function of checking indication with in.
With design information; Like an example of expression specification among Figure 14, be input to generation destination catalogue (directory) d1 such as program, journal file (log file) with each of the figure place location number d14 of the type d13 of the key of the pattern customizing messages d7 of catalogue d2, program ID d3, program name d4, routine package name d5, database (database) link information d6, application program, option (option) and value d8, Table I D d9, table name d10, row (column) ID d11, row title d12, row, row, FK attribute d15, NotNulI attribute d16, picture display properties d17 etc.Here; Except that information d1 arbitrarily, d2, d4 or about the information d3 of title, the design information of essence d5, only be parameter (parameter) information d7, the d8 of database linkage information d6, table design information d9~d17 and the minority corresponding with the pattern of the application of generation.That is design information does not contain physical specification with existing different.In addition, design information also can change and reads to be specification information.
As the user interface that is used to import design information; For example, has the picture data that is used for show tools information input picture G10, application message input picture G20, application mode information input picture G30, table information input picture G40 on user terminal 200 like Figure 15, Figure 16, Figure 17 and shown in Figure 180.But the input (providing of user interface) of the design information through each picture is not necessary, can omit yet.Design information input part 108 because as long as from the user terminal 200 input design informations, so for example also can be deformed into from the user terminal 200 receive the Excel (registered trademark) etc. of record design informations the structure of file.
Proof department 109 has following each function (f109-1) and (f109-2).
(f109-1) be the design information that receives for from design information input part 108, must or set arbitrarily that checking has or not the function of importing not enough or contradiction according to what represent among Figure 14.
(f109-2) be function from results to 108 outputs of design information input part that verify.
Model information efferent 110; Has the design information that receives from design information input part 108; Export the function that writes this model information 104a to model information storage part 104 after being transformed into the model information 104a of abstract form of the concrete specification that does not rely on each program.
Design document generation portion 111 has following each function (f111-1) and (f111-2).
(f111-1) be concrete template, generate and comprise the function of design document 105a that guide look is presented at the complete list of the filename that has made up this Table I D d9 on the relative path definition information 101d according to relative paths definition information 101d in the Table I D d9 in the model information 104a in the model information storage part 104, the meta model information storage part 101 and the design document in the template stores portion 102.
(f111-2) be the function that writes this design document 105a to design document storage part 105.
As replenishing; Design document generation portion 111; From the pattern customizing messages d7 that in model information 104a, comprises and the data of meta-model storage part 101; Appropriate template in the design document template in the decision template stores portion 102 makes this template work to model information 104a and generates design document 105a.That is design document generation portion 111 with reference to meta-model application model information 104a in template on one side, generates the design document 105a of application of the specification of hope through on one side automatically from seldom design information.
Program generation portion 112 has following each function (f112-1) and (f112-2).
(f112-1) be according to abstract template file definition information 101b and concrete template file definition information 101c in the meta model information in the Table I D d9 in the model information 104a in the model information storage part 104 and pattern customizing messages d7, the meta-model storage part 101, the function of the concrete template file in the decision template stores portion 102.
(f112-2) be to define the filename that information 101d generates each program according to Table I D d9 in the model information 104a and relative path; Through generating each program 106a to this document name as the filename of the concrete template file of above-mentioned decision; According to root directory definition information 101a and relative path definition information 101d, the function of this program 106a write-in program storage part 106.
Have copy source file, define information 101a and duplicate the function that destination document definition information 101g copies to the 103a of library storage portion according to root directory through duplicate object document definition information 101e in the meta-model storage part 101 and copy source document definition information 101f definition.
As replenishing; Program generation portion 112; From the pattern customizing messages that in model information 104a, comprises and the data of meta-model storage part 101, the appropriate template in the process template in the decision template stores portion 102 makes this template to the model information 104a generator program 106a that works.That is program generation portion 112 with reference to meta-model application model information in template on one side, generates the program 106a of application of the specification of hope through on one side automatically from seldom design information.
User terminal 200 is common terminals, for example has following each function (f200-1)~(f200-3).
(f200-1) be the function of all control parts 107 of the generating apparatus 100 of operation start-up procedure or design document through the user.
(f200-2) be the function that shows based on each picture G10~G40 of each picture data that receives from design information input part 108.
(f200-3) be to indicate and generate the function of carrying out to each picture G10~G40 input design information through user's operation.
Data library device 300 is can be through the database server (database server) of the connection of the database linkage information d6 in design information or the model information 104a.Data library device 300 for example connects when carrying out the program 106a of the generating apparatus 100 through program or design document.The employee database (database) and the work position database of reference when data library device 300 for example is included in the employee's table that generates in the model information of representing among Figure 12 and Figure 13 and work position table.
Use the action of the generating apparatus of program that the flowchart text of precedence diagram and Figure 21 of Figure 19 and Figure 20 as above constitutes or design document below.
The generating apparatus 100 (ST1) of all control part 107 start-up procedure or design document through user's operation, is indicated in the user terminal.
All control part 107 starting design information input parts 108 (ST2).
Design information input part 108 is provided for importing each picture data of design information successively to user terminal 200.
User terminal 200; Through user's operation, import picture G40 to design information input part 108 input design informations (ST3) through instrument (tool) information input picture G10, application message input picture G20, application message pattern input picture G30 and table information successively.Tool information input picture G10, shown in figure 15, have the input tool of being used for information (d1, input field d2) (field) g11, g13 and button g12, g14~g16.Here, so-called " tool information " is meant the essential information of generating apparatus 100 actions that are used for program or design document.In input field g11, loading routine generates destination catalogue d1.In input field g13, the input journal file is used catalogue d2.In addition, replace direct input, also can select the picture assigned catalogue by the catalogue that shows through pressing button g12, g14 to input field g11, g13.
User terminal 200 can stop the generating apparatus 100 of this program or design document through the pressing operation Interrupt Process of the button g15 (button) that undertaken by the user.In addition, next application message input picture G20 can be transferred to through the pressing operation of the button g16 that undertaken by the user in user terminal 200.
Application message input picture G20, shown in figure 16, have and be used to import application message (the input field g21~g26 of d3~d6) and button g27, g28.Here, so-called " application message " is meant the essential information of the application that the generating apparatus 100 through program or design document generates.Loading routine ID d3 in input field g21.Loading routine title d4 in input field g22.The bag name d5 of loading routine in input field g23.Input database link information d6 in input field g24~g26.Database linkage information d6 can be subdivided into the URL of data library device 300, the user who is used to connect (user) name and password (password), in each field g24, g25, g26, imports respectively.The picture G10 of front through the pressing operation of the button g27 that undertaken by the user, can be returned in user terminal 200.Next application message pattern input picture G30 through the pressing operation of the button g28 that undertaken by the user, can be transferred in user terminal 200.
The application message pattern is imported picture G30, and is shown in figure 17, has to be used to import application mode information (d7, drop-down list d8) (pull-down list) g31, input field g32, g33 and button g34, g35.Here, so-called " application mode information " is meant the information that any specification of the plurality of specifications that selection can generate through the generating apparatus 100 of program or design document is such and is used to change the necessary or parameter arbitrarily of the action of application.The pattern customizing messages d7 that input is used in drop-down list g31.User terminal 200 through the selection operation that is undertaken by the user, is selected some from the pattern that is predetermined.In addition, the pattern of this application can be appended.The key of input option and value d8 in input field g32, g33.In this example; As option; Employing is through add the 1 exclusive control mode with the contradiction that prevents same updating data when the data of the particular column stored that is updated in table at every turn, and the key of in option keys, specifying the row ID of expression particular column is specified the row ID of the reality of particular column in option value.This option keys and value can be specified any number.User terminal 200, the pressing operation of the button g34 that carries out through the user can return the picture G20 of front.User terminal 200, the pressing operation of the button g35 that carries out through the user can be transferred to next table information input picture G40.
Table information input picture G40, shown in figure 18, have input field g41~g50 and button g51~g53.Input Table I D d9 in input field g41.The title d10 of input table in input field g42.Input row ID d11 in input field g43.The title d12 of input row in input field g44.The type d13 of input row in input field g45.This field g45 also can select input from the type that is predetermined.The figure place location number d14 of input row in input field g46, g47.Input PK attribute d15 in input field g48.In this example,, then select "-" if not PK if PK then selects " ο ".Input Not Null attribute d16 in input field g49.In this example if Not Null then selects " ο ", if allow NuU then select "-".Input picture display properties d17 in input field g50.Should row if in this example, on picture, show in when reading, then select " ο ", if on picture, do not show then select "-".User terminal 200, the pressing operation of the button g51 that carries out through the user can return the picture G30 of front.User terminal 200, the pressing operation of the button g52 that carries out through the user is transferred to and is used for appending the new table information input picture G40 that generates the table that uses using, and perhaps transfers to next table information input picture G40 that the information input finishes.
User terminal 200, the pressing operation of the button g53 that carries out through the user, the input of sign-off table information is for the generation (ST4) of all control part 107 instruction programs.
All control parts 107 detect user's button press event (event), to the indication (ST5) of design information input part 108 reception and registration programs generation.
Whether design information input part 108 is accepted the indication that program generates, for not having incorrect input to send checking indication (ST6) to proof department 109 in the authorization information input.One example of the checking here is the unspecified occasion of necessary information in Figure 14, the represented situation as mistake.Proof department 109 is carried out checking, returns checking ST7 as a result to design information input part 108).The checking result comprises having or not of mistake, and vicious should wrong content.
Design information input part 108 comprises the occasion of mistake the value of returning from proof department 109, return error message (ST8) to all control parts 107.All control parts 107 send this error message (ST9) to user terminal 200.
Design information input part 108 does not comprise the occasion of mistake the value of returning from proof department 109, return the faultless meaning (ST10) to all control parts 107.All control parts 107 send the indication (ST11) that model information is exported to model information efferent 110.
Model information efferent 110, output model information 104a writes in model information storage part 104 (ST12).
When the end of output of model information 104a, all control parts 107 send the indication (ST13) that design document generates to design document generation portion 111.In addition, the program that the design document of step (step) ST13~ST17 generates processing and step ST18~ST23 generates processing, and carrying out that earlier can.Here, narrate the occasion of the design document generation processing of first execution in step ST13~ST17 for example.
Behind step ST13; Design document generation portion 111; Read respectively model information 104a, the meta model information in the meta-model storage part 101 and the design document in the template stores portion 102 in the model information storage part 104 Template Information (ST14, ST15, ST16).Here, as the example of meta model information, the relative path of expression definition information 101d in the presentation graphs 8.Relative path definition information 101d is in the definition relative path, the meta model information which type of filename is the program that expression generates get.For example the program of the such typing (stereotype) of Action becomes the such definition of requestHandler/ [table_id_caps] Action.java.When in this definition, adding generation destination catalogue (supposition is c:$tmp) d1 in the model information 104a, routine package name (supposition is foo.bar) d5 and Table I D (supposition is emp) d9; The preservation destination of the program that generates becomes c:$tmp$foo$bar$requestHandler$EmpAction.java, and the complete qualified name of type (class) becomes foo.bar.requestHandler.EmpAction.
Design document generation portion 111 is utilized in the template stores portion 102 the design document template of the guide look form of preserving, and generates the design document 105a of representation program guide look.Design document generation portion 111 equally also can use the information of the JSP (Java Server Pages) as picture file, generates the design document 105a of expression picture guide look.According to above-mentioned, design document generation portion 111 according to model information 104a, meta model information and design document template, generates design document 105a (ST17), in design document storage part 105, writes this design document 105a.
When the generation of design document 105a finished, all control parts 107 sent the indication (ST18) that program generates for program generation portion 112.
Program generation portion 112, read respectively model information 104a, the meta model information in the meta-model storage part 101 and the program in the template stores portion 102 in the model information storage part 104 Template Information (ST19, ST20, ST21).
Program generation portion 112 uses each the information generation program 106a (ST22) that reads at step ST19~ST21, in program storage part 106, writes this program 106a.In addition, as long as program generation portion 112 duplicates the use storehouse (ST23) that slavish copying gets final product to storehouse 103a.
Here, specify the processing of step ST22, ST23 with reference to the process flow diagram of Figure 21.
Program generation portion 112, the root directory definition information 101a according to Fig. 2 and Fig. 3 represent makes catalogue (ST22-1).
Root directory definition information 101a is the program that generates of expression for its each kind with which catalogue as basic point generate meta model information.For example, the program source file (program source file) of the use Java language that generates for each the Table I D d9 in the model information 104a becomes [system_id]/WEB-INF/src/ [class_name_prefix]/[table_id].When in this definition, adding program ID (being assumed to userlist) d3 in the model information 104a, routine package name (being assumed to foo.bar) d5, Table I D (being assumed to emp) d9, the basic point catalogue that generates this program source file becomes userlist/WEB-INF/src/foo/bar/emp.
Program generation portion 112, the pattern of the specific application that should generate, the concrete template for decision utilizes in source code generates defines information 101b (ST22-2) with reference to the abstract template file of representing among Fig. 4~Fig. 6.
Abstract template file definition information 101b is the meta model information of the abstract template file that utilizes when being illustrated in generator program 106a.For example in the occasion of the program that generates the such typing of Action, the template of utilizing pre-prepd Action to use.But the template of the option utilization through the pattern used or appointment is not necessarily unique.To this, abstract template file definition information 101b is the information that is used to determine specifically to utilize which template.In abstract template file definition information 101b, for example write concrete template for each the pattern customizing messages d7 that in model information 104a, comprises.In addition, for example, in the program 106a that generates for each the Table I D d9 in the model information 104a, the typing of Action, Service, DAO, DS etc. is arranged.The program 106a of these typings defines with the such attribute of java_table (property) name in abstract template file definition information 101b; The key of the concrete template of specific utilization is respectively control_action, control_service, control_dao, control_ds.In addition for example; In pattern customizing messages d7 supposition is the occasion of AppPattern1; Use the program that generates for each; With the such attribute-name definition of java_application.pattern.AppPattem1, the key of the concrete template of specific utilization is control_commandDS in abstract template file definition information 101b.
Program generation portion 112 through with reference to the concrete template file definition information 101c that representes among abstract template file definition information 101b and Fig. 7, determines the actual concrete template of utilizing (ST22-3).
Concrete template file definition information 101c is the meta model information of the concrete template file that utilizes when being illustrated in generator program 106a.The key that for example has been presented as the concrete template of the program that generates the such typing of Action is the example of control_action.The file of the concrete template through the decision of this key is lib/template/srcTemplate/controlTemplate/control_action. vm.That is, in this pattern, for the concrete template file of the program utilization that generates the such typing of Action is control_action.vm.
Program generation portion 112, the relative path that generates the destination through the program of representing with reference to Fig. 8 defines information 101d, generator program 106a (ST22-4) in the designated directory in program generation destination.
Relative path definition information 101d is that expression is the information of the root directory of each kind of the program of in step ST22-1, making as the generation destination of the program of basic point.The key that for example has been presented as the concrete template of the program that generates the such typing of Action is the example of control_action.Program generation destination through this key decision is requestHandler/ [table_id_caps] Action.java.[table_id_caps] is the variable of expression " having made uppercase character string to the initial character of Table I D ".Promptly, become requestHandler/EmpAction.java and requestHandler/DepAction.java getting the program of two such tables of emp, dept as the such typing of the occasion Action of object.
The processing of above step ST22-2~ST22-4 is repeated to carry out the generation end (ST22-5) up to whole programs of formation object.
Then, program generation portion 112, with reference to represent among Fig. 9~Figure 11 such as duplicate object document definition information 101e, copy source document definition information 101f, each file copy information (ST23-1) of duplicating destination document definition information 101g.Then, program generation portion 112 abides by this document Copy Info and duplicates the file (ST23-2) of regulation to the place of regulation.
Duplicate object document definition information 101e is the abstract model of the file of indicating to duplicate.For example through the such key of jar, be the decision of the kind of the file that should duplicate corresponding such 6 kinds of commons-beanutils, commons-digester, jakarta-orostruts, procomposer, log4j, commons-collections with this key.The copy source of each file with duplicate the destination, through copy source document definition information 101f and duplicate destination document definition information 101g definition.For example the copy source of the kind of the such file that should duplicate of procomposer is the lib/reference/procomposer_rt.jar through copy source document definition information 101f definition.In addition; This document duplicate the destination; Be through duplicating the procomposer_rt.jar of destination document definition information 101g definition, still becoming the root directory of the basic point that duplicates the destination, same with the example that the front is represented; In root directory definition information 101a,, be [system_id]/WEB-INF/lib with the attribute-name definition that is called jar.
The processing of this step ST23-1~ST23-2, whole program of duplicate object duplicate end before repeat (ST23-3).
According to above-mentioned, can be according to the pattern of the application of selecting, on one side suitably switch template, the generation of basic point, the utilization of generator program catalogue, the file that should duplicate, duplicate the destination, generator program on one side.
As stated, according to this embodiment, the generating apparatus 100 of program or design document; Export after being transformed to the design information of input the model information 104a of abstract form of the concrete specification that does not rely on each program; According to the concrete template of this model information, meta model information, design document, write design document storage part 105 behind the generation design document, simultaneously according to model information 104a, meta model information; Concrete template file in the decision template stores portion 102; Concrete template file through model information 104a, meta model information and decision generates each program 106a, in program storage part 106, writes this program 106a according to meta model information.
Therefore, different with existing mode in this embodiment, can generator program and design document because not importing detailed physical specification, so can improve the throughput rate of application and development.In addition, because determine concrete template file according to the pattern customizing messages, thus different with existing mode, can set the specification of formation object neatly.
In addition; Because only through user's input design information seldom; Just can generate the application program that to carry out immediately and the design document of application program of a plurality of patterns automatically,, can improve the throughput rate of application and development so can shorten the Production Time of program and design document.
As replenishing, can and utilize this meta-model according to the meta-model of the template of the mode switch utilization of the application that will generate through definition, even do not import detailed physical specification, also can generate the application that will move automatically.Same in addition, the pattern generator of the application that can from a plurality of templates, select to generate according to meta-model.Equally, through editor's meta-model, can easily append the pattern of the application of generation.
Therefore, according to this embodiment, can improve application and development efficient.
In addition, different according to this embodiment with the existing mode of generator program only, except that program, can also generate design document.In addition, according to this embodiment, because be in meta model information, to have specified template file, so different with existing mode, the user does not specify (perhaps need not take into account) template file, just can generator program and design document.And then according to this embodiment, through in meta model information, defining the relation of design information and template file and catalogue etc. in advance, the input for seldom design information can generate a large amount of programs and design document.In addition, in the prior art, amount and the proportional relation of input quantity of design information of the program of output arranged.
In addition; Because through perhaps utilize the structure of storehouse 103a generator program 106a and design document 105a from template 102a~102g; Omitted user's programming operation; So can prevent to improve the quality based on the sneaking into of bugs (bug) of the mistake of programming (programming) operation.
And then, because all control parts 107 through carrying out the program 106a that generates, can be confirmed the action of this program 106a, so need not append installation.In addition, even appending the occasion of installation, also can use this program 106a and design document 105a as example or blank.Here, in the occasion as example or blank use, for example the concrete example as the exploitation standard can be launched into project.
In addition; Replace high-quality template 102a~102g or utilize storehouse 103a; In the not clear template (program) of service property (quality) or the occasion in storehouse, can utilize the generating apparatus 100 of program or design document as the not clear template of service property (quality) or the testing tool (test tool) in storehouse.
In addition; The method of putting down in writing in the above-described embodiment; As the program that computing machine (computer) is carried out, also can in storage mediums such as disk (disk) (soft (registered trademark) dish, hard disk etc.), CD (CD-ROM, DVD etc.), photomagneto disk (MO), semiconductor memory, store issue.
In addition, as this storage medium, if can stored programme and the storage medium of embodied on computer readable, then its file layout be that any form all can.
In addition, also can be used to realize each part of handling of above-mentioned form according to the indication of the program that (install) is installed to computing machine from storage medium by OS (operating system), database management language (software) or the network software execution such as (netWork software) of operation on computers.
And then the storage medium among the present invention is not limited to and computing machine medium independently, also comprises the storage medium that download (download) waits storage after the program that transmits or stores temporarily through LAN or the Internet (Internet).
In addition, storage medium is not limited to one, carries out the occasion of the processing the above-mentioned embodiment from a plurality of media, is also contained in the storage medium among the present invention, and dielectric structure also can be an any structure.
In addition; Computing machine among the present invention; Be based on program stored in the storage medium and carry out each device handled in the above-mentioned embodiment, a device of forming that also can wait by personal computer (personal computer), with any structure in the system of network connection multiple arrangement etc.
In addition, the computing machine among so-called the present invention is not limited to personal computer, is also contained in the arithmetic processing apparatus that comprises in the messaging device, microcomputer (microcomputer) etc., is the general name that can realize the unit of function of the present invention through program.
In addition, the application invention is not limited to former state and indiscriminately imitates above-mentioned embodiment, the implementation phase in the scope that does not break away from its main points, can be out of shape the back and specialize inscape.In addition, can be combined to form various inventions through disclosed a plurality of inscapes in the above-mentioned embodiment suitable.For example, also can from embodiment, delete several inscapes in the disclosed inscape.Moreover, the inscape of also can appropriate combination in different embodiments, using.

Claims (2)

1. the generating apparatus of program or design document is used for generating respectively the design document of each program of a plurality of programs that constitute application program and a plurality of programs that generate, it is characterized in that,
Have:
The meta-model storage unit; Be used to store following meta model information; This meta model information comprises: root directory definition information, and it is shown for each, has defined the first root directory value of representation program generation destination; This first root directory value comprises the routine package name of the program ID that representes said application program, said application program and the Table I D that representes said table; And, having defined the second root directory value of representation program generation destination for each said application program, this second root directory value comprises said program ID; Abstract template file definition information; It is shown for each; Defined the first corresponding template particular key of each program in a plurality of programs with said generation; And, defined the second corresponding template particular key of each program in a plurality of programs with said generation for each pattern customizing messages of said application program; Concrete template file definition information, it is for each said template particular key, has defined each program and the concrete template file of design document in a plurality of programs of said generation; With relative path definition information, it has defined the relative path of program generation destination for each said first template particular key and the said second template particular key, and this relative path comprises Table I D;
Template storage unit, its storage is through the concrete template file of said concrete template file definition information definition;
The design information input block, it is used to import the design information that comprises program ID, routine package name, pattern customizing messages, Table I D;
Model information output unit, its said design information are exported after being transformed to the model information of abstract form of concrete technical specification of each program in a plurality of programs that do not rely on said generation;
The design document generation unit; It is according to the concrete template of the Table I D in the said model information, said relative path definition information, said design document; Generation comprises the design document that is presented at the complete list of the filename that has made up this Table I D in the said relative path definition information as complete list, writes the design document storage unit to this design document;
According to abstract template file definition information in the Table I D in the said model information and pattern customizing messages, the said meta model information and concrete template file definition information, determine the unit of the concrete template file in the said template storage unit; With
The program generation unit; It is according to Table I D in the said model information and said relative path definition information; Generate the filename of each program in a plurality of programs of said generation; Through each program in a plurality of programs that generate this document name as the filename of the concrete template file of said decision said generation, according to said root directory definition information and said relative path definition information, each the program write-in program storage unit in a plurality of programs of said generation.
2. the generating apparatus of program according to claim 1 or design document is characterized in that,
Said root directory definition information has also defined the 3rd root directory value of representing to duplicate the destination for each kind of duplicate object file,
Said meta model information also includes: for each kind of duplicate object file, defined the duplicate object document definition information of copy source filename; For each said copy source filename, defined the copy source document definition information of the memory location of copy source file; With for each said copy source filename, defined the destination document definition information of duplicating of duplicating the destination document name,
The generating apparatus of said program or design document also has:
With said the 3rd root directory value corresponding file storage unit and
According to said root directory definition information and the said destination document definition information of duplicating; Copy source file, copy to the file copy unit of said file storage unit through said duplicate object document definition information and said copy source document definition information definition.
CN2009101426496A 2008-06-05 2009-06-04 Generating device of program or design documents Active CN101599014B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008148391A JP4672754B2 (en) 2008-06-05 2008-06-05 Program / design document generation apparatus and program / design document generation program
JP2008148391 2008-06-05
JP2008-148391 2008-06-05

Publications (2)

Publication Number Publication Date
CN101599014A CN101599014A (en) 2009-12-09
CN101599014B true CN101599014B (en) 2012-07-25

Family

ID=41420469

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101426496A Active CN101599014B (en) 2008-06-05 2009-06-04 Generating device of program or design documents

Country Status (2)

Country Link
JP (1) JP4672754B2 (en)
CN (1) CN101599014B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5426632B2 (en) * 2011-09-30 2014-02-26 株式会社東芝 Application generation program and apparatus
CN103164199B (en) * 2011-12-14 2016-05-18 中国银联股份有限公司 Application model generating apparatus and method based on hierarchy
JP5450752B1 (en) * 2012-09-26 2014-03-26 株式会社東芝 Program and design document generation apparatus and program
JP5835291B2 (en) 2013-09-05 2015-12-24 コニカミノルタ株式会社 COMMUNICATION DEVICE, ITS CUSTOMIZATION METHOD, AND COMPUTER PROGRAM
CN112579153A (en) * 2020-12-15 2021-03-30 中国航发控制系统研究所 Method for generating software model design description

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101034349A (en) * 2007-04-06 2007-09-12 西安万年科技实业有限公司 Data base application system development platform based on functional design

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000231479A (en) * 1999-02-10 2000-08-22 Nec Corp Software component integrating method and its device
JP2003076544A (en) * 2001-08-30 2003-03-14 Nippon Yunishisu Kk Method and device for developing web application
JP2005242479A (en) * 2004-02-24 2005-09-08 Toshiba Corp Data converting device and program for data conversion
JP2006106866A (en) * 2004-09-30 2006-04-20 Toshiba Corp Apparatus for assisting in changing conversion rule and program for assisting in changing conversion rule
JP4924976B2 (en) * 2005-03-23 2012-04-25 新日鉄ソリューションズ株式会社 Software development support system
JP2006309697A (en) * 2005-03-31 2006-11-09 Keiichi Naito Computer system, program for computer system, and program generating application program based on spreadsheet program among the programs
JP2007087127A (en) * 2005-09-22 2007-04-05 Open Stream Inc Data generation program, storage medium for storing the program, open source software developmental environment integration program, and storage medium for storing the program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101034349A (en) * 2007-04-06 2007-09-12 西安万年科技实业有限公司 Data base application system development platform based on functional design

Also Published As

Publication number Publication date
JP2009294940A (en) 2009-12-17
CN101599014A (en) 2009-12-09
JP4672754B2 (en) 2011-04-20

Similar Documents

Publication Publication Date Title
US6158001A (en) Automatic configuration generation
US7398514B2 (en) Test automation stack layering
JP4681025B2 (en) A database that facilitates software installation and testing for computer systems assembled to order
JP4396994B2 (en) Resource file translation verification method, apparatus, and program
US8255790B2 (en) XML based form modification with import/export capability
US6546365B1 (en) System for national language support and automated translation table
EP1306771A2 (en) XML based report generator
CN101599014B (en) Generating device of program or design documents
US20080189682A1 (en) In-Line Editor
US7096421B2 (en) System and method for comparing hashed XML files
JPH1185558A (en) Test method for software installed and order programmed computer system
CN103226545A (en) Data format conversion system, and method and system for batch loans information import
EP1830275A1 (en) Information distribution system
US20030192043A1 (en) Method for installing software bundles on target computers
US20120266131A1 (en) Automatic program generation device, method, and computer program
WO2020259141A1 (en) File processing method and apparatus, and computer device
TWI393897B (en) Integrated test method and system using the same
Scaffidi et al. Using topes to validate and reformat data in end-user programming tools
JP5450752B1 (en) Program and design document generation apparatus and program
JP5683209B2 (en) Client computer with automatic document generation function
JP2013171323A (en) Document preparation method, document preparation device, and document preparation program
JP2007304778A (en) Test method for program, program, test device and application development system
EP4170481A1 (en) Development assistance device, program, and development assistance method
US20090150767A1 (en) Server having dynamic web page creating function
JPH03248228A (en) Error detection for software design information

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant