Ex Parte Maybee et alDownload PDFPatent Trial and Appeal BoardJul 18, 201812136053 (P.T.A.B. Jul. 18, 2018) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE 12/136,053 06/10/2008 69316 7590 07/20/2018 MICROSOFT CORPORATION ONE MICROSOFT WAY REDMOND, WA 98052 FIRST NAMED INVENTOR Paul Maybee 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 ATTORNEY DOCKET NO. CONFIRMATION NO. 323794.01 4875 EXAMINER BODDEN, EVRAL E ART UNIT PAPER NUMBER 2197 NOTIFICATION DATE DELIVERY MODE 07/20/2018 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): usdocket@microsoft.com chriochs@microsoft.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte PAUL MAYBEE, JOHAN MARIEN, BRIAN CRAWFORD, and JOHN CUNNINGHAM Appeal2017-004896 Application 12/136,053 Technology Center 2100 Before JOSEPH L. DIXON, DENISE POTHIER, and JASON J. CHUNG, Administrative Patent Judges. DIXON, Administrative Patent Judge. DECISION ON APPEAL Appeal2017-004896 Application 12/136,053 STATEMENT OF THE CASE Appellants 1 appeal under 35 U.S.C. § 134(a) from a rejection of claims 1-20. We have jurisdiction under 35 U.S.C. § 6(b ). Independent claim 1, reproduced below, is illustrative of the claimed subject matter: 1. A method which may be used to help application developers and other software developers configure a debugger for debugging software that was written using a particular programming model, the method comprising the steps of: providing a debugger that is architected to be extended by a debugger extension which includes debugger viewing routines that are specific to the particular programming model, the debugger extensions- providing functionality for viewing state information of a debuggee program while using the debugger, the particular programming model being one of multiple programming models, including programming models applicable with multiple programming languages which are not necessarily the same programming languages for each of the programming models, the particular programming models being within at least one of the following categories: coroutine programming models, multicore programming models, parallel programming models, game development programming models, custom hardware programming models, GUI programming models, presentation programming models, event-driven programming models, messaging framework programming models, wide area network programming models, web application programming models, rich internet application programming models, handheld device programming models, cell phone programming models, database programming models, managed execution environment programming models, 1 Appellants indicated that Microsoft Technology Licensing, LLC is the real party in interest. (App. Br. 1 ). 2 Appeal2017-004896 Application 12/136,053 native code programming models, script programming models; configuring the debugger to recognize a debugger environment trigger event, thereby allowing automatic loading of the debugger extension for use with the debugger in response to occurrence of the trigger event in the debugger's execution environment. App. Br. 34 (Claims Appendix) (formatting altered for clarity). REFERENCES The prior art relied upon by the Examiner in rejecting the claims on appeal is: Camey et al. (hereinafter "Camey") Romer et al. (hereinafter "Romer") Bogle et al. (hereinafter "Bogle") Lindsey et al. Alpern et al. (hereinafter "Alpern") us 5,774,729 us 5,953,534 US 6,353,923 Bl US 6,671,875 Bl US 7,107,578 Bl REJECTIONS The Examiner made the following rejections: June 30, 1998 Sept. 14, 1999 Mar. 5, 2002 Dec. 30, 2003 Sept. 12, 2006 Claims 1, 2 and 4 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Bogle. (Final Act. 6-15). Claim 3 stands rejected under 35 U.S.C. § I03(a) as being unpatentable over Bogle in view of Camey. (Final Act. 15-17). Claims 5-11 stand rejected under 35 U.S.C. § I03(a) as being unpatentable over Bogle in view of Lindsey. (Final Act. 17-26). 3 Appeal2017-004896 Application 12/136,053 Claims 14--16 and 18-20 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Bogle in view of Lindsey in view of Camey. (Final Act. 27--42). Claim 17 stands rejected under 35 U.S.C. § 103(a) as being unpatentable over Bogle in view of Lindsey in view of Camey in view of Romer. (Final Act. 42--43). Claims 12 and 13 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Bogle in view of Lindsey in view of Alpern. (Final Act. 43--46). ANALYSIS With respect to independent claim 1, the Examiner relies on the single reference of Bogle for the general teachings of a "debugger that is architected to be extended by a debugger extension which includes viewing routines that are specific to a particular programming model" as recited. (Final Act. 7-8). Further, the Examiner relies on Bogle to teach the particular programming model being one of multiple programming models and the particular programming model being within an identified category, as recited in the claim. (Final Act. 9-10). In addition, the Examiner relies on Bogle alone to show an automatic loading of the debugger extension for use with the debugger in response to occurrence of the trigger event in the debugger's execution environment. (Final Act. 12). In the prosecution history, Appellants contend the Examiner has "ignored relevant evidence and arguments that were properly submitted for consideration." (App. Br. 10-12). Appellants stated in the June 18, 2015 response, Applicant submitted Evidentiary Declarations of Paul Maybee and Brian Crawford, and the Declarations were not considered properly by the 4 Appeal2017-004896 Application 12/136,053 Examiner. Appellants contend that Bogle is concerned with programming languages, not programming models. (App. Br. 13-15). See also Declaration Under Rule 37 C.F.R. § 1.132 ("Maybee Deel.") ,r,r 10-12 and 25; see also Declaration Under Rule 37 C.F.R. § 1.132 ("Crawford Deel.") ,r,r 10-12 and 22-23 ( explaining that programming languages and programming models are not the same thing and that Bogle refers to programming languages not to programming models). Appellants further contend Bogle does not teach any one of the listed program model categories, as recited in claim 1. (App. Br. 15-17; see also Maybee Deel. ,r 26; see also Crawford Deel. ,r 27 ( explaining that Bogle does not mention programming model categories at all)). Appellants further contend Bogle does not teach the claimed "debugger extension which includes debugger viewing routines that are specific to the particular programming model, the debugger extensions providing functionality for viewing state information of a debuggee program while using the debugger" because Appellants argue Bogle does not teach one or more programming models and program model categories as recited. (App. Br. 19; see also Maybee Deel. ,r 27-28; see also Crawford Deel. ,r 28- 29 ( explaining that Bogle does not show an algorithm or mechanism to identify which debugger extension is appropriate for use with a given programming model)). We are persuaded by Appellants that the Examiner failed to explain specifically why the evidence provided in the declarations was insufficient. (App. Br. 10-12 and 13-15). We find the Examiner has failed to consider adequately the testimony of Maybee and Crawford related to how a typical debugger (Bogle col. 10, 11. 56-65) as shown in Bogle with a single inherent programming model (Bogle col. 1, 11. 55---60) is different from the claimed 5 Appeal2017-004896 Application 12/136,053 debugger that is architected to be extended by a debugger extension that is specific to a particular programming model and where the particular model being one of multiple programming models, as claimed. The Examiner has not responded to or rebutted the evidence submitted in the Maybee and Crawford Declarations. (See App. Br. 12). Appellants also contend Bogle does not teach configuring the debugger to recognize a debugger environment trigger event, thereby allowing automatic loading of the debugger extension for use with the debugger in response to occurrence of the trigger event in the debugger's execution environment as recited in claim 1 because Bogle does not teach events that trigger the loading of a debugger extension (App. Br. 22; see also Maybee Deel. ,r 29; see also Crawford Deel. ,r 30 (explaining that Bogle does not teach a trigger event to load programming model specific debugger extensions)). We agree with Appellants that the Examiner has also failed to consider the configuring of the debugger to recognize an event thereby automatically extending the capabilities of the debugger to assist in the debugging software written in the extension's supported programming model. (App. Br. 21-22; see Maybee Deel. ,r 18). Moreover, we are also persuaded by Appellants' argument that the Examiner has failed to consider that Bogle does not provide information that would be needed to extend a debugger in ways specific to the particular programming model. See Maybee Deel. ,r 28; see Crawford Deel. ,r 29. We note that the Manual of Patent Examining Procedure (MPEP)2 §§ 716 and 716.0l(B) set forth the proper handling of declarations by the Examiner. The Examiner did not 2 Manual of Patent Examining Procedure, Ninth Edition, March 2014, Rev. January 2018 [R-08.2017] 6 Appeal2017-004896 Application 12/136,053 appear to provide, in the next succeeding action or in the Examiner's Answer, a discussion as to why the evidence submitted in the declarations was insufficient, as set forth in the MPEP. Therefore, for the foregoing reasons, we find the Examiner erred in concluding that Bogle alone renders obvious the subject matter of independent claim 1, as well as those claims that depend therefrom. Moreover, we find the Examiner's articulated reasoning for modifying the language of Bogle lacks a rational underpinning. (Final Act. 8; see In re Kahn, 441 F .3d 977, 988 (Fed. Cir. 2006), cited with approval in KSR Int 'l Co. v. Teleflex, Inc., 550 U.S. 398,418 (2007) "[R]ejections on obviousness grounds ... [require] some articulated reasoning with some rational underpinning to support the legal conclusion of obviousness."). That is, the Examiner has not provided a clear articulation of the reason why the claimed invention would have been obvious because the Examiner has not articulated the differences in the claim over the reference and how the proposed modification of the applied reference is necessary to arrive at the claimed invention. See Ex parte Clapp, 227 USPQ 972, 973 (BP AI 1985). As a result, we do not sustain the Examiner's decision in rejecting independent claim 1 under 35 U.S.C. § 103(a). Additionally, we note that in contrast with the Examiner's assertion that Bogle suggests a logical interface "spanning multiple separate programming models which are based on different technologies" (Final Act, 4 ), Bogle appears to suggest otherwise. For example, Bogle states that the COM program model establishes a common paradigm for interactions and requests among different applications regardless of the programming languages or components involved. (Bogle col. 1, 11. 55---60). Bogle discloses in Figure 2 "a standard object interface 7 Appeal2017-004896 Application 12/136,053 example 200 in block diagram form." (Bogle col. 7, 11. 60-62, Fig. 2). Bogle shows the object interfaces 214--218, 234--238 and 252-254, as standard COM interfaces that each expose at least one method. (Bogle col. 8, 11. 1-25, Fig. 2). Bogle states that "key to each of the above referenced interface calls is that they are calls to common interfaces that are made in a common manner from any application or process." (Bogle col. 8, 11. 22-24). Bogle further discloses "the script 304 runs and language engine 301 references standard COM binding mechanisms" and "debugging environment 400 functions equally well with any COM designed active scripting run-time environment." (Bogle, col. 9, 11. 65-67, col. 10, 11. 1--4, col. 13, 11. 35--40; Fig. 6). Therefore, the evidence in Bogle suggests the reliance on a COM program model, rather than multiple models, so to allow for common communications between standard interfaces and scripts using the same COM program model. Claims 2 and 4 stand rejected under 35 U.S.C. § 103(a) as unpatentable over Bogle and claim 3 stands rejected over the combination of Bogle in view of Camey. (Final Act. 6-12 and 15-17). The rejection of these claims rely on the Examiner's erroneous conclusion that Bogle renders obvious the subject matter of claim 1, from which claims 2--4 depend. Id. The Examiner does not explain how Camey cures this underlying deficiency with respect to independent claim 1. Accordingly, we do not sustain the Examiner's rejection of claims 2--4 under 35 U.S.C. § 103(a) as unpatentable over Bogle and Bogle in view of Camey. The rejections of claims 5-13 rely on the same Examiner's erroneous conclusion that Bogle renders obvious similar subject matter as in claim 1, let alone disclosing a second debugger extension and a second programming model. (App. Br. 25-28). The Examiner does not explain how Lindsey or 8 Appeal2017-004896 Application 12/136,053 Alpern cures the underlying deficiency in Bogle with respect to independent claims 1 or 5. Accordingly, we also do not sustain the Examiner's rejection of claims 5-11 under 35 U.S.C. § 103(a) as unpatentable over Bogle in view of Lindsey and claims 12 and 13 over Bogle in view of Lindsey in view of Alpern. The rejections of claims 14--20 rely on the same erroneous conclusion by the Examiner that Bogle renders obvious similar subject matter as in claim 1, let alone an automatic loading of an extension including debugger viewing routines that are specific to a particular programming model and automatic determination that a trigger event has occurred. (App. Br. 28-29). The Examiner does not explain how Lindsey, Camey, or Romer cures the underlying deficiency in Bogle. Accordingly, we also do not sustain the Examiner's rejection of claims 14--20 under 35 U.S.C. § 103(a) as unpatentable over Bogle in view of Lindsey in view of Camey or Bogle in view of Lindsey in view of Camey in view of Romer. DECISION For the above reasons, we reverse the decision by the Examiner rejecting claims 1-20 based upon obviousness under 35 U.S.C. § 103. REVERSED 9 Copy with citationCopy as parenthetical citation