Operation consistency maintenance method, system and program

To provide a technology capable of maintaining the consistency of a managed object even when an existing operation program is used for manipulation without modifying the existing operation program when the managed object itself on an execution base is expanded. An operation consistency maintenance method for an operation consistency maintenance system which maintains operation consistency of an application which operates on an application server comprises reading, from a storage device, manipulation control information indicating a manipulation control method when middleware is manipulated from an application operation program, and transmitting a call for inhibiting a manipulation request or for changing a calling operation function based on the read manipulation control information to the application server by a communication device; and receiving the call by the application server by means of the communication device, and calling either an application operation function or a middleware operation function indicated by the received call.

INCORPORATION BY REFERENCE

The present application claims priority from Japanese application JP2006-345208 filed on Dec. 22, 2006, the content of which is hereby incorporated by reference into this application.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an operation consistency maintenance technology for maintaining the operation consistency of an application which operates on an application server of a computer system.

2. Description of the Related Art

For a managed object such as an application which is present on an execution base, there are an operation function for executing an operation and an operation program such as a GUI (Graphical User Interface) corresponding to it. For manipulation of the managed object from the operation program, there is devised a system that the operation function is also added in conformity with the expansion of the execution base to associate the manipulation with the operation function, so that the operation program such as the GUI can be expanded easily (JP-A-6-301436).

There is also devised a system that a suppressing/correcting means for manipulations from an operation program is newly disposed in accordance with the functions of plural execution bases each having a different function to manage the operation in an integrated fashion (JP-A-2000-322393).

SUMMARY OF THE INVENTION

When the managed object itself on the execution base is expanded (hereinafter called the middleware) to add an operation function and an operation program is also expanded newly, it becomes possible to manipulate from the new operation program, but it is also possible to manipulate from the existing operation program according to the conventional technology. As a result, when the existing operation program is used to manipulate, there might be generated manipulations that the managed object consistency cannot be maintained. For example, in a case where new middleware is realized on an application server program, a new operation function and operation program are installed, but inconsistency is generated when the new middleware is manipulated by the existing operation program. More specifically, when a start-up function of the new middleware causes the existing start-up function to involve the initialization of a database (DB), the middleware is started without the initialization of the DB if the start-up is executed from the existing operation program.

The present invention has been made in view of the above circumstances and provides a technology capable of maintaining the consistency of a managed object even when an existing operation program is used for manipulation without modifying the existing operation program when the managed object itself on an execution base is expanded.

The present invention relates to an operation consistency maintenance system for maintaining the operation consistency of an application which operates on an application server, comprising inhibiting a manipulation request or changing a calling operation function based on manipulation control information indicating a manipulation control method when the middleware is manipulated from an application operation program.

The operation consistency maintenance system of the invention is an operation management system for controlling manipulation from an existing application operation program to middleware which is disposed on an application server and added with a function specific to the application, wherein an operation control unit is disposed to inhibit a manipulation request or to change a calling operation function based on the manipulation control information indicating a manipulation control method when the middleware is manipulated from the application operation program.

For example, the operation control unit is provided with a dependency relation generation unit which collects manipulation control information about single or plural middleware and determines it as dependency relation information and a dependency relation judging unit which refers to the dependency relation information to decide a manipulation control method when the middleware is manipulated from the application operation program, and performs the manipulation control described below to maintain the consistency of the managed object.

Specifically, when a manipulation from an existing operation program is desired to be inhibited, “inhibit” is applied, when a new operation function is desired to be manipulated from the existing operation program without generating a new operation program, “switching” is applied, and when an existing operation function can be reused as it is as a sufficient function, “takeover” is applied.

For example, the operation control unit is preferably provided with the dependency relation generation unit which obtains operation function list information from the operation function providing unit and a function call unit which calls an operation function decided by the dependency relation judging unit with reference to the operation function list information. In this case, the operation function decided by the dependency relation judging unit can be called without making a change to the operation control unit even when the operation function is added.

According to the present invention, the consistency of the managed object can be maintained even when the existing operation program is used to perform the manipulation without modifying the existing operation program when the managed object itself on the execution base is expanded.

DESCRIPTION OF THE INVENTION

An operation consistency maintenance system according to an embodiment of the present invention to maintain the operation consistency of an application which operates on an application server is described below.

FIG. 1is a diagram showing the whole construction of the operation consistency maintenance system according to the embodiment. InFIG. 1, an application operation management system has a server13connected to an application management client10, a middleware management client11and a middleware management client12over a network14such as the Internet. InFIG. 1, they are disposed on different computers but may be partly or entirely disposed on the same computer.

InFIG. 1, the server13is composed of a memory1and a CPU5, the memory1has therein an application server program400which is an execution base of applications, and the application server program400has thereon an application410, middleware411, middleware412and an application413to execute the functions provided by the individual applications and middleware. The middleware is a kind of application and has a unique add function in addition to the common function possessed by the applications. Therefore, the middleware has a name as the middleware in addition to the name as an application.

An application operation function310performs a processing to operate each application including the middleware. The application operation function310performs the operation processing of the above-described common function on all the applications ranging from the application410to the application413. And, the middleware operation function311and a middleware operation function312are operation functions dedicated to the operation processing of the middleware411and the middleware412. The middleware is function-expanded in comparison with an ordinary application, so that the middleware operation function311and the middleware operation function312are function-expanded in comparison with the application operation function310. While the application operation function310can perform the operation processing of all the applications, the middleware operation function311and the middleware operation function312each perform only the operation processing of the middleware411and the middleware412.

To manipulate the applications410to413, a user executes an application operation program100. An application operation program110and an application operation program120also provide the same function as the application operation program100does. To manipulate the middleware411and the middleware412, middleware operation programs101and102are executed. The middleware operation programs101and102are programs dedicated to calling of the middleware operation function311and the middleware operation function312and perform operation manipulations of the middleware411and the middleware412as the middleware respectively.

The application management client10is composed of a memory2and a CPU6, and the memory2includes the application operation program100and the operation control unit200and can manipulate the applications410to413. And, the middleware management client11is composed of a memory3and a CPU7, and the memory3includes the application operation program110, an operation control unit201and the middleware operation program101and can manipulate the middleware411in addition to the manipulation of all the applications. The middleware management client12is composed of a memory4and a CPU8, and the memory4includes the application operation program120, an operation control unit202and the middleware operation program102and can manipulate the middleware412in addition to the manipulation of all the applications.

In a case where the application operation program100is executed to manipulate an intended function of a certain application, the operation control unit200is requested to manipulate. The operation control unit200specifies an operation function capable of performing a processing corresponding to the requested manipulation and calls an optimum operation function among the application operation function310, the middleware operation function311and the middleware operation function312via an operation function providing unit300. The operation control unit201and the operation control unit202also provide the same function as the operation control unit200.

The operation control units200to202have an object to judge an optimum operation function corresponding to a combination of the application intended by the user and the intended operation manipulation. For example, a start-up function of the middleware operation function311which is an operation function dedicated for the middleware411is to perform initialization of the DB subsequent to the operation processing of the start-up function as a common function possessed by the application operation function of the middleware411. In this case, when the user uses the middleware management client11to initiate a start-up manipulation of the middleware411by executing the application operation program110, it is necessary that the operation control unit201calls the start-up function of the middleware operation function311. If the start-up function of the application operation function310, which is a general-purpose operation function, is called, the DB is not initialized, and the system inconsistency is generated as a result.

It is determined in this embodiment that a program for functioning the computer as the operation control unit or the operation function providing unit is recorded on a recording medium such as a CD-ROM, stored in a magnetic disk or the like and then loaded to a memory for execution. The recording medium for recording the program may be a recording medium other than the CD-ROM. And, the program may be used by installing from the recording medium into the computer, and the program may be also used by accessing the recording medium over a network.

FIG. 4is a diagram showing in detail the middleware operation function311of the embodiment. The middleware operation function312also has the same structure. The middleware operation function311has a start-up function3110, a stop function3111, an add function3112and the like which are common functions as the application operation functions. The common function is a function which is possessed by both the application operation function310and the middleware operation function311but might be undergone the function expansion as middleware. For example, the start-up function3110might initialize the DB subsequent to the start-up function as the application.

The middleware operation function311has a middleware-specific function3113which is an expansion function with respect to the ordinary application. And, the manipulation control information321is information which defines an operation function to be called when the middleware411is manipulated from the application operation program100,110or120. A manipulation control information acquisition function3114provides the manipulation control information321in response to an acquisition request from the dependency relation generation unit220described later.

FIG. 5is a diagram showing in detail the manipulation control information321of the embodiment. As shown inFIG. 5, the manipulation control information321is comprised of a manipulation object application of the middleware operation function311and an operation method when the individual functions provided by the application are manipulated from the application operation program100,110or120.

For the operation method, any of “inhibit”, “takeover” and “switching” is defined. For example, a row3210shown inFIG. 5indicates that it is the application411that the middleware operation function311performs the operation processing. And, rows3211,3212and3213indicate that operation methods corresponding to a start-up function, a stop function and an add function define “inhibit”. Since the manipulation control information321holds the control method when the application operation program which is common to the system is executed, information on the middleware-specific function is not included.

The “inhibit” indicates that the manipulation from the application operation programs100,110and120is inhibited. The “takeover” indicates that the operation processing of the middleware411is performed by the application operation function310. And the “switching” indicates that the operation processing of the middleware411is performed by the middleware operation function311.

The definition of the “inhibit” means that the use of the application operation function common to the system is a false manipulation, and it inhibits the false manipulation. The definition of the “takeover” means that the application operation functions common to the system are used, and it is convenient to unify the operation method with another application. The definition of the “switching” means that it is manipulatable as middleware by using the application operation program common to the system, and the middleware can be manipulated with the same usability as the ordinary application.

The operation control unit200is described in further detail. The operation control unit201and the operation control unit202are also the same.FIG. 2is a diagram showing in detail the operation control unit200of the embodiment. As shown inFIG. 2, the operation control unit200holds the dependency relation information210. The dependency relation information210is information which is an aggregation of the manipulation control information321and operation control information322inFIG. 1and has a record of the manipulatable control method of each of the functions of the individual middleware.

FIG. 6is a diagram shown in detail the dependency relation information210of the embodiment. As shown inFIG. 6, the dependency relation information210is composed of an associated structure of an application name2100, a middleware name2101possessed by the application, and a manipulation control type2102of each function. For example, information of a row2103shown inFIG. 6is obtained from the manipulation control information321shown inFIG. 5. The manipulation control information321is possessed by the middleware operation function311, and the operation object is the middleware411, so that the “middleware411” is stored in the middleware name2101ofFIG. 6.

FIG. 3is a diagram showing in detail the operation function list information211of the embodiment. The operation function list information211ofFIG. 2holds information of call destination information2112used to call operation function details2111such as “start-up” and “stop” provided by an operation function2110as shown inFIG. 3. For example, a row2113indicates that “midAStart( )” which is provided by the middleware operation function311is called in order to use the start-up function of the middleware operation function311.

The operation control unit200ofFIG. 2also includes the dependency relation generation unit220, the dependency relation judging unit221and the function call unit222. They all are modules, and their detailed functions are described later.

The dependency relation generation unit220shown inFIG. 2generates the dependency relation information210and the operation function list information211. A processing to generate them is described with reference toFIG. 7.

FIG. 7is a flow chart showing a processing procedure for generation of the operation function list information211and the dependency relation information210by the dependency relation generation unit220according to the embodiment. The dependency relation generation unit220performs a processing with certain timing, for example, when the system is activated or when the operation control unit200receives a first processing request. First, where the dependency relation information210has been generated (Yes in1000), the processing is terminated.

If the dependency relation information210has not been generated (No in1000), the dependency relation generation unit220requests the operation function providing unit300to obtain the operation function and its call destination information provided by the application and middleware. The operation function providing unit300having received the request obtains the operation functions and their call destination information which are provided by the application operation function310, the middleware operation function311and the middleware operation function312and returns to the dependency relation generation unit220(1001). For example, the operation function provided by the middleware operation function311inFIG. 4includes the start-up function3110, the stop function3111, the add function3112, the middleware-specific function3113and the like. The manipulation control information acquisition function3114is not included in the operation function, so that it does not become an acquisition object. Then, the operation function list information211is generated based on the information obtained from the individual application operation functions (1002).

Then, the dependency relation generation unit220calls the manipulation control information acquisition function3114shown inFIG. 4and obtains manipulation control information possessed by the middleware operation functions311and312(1003). It generates the dependency relation information210based on the information obtained from the individual middleware operation functions (1004).

When the user executes the application operation programs100to102to manipulate the applications, the operation control units200to202select and call an optimum operation function for the manipulation desired by the user. The user designates the desired application name and the operation function to execute the application operation programs100to102. The user is not conscious that the application desired to be manipulated is middleware.

FIG. 8is a flow chart showing a processing procedure of the dependency relation judging unit221and the function call unit222according to the embodiment.FIG. 8shows a processing flow from the execution of the application operation program100by the user to calling of the operation function.

The processing flow when the application operation programs110and120are executed is also the same. The user designates the manipulation object application name and the operation functions such as “start-up” and “stop” to execute the application operation program100. First, the dependency relation judging unit221in the operation control unit ofFIG. 2checks whether the application of which execution request is designated from the application operation program100is present in the application name2100of the dependency relation information210shown inFIG. 6(2000).

In a case where the application of which execution request is designated is present in the application name2100(Yes in2000), it becomes clear that the application is middleware. The dependency relation judging unit221refers to the dependency relation information210to obtain a manipulation control type of the operation function of which execution request is received (2001). For example, in a case where the user manipulates “start-up” of the “application411”, the manipulation control type2102which is obtained by the dependency relation judging unit221becomes “inhibit” according to the dependency relation information shown inFIG. 6.

If the obtained manipulation control type is “inhibit” (inhibit in2001), the dependency relation judging unit221notifies the application operation program100that the manipulation is impossible (2005). Thus, it is possible to inhibit that the application operation function310is called to perform a false manipulation.

If the obtained manipulation control type is “switching” (switching in2001), the dependency relation judging unit221obtains a middleware name from the dependency relation information210(2002). For example, when the user performs a manipulation of the “start-up” of the “application412”, the manipulation control type2102is “switching” according to the dependency relation information shown inFIG. 6, and the middleware name2101becomes the “middleware412”. And, the dependency relation judging unit221requests the function call unit222to execute the middleware operation function of the obtained middleware name (2003).

The function call unit222having received the request obtains call destination information of the requested operation function from the operation function list information211(2006). For example, the function call unit222which has received a request for a “switching” function of the “middleware412” finds that the call destination is “midBStart( )” from the row2114of the operation function list information211shown inFIG. 3. And, the function call unit222calls from the operation function providing unit300an execution function of the operation function to the application of which execution request has been received (2007). For example, it corresponds to a call for the “midBStart( )”. Thus, if the manipulation control information is “switching”, the user can call not a general-purpose application operation function but a middleware operation function though the user uses the general-purpose application operation program.

In a case where the application of which execution request is designated is not present in the application name2100in step2000(it means that the application is an existing application which is not middleware) or where the manipulation control type obtained in step2001is “takeover”, the dependency relation judging unit221requests the function call unit222to execute the application operation function (2004) and proceeds to step2006. Thus, when the execution request is made to the existing application or when the manipulation control information is “takeover”, the general-purpose application operation function can be called.

Thus, the dependency relation judging unit221refers to the dependency relation information210to judge an optimum operation function corresponding to the manipulation control type. In addition, the function call unit222refers to the operation function list information211to obtain call destination information and to make an execution request of the operation function.

If the manipulation control type is “inhibit”, the manipulation cannot be made from the application operation program common to the system, so that when the user operates middleware from the viewpoint of the middleware, the middleware operation program is used for manipulation. For example, in a case where the middleware operation program101is used to manipulate for “start-up” of the middleware411, the dependency relation judging unit221does not perform a processing in the operation control unit201and requests the function call unit222to execute a start-up operation function of the middleware411because the manipulation object middleware name and manipulation control information are already known.

According to the application operation management system of the embodiment, a middleware operation method can be defined in unit of function when the user executes the application operation program100,101or102. When the “inhibit” is defined, the middleware411or412is inhibited from being executed illegally, and an operation with the consistency of the entire system maintained becomes possible. When the “takeover” is defined, it becomes possible to perform a middleware operation processing from a viewpoint integrated with an ordinary application. Where the “switching” is defined, it becomes possible to perform the middleware operation with the same usability as the ordinary application. Even when new application and middleware are added to the system, this characteristic is maintained, and an operation which maintains consistency is realized without changing the existing operation program at all. Since the existing operation program can be used continuously, a burden on the user is reduced, and the manipulability and serviceability of the system are improved.