Ex Parte AdlerDownload PDFPatent Trial and Appeal BoardSep 30, 201613419267 (P.T.A.B. Sep. 30, 2016) Copy Citation UNITED STA TES p A TENT AND TRADEMARK OFFICE APPLICATION NO. FILING DATE 13/419,267 03/13/2012 23308 7590 10/04/2016 Royse Law Firm, PC 149 Commonwealth Dr., Suite 1001 Menlo Park, CA 94025 FIRST NAMED INVENTOR Dustin Kurt Adler 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. 5472.0lCl (SMC) 2815 EXAMINER WONG, LESLIE ART UNIT PAPER NUMBER 2164 NOTIFICATION DATE DELIVERY MODE 10/04/2016 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): RLPatentDoc@rroyselaw.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE BEFORE THE PATENT TRIAL AND APPEAL BOARD Ex parte DUSTIN KURT ADLER Appeal2015-002868 Application 13/419,267 Technology Center 2100 Before JOHNNY A. KUMAR, JOHNF. HORVATH, and DANIEL J. GALLIGAN, Administrative Patent Judges. GALLIGAN, Administrative Patent Judge. DECISION ON APPEAL Appellant 1 seeks our review under 35 U.S.C. § 134(a) of the Examiner's Final Rejection of claims 1-27. We have jurisdiction under 35 U.S.C. § 6(b). We affirm in part and enter new grounds of rejection in accordance with 37 C.F.R. § 41.50(b). 2 1 The Appeal Brief identifies Group-A Autosports, Inc. as the real party in interest. App. Br. 2. 2 Our Decision refers to Appellant's Appeal Brief filed June 2, 2014 ("App. Br."); Appellant's Reply Brief filed December 23, 2014 ("Reply Br."); Final Office Action mailed January 6, 2014 ("Final Act."); Examiner's Answer Appeal2015-002868 Application 13/419,267 STATEMENT OF THE CASE Claims on Appeal Claims 1, 20, 26, and 27 are independent claims. Claims 1, 26, and 27 are reproduced below: 1. A system comprising: a computing device; operating system logic configured to run on the computing device and stored on a computer readable media of the computing device; a database stored on a computer readable media and including compiled code of computer programs, the compiled code of one of the computer programs being divided into several data records; database management logic configured for accessing the database; and code execution logic configured to retrieve the compiled code from the data records by executing one or more queries on the database management logic, and to execute the retrieved code on the operating system logic. 26. A system comprising: a computing device; operating system logic configured to run on the computing device and stored on a computer readable media of the computing device; a database stored on a computer readable media and including source code of at least one computer program, the source code of one of the at least one computer program being divided into several data records; mailed October 23, 2014 ("Ans."); and Appellant's Specification filed March 13, 2012 ("Spec."). 2 Appeal2015-002868 Application 13/419,267 database management logic configured for accessing the database; and code compilation logic configured to retrieve the source code from the data records by executing one or more queries on the database management logic, and to compile the retrieved source code on the operating system logic. 27. A system comprising: a computing device; operating system logic configured to run on the computing device and stored on a computer readable media of the computing device; a database stored on a computer readable media and including data records configured to store compiled code of a computer program; code management logic configured to provision an application to the computing device by sending the database to the computing device via a network; database management logic configured for accessing the database; and code execution logic configured to retrieve the compiled code from the data records by executing one or more queries on the database management logic, and to execute the retrieved code on the operating system logic. Krishnaswamy et al. Zee Castro et al. Pfleiger et al. Gilboa Piehler et al. References US 2004/0225459 Al US 7,174,544 B2 US 2008/0065590 Al US 7,472,112 B2 US 7,971,194 Bl US 8,032,860 B2 3 Nov. 11, 2004 Feb. 6,2007 Mar. 13, 2008 Dec. 30, 2008 June 28, 2011 Oct. 4, 2011 Appeal2015-002868 Application 13/419,267 Examiner's Rejections Claims 1-6, 10, 17, and 18 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee and Gilboa. Final Act. 8-11. Claims 7, 11-14, and 16 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee, Gilboa, and Piehler. Final Act. 11-14. Claims 8 and 9 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee, Gilboa, and Pfleiger. Final Act. 14--16. Claim 15 stands rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee, Gilboa, and Krishnaswamy. Final Act. 16-17. Claim 19 stands rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee, Gilboa, and Castro. Final Act. 17-18. Claim 26 stands rejected under 35 U.S.C. § 102(b) as being anticipated by Zee. Final Act. 6-7. Claim 27 stands rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee and Krishnaswamy. Final Act. 19-22. Claims 20-22 and 25 stand rejected under 35 U.S.C. § 102(e) as being anticipated by Pfleiger. Final Act. 3-5. Claims 23 and 24 stand rejected under 35 U.S.C. § 103(a) as being unpatentable over Pfleiger and Zee. Final Act. 18-19. ANALYSIS Rejections of Claims 20-25 The Examiner has maintained the rejections of claims 20-25 (see Ans. 3-5, 18-19), and Appellant does not address these rejections. As such, we summarily sustain the rejections of claims 20-25. See MPEP 1205.02 ("If a 4 Appeal2015-002868 Application 13/419,267 ground of rejection stated by the examiner is not addressed in the appellant's brief, appellant has waived any challenge to that ground of rejection and the Board may summarily sustain it, unless the examiner subsequently withdrew the rejection in the examiner's answer."). Rejections of Claims 1-19 Appellant contends Gilboa does not teach or suggest "compiled code of one of the computer programs being divided into several data records," as recited in claim 1. App. Br. 23-24; Reply Br. 9-11. We are not persuaded. As the Examiner correctly found, Gilboa teaches, upon receiving an application request, searching for source code corresponding to the application requested, compiling it, and returning it to the requesting client. See Final Act. 9 (citing Gilboa, col. 7, 11. 25-29, 58-61; col. 8, 11. 62-64; col. 9, 11. 10-15, 40-44); Ans. 26; see Gilboa, col. 7, 11. 25-29 ("GmlScript server engine 210 is configured to search database 208 for GmlScript source code corresponding to an application request received from a GmlScript client, compile the source code, and communicate the results of the compilation to the requesting GmlScript client."). In describing the application fetching process, Gilboa discloses that "[t]he request for an application may be a request for source code or portion thereof for an application, a request for one or more source files related to the application, or a request for a portion of an application or the entire application." Gilboa, col. 8, 11. 32-35. Furthermore, "[t]he fetched source code may [be] contained in one or more source files." Gilboa, col. 8, 11. 52- 54. Thus, Gilboa teaches that the source code for one application may be stored in multiple files (records). 5 Appeal2015-002868 Application 13/419,267 Gilboa further teaches storing compiled files corresponding to source files. For example, Gilboa discloses: "GmlScript application repository 212 (from FIG. 2) comprises two storage areas: a storage area 508 for storing GmlScript source files (*.gs files), and a cache or storage area 510 for storing compiled files (e.g., JavaScript *.js files) corresponding to the GmlScript source files." Gilboa, col. 9, 11. 38--44. Gilboa further discloses: "Fetcher 502 is also configured to check cache 510 for the existence of a compiled file (a 'program.js' file) corresponding to source code file program.gs (indicated by the arrow from fetcher 502 to storage 51 O)." Gilboa, col. 9, 11. 60-63. Therefore, Gilboa discloses that an application (program) may have multiple associated source files, and it discloses a storage area for storing compiled files corresponding to the source files. As such, Gilboa teaches, or at least suggests, that, for an application having multiple separate source files, there will be separate compiled files corresponding to the multiple source files. Thus, we agree with the Examiner's finding that Gilboa teaches or suggests "compiled code of one of the computer programs being divided into several data records." Appellant further contends the Examiner has not provided an adequate rationale to combine Zee and Gilboa. App. Br. 24--25; Reply Br. 11-15. We disagree. In rejecting claim 1, the Examiner explained that it would have been obvious to combine Zee and Gilboa "to facilitate development of applications by allowing reusing of already existing applications, process request for a compiled source file and as such reduce[] costs for maintenance." Final Act. 9. As explained above, Gilboa teaches storing compiled code corresponding to source code files and further discloses 6 Appeal2015-002868 Application 13/419,267 checking for the existence of a compiled file corresponding to a requested source code file. Gilboa, col. 9, 11. 38--44, 11. 60-63. Thus, Gilboa teaches reusing code that is already compiled, rather than compiling requested source code each time it is requested, supporting the Examiner's rationale. Appellant argues: Notwithstanding that Gilboa seemingly does not offer any relevant teaching, it is not difficult to imagine that Zee could be changed such that when a JAVA class file is requested and compiled, the resulting compilation is divided into several pieces with each being stored in a separate data record in the database, as taught by the Appellant's specification, rather than stored as a single record in the database, as taught by Zee. However, the Examiner's justifications to modify Zee do not support such a change. App. Br. 25. Contrary to Appellant's argument, we agree with the Examiner's finding that Gilboa teaches or suggests "compiled code of one of the computer programs being divided into several data records;" and; thus; Gilboa offers a relevant teaching. The combination presented by the Examiner is no more than a combination of familiar elements that yields predictable results, providing a further rational underpinning for the Examiner's conclusion of obviousness. See KSR Int 'l Co. v. Teleflex, Inc., 550 U.S. 398, 416 (2007). Because we are not persuaded of error in the Examiner's conclusion of obviousness, we sustain the rejection of claim 1, as well as the rejections of claims 2-19, for which Appellant does not offer additional persuasive arguments for patentability. 7 Appeal2015-002868 Application 13/419,267 Rejection of Claim 27 With respect to the rejection of claim 27, Appellant contends that the combination of Zee and Krishnaswamy is improper because Krishnaswamy is not analogous art. App. Br. 26-32; Reply Br. 15-17. A prior art reference is analogous to an application (1) if it is from the same field of endeavor as the application, regardless of the problem addressed, or (2) if the reference is not within the field of the inventor's endeavor, it is nonetheless reasonably pertinent to the particular problem with which the inventor is involved. In re Bigio, 381F.3d1320, 1325 (Fed. Cir. 2004). The Examiner determined that Krishnaswamy is analogous art because it is within the same field of endeavor. Final Act. 21; Ans. 31-32. Appellant contends the field of endeavor is "computer programming and provisioning." App. Br. 28. Appellant contends Krishnaswamy "is directed to 'the testing of integrated circuits (I Cs), and more particularly to developing a test program for automated semiconductor test equipment (ATE)"' and, therefore, is not in the same field of endeavor. App. Br. 29 (quoting Krishnaswamy i-f 3). Although Krishnaswamy is indeed directed to the testing of integrated circuits, Krishnaswamy more particularly discloses developing test programs to be executed by a computer for such testing, as the Examiner correctly found. See Ans. 31 (citing Krishnaswamyi-fi-f 53, 57, Fig. 4). Krishnaswamy discloses: Referring to FIG. 4, the test program compiler 400 acts in part as a code generator including a translator section 402 to translate a test program developer's source files 404 describing tests and associated parameters into object-oriented constructs, such as C++ code. A compiler section 406, in tum, compiles and links 8 Appeal2015-002868 Application 13/419,267 the code into executables, e.g., DLLs, to create the test program that may be executed by the tester system. Krishnaswamy i-f 51. Krishnaswamy's disclosure of developing and provisioning programs for integrated circuit testing is within the field of endeavor of "computer programming and provisioning," as characterized by Appellant. As such, we are not persuaded the Examiner erred in relying on the teachings of Krishnaswamy in combination with those of Zee. Appellant also contends the Examiner has never explained the proposed modification to the primary reference with sufficient definiteness that the Appellant can assess whether there is a reasonable expectation of success, whether the combination would work for its intended purpose, or whether the combination would change the principle of operation of the primary reference. App. Br. 32. In particular, Appellant argues that, in light of the Examiner's mapping Zee's JAVA providing servers 10 and 12 to the claimed "computing device," it is unclear why a DLL (mapped to the claimed "database") would be sent to the JAVA providing servers according to the limitation of claim 27 reciting "provision[ing] an application to the computing device by sending the database to the computing device via a network." App. Br. 34--35. We have reviewed the Examiner's rejection of claim 27, and we affirm the rejection, provide the following clarification, and designate our affirmance a new ground of rejection. Although it is true that the Examiner mapped JAVA providing servers 10 and 12 to the first instance of "a computing device" in claim 27 (see Final Act. 19), in subsequent limitations, the Examiner additionally mapped data processing systems 30 and 32 to the 9 Appeal2015-002868 Application 13/419,267 computing device. Final Act. 19-20. For example, the Examiner found Zee' s disclosure of transmitting a native component to data processing system 30 or 32 teaches the claimed "code execution logic," which is configured to "execute the retrieved code on the operating system logic." Final Act. 20 (citing, inter alia, Zee, col. 7, 11. 62---66, Fig. 3 ). Zee discloses that "a corresponding native component is read out from the database 20b or 22b, to then be transmitted to the data processing system 30 or 32 and executed therein." Zee, col. 7, 11. 63---66 (emphasis added). Thus, Zee discloses that the execution of the program occurs at data processing system 30 or 32. Appellant argues that "[ t ]he most concrete statement concerning how Zee would be modified, in the Examiner's response, is that the DLL [of Krishnaswamy] would be 'loaded on Zee's invention' which is as lacking in specificity as the original rejection." App. Br. 34. Based on the Examiner's findings that Zee teaches the retrieved code is executed on data processing system 30, 32, the Examiner's proposed modification of Zee is providing a DLL (dynamic link library), as taught in Krishnaswamy, to the data processing system (mapped to the claimed "computing device") of Zee. We find the evidence supports the Examiner's conclusion of obviousness as to claim 27, but because our decision, in addressing Appellant's arguments, provides additional explanation that clarifies the Examiner's rejection, we designate our affirmance of the rejection under 35 U.S.C. § 103(a) as a new ground of rejection. Rejection of Claim 26 Appellant contends the Examiner erred in finding Zee discloses "source code of one of the at least one computer program being divided into 10 Appeal2015-002868 Application 13/419,267 several data records," as recited in claim 26. App. Br. 15-16. Appellant does not dispute the Examiner's finding that Zee's JAVA class files disclose "source code." See Reply Br. 2 ("Appellant agrees that the JAVA class files constitute source code."). Rather, Appellant argues the Examiner has not shown Zee discloses dividing source code of one computer program into several data records. App. Br. 16-18; Reply Br. 2-3. According to Appellant, "[ n ]owhere does Zee map more than one JAVA class file to a single native component, though the reference does several times map a single JAVA class file to a single native component." App. Br. 17. We have reviewed the Examiner's findings with respect to Zee, and we are persuaded that the Examiner has not shown Zee expressly discloses dividing source code of one program into several data records. See Final Act. 6; Ans. 23-25. For example, the Examiner found Zee discloses: a compile-on-demand service network provides various JAVA programs (e.g., source codes) via the Internet. In the case that there is no compiled native component \~1hich matches the kind of the data processing system having requested a service, the data processing system accesses the JAVA program providing server 10 or 12 ... and downloads the designated JAVA class file (e.g., source code) (col. 7, lines 25-27, lines 2-5; col. 8, lines 2-5). Ans. 25 (emphases removed). This finding, however, does not explain how Zee expressly discloses source code for a single program divided into several records. Rather, it discloses downloading "the designated JAVA class file," not multiple class files pertaining to a single program. As such, we do not sustain the Examiner's rejection of claim 26 as anticipated by Zee under 35 U.S.C. § 102(b ). 11 Appeal2015-002868 Application 13/419,267 New Grounds of Rejection under 35 US.C. § 103 Claim 26 We enter the following new ground of rejection pursuant to our authority under 37 C.F.R. § 41.50(b). Claim 26 is rejected under 35 U.S.C. § 103(a) as being unpatentable over Zee in view of the knowledge of a person of ordinary skill in the art, as evidenced by Gilboa. As discussed above, we are persuaded that the Examiner has not shown Zee expressly discloses dividing source code of one program into several data records. However, we find that having source code of a single program divided into several data records was well known in the prior art, as evidenced by the teachings of Gilboa. For example, Gilboa discloses: The request for an application may be a request for source code or portion thereof for an application, a request for one or more source files related to the application, or a request for a portion of an application or the entire application. In one embodiment, the request for an application may identify one or more source files requested for the application. Gilboa, col. 8, 11. 32-37. Gilboa further teaches: "GmlScript server engine 210 is configured to search GmlScript application repository 212 and fetch GmlScript source code corresponding to the application request (step 408). The fetched source code may [be] contained in one or more source files." Gilboa, col. 8, 11. 50-54. These passages of Gilboa make clear that dividing source code of one program into several records or files was well known and within the technical grasp of a person of ordinary skill in the art as of the relevant time. In addition, we agree with the Examiner's findings that Zee discloses the remaining limitations of claim 26. See Final Act. 6-7. Appellant notes, 12 Appeal2015-002868 Application 13/419,267 but does not argue, an additional alleged distinction of claim 26 over Zee. See App. Br. 10. In particular, Appellant states, "although it is agreed that the JAVA program providing servers 10, 12 of Zee store JAVA class files, Zee never indicates that the JAVA class files are stored in a database. To the extent that Zee mentions databases, they are always for storing compiled code." App. Br. 10. Although Zee does not use the term "database" to describe the operation of servers 10 and 12 storing code, Zee discloses "the data processing system accesses the JAVA program providing server 10 or 12 designated by the received service request message, and downloads the designated JAVA class file." Zee, col. 8, 11. 4--8. Therefore, Zee describes servers 10 and 12 as providing functionality of storing data and providing access to it, consistent with the broad description of "database" in the "Background" section of Appellant's Specification, which states that "[ d]atabases and database programs configured to manage the databases are commonly used to store and access data." Spec. i-f 8. Furthermore, as the Examiner correctly notes, claim 26 does not specify any particular type of database. Ans. 25. We agree with the Examiner that servers 10 and 12 disclose a database, as broadly claimed. See id. Still further, as Appellant acknowledges, Zee discloses using databases to store compiled code. See App. Br. 10. We find, consistent with the evidence of record, that using a database to store source code was within the technical grasp of a person of ordinary skill in the art at the relevant time. Based on the foregoing discussion, although we do not sustain the Examiner's rejection of claim 26 as anticipated by Zee, we conclude that the subject matter of claim 26 would have been obvious to a person of ordinary skill in the art based on the teachings of Zee in view of the knowledge of a 13 Appeal2015-002868 Application 13/419,267 person of ordinary skill in the art, as evidenced by Gilboa, as discussed above. In particular, claim 26 is directed to a combination of familiar elements yielding predictable results-Zee' s express disclosure of the limitations of claim 26, except for the division of source code of one program into multiple records, in combination with the knowledge of one of skill in the art that it was known to divide source code of one program into several records or files, as evidenced by Gilboa. See KSR, 550 U.S. at 416 ("The combination of familiar elements according to known methods is likely to be obvious when it does no more than yield predictable results."). As such, pursuant to our authority under 37 C.F.R. § 41.50(b ), we enter a new ground of rejection that claim 26 is unpatentable as obvious under 35 U.S.C. § 103(a) over Zee in view of the knowledge of a person of ordinary skill in the art, as evidenced by Gilboa. Claim 27 As discussed above, we find the evidence supports the Examiner's conclusion of obviousness as to claim 27, but because our decision, in addressing Appellant's arguments, provides additional explanation that clarifies the Examiner's rejection, we designate our affirmance of the rejection under 35 U.S.C. § 103(a) as a new ground of rejection. Alleged New Grounds In its Reply, Appellant contends the Examiner's Answer "relied upon several instances of new evidence but improperly did not recognize any as new grounds of rejection." Reply Br. 17. Allegations that an Examiner's answer contains undesignated new grounds of rejection are resolved by petition, the absence of which served as a waiver. MPEP § 1207.03. 14 Appeal2015-002868 Application 13/419,267 DECISION We affirm the Examiner's rejections of claims 1-25 under 35 U.S.C. § 103(a). We reverse the Examiner's rejection of claim 26 under 35 U.S.C. § 102(b); pursuant to 37 C.F.R. § 41.50(b), claim 26 is rejected under 35 U.S.C. § 103(a). We affirm the Examiner's rejection of claim 27 under 35 U.S.C. § 103(a), and designate our affirmance a new ground of rejection. Rule 37 C.F.R. § 41.50(b) states that "[a] new ground of rejection pursuant to this paragraph shall not be considered final for judicial review." Further,§ 41.50(b) also provides that Appellant, WITHIN TWO MONTHS FROM THE DATE OF THE DECISION, must exercise one of the following two options with respect to the new grounds of rejection to avoid termination of the appeal as to the rejected claims: (1) Reopen prosecution. Submit an appropriate amendment of the claims so rejected or new evidence relating to the claims so rejected, or both, and have the matter reconsidered by the examiner, in which event the prosecution will be remanded to the examiner .... (2) Request rehearing. Request that the proceeding be reheard under § 41.52 by the Board upon the same record .... 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-IN-PART 37 C.F.R. 41.50(b) 15 Copy with citationCopy as parenthetical citation