T 3044/19 (Supporting partitions in a multitenant application server environment/ORACLE) 26-09-2023
Download and more information:
System and method for supporting partitions in a multitenant application server environment
I. This is an appeal against the decision, dispatched with reasons on 12 July 2019, to refuse European patent application No. 15 736 357.3. According to the reasons for the decision, the independent claims of the main and first and second auxiliary requests were unclear, Article 84 EPC, and their subject-matter did not involve an inventive step, Article 56 EPC. Amended claims according to a third auxiliary request were not admitted, Rule 137(3) EPC, as they prima facie contained added subject-matter, Article 123(2) EPC.
II. A notice of appeal and the appeal fee were received on 6 September 2019, the appellant requesting that the decision be set aside and a patent granted. The appellant also made an auxiliary request for oral proceedings.
III. With a statement of grounds of appeal, received on 7 November 2019, the appellant filed amended claims according to a new first auxiliary request and requested that the application be remitted to the examining division with the order to grant a patent on the basis of the main request treated in the decision, said new first auxiliary request and the first, second and third auxiliary requests treated in the decision, renumbered to second, third and fourth auxiliary request, respectively. The appellant also refiled the description for all requests in the form currently on file.
IV. In an annex to a summons to oral proceedings the board gave its preliminary view on the appeal, as follows. The board was inclined to admit the first and fourth auxiliary requests. The board had doubts whether the difference features of inter alia the independent system claims of all requests over the disclosure of D1 had a technical effect and could therefore contribute to inventive step, Article 56 EPC. The board did not agree with the clarity objections in the decision against what were now the main and second to fourth auxiliary requests, but did have doubts as to the clarity of claims 1 and 9 of the main request in the light of claims 8 and 16. The same objection applied to the other requests, mutatis mutandis. The amendments in the claims of the fourth auxiliary request seemed to comply with Article 123(2) EPC.
V. With a response, received on 24 August 2023, the appellant submitted amended claims according to auxiliary requests A, 1A, 3A and 4A.
VI. In the oral proceedings, held on 26 September 2023, the appellant requested that the decision under appeal be set aside and that a patent be granted on the basis of the main request, corresponding to that treated in the decision, auxiliary request A as filed with the letter of 24 August 2023, the first auxiliary request as filed with the statement of grounds of appeal, auxiliary request 1A as filed with the letter of 24 August 2023, the second and third auxiliary requests corresponding to the first and second auxiliary requests treated in the decision, auxiliary request 3A as filed with the letter of 24 August 2023, the fourth auxiliary request corresponding to the third auxiliary request treated in the decision, and auxiliary request 4A as filed with the letter of 24 August 2023.
At the end of the oral proceedings the board announced its decision.
VII. The application is being considered in the following form:
Description (all requests):
pages 2 to 16, as originally filed, and
pages 1, 1a and 17, received on 17 August 2018.
Claims:
Main request: 1 to 17, received on 24 May 2019.
Auxiliary request A: 1 to 15, received on 24 August 2023.
Auxiliary request 1: 1 to 17, received with the statement of grounds of appeal.
Auxiliary request 1A: 1 to 15, received on 24 August 2023.
Auxiliary request 2: 1 to 15, received as "first auxiliary request" on 24 May 2019.
Auxiliary request 3: 1 to 17, received as "second auxiliary request" on 25 June 2019.
Auxiliary request 3A: 1 to 15, received on 24 August 2023.
Auxiliary request 4: 1 to 17, received as "third auxiliary request" on 25 June 2019.
Auxiliary request 4A: 1 to 15, received on 24 August 2023.
Drawings (all requests):
Pages 1/8 to 8/8, as originally filed.
VIII. Claim 1 according to the main request and auxiliary request A reads as follows:
"1. A system for a multitenant environment, the system comprising one or more computers, the system including an application server environment (100) that enables the deployment and execution of software applications, the application server environment having a domain (102) that defines, at runtime, an application server domain including one or more partitions (104) and resource groups (124, 128, 140), wherein each partition, associated to a tenant, provides an administrative and runtime subdivision of the domain, wherein each resource group is a collection of deployable applications or resources, wherein a said partition includes one or more of said resource groups (124,128), wherein one of said resource groups (124) in said partition is configured to reference (190) a resource group template (160), and wherein each resource group template includes one or more applications or resources, and some of the information required to activate said applications or resources is not stored as part of the template, wherein each partition is configured to define properties for configuration data that is not specified in the resource group template to which the partition's resource groups refer."
Claim 1 of auxiliary requests 1 and 1A results from editorial amendments to that of the main request and auxiliary request A.
IX. Editorial amendments aside, claim 1 of auxiliary request 2 results from combining claims 1 and 8 of the main request, the additional feature reading "wherein a partition can override configuration information specified by a resource group template."
X. Claim 1 of auxiliary requests 3 and 3A differs, editorial amendments aside, from that of the main request in the additional feature "wherein the system is configured to activate an application represented by a resource group template differently for each partition, using the properties each partition has defined".
XI. Claim 1 of auxiliary requests 4 and 4A differs, editorial amendments aside, from that of the main request and auxiliary request A in the additional feature "wherein information about resources on which an application depends varies from one partition to the next".
1. Admissibility of the appeal
In view of the facts set out at points I to III above, the appeal fulfills the admissibility requirements under the EPC and is consequently admissible.
2. Procedural matters
2.1 The admittance of auxiliary request 1
The appellant has argued that auxiliary request 1, received with the statement of grounds of appeal, responds to the clarity objection set out in the decision. The board accepts the appellant's arguments, since the amendments seek to clarify the resource group templates. Hence the board admitted this request.
2.2 The admittance of auxiliary request 4
This request is the same as the third auxiliary request treated in the decision, in which the examining division discussed the compliance of this request with Articles 84 and 123(2) EPC before deciding not to admit it. Hence, at least in substance, if not formally, the examining division did consider this request. Consequently the board has discretion to admit this request (Article 12(6) RPBA) and, in view of the examining division's opinion on the substance of the request, set out in the decision, the board admitted it.
2.3 Auxiliary requests A, 1A, 3A and 4A
These requests were filed after the notification of the summons to oral proceedings. They respond to the clarity objection raised for the first time by the Board in the annex to the summons, concerning dependent claims 8 and 16. They are the same as the corresponding main and auxiliary requests 1, 3 and 4, except that claims 8 and 16 have been deleted and the claims renumbered. In view of these exceptional circumstances, the board has taken them into account and assessed the inventive step of inter alia requests A, 1A, 3A and 4A below.
3. A summary of the invention
3.1 The application relates to using one or more computers to provide an application server environment (see figure 1; 100) comprising a domain, itself comprising partitions (104) having multiple tenants, meaning users; see [41-46]. The tenants make calls to the application server including configuration information to activate applications and resources. Resources may be, for example, JMS, JDBC, JavaMail, WLDF or a data source ([28, 30]).
3.2 The description defines two system administrator roles; see [12,17]. An "application server administrator" can create or delete partitions and define domain-level or partition-level resource groups (see [35] and figure 1; 124,140), whilst a "partition administrator" can manage a partition, for instance creating resource groups within the partition; see [64,77]. In either case a resource group contains a shared group of applications and resources, a resource group template defining at least some of the configuration information to be used to activate the resources of the resource group; see [31].
3.3 In the example illustrated in figure 4 (see also paragraphs [46-54]), the same "MedRec" application is accessed via the resource group template "MedRec" (286) by two different doctor's offices as tenants, namely "Bayland Urgent Care" (BUC) and "Valley Health" (VH). Each tenant is associated with its own partition and can access tenant-specific resources, such as databases (PDB 208); see [37] and figure 4; 293,294.
3.4 A partition can access domain-wide applications via resource group templates; see [30]. The effect of the template is to define specific values of the resource activation information for use with that partition; see [31]. Some of the information required to activate its resources may not be stored as part of the template itself. Instead it is specified at partition-level; see [38]. The appellant has described this as a "two-tier" system for specifying configuration data in that some data is specified at domain-level and some at partition-level.
4. The board's understanding of the invention
4.1 The invention relates to an application server environment (see figure 1; 100) having multiple users, termed "tenants". The application server environment, when running, defines a domain (102) having one or more partitions (104) and one or more resource groups (128, 140) including applications and resources, such as databases; see [19]. Resource groups can be defined both at the domain-level (140) and the partition-level (128). The example shown in figure 4 comprises two tenants, each having its own partition (290,292), each referring to the same domain-level resource group template (286) which activates the same "MedRec" (understood to mean "Medical Records") application but with access to a different partition-specific database (324,334); see figure 5 and [46-54].
4.2 Applications can be "deployed" to partitions or resource group templates, understood to mean that access to the application is made possible; see [47]. A partition (see figure 1; 104) can activate resources either directly (see figure 5 and [51,55])(128) or via a reference (190) to a resource group template (160) at the domain level (102). As shown in figure 2, despite accessing a resource (217) via a resource group template (210), a partition (208) can provide partition-specific information (230) directly to the resource; see [21].
4.3 The application discloses partition-level configuration information filling in the gaps in the domain-level configuration information in a resource group template used to activate resources, understood by the board to mean that there is no overlap; see [31,50]. Alternatively, there can be overlap (see auxiliary request 2) in the sense that configuration information specified by a partition can override configuration information specified by a resource group template at domain-level; see [31], last sentence.
4.4 The board understands the splitting of activation information between the domain and partition levels to be hidden from both the application server and the tenants. Whatever the split, the activation information reaching the application server is always "fully configured", as the description puts it; see [53]. In the oral proceedings, the appellant agreed with this assessment.
5. Clarity, Article 84 EPC
The board finds that, despite the doubts raised in the annex to the summons, claim 1 of all requests is sufficiently clear for the assessment of inventive step.
6. Document D1 (US 2014/0075019 A1)
6.1 According to its abstract, D1 relates to a cloud computing environment in which software applications are accessed by customer (also termed "tenant") applications, a service management engine (SME) in communication with an "orchestration engine" providing services of various types according to a service definition package (SDP).
6.2 As illustrated in figure 1, the cloud computing environment (100) comprises a Software as a Service (SaaS) layer (170), a Platform as a Service (PaaS) layer (160) and an Infrastructure as a Service (IaaS) layer (120). The environment can be used by multiple tenants, each having a cloud account, the PaaS platform (500) comprising a service domain (510) including one or more service applications (apps) (512) for use by one or more tenants (513); see [43] and figure 3. The applications themselves may use a logical model based on accessing a shared database (termed "shared resources")(see [55]), but this is not necessarily so, and some applications can have a logical model based on exclusive access to a database (termed "unshared resources"); see [54]. Services can be for "multitenancy use" or "dedicated use"; see [56]. An "orchestration engine" (116) isolates services created by a tenant from other tenants; see [116].
6.3 Thus D1 discloses domain-level activation of applications (multitenancy use) as well as partition-level activation of applications (dedicated use), but does not disclose a split or overlap of application or resource activation information between the "domain" and "partition" levels - termed the "two-tier" or "bifurcated" solution by the appellant, as set out in the claims.
7. Inventive step, Article 56 EPC
7.1 According to the appealed decision, the independent claims of what are now the main and second to fourth auxiliary requests did not involve an inventive step. Their claims comprised features, in particular the partition, the resource group and the resource group template which, being data structures and/or configuration aspects, lacked technical character and were thus unable to contribute to inventive step. In particular, using property values defined in each partition to activate an application represented by a resource group template differently for each partition was not regarded as having a technical effect.
7.2 The starting document for assessing inventive step
7.2.1 The appellant has questioned the suitability of inter alia D1 as a starting point for assessing inventive step. The board takes the view that any relevant prior art document can be used as a starting point for proving an actual lack of inventive step, the issue to be decided being whether the skilled person would have arrived at the claimed subject-matter in an obvious manner.
7.2.2 The board regards D1, relating to multi-tenancy in a computer system, as an appropriate starting point for assessing inventive step.
7.3 Inventive step starting from D1
7.3.1 According to the appellant, the claimed subject-matter differed from the disclosure of D1 in that D1 did not disclose data structures which could be regarded as a resource group template or the claimed relationship between resource group templates and partition resource groups. In particular, D1 did not disclose the following features:
a. each resource group template includes one or more applications or resources, and some of the information required to activate said applications or resources is not stored as part of the template itself and
b. each partition is configured to define properties for configuration data that is not specified in the resource group template to which the partition's resource groups refer.
The board agrees that these are the differences between the subject-matter of claim 1 of the main request and auxiliary request A and the disclosure of D1. The differences are referred to collectively below as "splitting activation information".
8. The existence of a technical effect
8.1 There has been extensive discussion in this case of whether the above difference features produce a technical effect. The appellant has presented the following four lines of argument to show this. The board has not been persuaded by any of them.
8.2 Improving multi-tenancy and resource sharing
8.2.1 The appellant has argued that splitting activation information between the domain- and partition-levels, has the effects of making the domain more compatible with multi-tenancy and more efficiently sharing resources between tenants. This made shared resources more easily executable by each tenant. In the oral proceedings the appellant argued that defining all activation information at partition-level made the system difficult to use; defining shared activation data only once at domain-level eased system administration. This yielded advantages at the administrator level and also, indirectly, at a user level, since system performance improved.
8.2.2 The board is not persuaded that the splitting of activation information does result in more efficiently sharing resources between tenants or, put another way, executing shared resources. The splitting of activation information is hidden from the application server and the tenants. The appellant has not produced any evidence that splitting activation data, at this level of generality, improves any measurable aspect of system performance. As claimed, splitting activation information may increase the flexibility with which the system administrators can manage the computer system. Although technically skilled, the system administrators in this scenario are human beings performing the mental act of administering the computer system. Moreover, even if, for the sake of argument, the invention did more efficiently share domain resources between tenants, this would have been a usual aim of the skilled person implementing the multitenant computing environment known from D1.
8.3 Conserving server resources and reducing the number of activation calls
8.3.1 The appellant has argued that the difference features have the technical effects of conserving server resources and reducing the number of activation calls to the application server.
8.3.2 The board takes the view that, starting from either of the cases known from D1, namely partition-level or domain-level specification of activation information, the invention achieves no net saving in resources, since it is hidden from the application server. However activation information is split between the domain and partition levels, with or without overlap, the invention uses the same resources which are merely represented at a higher level in a different way. The board does not agree that defining shared configuration data once, in a domain-level template, means that any less server resources are used or any fewer calls to the application server are made as a consequence, since the invention is hidden from the application server. Hence this argument does not show that a technical effect exists.
8.4 Decision T 1137/09
8.4.1 The appellant argued in the oral proceedings that, in T 1137/19, the board (in a different composition) found that partition management in a computer system involving changing associations between partitions and resource pools had technical character; see reasons 3.10-3.15. This meant that partition management in a computer system had a technical effect.
8.4.2 The board is not persuaded by this argument because in that decision the partition management was enforced by the kernel of an operating system; see reasons, points 1.1, last sentence, and 3.19. In the present case the invention is intended to ease the work of the system administrators by allowing them to define domains, partitions and resource groups in a way which is hidden from the application server and thus cannot result in any reorganisation of hardware resources. Only the resulting actual allocation of resources to applications is presented to the application server. Consequently the board is not persuaded by this argument.
8.5 Migrating partitions
8.5.1 The appellant argued in the oral proceedings, referring to paragraph [64] of the application, that a system administrator could migrate partitions, this clearly having a technical effect.
8.5.2 The board notes that this paragraph, entitled "Partition Administration", gives no details of what "migration" entails. Moreover no feature in claim 1 relates to migration. Consequently migration does not fall under claim 1 of any request.
8.6 The board's finding on the effects of the difference features
The board finds that the difference features have the effect of separating the administrative responsibilities of the "application server administrator" at domain-level from those of the "partition administrator" at partition-level; see paragraphs [12,17]. Whilst such a division of responsibilities can improve the flexibility, and even the reliability, with which a computer system is administered, the board finds that the claims have not been limited to scenarios in which performance advantages accrue. The difference features set out administrative matters which consequently lack a technical effect and cannot contribute to inventive step.
8.7 The board concludes that the subject-matter of claim 1 of the main request and auxiliary request A does not involve an inventive step, Article 56 EPC, in view of D1.
8.8 Auxiliary requests 1 and 1A
The appellant has relied on its arguments regarding the main request regarding both of these requests, stating that both requests had been submitted to address matters of clarity. The board, for the same reasons as for the main request and auxiliary request A, finds that the subject-matter of claim 1 of these requests also does not involve an inventive step in view of D1.
8.9 Auxiliary request 2
8.9.1 The appellant has argued that, by using partitions defining configuration data that overrides configuration data in the resource group template, the configuration of the domain was simplified, since the partitions merely needed to specify deviations from the default values in the resource group template. It also allowed the activation information to be more finely customized. The domain was made more adaptable to multitenancy and resource management was improved. This approach was not known from D1.
8.9.2 The board finds that, although the added feature of partition-level configuration data overriding domain-level configuration data is not known from D1, the amendment to claim 1 does not change the fact that the invention is hidden from the application. Moreover the difference features still relate to administrative aspects and lack a technical effect, since they are carried out by human administrators performing the mental act of administering the computer system.
8.9.3 Hence claim 1, also for the same reasons as for the main request, does not involve an inventive step in view of D1.
8.10 Auxiliary requests 3 and 3A
8.10.1 The appellant has argued that, in view of the clarifying amendments to inter alia claim 1, its subject-matter involves an inventive step in view of D1.
8.10.2 The board finds that the amendments to claim 1 of these requests do not change the fact that, for the reasons set out above for the main request, the subject-matter of claim 1 does not involve an inventive step in view of D1.
8.11 Auxiliary request 4 and 4A
8.11.1 The appellant has argued that the fact that configuration data in a partition can override that in a resource group template allows a domain to be configured more simply and flexibly, since the partitions merely need to specify deviations from the default values in the resource group template. The domain was made more adaptable to multitenancy and resource management was improved. This approach was not known from D1.
8.11.2 As with the previous request, the board finds that the amendments to claim 1 of these requests do not change the fact that, for the reasons set out above for the main request, the subject-matter of claim 1 does not involve an inventive step in view of D1.
For these reasons it is decided that:
The appeal is dismissed.