Microsoft Technology Licensing, LLCDownload PDFPatent Trials and Appeals BoardMar 22, 20222021001977 (P.T.A.B. Mar. 22, 2022) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www.uspto.gov APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 16/239,474 01/03/2019 Charles Joseph RIES 405681-US-NP 9577 69316 7590 03/22/2022 MICROSOFT CORPORATION ONE MICROSOFT WAY REDMOND, WA 98052 EXAMINER THATCHER, CLINT A ART UNIT PAPER NUMBER 2191 NOTIFICATION DATE DELIVERY MODE 03/22/2022 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): chriochs@microsoft.com ljohnson@microsoft.com usdocket@microsoft.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte CHARLES JOSEPH RIES, PATRICK NELSON, CAGRI ASLAN, GREGORY MISKELLY, and ISADORA SOPHIA GARCIA RODOPOULOS Appeal 2021-001977 Application 16/239,474 Technology Center 2100 Before JOHN A. EVANS, JENNIFER L. McKEOWN, and BETH Z. SHAW, Administrative Patent Judges. MCKEOWN, Administrative Patent Judge. DECISION ON APPEAL STATEMENT OF THE CASE Pursuant to 35 U.S.C. § 134(a), Appellant1 appeals from the Examiner’s decision to reject claims 1-20. We have jurisdiction under 35 U.S.C. § 6(b). We REVERSE. 1 We use the word Appellant to refer to “applicant” as defined in 37 C.F.R. § 1.42(a). Appellant identifies the real party in interest as Microsoft Technology Licensing, LLC. Appeal Br. 1. Appeal 2021-001977 Application 16/239,474 2 CLAIMED SUBJECT MATTER The claims are directed to a system and method: To set data breakpoints on properties and certain other functions, constituent data locations (CDLs) that can contribute to computation of the property value or other function result are identified, and respective constituent data breakpoints are added at one or more CDLs by data breakpoint adder code. Each constituent data breakpoint will suspend execution of an inspectable software in response to occurrence of a CDL data entry. The CDLs are identified by CDL identifier code using static data flow analysis, enhanced interpretation, or disassembly, with recursion as appropriate. Kernel or runtime routines, and other routines designated as known, can be excluded from the CDL search. Data locations marked read-only, or that are effectively read-only because they will not be written, can also be excluded. The resulting data breakpoint functionality makes internal program state information available, thus facilitating computing system accuracy, flexibility, security, speed, memory usage efficiency, and other functional characteristics. Abstract. Claim 1, reproduced below, is illustrative of the claimed subject matter: 1. A computing system suitable for data breakpoint usage, the computing system comprising: a processor; a digital memory in operable communication with the processor; an inspectable software including instructions which are executable with the processor and also including data locations, the inspectable software including a function which upon execution with the processor computes a function result, the function result dependent upon one or more data values which are stored in respective constituent data locations (CDLs) of the function in the computing system; a CDL identifier code which upon execution with the processor identifies one or more CDLs of the function; and Appeal 2021-001977 Application 16/239,474 3 a data breakpoint adder which upon execution with the processor adds a constituent data breakpoint which is configured to suspend execution of the inspectable software in response to entry of a data value at a CDL of the function; whereby the CDL identifier code and data breakpoint adder contribute to data breakpoint functionality in the computing system, the data breakpoint functionality configured to suspend execution of the inspectable software in response to occurrence of a CDL data entry as opposed to suspending execution in response to execution reaching a specified instruction of the inspectable software. REFERENCE(S) The prior art relied upon by the Examiner is: Name Reference Date Miskelly US 2017/0116108 Al Apr. 27, 2017 AAPA Filipek, “Understand Conditional Breakpoints in C++ - Visual Studio Magazine,” 2016, https://visualstudiomagazine.com/articles/ REJECTIONS The Examiner rejected claims 1-3, 7, 8, 10, 13, 15, 16, and 18 under 35 U.S.C. § 102 as unpatentable over Filipek. Final Act. 3-9. The Examiner rejected claims 4-6, 11, 12, 14, 19, and 20 under 35 U.S.C. § 103 as unpatentable over Filipek and Miskelly. Final Act. 9-12. The Examiner rejected claims 9 and 17 under 35 U.S.C. § 103 as unpatentable over Filipek and AAPA. Final Act. 12-13. Appeal 2021-001977 Application 16/239,474 4 OPINION THE ANTICIPATION REJECTION BASED ON FILIPEK Claims 1-3, 7, 8, 10, 13, 15, 16, and 18 Appellant argues that Filipek fails to disclose the constituent data location (CDL) identifier code that identifies one or more CDLs of the function, as recited in claim 1, and “automatically identifying at least two CDLs of the function,” as recited in claim 10. Appeal Br. 14. Appellant explains that a CDL is not just any variable but has “a data dependency relationship with a particular property or function.” Id. Appellant contends “[t]he rejections fail to provide evidence showing how the debugger code recognizes that relationship or otherwise identifies CDLs. Such evidence is necessary to support the rejection, particularly as the rejection is under Section 102.” Id. Appellant additionally points out that Filipek’s teaching of a user manually entering breakpoint variables does not automatically identify CDLs of the function as required by the claimed invention. Appeal Br. 14. We are persuaded of error in the Examiner’s rejection. As the Examiner points out, CDL “is not a term in the art” but is defined in the Specification as “a relative term referring to a relationship between ‘variables’” that are used “in at least one execution path of the code” to compute “the property value or other function result.” Ans. 17-18. In other words, a CDL is a value effecting variable of a function. Ans. 18. While we agree that any variable, such as Filipek’s rectangle width, may be a CDL for a function, the claimed invention expressly recites CDL code identifier to identify one or more CDLs (claim 1) or automatically identifying two or more CDLs (claim 10). The Examiner fails to sufficiently identify, under an anticipation rejection, how Filipek’s general teaching of a code debugger Appeal 2021-001977 Application 16/239,474 5 and manually entering a conditional breakpoint discloses these claimed limitations. See, e.g., Final Act. 3, 6. For example, to support the determination that Filipek anticipates the claimed invention the Examiner improperly relies on rationale for supporting an obviousness rejection. See Ans. 21 (citing Manual Procedure Examining Procedure § 2144.04 (III)). Additionally, contrary to the Examiner’s determination, the Specification does not support the interpretation that “automatically identifying” includes manual identification. See, e.g., Ans. 18-19. Namely, the Specification generally describes methods may be part automatic and part manual. Spec. ¶ 200. A skilled artisan would not understand this general description to suggest that automatic would be defined to include manual. See also Spec. ¶ 202 (describing that CDL identifier code, in some embodiments, automatically identifies CDLs for a function by static data flow analysis or interpretation or both). To the extent that the recited elements would have been obvious in view of Filipek is not a question before us; nor will we speculate in that regard here in the first instance on appeal. But what we can say is that the Examiner’s anticipation rejection is flawed. We are, therefore, constrained by this record to find that the Examiner erred in rejecting the claimed invention as anticipated. As such, we do not sustain the rejection of claims 1-3, 7, 8, 10, 13, 15, 16, and 18 as anticipated by Filipek. THE OBVIOUSNESS REJECTIONS Claims 4-6, 9, 11, 12, 14, 17, 19, and 20 As discussed above, we are persuaded that the Examiner erred in rejecting independent claims 1, 10, and 16 as anticipated by Filipek. The Appeal 2021-001977 Application 16/239,474 6 additionally cited prior art does not cure the deficiencies of Filipek. As such, we are similarly persuaded that the Examiner also erred in rejecting dependent claims 4-6, 9, 11, 12, 14, 17, 19, and 20 as unpatentable over the cited combinations of prior art. CONCLUSION The Examiner’s rejections of claims 1-20 is reversed. DECISION SUMMARY In summary: Claims Rejected 35 U.S.C. § Reference(s)/Basis Affirmed Reversed 1-3, 7, 8, 10, 13, 15, 16, 18 102 Filipek 1-3, 7, 8, 10, 13, 15, 16, 18 4-6, 11, 12, 14, 19, 20 103 Filipek, Miskelly 4-6, 11, 12, 14, 19, 20 9, 17 103 Filipek, AAPA 9, 17 Overall Outcome 1-20 REVERSED Copy with citationCopy as parenthetical citation