Prosecution Insights
Last updated: April 17, 2026
Application No. 18/606,716

Deeply Integrated Development Environment

Non-Final OA §101§103
Filed
Mar 15, 2024
Examiner
NGUYEN, DUY KHUONG THANH
Art Unit
2199
Tech Center
2100 — Computer Architecture & Software
Assignee
unknown
OA Round
1 (Non-Final)
82%
Grant Probability
Favorable
1-2
OA Rounds
2y 9m
To Grant
99%
With Interview

Examiner Intelligence

Grants 82% — above average
82%
Career Allow Rate
440 granted / 539 resolved
+26.6% vs TC avg
Strong +35% interview lift
Without
With
+35.2%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
38 currently pending
Career history
577
Total Applications
across all art units

Statute-Specific Performance

§101
13.3%
-26.7% vs TC avg
§103
59.8%
+19.8% vs TC avg
§102
6.3%
-33.7% vs TC avg
§112
9.6%
-30.4% vs TC avg
Black line = Tech Center average estimate • Based on career data from 539 resolved cases

Office Action

§101 §103
Notice of Pre-AIA or AIA Status 1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . 2. This is the initial office action based on the application filed on March 15th, 2024, which claims 1-20 are presented for examination. Status of Claims 3. Claims 1-20 are pending, of which claims, of which claim 1, 8 and 16 are in independent form. Priority 4. This application has PRO 63/490,514 03/15/2023 The Office's Note: 5. The Office has cited particular paragraphs / columns and line numbers in the reference(s) applied to the claims above for the convenience of the Applicant. Although the specified citations are representative of the teachings of the art and are applied to specific limitations within the individual claim(s), other passages and figures may apply as well. It is respectfully requested from the Applicant in preparing responses, to fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the cited passages as taught by the prior art or relied upon by the Examiner. Specification 6. There is a typo on para [00108] of the specification. Last sentence recites “save the corrected cod 168”, but it should be “save the corrected code 168”. Appropriate correction is required. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. 7. Claims 1-20 rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. Claim 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claim 1 and claim 16 recite “ generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end in a base programming language for the computer application; selecting, using a source code generation service, one or more target programming languages, the one or more target programming languages being different than the base programming language; and generating, using the source code generating service, a first set of source code for the computer application in the one or more target programming languages from the design codebase.” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitations encompass a human mind carrying out the function through observation, evaluation judgment and /or opinion, or even with the aid of pen and paper. Thus, this limitation recites and falls within the “Mental Processes” grouping of abstract ideas under Prong 1. Under Prong 2, this judicial exception is not integrated into a practical application. The additional elements ““memory”, and “processor” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components do nothing more than add insignificant extra solution activity to the judicial exception of merely gathering, displaying, updating, transmitting and storing data/information. Accordingly, the additional elements do not integrate the recited judicial exception into a practical application and the claim is therefore directed to the judicial exception. See MPEP 2106.05(g). Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of ““memory,” and “processor” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components. Furthermore, with respect of claim 5, deploying s an additional functionality that is well-understood, routine and conventional activity. In addition, limitations of dependent claims 2-4 and 6-7 are further abstract ideas, i.e. incorporating , generating, etc. The courts have identified merely gathering, displaying, updating, transmitting and storing data/information on a display is well-understood, routine and conventional activity. See MPEP 2106.05(d). The recitation of generic computer instruction and computer components to apply the judicial exception, and merely displaying data do not amount to significantly more, thus, cannot provide an inventive concept. Accordingly, the claims are not patent eligible under 35 USC 101. In conclusion, claims 1-7 and 16-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claim 8 recites “ generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end for the computer application; generating, using the AI code generating service, AI generated computer code based on the first user input, wherein the AI generated computer code is incompatible with the design codebase; and generating, using a code correction service, corrected computer code from the AI generated computer code, wherein the corrected computer code is compatible with the design codebase.” as drafted, are functions that, under its broadest reasonable interpretation, recite the abstract idea of a mental process. The limitations encompass a human mind carrying out the function through observation, evaluation judgment and /or opinion, or even with the aid of pen and paper. Thus, this limitation recites and falls within the “Mental Processes” grouping of abstract ideas under Prong 1. Under Prong 2, this judicial exception is not integrated into a practical application. The additional elements ““memory”, and “processor” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, and “receiving, through a developer user interface (UI), a first user input that defines a request to an artificial intelligence (AI) code generating service to generate code;;” do nothing more than add insignificant extra solution activity to the judicial exception of merely gathering, displaying, updating, transmitting and storing data/information. Accordingly, the additional elements do not integrate the recited judicial exception into a practical application and the claim is therefore directed to the judicial exception. See MPEP 2106.05(g). Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed above with respect to integration of the abstract idea into a practical application, the additional elements of ““memory,” and “processor” are recited at a high-level of generality such that it amounts no more than mere instructions to apply the exception using generic computer, and/or mere computer components, and “receiving, through a developer user interface (UI), a first user input that defines a request to an artificial intelligence (AI) code generating service to generate code;”, the courts have identified merely gathering, displaying, updating, transmitting and storing data/information on a display is well-understood, routine and conventional activity. See MPEP 2106.05(d). The recitation of generic computer instruction and computer components to apply the judicial exception, and merely displaying data do not amount to significantly more, thus, cannot provide an inventive concept. Accordingly, the claims are not patent eligible under 35 USC 101. In conclusion, claims 8-15 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. 8. Claims 1-20 are rejected under 35 U.S.C. 103 as being unpatentable over Holt (US 20210004209– hereinafter Holt) and further in view of Stevens (US 20190243617– hereinafter Stevens). Claim 1 rejected, Holt teaches a method of enabling development of a computer application, comprising (Holt, abstract and summary): generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end in a base programming language for the computer application(Holt, US 20210004209, para [0007], A domain ruleset is applied to convert the plurality of specification entities to a plurality of segment entities that comprise the values from the specification entities. The domain ruleset comprises predefined rules for processing specification entities for documents within the targeted domain. The plurality of segment entities are then processed to populate corresponding predefined segments from a segment set by inserting values from the segment entities into the predefined segments. The predefined segments comprise fragments of a document within the targeted domain and further comprise value insertion points for the insertion of values into the predefined segments. The segments are assembled according to the ruleset, thereby generating the document. Para [0265], front-end, back-end, or both ends of a website application. Fig. 3 and para [0028], A specification entity 3001 describing a field is input into the generator. The generator applies the ruleset to convert the specification entity 3001 into a corresponding segment entity 3002. Fig. 4 and para [0029]. ); selecting, using a source code generation service, one or more target programming languages, the one or more target programming languages being different than the base programming language (Holt, fig. 2 and para [0027], FIG. 2 illustrates one embodiment for generating a PHP program. Fig. 4 and para [0029], SQL code, PHP code, and HTML code); and generating, using the source code generating service, a first set of source code for the computer application in the one or more target programming languages from the design codebase (Holt, fig. 4 and para [0029], FIG. 4 illustrates a single specification entity (or “specity” for convenience) processed into multiple segments in the generated program. The field specity 4001 includes a name attribute, a key attribute, and a required attribute. The field specity is processed by the ruleset 4002 to generate the program document 4003. The field specity generates a segment 4004 of SQL code to create a corresponding database column. The field specity generates a segment 4005 of PHP code to capture and validate corresponding user input. The field specity generates a segment 4006 of HTML code to display a corresponding input box. Each of these segments 4004-4006 is generated using the same process. The ruleset 402 is applied to the specity 4001, converting the specity 4001 into three entities (segment entities) each of which contains certain values. Each segment entity has a corresponding predefined segment with placeholders for the values, and values from the segment entity are used to populate the corresponding predefined segment, thus yielding segments 4004-4006.). The Office would like to use prior art Stevens to back up Holt to further teach limitation generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end in a base programming language for the computer application (Stevens, US 20190243617, paragraph [0074], Turning first to the development environment 325, this development environment 325 represents an interface which a developer (e.g., a human developer) may use to work on the codebase 330. By using the development environment 325, the developer can generate, edit (e.g., change), and/or debug the codebase 330. Para [0079-0081], As discussed, a codebase includes source code, but it may also include databases, metadata, and libraries, just to name a few other features. As such, the change may occur to any information included within a codebase, and not just to source code.) It would have obvious to one having ordinary skill in the art before the effecting filing date of the claimed invention to combine the teachings of cited references. Thus, one of ordinary skill in the art before the effecting filing date of the claimed invention would have been motivated to incorporate Stevens into Holt to improve user development of source code using continued machine learning. The better suggestions are provided to the developer. The service can dynamically alter or modify their subsequent analysis operations to perpetually improve their subsequent analysis results and to improve the development of source code. The code base can be automatically edited, thus, saving the developer a significant amount of time, particularly if there are multiple insights with multiple resolutions as suggested by Stevens (See abstract and summary). Claim 2 is rejected for the reasons set forth hereinabove for claim 1, Holt and Stevens teach the method of claim 1, wherein the first set of source code comprises client-side source code and server-side source code (Holt, para [0265], The generated document is optionally the front-end, back-end, or both ends of a website application. Fig. 4 and para [0029], SQL code, PHP code, and HTML code.). Claim 3 is rejected for the reasons set forth hereinabove for claim 1, Holt and Stevens teach the method of claim 1, wherein generating the design codebase further comprises generating the design codebase based on one or more core models, wherein the core models comprise data models, query models, class models, structure models and page models(Holt, fig. 4 and para [0029], FIG. 4 illustrates a single specification entity (or “specity” for convenience) processed into multiple segments in the generated program. The field specity 4001 includes a name attribute, a key attribute, and a required attribute. The field specity is processed by the ruleset 4002 to generate the program document 4003. The field specity generates a segment 4004 of SQL code to create a corresponding database column. The field specity generates a segment 4005 of PHP code to capture and validate corresponding user input. The field specity generates a segment 4006 of HTML code to display a corresponding input box. Each of these segments 4004-4006 is generated using the same process. The ruleset 402 is applied to the specity 4001, converting the specity 4001 into three entities (segment entities) each of which contains certain values. Each segment entity has a corresponding predefined segment with placeholders for the values, and values from the segment entity are used to populate the corresponding predefined segment, thus yielding segments 4004-4006.). Claim 4 is rejected for the reasons set forth hereinabove for claim 1, Holt and Stevens teach the method of 1, further comprising: generating, using the source code generating service, a second set of source code for a second computer application from the design codebase(Holt, para [0469-0470], Common programming languages include ActionScript, Ada, Arc, AWK, Bash, BASIC, C, C++, C#, C Shell, Clojure, COBOL, ColdFusion, Elm, Erlang, Fortran, Go, Haskell, HTML, Java, JavaScript, Julia, Lisp, Objective-C, OCaml, Opal, Perl, PHP, Pico, PowerShell, Prolog, Python, Qbasic, Ruby, Rust, SQL, Swift, TypeScript, Visual Basic, WebAssembly, Wolfram, XML, and XQuery among others.). Claim 5 is rejected for the reasons set forth hereinabove for claim 1, Holt and Stevens teach the method of claim 1, further comprising deploying, using an application deployment service, the computer application to a cloud computing platform (Holt, para [0030], At 6003, the editor program uploads the code to web server to display as a website. Stevens, para [0043], cloud computing .). Claim 6 is rejected for the reasons set forth hereinabove for claim 5, Holt and Stevens teach the method of claim 5, further comprising configuring a database for use by the computer application(Holt, para [0323], The storage layer handles reading and writing of a data object. This is typically managed through a separate storage engine program, such as a database, that interfaces with the API program. The preferred storage layer is a relational database, such as MySQL, PostgreSQL, or Oracle Database. Alternatively, the storage layer may be a key-value store such as Redis, Riak, AWS Dynamo, or Memcached). Claim 7 is rejected for the reasons set forth hereinabove for claim 1, Holt and Stevens teach the method of claim 1, wherein the computer application is a web application or a mobile application(Holt, para [0205], Segments designed to generate a computer program optionally contain program instructions in multiple programming languages—for example PHP, HTML, and SQL in an exemplary PHP web application.). Claim 8 rejected, Holt teaches a method of enabling development of a computer application comprising (Holt, abstract and summary): generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end for the computer application(Holt, US 20210004209, para [0007], A domain ruleset is applied to convert the plurality of specification entities to a plurality of segment entities that comprise the values from the specification entities. The domain ruleset comprises predefined rules for processing specification entities for documents within the targeted domain. The plurality of segment entities are then processed to populate corresponding predefined segments from a segment set by inserting values from the segment entities into the predefined segments. The predefined segments comprise fragments of a document within the targeted domain and further comprise value insertion points for the insertion of values into the predefined segments. The segments are assembled according to the ruleset, thereby generating the document. Para [0265], front-end, back-end, or both ends of a website application. Fig. 3 and para [0028], A specification entity 3001 describing a field is input into the generator. The generator applies the ruleset to convert the specification entity 3001 into a corresponding segment entity 3002. Fig. 4 and para [0029]. ); receiving, through a developer user interface (UI), a first user input that defines a request to an artificial intelligence (AI) code generating service to generate code (Holt, fig. 6 and para [0031], FIG. 6 illustrates an exemplary editing cycle for a generated web document. At 6001 the constructor builds a specification in an editor program. The editor program is optionally a website or an application running on the constructor's computer. At 6002, the editor uses the specification to generate code, for example using the processes described herein to convert a specification into a generated document. The code for a web document is typically HTML or a scripting language that outputs HTML (e.g. PHP or Python). At 6003, the editor program uploads the code to web server to display as a website. At 6004, the constructor clicks on an element on a webpage to initiate editing the part of the specification associated with that element. The clicking optionally involves alt-clicking or control-clicking, or optionally involves a browser plugin or JavaScript to enable such an edit click. At 6005, the constructor is directed to the editor program where the constructor edits the entity or entities associated with that element 6006. The webpage may be updated in real-time.); generating, using the AI code generating service, AI generated computer code based on the first user input (Holt, fig. 6 and para [0031], FIG. 6 illustrates an exemplary editing cycle for a generated web document. At 6001 the constructor builds a specification in an editor program. The editor program is optionally a website or an application running on the constructor's computer. At 6002, the editor uses the specification to generate code, for example using the processes described herein to convert a specification into a generated document. The code for a web document is typically HTML or a scripting language that outputs HTML (e.g. PHP or Python). Holt, fig. 4 and para [0029], FIG. 4 illustrates a single specification entity (or “specity” for convenience) processed into multiple segments in the generated program.), wherein the AI generated computer code is incompatible with the design codebase (Holt, fig. 4 and para [0029], FIG. 4 illustrates a single specification entity (or “specity” for convenience) processed into multiple segments in the generated program. The field specity 4001 includes a name attribute, a key attribute, and a required attribute. The field specity is processed by the ruleset 4002 to generate the program document 4003. The field specity generates a segment 4004 of SQL code to create a corresponding database column. The field specity generates a segment 4005 of PHP code to capture and validate corresponding user input. The field specity generates a segment 4006 of HTML code to display a corresponding input box. Each of these segments 4004-4006 is generated using the same process. The ruleset 402 is applied to the specity 4001, converting the specity 4001 into three entities (segment entities) each of which contains certain values. Each segment entity has a corresponding predefined segment with placeholders for the values, and values from the segment entity are used to populate the corresponding predefined segment, thus yielding segments 4004-4006.); and Holt does not explicitly teach generating, using a code correction service, corrected computer code from the AI generated computer code, wherein the corrected computer code is compatible with the design codebase. However, Stevens teaches generating, using a code correction service, corrected computer code from the AI generated computer code, wherein the corrected computer code is compatible with the design codebase (Stevens, US 20190243617, para [0122], In this situation, the developer generated the source code 805 using different variables. As shown by the circled variables 810, the developer used a variable having the name “var.” In many coding languages, “var” is a reserved term and should not be used as a variable name. Thus, in this situation, the developer is attempting to use a variable name that probably should not be used. By following the principles discussed earlier, the embodiments are able to analyze the source code 805 to provide insights on how the source code 805 may be improved. Fig. 8 and para [0127-133], the analysis results were presented to the developer via suggestion box 815. As illustrated, the suggestion box 815 includes the name of a bot service (here, the name is “SmartBot”) as well as an avatar and a timestamp. Additionally, the suggestion box 815 includes the following language, “Based on this repo's code patterns, SmartBot suggests renaming ‘var’ as ‘foo’ with confidence 89%.” Such language constitutes an “insight.” Of course, this language is simply one example of what an insight may look like, and the broader understanding of providing (1) an identification of an issue, (2) a response on how to potentially resolve that issue, and (3) an optional level of confidence associated with that response should be followed. Fig. 9 and para [0134-0135], he option 905 is an option to automatically accept and apply the insights offered by the analyzer. In this manner, the developer will not have to take the time to edit the codebase him/herself. Instead, by selecting the option 905, the codebase can be automatically edited, thus saving the developer a significant amount of time, particularly if there are multiple insights with multiple resolutions). It would have obvious to one having ordinary skill in the art before the effecting filing date of the claimed invention to combine the teachings of cited references. Thus, one of ordinary skill in the art before the effecting filing date of the claimed invention would have been motivated to incorporate Stevens into Holt to improve user development of source code using continued machine learning. The better suggestions are provided to the developer. The service can dynamically alter or modify their subsequent analysis operations to perpetually improve their subsequent analysis results and to improve the development of source code. The code base can be automatically edited, thus, saving the developer a significant amount of time, particularly if there are multiple insights with multiple resolutions as suggested by Stevens (See abstract and summary). The Office notes that Stevens also teach limitation generating, using a design codebase generating service, a design codebase for the computer application, the design codebase defining a front-end and a back-end for the computer application (Stevens, paragraph [0074], Turning first to the development environment 325, this development environment 325 represents an interface which a developer (e.g., a human developer) may use to work on the codebase 330. By using the development environment 325, the developer can generate, edit (e.g., change), and/or debug the codebase 330. Para [0079-0081], As discussed, a codebase includes source code, but it may also include databases, metadata, and libraries, just to name a few other features. As such, the change may occur to any information included within a codebase, and not just to source code.) Claim 9 is rejected for the reasons set forth hereinabove for claim 8, Holt and Stevens teach the method of claim 8, wherein the design codebase and the AI generated computer code are incompatible because they are in different programming languages(Holt, fig. 4 and para [0029], FIG. 4 illustrates a single specification entity (or “specity” for convenience) processed into multiple segments in the generated program. The field specity 4001 includes a name attribute, a key attribute, and a required attribute. The field specity is processed by the ruleset 4002 to generate the program document 4003. The field specity generates a segment 4004 of SQL code to create a corresponding database column. The field specity generates a segment 4005 of PHP code to capture and validate corresponding user input. The field specity generates a segment 4006 of HTML code to display a corresponding input box. Each of these segments 4004-4006 is generated using the same process. The ruleset 402 is applied to the specity 4001, converting the specity 4001 into three entities (segment entities) each of which contains certain values. Each segment entity has a corresponding predefined segment with placeholders for the values, and values from the segment entity are used to populate the corresponding predefined segment, thus yielding segments 4004-4006.). Stevens, para [0122], In this situation, the developer generated the source code 805 using different variables. As shown by the circled variables 810, the developer used a variable having the name “var.” In many coding languages, “var” is a reserved term and should not be used as a variable name. Thus, in this situation, the developer is attempting to use a variable name that probably should not be used. By following the principles discussed earlier, the embodiments are able to analyze the source code 805 to provide insights on how the source code 805 may be improved.) Claim 10 is rejected for the reasons set forth hereinabove for claim 8, Holt and Stevens teach the method of claim 8, wherein the design codebase and the AI generated computer code are incompatible because the AI generated code has syntax errors (Stevens, , fig. 8 and para [0127-133], the analysis results were presented to the developer via suggestion box 815. As illustrated, the suggestion box 815 includes the name of a bot service (here, the name is “SmartBot”) as well as an avatar and a timestamp. Additionally, the suggestion box 815 includes the following language, “Based on this repo's code patterns, SmartBot suggests renaming ‘var’ as ‘foo’ with confidence 89%.” Such language constitutes an “insight.” Of course, this language is simply one example of what an insight may look like, and the broader understanding of providing (1) an identification of an issue, (2) a response on how to potentially resolve that issue, and (3) an optional level of confidence associated with that response should be followed. Fig. 9 and para [0134-0135]. Stevens, para [0122], In this situation, the developer generated the source code 805 using different variables. As shown by the circled variables 810, the developer used a variable having the name “var.” In many coding languages, “var” is a reserved term and should not be used as a variable name. Thus, in this situation, the developer is attempting to use a variable name that probably should not be used. By following the principles discussed earlier, the embodiments are able to analyze the source code 805 to provide insights on how the source code 805 may be improved.). Claim 11 is rejected for the reasons set forth hereinabove for claim 8, Holt and Stevens teach the method of claim 8, further comprising incorporating, using a code management service, the corrected computer code into the design codebase(Holt, fig. 6 and para [0031], FIG. 6 illustrates an exemplary editing cycle for a generated web document. At 6001 the constructor builds a specification in an editor program. The editor program is optionally a website or an application running on the constructor's computer. At 6002, the editor uses the specification to generate code, for example using the processes described herein to convert a specification into a generated document. The code for a web document is typically HTML or a scripting language that outputs HTML (e.g. PHP or Python). At 6003, the editor program uploads the code to web server to display as a website. At 6004, the constructor clicks on an element on a webpage to initiate editing the part of the specification associated with that element. The clicking optionally involves alt-clicking or control-clicking, or optionally involves a browser plugin or JavaScript to enable such an edit click. At 6005, the constructor is directed to the editor program where the constructor edits the entity or entities associated with that element 6006. The webpage may be updated in real-time. Stevens, para [0116-01147], the bot service is able to monitor the codebase and/or the development environment to detect how the developer responded (i.e. feedback 705A) (e.g., explicit or implicit feedback) to the analysis results. Once the bot service identifies the feedback 705A, then it can pass some or all of that feedback to the orchestrator and/or the analyzers (as shown by feedback 705B). In this manner, obtaining the feedback 705A and passing the feedback 705B constitutes a feedback loop. By acquiring this feedback, the learning model can be updated, and the service can continuously learn how to improve its analysis of a codebase as well as the suggestions it provides to the developer. It follows then that the service can learn not only from a corpus of model data, but it can also learn from ongoing developer feedback, which may be received in response to the displayed insights.)). Claim 12 is rejected for the reasons set forth hereinabove for claim 11, Holt and Stevens teach the method of claim 11, further comprising generating, using a source code generating service, a first set of source code for the computer application in one or more target programming languages from the design codebase after the corrected computer code is incorporated into the design codebase(Holt, fig. 6 and para [0031], FIG. 6 illustrates an exemplary editing cycle for a generated web document. At 6001 the constructor builds a specification in an editor program. The editor program is optionally a website or an application running on the constructor's computer. At 6002, the editor uses the specification to generate code, for example using the processes described herein to convert a specification into a generated document. The code for a web document is typically HTML or a scripting language that outputs HTML (e.g. PHP or Python). At 6003, the editor program uploads the code to web server to display as a website. At 6004, the constructor clicks on an element on a webpage to initiate editing the part of the specification associated with that element. The clicking optionally involves alt-clicking or control-clicking, or optionally involves a browser plugin or JavaScript to enable such an edit click. At 6005, the constructor is directed to the editor program where the constructor edits the entity or entities associated with that element 6006. The webpage may be updated in real-time. Holt, para [0469-0470], Common programming languages include ActionScript, Ada, Arc, AWK, Bash, BASIC, C, C++, C#, C Shell, Clojure, COBOL, ColdFusion, Elm, Erlang, Fortran, Go, Haskell, HTML, Java, JavaScript, Julia, Lisp, Objective-C, OCaml, Opal, Perl, PHP, Pico, PowerShell, Prolog, Python, Qbasic, Ruby, Rust, SQL, Swift, TypeScript, Visual Basic, WebAssembly, Wolfram, XML, and XQuery among others.). Claim 13 is rejected for the reasons set forth hereinabove for claim 12, Holt and Stevens teach the method of claim 12, wherein the first set of source code comprises client-side source code and server-side source code(Holt, para [0265], The generated document is optionally the front-end, back-end, or both ends of a website application. Fig. 4 and para [0029], SQL code, PHP code, and HTML code.). Claim 14 is rejected for the reasons set forth hereinabove for claim 13, Holt and Stevens teach the method of claim 13, further comprising deploying, using an application deployment service, the computer application to a cloud computing platform (Holt, para [0030], At 6003, the editor program uploads the code to web server to display as a website. Stevens, para [0043], cloud computing .). Claim 15 is rejected for the reasons set forth hereinabove for claim 12, Holt and Stevens teach the method of claim 12, further comprising generating, using a source code generating service, a second set of source code for the computer application in one or more target programming languages from the design codebase after the corrected computer code is incorporated into the design codebase(Holt, fig. 6 and para [0031], FIG. 6 illustrates an exemplary editing cycle for a generated web document. At 6001 the constructor builds a specification in an editor program. The editor program is optionally a website or an application running on the constructor's computer. At 6002, the editor uses the specification to generate code, for example using the processes described herein to convert a specification into a generated document. The code for a web document is typically HTML or a scripting language that outputs HTML (e.g. PHP or Python). At 6003, the editor program uploads the code to web server to display as a website. At 6004, the constructor clicks on an element on a webpage to initiate editing the part of the specification associated with that element. The clicking optionally involves alt-clicking or control-clicking, or optionally involves a browser plugin or JavaScript to enable such an edit click. At 6005, the constructor is directed to the editor program where the constructor edits the entity or entities associated with that element 6006. The webpage may be updated in real-time. Holt, para [0469-0470], Common programming languages include ActionScript, Ada, Arc, AWK, Bash, BASIC, C, C++, C#, C Shell, Clojure, COBOL, ColdFusion, Elm, Erlang, Fortran, Go, Haskell, HTML, Java, JavaScript, Julia, Lisp, Objective-C, OCaml, Opal, Perl, PHP, Pico, PowerShell, Prolog, Python, Qbasic, Ruby, Rust, SQL, Swift, TypeScript, Visual Basic, WebAssembly, Wolfram, XML, and XQuery among others.). As per claim 16, this is the medium claim to method claim 1. Therefore, it is rejected for the same reasons as above. As per claim 17, this is the medium claim to method claim 2. Therefore, it is rejected for the same reasons as above. As per claim 18, this is the medium claim to method claim 3. Therefore, it is rejected for the same reasons as above. As per claim 19, this is the medium claim to method claim 4. Therefore, it is rejected for the same reasons as above. As per claim 20, this is the medium claim to method claim 5. Therefore, it is rejected for the same reasons as above. Inquiry Any inquiry concerning this communication or earlier communications from the examiner should be directed to DUY KHUONG THANH NGUYEN whose telephone number is (571)270-7139. The examiner can normally be reached M-F 8 to 5. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Lewis Bullock can be reached on 5712723759. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /DUY KHUONG T NGUYEN/Primary Examiner, Art Unit 2199
Read full office action

Prosecution Timeline

Mar 15, 2024
Application Filed
Feb 07, 2026
Non-Final Rejection — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12596634
TESTING A MACHINE LEARNING MODEL
2y 5m to grant Granted Apr 07, 2026
Patent 12596534
Spreadsheet-Based Software Application Development
2y 5m to grant Granted Apr 07, 2026
Patent 12578935
COMPOSITION OF PATTERN-DRIVEN REACTIONS IN REAL-TIME DATAFLOW PROGRAMMING
2y 5m to grant Granted Mar 17, 2026
Patent 12578960
DISTINGUISHING PATTERN DIFFERENCES FROM NON-PATTERN DIFFERENCES
2y 5m to grant Granted Mar 17, 2026
Patent 12572333
Vehicle Electronic Control Device and Program Rewriting Method
2y 5m to grant Granted Mar 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
82%
Grant Probability
99%
With Interview (+35.2%)
2y 9m
Median Time to Grant
Low
PTA Risk
Based on 539 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in for Full Analysis

Enter your email to receive a magic link. No password needed.

Free tier: 3 strategy analyses per month