Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
1. This action is responsive to the application filed on October 11, 2024.
2. Claims 21-40 have been examined.
Claim Rejections – 35 USC §102
3. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
4. Claims 21, 23, 26, 29, and 33-40 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by US 2021/0026614 to Manoharan et al. (hereafter “Manoharan”).
Claim 21.
Manoharan discloses a non-transitory computer readable medium including instructions that, when executed by at least one processor, cause the at least one processor to perform operations for execution of an application in a dynamic runtime environment, the operations comprising:
identifying one or more runtime preferences for execution of the application (0013, 0021, 0035, 0050);
determining a state portion (FIG.3, Configuration Parameters 312 and related text) and
a logic portion of the application (FIG.3, Application 302 and related text);
generating one or more wrappers to wrap the state portion and the logic portion of the application (FIG.3, generate Container 300 to wrap Application 302 and Configuration Parameters 312);
initializing a runtime architecture for the application based on the one or more runtime preferences (0012, 0014, 0035, 0052); and
customizing the application for execution in the runtime environment (0014, 0032, 0033, 0042, 0043, 0051).
Claim 23.
Manoharan discloses the non-transitory computer readable medium of claim 21, wherein the one or more runtime preferences comprise at least one of: a scaling requirement for the application, a connectivity requirement for the application, a computing resource requirement for the application, a security requirement for the application, or a compliance requirement for the application (0021, 0035, 0052).
Claim 26.
Manoharan discloses the non-transitory computer readable medium of claim 21, wherein the logic portion of the application processes data provided by the state portion of the application (FIG.3, Application 302 processes Configuration Parameters 312).
Claim 29.
Manoharan discloses the non-transitory computer readable medium of claim 21, wherein the one or more wrapper is generated based on a storage location of the state portion and the logic portion of the application (FIG.3, 302, 312 are generated based on specific Host OS and/or Host hardware Infrastructure).
Claim 33.
Manoharan discloses the non-transitory computer readable medium of claim 21, wherein the one or more wrappers comprises a logic wrapper and a state wrapper (FIG.3, Application 302 wrapped by a logic wrapper and Configuration Parameters 312 wrapped by a state wrapper).
Claim 34.
Manoharan discloses the non-transitory computer readable medium of claim 33, wherein the state wrapper and the logic wrapper dynamically transform at least a portion of application code for execution of the application (FIG.3, executing Application 302 on a specific host).
Claim 35.
Manoharan discloses a computer implemented method for execution of an application in a dynamic runtime environment, the operations comprising:
identifying one or more runtime preferences for execution of the application (0013, 0021, 0035, 0050);
determining a state portion (FIG.3, Configuration Parameters 312 and related text) and
a logic portion of the application (FIG.3, Application 302 and related text);
generating one or more wrappers to wrap the state portion and the logic portion of the application (FIG.3, generate Container 300 to wrap Application 302 and Configuration Parameters 312);
initializing a runtime architecture for the application based on the one or more runtime preferences (0012, 0014, 0035, 0052); and
customizing the application for execution in the runtime environment (0014, 0032, 0033, 0042, 0043, 0051).
Claim 36.
Manoharan discloses the computer implemented method of claim 35, wherein initializing the runtime architecture comprises instantiating the runtime environment by spinning up a plurality of computing instances in a cloud environment (FIG.2, spinning up 210, 204, 208, 122, 132).
Claim 37.
Manoharan discloses the computer implemented method of claim 36, wherein customizing the application comprises: creating a plurality of instances of the logic portion of the application; and copying each of the plurality of instances to one of the plurality of computing instances (FIG.2, copy software instances to machines 120s).
Claim 38.
Manoharan discloses the computer implemented method of claim 35, wherein customizing the application comprises copying the logic portion of the application and the state portion of the application to a same computing device (FIG.3 copy to host).
Claim 39.
The computer implemented method of claim 35, wherein customizing the application comprises executing the state portion of the application and the logic portion of the application on a plurality of computing instances (FIG.2, execute software instances to machines 120s).
Claim 40.
The computer implemented method of claim 35, wherein customizing the application comprises distributing the wrapped state portion and logic portion of the application to the application in the runtime architecture (FIG.3, generate Container 300 to wrap Application 302 and Configuration Parameters 312).
Claim Rejections – 35 USC §103
5. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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 of this title, 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.
6. Claim 22 is rejected under 35 U.S.C. 103 as being unpatentable over Manoharan in view of US 2003/0131152 to Erlingsson (hereafter “Erlingsson”).
Claim 22.
Manoharan does not disclose the non-transitory computer readable medium of claim 21, wherein the one or more runtime preferences are identified based on a prior execution history of the application.
However, Erlingsson discloses the one or more runtime preferences are identified based on a prior execution history of the application (0041).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to combine Erlingsson’s teaching into Manoharan‘s teaching. One would have been motivated to do so to modify the behavior of an executing software component as suggested by Erlingsson (0041).
7. Claim 27 is rejected under 35 U.S.C. 103 as being unpatentable over Manoharan in view of US 2019/0138678 to Young et al. (hereafter “Young”).
Claim 27.
Manoharan does not disclose the non-transitory computer readable medium of claim 26, wherein the state portion of the application comprises variables in code of the application.
However, Young discloses the state portion of the application comprises variables in code of the application (0043).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to combine Young’s teaching into Manoharan‘s teaching. One would have been motivated to do so to include settings, configurations, variables defined in the code modules as suggested by Young (0043).
8. Claim 28 is rejected under 35 U.S.C. 103 as being unpatentable over Manoharan in view of US 2010/0106262 to Schreyer et al. (hereafter “Schreyer”).
Claim 28.
Manoharan does not disclose the non-transitory computer readable medium of claim 21, wherein determining the state portion and the logic portion of the application comprises interpreting code associated with the application.
However, Schreyer discloses determining the state portion and the logic portion of the application comprises interpreting code associated with the application (0087).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to combine Schreyer’s teaching into Manoharan‘s teaching. One would have been motivated to do so to interpret byte code by a virtual machine as suggested by Schreyer (0087).
9. Claim 32 is rejected under 35 U.S.C. 103 as being unpatentable over Manoharan in view of US 2022/0294828 to Keiser, Jr. (hereafter “Keiser”).
Claim 32.
Manoharan does not disclose the non-transitory computer readable medium of claim 21, wherein the wrapped logic portion of the application transforms access to variables storing data in network calls associated with the application.
However, Keiser discloses the wrapped logic portion of the application transforms access to variables storing data in network calls associated with the application (0130).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to combine Keiser’s teaching into Manoharan‘s teaching. One would have been motivated to do so to identify network calls executed on the PaaS system as suggested by Keiser (0130).
Allowable Subject Matter
10. After search and analysis, Examiner concluded that the claimed invention has been recited in such a manner that dependent claim 24 is not taught by any prior reference found through search.
The primary reason for allowance of the claims in this case, is the inclusion of the limitations “The non-transitory computer readable medium of claim 21, wherein identifying the one or more runtime preferences comprises using a machine learning algorithm to analyze previously stored runtime preferences and user inputs,” which are not found in the prior art of record.
Incorporating claim 24 into claims 21 and 35 would put the case in condition for allowance.
Claim 25 depends on claim 24 and is also allowable.
11. After search and analysis, Examiner concluded that the claimed invention has been recited in such a manner that dependent claim 30 is not taught by any prior reference found through search.
The primary reason for allowance of the claims in this case, is the inclusion of the limitations “The non-transitory computer readable medium of claim 21, wherein the wrapped state portion of the application comprises a migration of a plurality of variables of the logic portion of the application into a global namespace,” which are not found in the prior art of record.
Incorporating claim 30 into claims 21 and 35 would put the case in condition for allowance.
Claim 31 depends on claim 30 and is also allowable.
Conclusion
12. Any inquiry concerning this communication should be directed to examiner Thuy (Twee) Dao, whose telephone/fax numbers are (571) 272 8570 and (571) 273 8570, respectively. Examiner can normally be reached from Monday to Friday, 5:30am - 2:00pm ET.
If attempts to reach Examiner by telephone are unsuccessful, Examiner’s supervisor, Hyung (Sam) Sough, can be reached at (571) 272 6799.
The fax phone number for the organization where this application or proceeding is assigned is (571) 273 8300.
Any inquiry of a general nature of relating to the status of this application or proceeding should be directed to the TC 2100 Group receptionist whose telephone number is (571) 272 2100.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
/Thuy Dao/Primary Examiner, Art Unit 2192