|European Case Law Identifier:||ECLI:EP:BA:2013:T151809.20130621|
|Date of decision:||21 June 2013|
|Case number:||T 1518/09|
|IPC class:||G06F 9/50
|Language of proceedings:||EN|
|Download and more information:||
|Title of application:||A method and a system for cascaded processing a plurality of data objects|
|Applicant name:||SAP AG|
|Relevant legal provisions:||
|Keywords:||Inventive step - all requests (no)|
Summary of Facts and Submissions
I. The appeal lies against the decision of the examining di vision, dated 27 February 2009, to refuse the Euro pe an patent application 07003330.3.
II. The relevant procedure before the examining division can be summarized as follows.
(a) The examining division summoned the applicant/ appellant to oral proceedings with a communication dated 28 October 2008. In the annex to the summons it argued that the pending claims lacked an inven tive step, Article 56 EPC 1973, in view of do cu ments
D1: WO 03/060748 A2 and
D3: Moore R. W., "Knowledge-based Grids", Proc. of the 18th IEEE symposium on Mass Storage Systems and Tech nologies (MSS'01), pp. 29-40, IEEE Press, 2003.
The pending claims were further objected to as lacking con cise ness, Rule 29 (2) EPC 1973 in com bi nation with Article 84 EPC 1973, and objections under Article 83 and 84 EPC 1973 were also raised.
(b) In response, the applicant/appellant filed amen ded claims and further ar guments. These were dis cussed with the primary examiner on the telephone on 22 January 2009. Accor ding to the minutes of that te lephone con sul tation, the examiner argued that the inventive step objection from the summons con tin ued to apply, indicated which of the objec tions un der Article 83 and 84 EPC 1973 were main tained, and addressed the applicant/appellant's arguments which had been submitted with the amend ments. The minutes of the telephone consultation bear the date 27 January 2009, but an advance copy was sent to the appli cant by tele fax on 23 January 2009.
(c) By telefax of 26 January 2009, the applicant/ appellant indicated that it would not participate in the scheduled oral proceedings and requested a decision "according to the state of the file".
(d) Accordingly, the decision was delivered in ab ridged form reading as follows:
"In the communication(s) dated 28.10.2009, 27.01.2009 the applicant was informed that the application does not meet the requirements of the European Patent Convention. The applicant was also informed of the reasons therein. The applicant filed no comments or amendments in reply to the latest communication but requested a decision according to the state of the file by a letter received in due time on 26.01.2009."
III. Notice of appeal was filed on 21 April 2009, the appeal fee being paid on the same day, and a statement of grounds was received on 5 June 2009. The appellant re ques ted that the decision be set aside and a patent be gran ted based on a set of claims as filed with the grounds of appeal.
IV. With summons to oral proceedings, the board informed the appellant of its preliminary opinion. The board set out how, in its view, the claims had to be con strued and raised a clarity objection, Article 84 EPC 1973. The board further addressed the question which of the claimed features had to be considered to be part of the problem rather than the solution, and ex pressed its doubts as to whether the invention as claimed achieved the desired technical effect of re duced processor idle time. The board also raised an inventive step objection in view of D1, Article 56 EPC 1973.
V. In response to the summons, by telefax on 21 May 2013, the appellant filed two auxiliary requests. Du ring oral proceedings, the appellant filed amended claims accor ding to a new 1st auxiliary request to replace the pen ding 1st auxiliary request. It requested that a pa tent be granted based on the following application docu ments:
1-13 filed with the grounds of appeal on 5 June 2009
1-13 filed during oral proceedings on 21 June 2013, according to the 1st auxiliary request, or
1-13 as filed with letter dated 21 May 2013, accor ding to the 2nd auxiliary request
1-7, 10-16, 18 as originally filed
8, 9, 17, 19 filed with letter dated 17 December 2008
1/3-3/3 as originally filed
VI. Claim 1 according to the main request reads as follows:
"A method for cascaded processing a plurality of data objects using a data-processing system comprising a plurality of processors, each data object being assigned to a folder among a plurality of folders (1, ..., N), wherein a main process (M) distributes the plurality of folders (1, ..., N) to a corresponding number of parallel processes of the first tier of processes, each parallel process selects the data objects to be processed for the respective folder, splits the selected data objects into a plurality of packages, and distributes the packages of the plurality of packages to a corresponding number of second tier parallel processes, which respectively process each of the plurality of packages distributed, and respective results of the processed packages are collected from all second tier parallel processes in a single log which is reported back to the main process."
Claim 1 according to the 1st auxiliary request reads as follows:
"A method for cascaded processing a plurality of data objects using a data-processing system comprising at least a main computing unit (CPU_M) and a plurality of sub-computing units (CPU_1, ..., CPU_N) for a first tier of processes and a plurality of processors (CPU_i,j) for a second tier of processes, each data object being assigned to a folder among a plurality of folders (1, ..., N), wherein a main process (M) running on the main computing unit (CPU_M) distributes the plurality of folders (1, ..., N) to a corresponding number of parallel processes of the first tier of processes, each parallel process of the first tier of processes running on an available sub-computing unit among the plurality of sub-computing units for the first tier of processes selects the data objects to be processed for the respective folder, splits the selected data objects into a plurality of packages, and distributes the packages of the plurality of packages to a corresponding number of second tier parallel processes, each second tier process of the corresponding number of second tier parallel processes processes a package of the plurality of packages distributed, and respective results of the processed packages are collected from all second tier parallel processes of the corresponding number of second tier parallel processes in a single log which is reported back to the main process wherein each second tier process is performed by a processor among the plurality of processors for the second tier of processes."
Claim 1 of the second auxiliary request differs from that of the first auxiliary request in that the "main process" is said to be "running on the main process processor (CPU_M)" instead of a "computing unit", the formed packages are said to be "of appropriate size", and in containing the additional feature at the end:
"... which have a higher computing capacity than the sub-computing units used for the first tier of pro cesses."
VII. At the end of the oral proceedings, the chairman announced the decision of the board.
Reasons for the Decision
The decision according to the state of the file
1. According to the decision under appeal, the appli cant/appellant had requested a decision according to the state of the file by a letter received on 26 Ja nu ary 2009. The decision however refers to a communi ca tion dated 27 January 2009, i.e. a day after the re quest. In fact however this communication, the minutes of a telephone conversation, was sent out, as an ad vance telefax copy, already on 23 January 2009 and thus before the request on 26 January 2009 was made. The board therefore deems the reference to 27 January instead of 23 January to be made in obvious error. The board also notes that the appellant did not argue that this deficiency in the decision had caused it any disadvantage.
2. In general terms, the application is concerned with an architecture for parallel data processing. A preferred application for the invention is in the field of funds ma nagement, specifically the processing of carry-for ward commitments at the end of a fiscal year (see description as published, par. 2).
2.1 The data to be processed is associated to a number of different accounts - or, "more generally", as the appli ca tion puts it, to a number of different "folders" (see par. 41).
2.2 The application discloses two "conventional scenarios" for performing this processing task, one of which is the following (see fig. 2 and pars. 38-40): A main pro cess - running on an appropriate CPU - "assigns" each account for processing to a free CPU. Each such pa rallel process "selects" the data objects associated with the assigned account and then processes them. Once the process finishes, it reports back its result to the main process. It is observed that individual processes may finish ahead of others since the processing re quire ments for different accounts or folders may vary considerably (see fig. 2 and par. 39, last sentence) which may cause an "unreasonably long" idle time for some processors (par. 40).
2.3 To address this problem and to reduce the overall pro cessing time, the application proposes an alterna tive architec ture, accor ding to which each account is pro cessed by two tiers of processes (see fig. 3 and pars. 41-42): As in the conventional scenario just described, a main process dis tributes the plu ra lity of folders to a number of parallel pro cesses of the "first tier" each of which is to run on an "available CPU amongst a plu ra lity of CPUs". Each of these first tier pro cesses "se lects" the data to be processed and dis tri butes them, split into packages of "appropriate size" (see original claim 1), to an "appropriate num ber" of second tier pro cesses for processing (par. 42). The re sults of this pro cessing will be collected in a "single log which is reported back to the main process" (see pars. 7 and 46).
Terminological issues and claim construction
3. In the application a clear distinction is made between the terms "process", in most instances "parallel pro cess", and "processor" or "CPU".
3.1 The application discloses that the "main process ... run[s] on an appropriate CPU", that each of the diffe rent accounts is to be processed on an "available CPU" (first tier) and that, likewise, each package is pro cessed by a "respective CPU" (second tier; see pars. 41 and 42).
3.2 In the board's understanding, the parallel processes con stitute the compu ta tional units which may be dis tri buted over CPUs. The application leaves open, how ever, whether and when the parallel pro cesses are dis tributed to different processors for simul tane ous execution.
3.3 The skilled person would find it unrealistic to assume that there is a suffi cient number of processors to run all pa rallel pro cesses simultaneously. In a typical in stance of the disclosed funds management there will be a very large number of accounts - say, at least hun dreds - and a correspondingly larger number of packages - thousands, say. Moreover, the application discloses (par. 52) that the inven tion is meant to be implemented on a large va ri ety of different and conventional hard ware platforms including those which typically provide only one or only a very small number of separate processing units (e.g. merely two in a dual core processor).
3.4 In the board's view, therefore, the skilled person would take the application to disclose that the diffe rent "parallel processes" are distributed according to availability of the appropriate processors and that the same processor may have to execute more than one pro cess sequentially. The appellant confirmed this inter pre tation during the oral proceedings.
4. Claim 1 of all three requests specifies that the "packa ges" relating to one folder are "distribute[d] ... to a corresponding number of second tier processes".
4.1 According to the appellant this is intended to mean that the number of "second tier processes" is "adapted to the number of packages ... formed by [the] respe[c] tive first tier processes" (see grounds of appeal, p. 2, lines 15-18), so that the larger a folder is the more second tier processes are provided to pro cess it. This is argued to follow from the analogous language used for the first tier and the disclosure that N CPUs are used to process N folders (see original claim 1 and par. 41). More over, the appellant argued during the oral proceedings that the claims had to be construed as specifying that this selection was made dynamically, i.e. on need during processing.
4.2 The board concedes that original claim 1 uses the term "corresponding" for both tiers, referring to "a plu ra lity of folders" and a "corresponding number of ... first tier ... processes", as well as to "packages" and a "corresponding number of further pa rallel processes" but notes that the description dis closes distribution of the packages to an "appropriate" - rather than "corresponding" - "number" of second tier processes (par. 42). The description, therefore, does not support the view that the two occurrences of "cor res ponding" in claim 1 must be interpreted in the same way.
4.3 It is disclosed in figure 3 that the number of second tier processes may be different for different first tier processes (see, e.g., CPU_4,2 and 1 as opposed to CPU_N,4 - CPU_N,1; see also par. 43). It is not, how ever, disclosed that the number of second tier pro cesses is chosen dynamically in view of the size of the folder to be processed or how this would have to be done. In the board's view it is consistent with the de scription that the number of second tier processors be fixed per individual first tier process so that, for in stance, the packages of some first tier processes are executed on quad-core processors and those of others on dual-core processors.
4.4 The description and the claims also do not imply, in the board's view, that the number of second tier pro cesses corresponds to a varying number of packages. The de scription discloses that packages "of appropriate size" are formed but does not disclose that all packa ges must have the same size. Rather, packages might be formed in view of how many second tier processors are available for a particular first tier process so that folder data might be split into four equal-sized packages if a quad-core processor is available and in two equal packa ges if only a dual-core processor is avai lable.
5. The independent claims specify that "respective results of the processed packages are collected from all second tier parallel processes in a single log which is re por ted back to the main process". This language neither im plies when, how and under the control of which pro cess the results are collected, nor what the main pro cess is meant to do when they are "reported back" to it. During oral proceedings it was speculated with refe rence to figure 3 that the rectangular shapes below some second tier process arrows might be intended to re present the "single logs", and that the arrows lea ding to this shape from neighbouring second tier pro cesses might represent the claimed "collect[ing]" of data. However, this interpretation is not supported by any express statement in the description. Nei ther the description nor the drawings disclose any spe cific de tail about the implementation of the single log. The board accepts that the skilled person would find ways to implement a single log as claimed without exer cising an inventive step and therefore does not consi der the functional claim language to be de ficient as a result to be achieved or as insuffi cient ly disclosed under Articles 83 or 84 EPC 1973. How ever, due to the lack of specific disclosure, the pertinent claim language can only be interpreted in very broad terms.
6. In the oral proceedings there was considerable dis cussion of the limitations implied by the use of the term "folder", together with "assignment" to and "dis tribution" of said folders, as well as the "selection" of data objects. However, since these features only related to the distribution of the first tier and the appellant has described this stage as "conventional" (fig. 2 and pars. 38-40, an "account" is at any rate one example of a "folder"), the precise meaning of these terms is in fact irrelevant to the judgment of inventive step (see below).
Closest prior art
7. The board considers that the most appropriate starting point for the assessment of inventive step is the con ventional scenario described in application itself (see esp. fig. 2) which was summarized above (point 2.2). When this possibility was addressed during oral pro cee dings, the appellant confirmed that this scenario con sti tuted prior art for the present appli cation in the assessment of inventive step. Hereinbelow, this sce nario will be referred to as the "second conventio nal scenario".
8. According to claim 1 of the main request, the claimed me thod is to be executed on "a data-processing system comprising a plurality of processors". Otherwise, claim 1 specifies the method only in terms of processes and lacks any detail as to the distribution of parallel processes over different processors.
8.1 For this reason, the board considers that the claimed method cannot be accepted as achieving either a re duction of processor idle time or a reduction of pro cessing time (see the description, pars. 40, last sen tence, and par. 45, 1st sentence).
8.2 The appellant suggested during oral proceedings, that the claimed distribution of data processing over seve ral processes might not achieve the speed-up but is in strumental in enabling it: The archi tec ture would make it possible to have high speed pro cessors execute the actually expensive calculations. No further details of this allegedly technical effect were put forward.
8.3 The board notes that the second conventional scenario itself already allows the use of high-speed processors for the implementation of the processes P1-PN (see fig. 2) so that this potential cannot be attributed to the provision of a second tier of processes according to the claimed invention.
8.4 The appellant did not provide any other technical effect that the method according to claim 1 of the main request would have or any other technical problem that this method would solve in comparison with the second conventional scenario, nor is the board aware of any.
8.5 Hence, for lack of any technical problem that the me thod according to claim 1 of the main request can be said to solve, the board must conclude that claim 1 lacks an inventive step, Article 56 EPC 1973.
1st auxiliary request
9. It is apparent from the description and common ground between the appellant and the board that the second conventional scenario anticipates all fea tures of claim 1 according to the 1st auxiliary request except for those relating to the second tier. Spe ci fi cally, it is not disclosed as part of the second sce nario that
i) there is provided a "plurality of second tier pro cessors (CPU_i,j)" and that each "second tier process is performed by" one of them; that
ii) each first process "splits the selected data in to ... packages" and "distributes [them] to a correspon ding number of second tier processes" for processing; and that
ii) the results are collected from all second tier processes relating to the same folder in a "single log which is reported back to the main process".
10. Differences i) and ii) speed up the overall computation by parallelising the execution of processes P1-PN of the second conventional scenario.
10.1 In the board's view it is commonly known that the exe cu tion time of a computational task can be reduced by means of parallelisation. The second conventional sce na rio itself reflects this fact.
10.2 Therefore, the skilled person looking for further speed up, would naturally and without exercising an inventive step consider po ten tial for further parallelisation. More specifically, it would, in the board's view, na tu rally occur to the skilled person that each individual pro cess P1-PN could be parallelised, for instance by providing a dedicated multi-core processor for each of them. According to the board's interpretation of the claim language (see point 4.4), this reads on the claimed second tier processors. It is known in the art that to parallelise a task it must be split in sub-tasks. Parallelisation of the processes P1-PN thus di rectly suggests that the data of each folder be split into "packages" and then distributed to the parallel processors. In the board's view, hence, features i) and ii) would have been obvious for the skilled person try ing to speed-up the second conventional scenario.
11. Regarding difference iii), the description discloses (par. 7, last sentence) that the generation of a "very large number of separate result logs ... would ... be very difficult for a user to evaluate", implying, that a "single log" might simplify such evaluation. The broad term "evaluation" however is not specified any further. For lack of detail, the board has to assume that the main process happens to require the combined results for an unspecified evaluation. To satisfy this re quire ment the skilled person would, in the board's view, consider ways of providing the combined data in a suitable form and find, in the board's view, the claimed solution of "collecting" the results "from all second tier parallel processes in a single log" as one obvious option to do that.
12. The board thus comes to the conclusion that claim 1 of the 1st auxiliary request lacks an inventive step over the second conventional scenario, Article 56 EPC 1973.
2nd auxiliary request
13. Under Article 12(4) RPBA the board of appeal has dis cretion not to admit requests which could have been pre sented in the first instance pro ceedings. In the board's view, this applies, in parti cu lar, to the 2nd auxiliary request. Before the first instance, the appellant decided not to attend the sche duled oral pro ceedings so as to defend its case orally, nor indeed to file any auxiliary requests for the exa mining divi sion to consider in their decision. Instead, the appellant expressed its interest in a quick termi na tion of the first instance proceedings by requesting a deci sion according to the state of the file.
13.1 The board considers that Article 12(4) RPBA would have justified not to admit the 2nd auxiliary request.
13.2 In the present case the board decided to admit the request nonetheless because the inventive step of its claims could be dealt with straightforwardly.
14. In substance, claim 1 of the 2nd auxiliary request differs from that of the 1st auxiliary request only in specifying that the processors for the second tier should be chosen to have a higher computing capacity than those for the first tier.
14.1 Previously, the board found it obvious for the skilled person to speed-up the individual processes P1-PN of the second conventional scenario using parallel hardware.
14.2 To further increase the speed-up it would, in the board's view, have also been immediately obvious for the skilled person to use not only parallel hardware but also fast individual processors, including, if available and affordable, processors with a higher computing capacity than those for the first tier.
14.3 This appellant did not challenge this argument during oral proceedings.
14.4 The board thus concludes that claim 1 of the 2nd auxiliary request also lacks an inventive step over the second conventional scenario, Article 56 EPC 1973.
For these reasons it is decided that:
The appeal is dismissed.