1. Field of the Invention
The present invention relates to an apparatus for managing a configuration of application software having a plurality of program modules and module-configuration described in the form of a digital specification file.
2. Description of the Background Art
Application software for execution in a computer includes a plurality of program modules such as a program module for executing a principal function, a program module related to input and output, a program module related to display, and the like.
There are occasions when such a program module is shared between a plurality of pieces of application software. Sometimes, a program module used in a preceding version is used again after a version upgrade of application software.
In such cases, there has arisen a problem in that the management of program modules constituting application software becomes complicated. Specifically, it is assumed that, when a version upgrade of two pieces of application software is performed, an input/output-related program module remains shared between the two pieces of application software whereas display-related program modules are updated in the respective pieces of application software. Because the input/output-related program module is shared, all of the program modules in each of the two pieces of application software cannot be updated in a collective manner but are required to be updated one by one. For only the display-related program modules as an example, it is necessary to perform the process of searching for an appropriate program module by using the exact matching or prefix matching of program module names, and then replacing the program module found by the search with a new program module.
For a version upgrade of a single piece of application software which does not involve the change of an input/output-related program module but involves the change of a display-related program module, it is similarly necessary to perform the process of updating only the display-related program module.
Thus, a variety of techniques have conventionally been proposed for program module configurations of application software and for management of revisions thereof. An example of such techniques is disclosed, for example, in Japanese Patent Application Laid-Open No. 2001-256258.
The present invention is intended for an apparatus for managing a configuration of at least one piece of application software including a plurality of program modules.
According to the present invention, the apparatus comprises: a storage operable to store a digital specification of the piece of application software, the digital specification including a plurality of module-specifications related to the plurality of program modules, respectively; a first processing element operable to change an objective module-specification in the digital specification; and a second processing element operable to determine an objective program module related to the objective module-specification and change the objective program module in the piece of application software.
This achieves the correct change of the program module configuration of application software.
According to another aspect of the present invention, the storage is operable to store a plurality of digital specifications corresponding to a plurality of pieces of application software, respectively, the first processing element is operable to change the objective module-specification in a selected digital specification, and the second processing element is operable to change the objective program module in a corresponding piece of application software in response to change of the objective module-specification. Further, the plurality of pieces of application software include first and second pieces of application software sharing at least one program module, the first processing element is operable to change at least one module-specification related to the at least one program module in a first digital specification describing the first piece of application software, and the second processing element is operable to change the at least one program module in the first piece of application software without changing the at least one program module in the second piece of application software.
Even when a program module is shared between the plurality of pieces of application software, the digital specifications describing the respective pieces of application software are different from each other, and the program module is changed based on each of the application software specifications. This achieves the change of the program module constituting each piece of application software without regard to the sharing of the program module.
The present invention is also intended for a method of managing a configuration of at least one piece of application software.
The present invention is also intended for a program for implementing in a computer an apparatus managing a configuration of at least one piece of application software including a plurality of program modules.
It is therefore an object of the present invention to provide an application software configuration management apparatus, an application software configuration management method, and a program which easily perform the management of a program module configuration in application software by giving attention to an application software specification for defining a piece of application software and program module specifications for defining respective program modules.
These and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.
Preferred embodiments according to the present invention will now be described with reference to the drawings.
The application software configuration management apparatus 1 is a commonly used personal computer, and includes a CPU 11, a display section 12, an input section 13, a network interface 14, a media drive 15, a storage section 16, and a memory 17.
The CPU 11 controls the entire application software configuration management apparatus 1. In particular, the CPU 11 executes in the memory 17 a program 161 recorded on a media disc 18 inserted in the media drive 15 to implement the functions of the application software configuration management apparatus 1.
The display section 12 is used to present information necessary for an application software configuration management process thereon. The input section 13 includes a mouse and a keyboard, and is used by an operator entering a command into the application software configuration management apparatus 1.
The network interface 14 is provided to connect the application software configuration management apparatus 1 and a network not shown to each other. The program 161 for implementing the functions of the application software configuration management apparatus 1 may be downloaded from a server not shown through the network interface 14.
The media drive 15 is used to read the program 161 recorded on the media disc 18. The program 161 read by the media drive 15 implements the functions of the application software configuration management apparatus 1.
The storage section 16 stores therein the program 161 read by the media drive 15. The storage section 16 includes an application software storage section 162, and an application software specification storage section 163.
The application software storage section 162 stores therein a plurality of pieces of application software managed by the application software configuration management apparatus 1. The application software storage section 162 has a plurality of folders. A piece of application software composed of a plurality of program modules is stored in each of the folders.
The application software storage section 162 includes a program module storage section 1621 for storing therein a plurality of program modules. The program module storage section 1621 stores a program module created by a client not shown and received through the network interface 14, and a program module recorded on the media disc 18 and read by the media drive 15. Examples of the program modules stored in the program module storage section 1621 include a program for updating a piece of application software and a patch for correcting a piece of application software. The program modules stored in the application software storage section 162 are not those constituting the piece of application software at this point.
The application software specification storage section 163 included in the storage section 16 is provided to store a plurality of application software specifications in the form of digital document files corresponding respectively to the plurality of pieces of application software stored in the application software storage section 162. In a process to be described later, when storing an application software specification in the application software specification storage section 163, a specification association storage section 171 associates the application software specification with a corresponding piece of application software. The application software specification contains descriptions about a specification for the corresponding piece of application software. Specifically, the application software specification defines a function implemented by the corresponding piece of application software and a specification for program modules for implementing the function. It is desirable that the application software specification is a structured document written in XML (extensible Markup Language) and the like because a contradiction is less likely to arise if a description change occurs and because there is a need to define a relationship between a function implemented by the corresponding piece of application software and the program modules for implementing the function.
The application software specification storage section 163 includes a program module specification storage section 1631 for storing a plurality of program module specifications corresponding respectively to the plurality of program modules stored in the program module storage section 1621. In a process to be described later, when storing a program module specification in the program module specification storage section 1631, the specification association storage section 171 associates the program module specification with a corresponding program module. The program module specification contains descriptions about a specification for the corresponding program module. The program module specification may define a function implemented by the corresponding program module and a specification for another program module for implementing the function. It is also desirable that the program module specification is a structured document because there is sometimes a need to define a relationship between a function implemented by the corresponding program module and another program module for implementing the function.
The memory 17 is a work area in which the CPU 11 executes the program 161 stored by the storage section 16. In consequence of the execution of the program 161 by the CPU 11, the functions of the specification association storage section 171, a program module specification change section 172, and a program module change section 173 are implemented in the memory 17.
The specification association storage section 171 performs the process of storing an application software specification in the application software specification storage section 163. In this process, the specification association storage section 171 establishes an association between the application software specification to be stored therein and a piece of application software corresponding to the application software specification. In the process of storing an application software specification in the application software specification storage section 163, the specification association storage section 171 references the file name of the application software specification to search the application software storage section 162 for a corresponding piece of application software. When the corresponding piece of application software is present in the application software storage section 162, the specification association storage section 171 establishes an association between the corresponding piece of application software and the application software specification being subjected to the storage process.
Similarly, in the process of storing a program module specification in the program module specification storage section 1631, the specification association storage section 171 references the file name of the program module specification to search the program module storage section 1621 for a corresponding program module. When the corresponding program module is present in the program module storage section 1621, the specification association storage section 171 establishes an association between the corresponding program module and the program module specification being subjected to the storage process.
The program module specification change section 172 is provided to change a program module specification described in an application software specification stored in the application software specification storage section 163. When an operator of the application software configuration management apparatus 1 desires to execute a change from a first program module constituting a piece of application software to a second program module, the program module specification change section 172 performs the process of executing a change from a first program module specification described in an application software specification stored in the application software specification storage section 163 to a second program module specification after reading the second program module specification associated with the second program module from the program module specification storage section 1631.
In response to the change from the first program module specification described in the application software specification to the second program module specification by the program module specification change section 172, the program module change section 173 executes the change from the first program module constituting the piece of application software to the second program module associated with the second program module specification. This results in a change in the configuration of the piece of application software.
The program module change section 173 reads from the program module storage section 1621 the second program module associated with the second program module specification to which the change is executed by the program module specification change section 172. Then, the program module change section 173 writes the read second program module into a folder which stores the piece of application software in the application software storage section 162 and corresponding to the application software specification in which the first program module specification is described. Thus, the change is executed from the first program module constituting the piece of application software to the second program module.
First, in Step S1, the application software configuration management apparatus 1 receives/reads a piece of application software whose configuration is to be managed through a network not shown or from the media disc 18 to store the piece of application software in the application software storage section 162. For the storage of a plurality of pieces of application software, a plurality of folders included in the application software storage section 162 are used to store the plurality of pieces of application software, respectively.
In Step S2, the specification association storage section 171 stores in the application software specification storage section 163 an application software specification corresponding to the (or each) piece of application software stored in the application software storage section 162 through a network not shown or from the media disc 18. In this process, the specification association storage section 171 establishes an association between the application software specification to be stored in the application software specification storage section 163 and the piece of application software corresponding to the application software specification. In the process of storing the application software specification in the application software specification storage section 163, the specification association storage section 171 references the file name of the application software specification to search the application software storage section 162 for a corresponding piece of application software. When the corresponding piece of application software is present in the application software storage section 162, the specification association storage section 171 establishes an association between the corresponding piece of application software and the application software specification being subjected to the storage process.
The technique for description of the application software specification is not limited to the structured document shown in
Referring again to
The plurality of program modules are illustrated above as stored in a collective manner in the program module storage section 1621. For convenience of management, folders may be created according to the functions of program modules in the program module storage section 1621, and be adapted to store the program modules having functions corresponding to the functions indicated by the respective folders.
In Step S4, the specification association storage section 171 stores program module specifications in the program module specification storage section 1631 through a network not shown or by reading the media disc 18. The program module specifications to be stored in the program module specification storage section 1631 correspond respectively to the program modules stored in the program module storage section 1621. In the process of storing a program module specification in the program module specification storage section 1631, the specification association storage section 171 references the file name of the program module specification to search the program module storage section 1621 for a corresponding program module. When the corresponding program module is present in the program module storage section 1621, the specification association storage section 171 establishes an association between the corresponding program module and the program module specification being subjected to the storage process.
Like the application software specification shown in
The plurality of program module specifications are illustrated above as stored in a collective manner in the program module specification storage section 1631. For convenience of management, folders may be created according to the functions of program modules in the program module specification storage section 1631, and be adapted to store the program module specifications corresponding to the program modules having functions corresponding to the functions indicated by the respective folders.
The specification association storage section 171 is illustrated above as establishing the associations by referencing the file names of the application software and program module specifications in Steps S2 and S4. However, an operator of the application software configuration management apparatus 1 may manipulate the input section 13 to cause the specification association storage section 171 to function, thereby establishing the associations. Additionally, the associations may be established by referencing unique identifiers previously assigned to a piece of application software and an application software specification or to program modules and program module specifications, respectively.
Referring again to
In Step S6, the program module specification change section 172 executes the change of a program module specification described in the application software specification for the purpose of making the change in the piece of application software occurring in Step S5.
In Step S51, the program module specification change section 172 reads into the memory 17 an application software specification corresponding to a piece of application software to be changed.
In Step S52, the operator of the application software configuration management apparatus 1 manipulates the input section 13 to search the program module specification storage section 1631 for the second program module specification.
Because of the change from the first program module “subset1.exe” to the second program module “subset10.exe,” the operator searches for the second program module specification “subset10_spec” corresponding to the second program module “subset10.exe.”
If the search fails to find the second program module specification in Step S52, the second program module “subset10.exe” and the second program module specification “subset10_spec” corresponding thereto may be stored in the program module storage section 1621 and the program module specification storage section 1631, respectively, and be associated with each other at this point.
If the search succeeds in finding the second program module specification, the program module specification change section 172 executes the change from the first program module specification to the second program module specification in the application software specification in Step S53.
Referring again to
Thus, when the application software configuration management apparatus 1 shown in
The change of the program module in the single piece of application software has been described hereinabove. The application software configuration management apparatus 1 according to the present invention is capable of processing even when a plurality of pieces of application software share a program module with each other.
It should be noted that a program module shared between pieces of application software need not be stored in a folder in the application software storage section 162.
As described above, the two pieces of application software ASP1 and ASP2 share the program modules “GUI.com” and “InOut.com” for the screen display function and the input/output function with each other. Under such conditions, when the shared program module “GUI.com” is not changed in the piece of application software ASP1 but is changed to its revision “GUI—1.com” in the piece of application software ASP2, there is sometimes an error such that the program module “GUI.com” is deleted by mistake. Another error is such that the program module for implementing the screen display function in the piece of application software ASP1 is also changed to the revision “GUI_.com” although only the screen display function in the piece of application software ASP2 must be changed.
The application software configuration management apparatus 1 according to the present invention, however, does not cause the above-mentioned errors because the application software specifications are associated with the respective pieces of application software and the program modules are associated with the respective program module specifications described in the application software specifications.
As a result, the program module “GUI.com” constituting the piece of application software ASP2 is changed by the program module change section 173. As shown in
Thus, in changing a shared program module in one of the pieces of application software which share some program modules with each other, the application software configuration management apparatus 1 is capable of managing the program module configuration in the pieces of application software.
The folder which stores the program modules “GUI.com” and “GUI—1.com” shown in
As a result, the two pieces of application software ASP1 and ASP2 in the application software storage section 162 share the program modules “GUI.com” and “InOut—1.com” with each other, as shown in
Thus, in changing a shared program module in the pieces of application software which share some program modules with each other, the application software configuration management apparatus 1 is capable of managing the program module configuration in the pieces of application software.
Thus, when the application software configuration management apparatus 1 shown in
Modifications
The application software configuration management apparatus 1 is implemented in a single computer in the above description. However, the construction of the application software configuration management apparatus 1 may be implemented in a computer system including a plurality of computers connected by way of a network.
The computer system 100 shown in
The application software according to the present invention is not limited to application software used in typical computers. The present invention is applicable, for example, to system development software for use in system development and to business-application software.
While the invention has been described in detail, the foregoing description is in all aspects illustrative and not restrictive. It is understood that numerous other modifications and variations can be devised without departing from the scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
JP2005-078300 | Mar 2005 | JP | national |