T 1336/08 (Trace data/SAP) of 4.4.2012

European Case Law Identifier: ECLI:EP:BA:2012:T133608.20120404
Date of decision: 04 April 2012
Case number: T 1336/08
Application number: 04002805.2
IPC class: G06F 11/36
G06F 11/34
G06F 11/32
Language of proceedings: EN
Distribution: D
Download and more information:
Decision text in EN (PDF, 134.617K)
Documentation of the appeal procedure can be found in the Register
Bibliographic information is available in: EN
Versions: Unpublished
Title of application: Data processing system with display of test data
Applicant name: SAP AG
Opponent name: -
Board: 3.5.06
Headnote: -
Relevant legal provisions:
European Patent Convention Art 83
Keywords: Sufficient disclosure (no)
Request to take further evidence (no)
Catchwords:

-

Cited decisions:
-
Citing decisions:
-

Summary of Facts and Submissions

I. The appeal is directed against the decision of the examining division, posted on 17 March 2008, to refuse the application 04002805. The reason for the refusal was lack of inventive step, in violation of Article 56 EPC.

II. A notice of appeal was received on 4 April 2008. The fee was received the same day. A statement of the grounds of appeal was received on 6 May 2008. The main and two auxiliary requests which had been refused were maintained. Oral proceedings were conditionally requested.

III. The board issued a summons to attend oral proceedings, raising in the first place objections with respect to clarity and sufficient disclosure (Articles 84, 83 EPC). It also gave a provisional negative opinion on the issue of inventive step.

IV. In a letter dated 5 March 2012, the appellant filed a third auxiliary request with further limitations and clarifications of terms objected to in the summons. The appellant further filed declarations from two of the inventors relating to points raised in the summons. In respect of the issue of disclosure both declared that the implementation of tracing as claimed did not require the exercise of inventive skill, "as standard tracing techniques that belong to the common general knowledge have been used for implementing the tracing in accordance with the teachings of the invention, namely instrumentation instructions that have been added to the application program ...".

V. Oral proceedings were held on 4 April 2012. At their end, the chairman announced the board's decision.

VI. The appellant requests to set the decision aside and to grant a patent on the basis of claims 1-12 of the main request, the first or the second auxiliary request filed with letter dated 11 December 2007, or of claims 1-8 of the third auxiliary request filed with letter dated 5 March 2012; with description pages 1-4, 6-10, 12, 13 as originally filed; pages 5, 5a, 11 filed with letter dated 21 June 2006; drawing sheets 1-4 filed with letter dated 30 March 2004. During oral proceedings, the appellant made a further request that the board take further evidence using an expert. The subject-matter of the evidence would be as follows:

- What does the relevant person of skill in the art understand from the patent application in terms of the trace data that needs to be acquired by the trace program?

- In particular, is it clearly derivable from the application that the trace program needs to track which ones of the database table entries holding the customising parameters are accessed per result?

- Is the implementation of the tracing as derivable from the application possible for most types of programs using common general knowledge?

VII. Claim 1 of the main request reads as follows:

"1. A data processing system comprising:

- means (110) for execution of the application program,

- means (110) for execution of an analytical program (108),

- means (116) for storing a set of results provided by the application program,

- means for displaying the results on a user interface,

characterized in that it further comprises

- means (114) for storing database tables holding customising parameters for customising an application program (104),

- means (110) for execution of a trace program (106),

- means (118) for storing trace data acquired by the trace program during execution of the application program, the trace data comprising a path for each of the results, each path being descriptive of a sequence of database table entries of the database tables holding a sub-set of the customising parameters used for calculation of the corresponding result,

wherein the analytical program is operable to

(a) receive a user's selection of one of the results being displayed on the user interface,

(b) display sequentially the database table entries identified by the path of the selected one of the results."

The definition of the means for storing trace data, said means being the cause of the objection of insufficient disclosure on which the reasons below are based, is the same in the first and second auxiliary requests. In the third auxiliary request it is somewhat expanded:

"- means (118) for storing trace data ..., the database table entries of the sequence holding a sub-set of the customising parameters accessed for calculation of the result to which that path is assigned, the trace data consisting of a table for each one of the results, each of the tables containing a list of database table entries of the relational database stored in the memory area that belong to the path used for calculation of the respective result,".

Reasons for the Decision

1. Admissibility of the appeal

The appeal satisfies the requirements of the EPC for admissibility, see sections I and II above.

2. Admissibility of the third auxiliary request

Since this request clearly represents an attempt to overcome the clarity objections (Article 84 EPC) noted in the summons and does not raise any new issues, it is admitted to the procedure.

3. Insufficient disclosure

3.1 During the oral proceedings before the board, insufficient disclosure was discussed first, being the most fundamental objection. Once the board came to the conclusion that the disclosure was indeed insufficient, discussions about clarity and inventive step were superfluous. Since these issues were therefore not discussed in the oral proceedings they will likewise not be considered in what follows.

3.2 None of the requests satisfies the requirement of Article 83 EPC for sufficient disclosure of how to assign the acquired trace data to each of the results provided by the application program under test. In claim 1 of the main request and the first two auxiliary requests, the result of this assignment appears in the feature of a "path" (emphasis in italics style added):

"- means (118) for storing trace data acquired by the trace program during execution of the application program, the trace data comprising a path for each of the results, each path being descriptive of a sequence of database table entries of the database tables holding a sub-set of the customising parameters used for calculation of the corresponding result,"

In the third auxiliary request, this feature is expanded using the expressions "accessed", "assigned" and "table" additionally (italics style added):

"- means (118) for storing trace data ..., the database table entries of the sequence holding a sub-set of the customising parameters accessed for calculation of the result to which that path is assigned, the trace data consisting of a table for each one of the results, each of the tables containing a list of database table entries of the relational database stored in the memory area that belong to the path used for calculation of the respective result,"

Feature (b) in claim 1 of all requests relates to the path assigned to a result but not to what it represents (italics style added):

"(b) display sequentially the database table entries identified by the path of the selected one of the results"

3.3 When the skilled person tries to implement the subject-matter of claim 1 of all the requests, the question arises how the trace program 106 should acquire the sequence (also called "path") of "customising parameters" used or accessed for the calculation of a certain result of the application program (see the claim passages cited above). There is no disclosure in the application in this respect.

3.4 Since it is not evident to the board how the skilled person is intended to decide which accesses to "customising parameters" should be assigned to the path of which variables, the first possibility which comes to mind is that the path is simply defined as a record of all accesses to customising parameters up to the determination of the result in question.

3.5 However this is clearly not the explanation, since then other questions arise: How should the trace program know when the calculation of a result is finished during the program run? For example, if the program is arranged to store result 1 in a program variable called "Result1", then after an assignment to that variable "Result1" may still be changed later, as long as the program still runs, after further "customising parameters" have been read in. There seems to be no definite point in time for being sure that "Result1" contains its final value except the end of the program. The appellant agreed that the trace must run until the end of the program in his letter of reply dated 5 March 2012, page 5, paragraph 2.

3.6 But then every result is only definite once the program has come to an end. And every result would have the same sequence of accessed "customising parameters". This would make the user's selection of the path for a particular result meaningless, since the same path would be displayed whichever result had been selected.

3.7 Thus clearly accesses have to be assigned in some way to individual results. The board is at a loss to know how this could be done in such a way as to be applicable to all (or even just the majority of) programs, noting that the claims do not place any constraints on the type of program to which the invention is supposed to apply. As argued above, it is certainly not sufficient that an access takes place before the final calculation of a result. Anything more is simply speculation. Has the parameter to appear for example in a numerical expression that is assigned to a result variable? Or in a boolean expression containing the assignment statement? Should only the parameters (somehow) involved in the last assignment be considered as "used/accessed for calculation" or also the parameters involved in a previous assignment to the same result variable?

3.8 During oral proceedings, the appellant stated that there was no disclosure of variables like "Result1" in the application. Instead, it was suggested that each program module computed exactly one result. The number of program modules N (see section [26] of the A1 publication) could be equalled to the number of results n (see section [27]), and module i could be thought of as calculating result i (for i = 1..n).

3.9 The board pointed out that there was no passage in the application supporting a restriction to the special case of N = n and of "one result per module". Furthermore, Article 83 EPC required a sufficient disclosure of the invention for the whole range claimed and this constraint on the type of program is certainly not specified in the claim. The board also considered as unrealistic that one module would calculate exactly one result and that each calculation would be separated from the other. Instead, according to general programming experience known to the board, the calculations usually are intermixed in and between the modules and dependent on each other.

3.10 The appellant argued that for business applications (e.g. accounting), such a linear workflow with one result per module was possible.

3.11 However even if the board were to accept this assertion it would not overcome the difficulty that the application simply does not disclose a restriction to a certain category of applications, and so any hypothetical corresponding amendment to the claims would constitute subject-matter added to the application as filed, in violation of Article 123(2) EPC.

3.12 The appellant further argued that because of the deterministic nature of the logic of the application program under test, an analysis of that logic could be performed before the tracing in order to find out which program part would calculate which result. Alternatively, the programmer could tag the parts of the application program with the results that was calculated in that parts. Again, the appellant did not indicate any passage in the application supporting these interpretations, nor could the board find any.

3.13 As to the first of these arguments, the board notes that there is absolutely no disclosure in the application that such an analysis is supposed to be carried out. Further, in the board's view such an analysis of a typical program would be no trivial issue, and the skilled person would at least require guidance as to the criteria for including a particular access in a particular path (see e.g. the questions raised in section 3.7 above).

3.14 As to the second argument, this actually concerns how the path is created once the skilled person has decided how to assign accesses to particular results. The board is happy to accept that it is a commonplace to add what the appellant calls "instrumentation instructions" to a program, the function of these instructions being to record in a log file the fact that they have been executed (i.e. a particular point in the code has been reached), and possibly also to record the current state of various variables. This does not solve the problem of how to determine, when a particular instrumentation instruction is been reached, whether that is in pursuit of result 1 or result 2.

3.15 As to sections [34] and [35] of the A1 publication of the application, mentioned by the appellant, they merely disclose that the trace program 106 tracks which customising parameters from memory area 114 "are accessed and in which sequence in order to calculate the n results", and stores them per result in memory area 118. It is not disclosed how the accessed customising parameters are assigned to results in order to store them per result.

3.16 Finally in support of the sufficiency of the disclosure, the appellant has submitted declarations by two of the inventors. As to their reference to instrumentation instructions, as stated above, the board is happy to accept that they were a matter of common general knowledge. However as also argued above, this is not actually relevant to the issue. In fact, the declarations do not touch upon the issue of how to assign accesses to individual results. Inasmuch as it may be inferred that the inventors considered this too not to require the exercise of inventive skill, the board does not give this very much evidential weight. Firstly, it is a simple assertion without any explanation of what the skilled person would do, the "instrumentation instructions" mentioned being, as already argued, irrelevant to the critical issue. Secondly, the statements are made from the point of view of engineers in a particular (indeed, the appellant) company. It is quite possible that techniques well known in one company are nonetheless not common general knowledge in the field. Finally, it must be doubted whether an inventor is in a position to make an objective judgement about his or her own invention. Various aspects of an invention may come to seem obvious to an inventor during the often long process of development. In such circumstances someone giving an opinion in a declaration should at least give reasons why they hold this opinion.

Thus in the context of the board's considerations as a whole, these declarations by two of the inventors cannot be considered to overcome the objection.

3.17 Therefore, the invention as claimed in all requests is insufficiently disclosed in violation of Article 83 EPC.

4. Request to take further evidence using an expert

4.1 At the end of the discussion about Article 83 EPC, the appellant requested the taking of further evidence using an expert (Article 117(1)(e) and Rule 117 EPC) and that the procedure should be continued in writing (see section VI above).

4.2 To the board's question why this request was filed so late, the appellant's representative answered that he thought that the two declarations in lieu of an oath filed with the letter dated 5 March 2012 were sufficient.

4.3 According to Article 13(3) RPBA, amendments to a party's case shall not be admitted if they raise issues which the board cannot reasonably be expected to deal with without adjournment of the oral proceedings. The present case does not represent an exception to that provision: The objections relating to Article 83 EPC had been clearly formulated in the summons. The appellant reacted to these objections by filing two declarations from persons that undoubtedly do not qualify as independent experts when it comes to assessing the disclosure of the application at issue. Thus, the appellant cannot be surprised by the objections raised during the oral proceedings. It seems that the appellant was simply asking for another chance to react to the known objections, on realising that the first attempt has failed. However, this would contradict the requirement for procedural economy embodied in Article 13(3) RPBA. The appellant must be aware that oral proceedings are normally its final chance to convince a board, Article 15(6) RPBA, and it is up to the appellant to choose what to present with this in mind.

4.4 Therefore, the request to take further evidence using an expert and to continue the procedure in writing had to be refused.

ORDER

For these reasons it is decided that:

The appeal is dismissed.

Quick Navigation