Ex Parte DernDownload PDFPatent Trial and Appeal BoardFeb 25, 201912351948 (P.T.A.B. Feb. 25, 2019) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE 12/351,948 01/12/2009 69316 7590 02/27/2019 MICROSOFT CORPORATION ONE MICROSOFT WAY REDMOND, WA 98052 FIRST NAMED INVENTOR Christopher W. Dern 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. 325656.01 9863 EXAMINER MACASIANO, JOANNE GONZALES ART UNIT PAPER NUMBER 2194 NOTIFICATION DATE DELIVERY MODE 02/27/2019 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 CHRISTOPHER W. DERN Appeal2018-005698 Application 12/351,948 1 Technology Center 2100 Before DAVID M. KOHUT, ERIC B. CHEN, JOSEPH P. LENTIVECH, Administrative Patent Judges. CHEN, Administrative Patent Judge. DECISION ON APPEAL This is an appeal under 35 U.S.C. § 134(a) from the final rejection of claims 1-20, all the claims pending in the application. We have jurisdiction under 35 U.S.C. § 6(b). We AFFIRM. 1 Appellant identifies the real party in interest as "Microsoft Technology Licensing, LLC." (App. Br. 3.) Appeal2018-005698 Application 12/351,948 STATEMENT OF THE CASE Appellant's invention relates to a software transactional memory (STM) test generator that converts existing test code into test code that tests the functionality of an STM system. (Abstract.) Claim 1 is exemplary, with disputed limitations in italics: 1. A method performed by a software transactional memory (STM) test generator in a computer system to generate STM test code, the method comprising: inserting first transactional semantics configured to form a first transaction into non-STM test code, the non-STM test code includes separate test programs that are not written to execute with an STM system and does not include any transactions that are configured for atomic execution prior to the inserting; detecting a first method in the non-STM test code that is not supported by an STM system; replacing the first method with a second method that is supported by the S TM system; and storing the non-STM test code with the first transactional semantics and the second method as the S TM code on a computer-readable medium accessible by the computer system, the STM code tests the functionality of the STM system using the non-STM test code with the first transactional semantics. Claims 1-20 stand rejected under 35 U.S.C. § 103(a) as unpatentable over Nussbaum (US 7,966,459 B2; June 21, 2011) and DeLong (US 5,892,947; Apr. 6, 1999). ANALYSIS First, we are unpersuaded by Appellant's arguments (App. Br. 7) that the combination of Nussbaum and DeLong would not have rendered obvious 2 Appeal2018-005698 Application 12/351,948 independent claim 1, which includes the limitation "inserting first transactional semantics configured to form a first transaction into non-STM test code, the non-STM test code includes separate test programs that are not written to execute with an STM system." The Examiner found that compiler 620 of Nussbaum, which generates atomic transaction code 630, corresponds to the limitation "inserting first transactional semantics configured to form a first transaction into non-STM test code." (Final Act. 2-3; see also Ans. 3.) The Examiner further found that the test suite programs of DeLong corresponds to the limitation "the non-STM test code includes separate test programs that are not written to execute with an STM system." (Final Act. 7; see also Ans. 4--5.) The Examiner concluded that "it would have been obvious ... to have modified the method as disclosed by Nussbaum with the separate test programs as taught by Delong." (Final Act. 7-8.) We agree with the Examiner's findings and conclusions. Nussbaum relates to "implementing different transactional memory techniques for accessing shared objects during different phases in an execution environment." (Col. 1, 11. 10-12.) Figure 6 of Nussbaum illustrates a block diagram of "compiler 620 configured to analyze application source code 600, identify one or more sets of atomic source code 610 and then generate atomic transaction code 630 as part of compiled application 650." (Col. 23, 1. 65 to col. 24, 1. 2.) Nussbaum explains that "a Ph TM [phased transactional memory] compiler, such as compiler 620 may be configured to replace programmer written code, such as in atomic source code 610, that is to be executed atomically with alternate code configured to 3 Appeal2018-005698 Application 12/351,948 implement multiple code paths." (Col. 24, 11. 2-8.) Because Nussbaum explains that compiler 620 replaces programmer written code, such as in atomic source code 610, Nussbaum teaches or suggests the limitation "inserting first transactional semantics configured to form a first transaction into non-STM test code." DeLong relates to software test programs. (Abstract.) DeLong explains that "software test programs are generated according to a substantially automated process which includes the generation of a minimal necessary set of test program specifications sufficient to demonstrate a selected functionality for a particular software design" ( col. 1, 11. 39-46) and "cases are produced from the decision table, and the test cases are synthesized into a test program or suite oftest programs" (col. 1, 11. 49-50). Because DeLong explains that software test programs include a suite of test programs and DeLong is silent with respect to software transactional memory, DeLong teaches or suggests the limitation "the non-STM test code includes separate test programs that are not written to execute with an STM system." Appellant argues [ t ]his DeLong et al. Patent disclosure is not in any way related to software transactional memory (STM) test generators in a computer system to generate STM test code and inserting first transactional semantics configured to form a first transaction into non-STM test code, the non-STM test code includes separate test programs that are not written to execute with an STM system as required by independent claim 1. (App. Br. 7 (emphases omitted).) However, the Examiner cited to Nussbaum for teaching the limitation "inserting first transactional semantics 4 Appeal2018-005698 Application 12/351,948 configured to form a first transaction into non-STM test code" (Final Act. 2- 3) and cited to DeLong for teaching the limitation "the non-STM test code includes separate test programs that are not written to execute with an STM system" (Final Act. 7). Thus, we agree with the Examiner that the combination of Nussbaum and DeLong would have rendered obvious independent claim 1, which includes the limitation "inserting first transactional semantics configured to form a first transaction into non-STM test code, the non-STM test code includes separate test programs that are not written to execute with an STM system." Second, we are unpersuaded by Appellant's arguments (App. Br. 8-9) that the combination of Nussbaum and DeLong would not have rendered obvious independent claim 1, which includes the limitation "detecting a first method in the non-STM test code that is not supported by an STM system." The Examiner found that the transactional memory hardware of Nussbaum, which attempts hardware transactions, corresponds to the limitation "detecting a first method in the non-STM test code that is not supported by an STM system." (Ans. 7; see also Final Act. 4.) We agree with the Examiner's findings. Nussbaum explains that "the system is initially in an HTM-only mode, such as the HARDWARE mode" and "[ w ]hile the system remains in HARDWARE mode, every transaction encountered may be attempted as a hardware transaction." (Col. 13, 1. 65 to col. 14, 1. 3.) Moreover, Nussbaum explains that "[ w ]hen an HTM transaction is unsuccessful for some reason, the system may decide (using, e.g., another library function call) whether to 5 Appeal2018-005698 Application 12/351,948 retry in the transaction in hardware or to initiate a transition to SOFTWARE mode before retrying." (Col. 14, 11. 21-24.) Because Nussbaum explains that the HTM can determine if the HTM transaction is unsuccessful, Nussbaum teaches or suggests the limitation "detecting a first method in the non-STM test code that is not supported by an STM system." Appellant argues that "[ w ]hen an HTM transaction is unsuccessful for some reason, the system may decide whether to retry in the transaction in hardware or to initiate a transition to SOFTWARE mode before retrying" and "[ t ]his decision may be made based on a variety of factors, including feedback from the HTM implementation indicating the reason for the failure, such as whether it was caused by contention or by exceeding the best effort HTM's resource constraints." (App. Br. 8 (emphases omitted).) Accordingly, Appellant argues, [i]n contrast to the Nussbaum et al. Patent disclosure of a transaction may be encountered that cannot be committed using best-effort HTM, and the system may need to switch to SOFTWARE mode to complete the transaction, independent claims 1 and 15 define detecting a first method in the non-STM test code that is not supported by an STM system. (Id. at 8-9 (emphases omitted).) However, other than summarizing Nussbaum and providing a conclusory statement that Nussbaum does not teach the limitation "detecting a first method in the non-STM test code that is not supported by an STM system," Appellant has not provided sufficient evidence or arguments as to why the Examiner's findings with respect to Nussbaum are improper. See 37 CPR§ 4I.37(c)(l)(iv) ("The arguments shall explain why the examiner erred as to each ground of rejection contested by [ A Jppellant. . . . [ A ]ny arguments or authorities not included in 6 Appeal2018-005698 Application 12/351,948 the appeal brief will be refused consideration by the Board for purposes of the present appeal" ( emphases added).) Thus, we agree with the Examiner that the combination of Nussbaum and DeLong would have rendered obvious independent claim 1, which includes the limitation "detecting a first method in the non-STM test code that is not supported by an STM system." Last, we are unpersuaded by Appellant's arguments (App. Br. 9) that the combination of Nussbaum and DeLong would not have rendered obvious independent claim 1, which includes the limitation "the STM code tests the functionality of the STM system using the non STM test code." The Examiner found that the Hybrid Transactional Memory (HyTM) of Nussbaum, which allows programmers to test programs, corresponds to the limitation "the STM code tests the functionality of the STM system using the non-STM test code." (Final Act. 6; see also Ans. 4.) We agree with the Examiner's findings. Nussbaum explains that "[t]he use of HyTM may allow programmers to develop, test, and execute programs that include transactions using existing systems (i.e., without hardware modification)" and as an example "a program may be written and largely debugged even before HTM support is available." (Col. 5, 11. 58---66.) Because Nussbaum explains that the HyTM allows programmers to test programs, Nussbaum teaches or suggests the limitation "the STM code tests the functionality of the STM system using the non-STM test code." Appellant argues that "[i]n contrast to the independent claim[] 1 ... features of the STM code tests the functionality of the STM system using the 7 Appeal2018-005698 Application 12/351,948 non-STM test code with the first transactional semantics ... the Nussbaum et al. Patent discloses 'a HyTM implementation minimally comprises a fully functional STM implementation, because it must work even if there is no HTM support available."' (App. Br. 9 (emphases omitted).) However, other than summarizing Nussbaum and providing a conclusory statement that Nussbaum does not teach the limitation "the STM code tests the functionality of the STM system using the non-STM test code," Appellant has not provided sufficient evidence or arguments as to why the Examiner's findings with respect to Nussbaum are improper. See 37 CPR § 4I.37(c)(l)(iv). Thus, we agree with the Examiner that the combination of Nussbaum and DeLong would have rendered obvious independent claim 1, which includes the limitation "the STM code tests the functionality of the STM system using the non-STM test code." Accordingly, we sustain the rejection of independent claim 1 under 35 U.S.C. § 103(a). Claims 2-8 depend from claim 1, and Appellant has not presented substantive arguments with respect to these claims. Therefore, we sustain the rejection of claims 2-8 under 35 U.S.C. § 103(a), for the same reasons discussed with respect to independent claim 1. Independent claims 9 and 15 recite limitations similar to those discussed with respect to independent claim 1, and Appellant has not presented substantive arguments with respect to these claims. We sustain 8 Appeal2018-005698 Application 12/351,948 the rejection of claims 9 and 15, as well as dependent claims 10-14 and 16- 20, for the same reasons discussed with respect to claim 1. 2 DECISION The Examiner's decision rejecting claims 1-20 is affirmed. No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(l )(iv). AFFIRMED 2 Appellant's arguments on pages 9-11 of the Appeal Brief have been considered. However, such arguments neither identify the disputed claim limitations with specificity nor articulate how such claims are distinguishable over Nussbaum. Instead, Appellant merely block quotes a substantial portion of independent claims 1, 9, and 15 with a summary of Nussbaum and a conclusory statement that Nussbaum does not teach the features of the claims. 9 Copy with citationCopy as parenthetical citation