Prosecution Insights
Last updated: July 05, 2026
Application No. 18/628,455

SEAMLESSLY IMPLEMENTING CODE MODULE UPDATES

Non-Final OA §103
Filed
Apr 05, 2024
Examiner
CHEN, QING
Art Unit
2191
Tech Center
2100 — Computer Architecture & Software
Assignee
International Business Machines Corporation
OA Round
2 (Non-Final)
80%
Grant Probability
Favorable
2-3
OA Rounds
11m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 80% — above average
80%
Career Allowance Rate
547 granted / 686 resolved
+24.7% vs TC avg
Strong +53% interview lift
Without
With
+52.9%
Interview Lift
resolved cases with interview
Typical timeline
3y 2m
Avg Prosecution
22 currently pending
Career history
712
Total Applications
across all art units

Statute-Specific Performance

§101
9.2%
-30.8% vs TC avg
§103
82.0%
+42.0% vs TC avg
§102
5.8%
-34.2% vs TC avg
§112
2.5%
-37.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 686 resolved cases

Office Action

§103
DETAILED ACTION This Office action is in response to the amendment submitted on March 12, 2026. Claims 1-20 are pending. Claims 1, 3, 6, 9, 11, 17, and 18 are currently amended. The objections to Claims 6, 9, and 17 are withdrawn in view of the Applicant’s amendments to the claims. In the interest of facilitating compact prosecution, the Examiner kindly asks the Applicant’s representative to authorize Internet communications with the Examiner by submitting Form PTO/SB/439 using Patent Center. 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 . Claim Interpretation For clarity of the prosecution history record, Claims 9-16 are directed to a computer program product (CPP) comprising a set of one or more computer-readable storage media. It is noted that the Applicant’s specification states that “[a] computer readable storage medium, as that term is used in the present disclosure, is not to be construed as storage in the form of transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide, light pulses passing through a fiber optic cable, electrical signals communicated through a wire, and/or other transmission media” (page 8, paragraph [0024]). Thus, such statement appears to provide a special definition that explicitly excludes a computer readable storage medium from being interpreted as transitory signals per se. Therefore, Claims 9-16 can rely on the special definition and are eligible subject matter under § 101. Response to Amendment 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. Claims 1-19 are rejected under 35 U.S.C. 103 as being unpatentable over US 2012/0144379 (hereinafter “Tsai”) in view of US 2011/0154305 (hereinafter “LeRoux”), US 2012/0099024 (hereinafter “Ryu”), US 2006/0206587 (hereinafter “Fabbrocino”), US 9,154,485 (hereinafter “Fallows”), and US 2010/0125839 (hereinafter “Gebis”). [Examiner’s Remarks: In order for a reference to be proper for use in an obviousness rejection under 35 U.S.C. 103, the reference must be analogous art to the claimed invention. In re Bigio, 381 F.3d 1320, 1325, 72 USPQ2d 1209, 1212 (Fed. Cir. 2004). A reference is analogous art to the claimed invention if: (1) the reference is from the same field of endeavor as the claimed invention (even if it addresses a different problem); or (2) the reference is reasonably pertinent to the problem faced by the inventor (even if it is not in the same field of endeavor as the claimed invention). Note that the claimed invention is generally directed to seamlessly performing code modifications (specification, paragraph [0002]). As for the “same field of endeavor” test, Tsai is generally directed to updating software in a computing device (Tsai, paragraph [0002]). And Ryu is generally directed to updating (or upgrading) software in a display apparatus (Ryu, paragraph [0003]). And Fabbrocino is generally directed to seamlessly updating, correcting, modifying, or upgrading software on an electronics device (Fabbrocino, paragraph [0001]). As for the “reasonably pertinent” test, LeRoux is generally directed to remote compilation of software applications suitable for native execution on multiple mobile device platforms (LeRoux, paragraph [0002]). And Fallows is generally directed to revalidating a WebSocket connection (Fallows, Abstract). And Gebis is generally directed to specifying, determining, and overriding software dependencies (Gebis, paragraph [0003]). Thus, Tsai, LeRoux, Ryu, Fabbrocino, Fallows, and Gebis are all analogous art to the claimed invention (even if they address different problems or are not in the same field of endeavor as the claimed invention). See MPEP § 2141.01(a)(I).] As per Claim 1, Tsai discloses: A computer-implemented method (CIM) (paragraph [0002], “The disclosure generally relates to […] a method for updating software in a computing device.”), comprising: receiving, from a user, an identification (ID) and a Uniform Resource Locator (URL) of a first module to be updated […] (Figure 4; paragraph [0025]1, “FIG. 4 shows a GUI for the user to select the software applications that need to be updated [receiving, from a user, an identification (ID) {…} of a first module to be updated]. The generating module 104 displays the update information of the software applications that have available updates in the GUI depicted by FIG. 4. The generating module 104 may sort the update information according to the criticality of each of these software applications which are listed in the GUI. For example, the criticality of a software application may be high, medium, or low. When the user selects one or more software applications by clicking the corresponding check boxes in the GUI, the generating module 104 can generate an update list and add the update information of the selected software applications to the update list. The update list may include a plurality of URLs to specify where a plurality of update files for the selected software applications is (emphasis added).”); [1Examiner’s Remarks: Note that Tsai discloses that the user, using the GUI, selects the software applications that need to be updated. And that an update list is generated, which includes a plurality of URLs to specify where a plurality of update files for the selected software applications is. Thus, one of ordinary skill in the art would readily comprehend that the GUI shown in Figure 4 depicts the software application names (i.e., IDs) for the user to make the selection and the software applications selected by the user includes the corresponding URLs for downloading them.] in response to the first module being updated […] (paragraph [0035], “In step S606, the applying module 106 applies the one or more updates to the one or more corresponding software applications.”; paragraph [0036], “In step S606, the report module 107 displays result information on the display 130 to notify whether the updates have been applied to the one or more corresponding software applications successfully [in response to the first module being updated {…}].”); and […] to initiate an updating process for the updated first module (paragraph [0035], “In step S606, the applying module 106 applies the one or more updates to the one or more corresponding software applications [{…} to initiate an updating process for the updated first module].”). Tsai does not explicitly disclose: an Integrated Development Environment (IDE). However, LeRoux discloses: an Integrated Development Environment (IDE) (paragraph [0033], “[…] the IDE running on user computer 10 and used to write the HTML/Javascript source application 116 may be any suitable known IDE tool available for developing HTML/Javascript based applications, such as Eclipse™, Visual Studio™, Dreamweaver™, Textmate™ and Xcode™ IDEs, for example (emphasis added).”). As pointed out hereinabove, Tsai and LeRoux are both analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of LeRoux into the teaching of Tsai to include “an Integrated Development Environment (IDE).” The modification would be obvious because one of ordinary skill in the art would be motivated to develop HTML/Javascript based applications (LeRoux, paragraph [0033]). The combination of Tsai and LeRoux does not explicitly disclose: storing the ID and URL for the first module in local storage. However, Ryu discloses: storing the ID and URL for the first module in local storage (paragraph [0212], “The software information stored in the memory 140 may be identification information of the updated software, and the identification information may include a name, a version information and/or location information, such as Uniform Resource Locator (URL) of corresponding software (emphasis added).”). As pointed out hereinabove, Ryu is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Ryu into the combined teachings of Tsai and LeRoux to include “storing the ID and URL for the first module in local storage.” The modification would be obvious because one of ordinary skill in the art would be motivated to read an updated software from a memory and perform a software update (Ryu, paragraph [0222]). The combination of Tsai, LeRoux, and Ryu discloses “the IDE,” but the combination of Tsai, LeRoux, and Ryu does not explicitly disclose: updating the first module in the IDE by: causing the first module to be unregistered, and causing a new module source file to be force fetched in the IDE for the updated first module. However, Fabbrocino discloses: updating the first module […] by: causing the first module to be unregistered (paragraph [0018], “[…] a software upgrade from version 3.6 to 3.7, and then 3.7 to 3.8, results in removal of the 3.6 version from the device [causing the first module to be unregistered]. When version 3.8 is upgraded to 3.9, the 3.7 version is removed [causing the first module to be unregistered]. Alternatively, prior versions are deleted in accordance with a predetermined amount of time or are stored elsewhere (emphasis added).”), and causing a new module source file to be force fetched […] for the updated first module (paragraph [0006], “Providers often force, or push, upgrades to the user device and users are typically denied access to the device until upgrades are installed. Alternatively, a provider may prevent a user from closing out of an application until the upgrade is downloaded. When the provider forces downloads of upgrades the user’s device typically functions more slowly or not at all until upgrades are downloaded [causing a new module source file to be force fetched {…} for the updated first module] (emphasis added).”). As pointed out hereinabove, Fabbrocino is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Fabbrocino into the combined teachings of Tsai, LeRoux, and Ryu to include “updating the first module in the IDE by: causing the first module to be unregistered, and causing a new module source file to be force fetched in the IDE for the updated first module.” The modification would be obvious because one of ordinary skill in the art would be motivated to constantly update a computer software to keep pace with new features, prevent problems from arising, or fix known or recurrent problems (Fabbrocino, paragraph [0002]). Tsai discloses “the updated first module,” but the combination of Tsai, LeRoux, Ryu, and Fabbrocino does not explicitly disclose: causing a websocket message with a new URL to be generated for the updated first module […]; […] automatically receiving the websocket message with the new URL for the updated first module; and using the websocket message […]. However, Fallows discloses: causing a websocket message with a new URL to be generated […] (col. 12 lines 30-39, “[…] interpreting the WebSocket frame as a control message includes processing the control message included in the payload data portion of the WebSocket frame. This data may specify a configuration parameter, metadata, and/or a data to be otherwise processed. In some embodiments, the control message is managed, created, and/or processed at a processing level distinct from an end destination application [causing a websocket message with a new URL to be generated {…}]. For example, the control message is managed by a web browser distinct from the processing level of a web application executing within the web browser (emphasis added).”; col. 15 lines 13-18, “[…] the control message WebSocket frame that is provided may include in its payload data portion an identifier of the authentication to be revalidated and/or a location identifier (e.g., URL) of a location where an update revalidating the authentication should be provided (emphasis added).”); […] automatically receiving the websocket message with the new URL […] (col. 12 lines 4 and 5, “At 602, a WebSocket frame is received (emphasis added).”; col. 15 lines 13-18, “[…] the control message WebSocket frame that is provided may include in its payload data portion an identifier of the authentication to be revalidated and/or a location identifier (e.g., URL) of a location where an update revalidating the authentication should be provided (emphasis added).” ); and using the websocket message […] (col. 12 lines 22-24, “If the payload data does include other data, at 608, the received WebSocket frame is interpreted as including a control message [using the websocket message {…}].”). As pointed out hereinabove, Fallows is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Fallows into the combined teachings of Tsai, LeRoux, Ryu, and Fabbrocino to include “causing a websocket message with a new URL to be generated for the updated first module […]; […] automatically receiving the websocket message with the new URL for the updated first module; and using the websocket message […].” The modification would be obvious because one of ordinary skill in the art would be motivated to enable traditional half-duplex Hypertext Transfer Protocol (HTTP) or HTTP over SSL (HTTPS) communication to be upgraded to a bi-directional, full-duplex communication channel over a Transmission Control Protocol (TCP) connection (Fallows, col. 1 lines 5-9). The combination of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows discloses “causing a websocket message with a new URL to be generated for the updated first module […],” but the combination of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows does not explicitly disclose: causing a websocket message with a new URL to be generated for the updated first module by identifying dependencies that stem from the first module, and converting those dependencies to refer to the updated first module. However, Gebis discloses: […] identifying dependencies that stem from the first module, and converting those dependencies to refer to the updated first module (Figure 4; paragraph [0027], “The manager program 170 may use an overrides file 175 which stores information about overrides to default dependency settings (emphasis added).”; paragraph [0029], “During installation or upgrading of a given program package, a new or updated dependency list 165 may also be installed (i.e., installed on the storage medium 140 or made available to the processor 150). The dependency list 165 may be assigned a name corresponding to the program package, or placed in a location which shows the association between the dependency list and its program package (emphasis added).”; paragraph [0042], “The list 415 may include the names of all or a subset of the installed program packages. The list 415 may include only those program packages with dependencies, locally installed, available to be run, and/or having manageable dependencies [{…} identifying dependencies that stem from the first module]. The list 415 may include some but not all installed versions of a given program package (emphasis added).”; paragraph [0046], “For Statengine, the right pane 450 shows radio button options 453, 454, 455, 456. The first option 453 is no override, which is normally a default. The default may be to use the highest compatible version of the installed versions of the secondary program package. The user may override this default 453 by selecting one of the specific versions listed 454, 455, 456 [converting those dependencies to refer to the updated first module]. For Tcl, a similar arrangement applies in the example, with a default 457 and one override option 458 (emphasis added).”). As pointed out hereinabove, Gebis is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Gebis into the combined teachings of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows to include “causing a websocket message with a new URL to be generated for the updated first module by identifying dependencies that stem from the first module, and converting those dependencies to refer to the updated first module.” The modification would be obvious because one of ordinary skill in the art would be motivated to modify settings for a primary program package to force it to load a particular version of a secondary program package (Gebis, paragraph [0048]). As per Claim 2, the rejection of Claim 1 is incorporated; and the combination of Tsai, Ryu, Fabbrocino, Fallows, and Gebis does not explicitly disclose: wherein the IDE is configured for JavaScript® software development. However, LeRoux discloses: wherein the IDE is configured for JavaScript® software development (paragraph [0033], “[…] the IDE running on user computer 10 and used to write the HTML/Javascript source application 116 may be any suitable known IDE tool available for developing HTML/Javascript based applications, such as Eclipse™, Visual Studio™, Dreamweaver™, Textmate™ and Xcode™ IDEs, for example.”). As pointed out hereinabove, LeRoux is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of LeRoux into the combined teachings of Tsai, Ryu, Fabbrocino, Fallows, and Gebis to include “wherein the IDE is configured for JavaScript® software development.” The modification would be obvious because one of ordinary skill in the art would be motivated to develop HTML/Javascript based applications (LeRoux, paragraph [0033]). As per Claim 3, the rejection of Claim 1 is incorporated; and the combination of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows discloses “using the websocket message to initiate an updating process for the updated first module,” but the combination of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows does not explicitly disclose: wherein using the websocket message to initiate an updating process for the updated first module includes: replacing references to the first module, with references to correlated new code in the updated first module. However, Gebis discloses: replacing references to the first module, with references to correlated new code in the updated first module (Figure 4; paragraph [0027], “The manager program 170 may use an overrides file 175 which stores information about overrides to default dependency settings.”; paragraph [0029], “During installation or upgrading of a given program package, a new or updated dependency list 165 may also be installed (i.e., installed on the storage medium 140 or made available to the processor 150). The dependency list 165 may be assigned a name corresponding to the program package, or placed in a location which shows the association between the dependency list and its program package.”; paragraph [0042], “The list 415 may include the names of all or a subset of the installed program packages. The list 415 may include only those program packages with dependencies, locally installed, available to be run, and/or having manageable dependencies. The list 415 may include some but not all installed versions of a given program package.”; paragraph [0046], “For Statengine, the right pane 450 shows radio button options 453, 454, 455, 456. The first option 453 is no override, which is normally a default. The default may be to use the highest compatible version of the installed versions of the secondary program package. The user may override this default 453 by selecting one of the specific versions listed 454, 455, 456. For Tcl, a similar arrangement applies in the example, with a default 457 and one override option 458.”). As pointed out hereinabove, Gebis is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Gebis into the combined teachings of Tsai, LeRoux, Ryu, Fabbrocino, and Fallows to include “wherein using the websocket message to initiate an updating process for the updated first module includes: replacing references to the first module, with references to correlated new code in the updated first module.” The modification would be obvious because one of ordinary skill in the art would be motivated to modify settings for a primary program package to force it to load a particular version of a secondary program package (Gebis, paragraph [0048]). As per Claim 4, the rejection of Claim 1 is incorporated; and Tsai further discloses: receiving an ID and a URL of a second module to be updated […] (Figure 4; paragraph [0025], “FIG. 4 shows a GUI for the user to select the software applications that need to be updated. The generating module 104 displays the update information of the software applications that have available updates in the GUI depicted by FIG. 4. The generating module 104 may sort the update information according to the criticality of each of these software applications which are listed in the GUI. For example, the criticality of a software application may be high, medium, or low. When the user selects one or more software applications by clicking the corresponding check boxes in the GUI, the generating module 104 can generate an update list and add the update information of the selected software applications to the update list. The update list may include a plurality of URLs to specify where a plurality of update files for the selected software applications is.”); in response to the second module being updated […], determining whether the updating process should be initiated for the updated second module (paragraph [0033], “In step S604, the generating module 104 compares the current version information of each of the plurality of software applications to the corresponding latest version information. If the current version number of a software application is smaller than the corresponding latest version number of the software application, the generating module 104 can combine the current version information and the corresponding latest version information as update information for the software application.”); in response to determining that the updating process should be initiated for the updated second module, requesting the updated second module (paragraph [0034], “In step S605, the download module 105 downloads one or more update files according to the update list.”); and using the updated second module to initiate the updating process (paragraph [0035], “In step S606, the applying module 106 applies the one or more updates to the one or more corresponding software applications.”). The combination of Tsai, Ryu, Fabbrocino, Fallows, and Gebis does not explicitly disclose: an Integrated Development Environment (IDE). However, LeRoux discloses: an Integrated Development Environment (IDE) (paragraph [0033], “[…] the IDE running on user computer 10 and used to write the HTML/Javascript source application 116 may be any suitable known IDE tool available for developing HTML/Javascript based applications, such as Eclipse™, Visual Studio™, Dreamweaver™, Textmate™ and Xcode™ IDEs, for example.”). As pointed out hereinabove, LeRoux is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of LeRoux into the combined teachings of Tsai, Ryu, Fabbrocino, Fallows, and Gebis to include “an Integrated Development Environment (IDE).” The modification would be obvious because one of ordinary skill in the art would be motivated to develop HTML/Javascript based applications (LeRoux, paragraph [0033]). As per Claim 5, the rejection of Claim 4 is incorporated; and Tsai further discloses: wherein the determining whether the updating process should be initiated for the updated second module includes: requesting authorization from the user to initiate the updating process for the updated second module (Figure 4; paragraph [0026], “When the user selects one or more software applications and clicks the update button in the GUI of FIG. 4, the download module 105 can download one or more update files according to the plurality of URLs in the update list.”); and in response to receiving authorization from the user, initiating the updating process for the updated second module (Figure 4; paragraph [0027], “The applying module 106 may execute or deploy the downloaded one or more update files to apply updates to the one or more corresponding software applications.”). As per Claim 6, the rejection of Claim 5 is incorporated; and Tsai further discloses: wherein the requesting of the authorization from the user to initiate the updating process for the updated second module includes: causing a display to present at least one logical button to the user, the at least one logical button being configured to initiate the updating process in response to being activated by the user (Figure 4; paragraph [0026], “When the user selects one or more software applications and clicks the update button in the GUI of FIG. 4, the download module 105 can download one or more update files according to the plurality of URLs in the update list.”; paragraph [0027], “The applying module 106 may execute or deploy the downloaded one or more update files to apply updates to the one or more corresponding software applications.”). As per Claim 7, the rejection of Claim 4 is incorporated; and Tsai further discloses: wherein the updated second module is retrieved from [a software management server] (paragraph [0026], “[…] the software management server 20 stores the one or more update files. The download module 105 can download the one or more update files from the software management server 20.”). The combination of Tsai, Ryu, Fabbrocino, Fallows, and Gebis does not explicitly disclose: an Integrated Development Environment (IDE). However, LeRoux discloses: an Integrated Development Environment (IDE) (paragraph [0033], “[…] the IDE running on user computer 10 and used to write the HTML/Javascript source application 116 may be any suitable known IDE tool available for developing HTML/Javascript based applications, such as Eclipse™, Visual Studio™, Dreamweaver™, Textmate™ and Xcode™ IDEs, for example.”). As pointed out hereinabove, LeRoux is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of LeRoux into the combined teachings of Tsai, Ryu, Fabbrocino, Fallows, and Gebis to include “an Integrated Development Environment (IDE).” The modification would be obvious because one of ordinary skill in the art would be motivated to develop HTML/Javascript based applications (LeRoux, paragraph [0033]). As per Claim 8, the rejection of Claim 1 is incorporated; and Tsai further discloses: receiving, from the user, IDs and URLs of a bundle of modules to be updated […] (Figure 4; paragraph [0025], “FIG. 4 shows a GUI for the user to select the software applications that need to be updated. The generating module 104 displays the update information of the software applications that have available updates in the GUI depicted by FIG. 4. The generating module 104 may sort the update information according to the criticality of each of these software applications which are listed in the GUI. For example, the criticality of a software application may be high, medium, or low. When the user selects one or more software applications by clicking the corresponding check boxes in the GUI, the generating module 104 can generate an update list and add the update information of the selected software applications to the update list. The update list may include a plurality of URLs to specify where a plurality of update files for the selected software applications is.”); in response to the bundle of modules being updated […] (paragraph [0035], “In step S606, the applying module 106 applies the one or more updates to the one or more corresponding software applications.”; paragraph [0036], “In step S606, the report module 107 displays result information on the display 130 to notify whether the updates have been applied to the one or more corresponding software applications successfully.”); and […] to initiate an updating process for each of the updated modules in the bundle (paragraph [0035], “In step S606, the applying module 106 applies the one or more updates to the one or more corresponding software applications.”). The combination of Tsai, Ryu, Fabbrocino, Fallows, and Gebis does not explicitly disclose: an Integrated Development Environment (IDE). However, LeRoux discloses: an Integrated Development Environment (IDE) (paragraph [0033], “[…] the IDE running on user computer 10 and used to write the HTML/Javascript source application 116 may be any suitable known IDE tool available for developing HTML/Javascript based applications, such as Eclipse™, Visual Studio™, Dreamweaver™, Textmate™ and Xcode™ IDEs, for example.”). As pointed out hereinabove, LeRoux is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of LeRoux into the combined teachings of Tsai, Ryu, Fabbrocino, Fallows, and Gebis to include “an Integrated Development Environment (IDE).” The modification would be obvious because one of ordinary skill in the art would be motivated to develop HTML/Javascript based applications (LeRoux, paragraph [0033]). Tsai discloses “the bundle of updated modules,” but the combination of Tsai, LeRoux, Ryu, Fabbrocino, and Gebis does not explicitly disclose: […] automatically receiving a websocket message with new URLs for the bundle of updated modules; and using the websocket message […]. However, Fallows discloses: […] automatically receiving a websocket message with new URLs […] (col. 12 lines 4 and 5, “At 602, a WebSocket frame is received.”; col. 15 lines 13-18, “[…] the control message WebSocket frame that is provided may include in its payload data portion an identifier of the authentication to be revalidated and/or a location identifier (e.g., URL) of a location where an update revalidating the authentication should be provided (emphasis added).” ); and using the websocket message […] (col. 12 lines 22-24, “If the payload data does include other data, at 608, the received WebSocket frame is interpreted as including a control message.”). As pointed out hereinabove, Fallows is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Fallows into the combined teachings of Tsai, LeRoux, Ryu, Fabbrocino, and Gebis to include “[…] automatically receiving a websocket message with new URLs for the bundle of updated modules; and using the websocket message […].” The modification would be obvious because one of ordinary skill in the art would be motivated to enable traditional half-duplex Hypertext Transfer Protocol (HTTP) or HTTP over SSL (HTTPS) communication to be upgraded to a bi-directional, full-duplex communication channel over a Transmission Control Protocol (TCP) connection (Fallows, col. 1 lines 5-9). Claims 9-16 are computer program product (CPP) claims corresponding to the computer-implemented method (CIM) claims hereinabove (Claims 1-8, respectively). Therefore, Claims 9-16 are rejected for the same reasons set forth in the rejections of Claims 1-8, respectively. Claims 17-19 are computer system (CS) claims corresponding to the computer-implemented method (CIM) claims hereinabove (Claims 1, 3, and 8, respectively). Therefore, Claims 17-19 are rejected for the same reasons set forth in the rejections of Claims 1, 3, and 8, respectively. Claim 20 is rejected under 35 U.S.C. 103 as being unpatentable over Tsai in view of LeRoux, Ryu, Fabbrocino, Fallows, and Gebis as applied to Claim 19 above, and further in view of US 2014/0250367 (hereinafter “Ivory”). [Examiner’s Remarks: In order for a reference to be proper for use in an obviousness rejection under 35 U.S.C. 103, the reference must be analogous art to the claimed invention. In re Bigio, 381 F.3d 1320, 1325, 72 USPQ2d 1209, 1212 (Fed. Cir. 2004). A reference is analogous art to the claimed invention if: (1) the reference is from the same field of endeavor as the claimed invention (even if it addresses a different problem); or (2) the reference is reasonably pertinent to the problem faced by the inventor (even if it is not in the same field of endeavor as the claimed invention). Note that the claimed invention is generally directed to seamlessly performing code modifications (specification, paragraph [0002]). As for the “reasonably pertinent” test, Ivory is generally directed to prioritizing the loading of a portion of a web page based on a user designation (Ivory, paragraph [0002]). Thus, Ivory is an analogous art to the claimed invention (even if it is not in the same field of endeavor as the claimed invention). See MPEP § 2141.01(a)(I).] As per Claim 20, the rejection of Claim 19 is incorporated; and the combination of Tsai, LeRoux, Ryu, Fabbrocino, Fallows, and Gebis does not explicitly disclose: wherein the bundle of modules includes a plurality of asynchronous module definition (AMD) based modules. However, Ivory discloses: wherein the bundle of modules includes a plurality of asynchronous module definition (AMD) based modules (paragraph [0030], “At operation 310, the request for the web page may be issued to the server 120 through a loader according to an embodiment. For example, the loader may be in a known Asynchronous Module Definition (AMD) format for defining reusable modules that can be used across different frameworks. AMD provides a way to define modules such that they could be loaded asynchronously using a native browser script element-based mechanism.”). As pointed out hereinabove, Ivory is an analogous art to the claimed invention. Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the teaching of Ivory into the combined teachings of Tsai, LeRoux, Ryu, Fabbrocino, Fallows, and Gebis to include “wherein the bundle of modules includes a plurality of asynchronous module definition (AMD) based modules.” The modification would be obvious because one of ordinary skill in the art would be motivated to provide a way to define modules such that they could be loaded asynchronously using a native browser script element-based mechanism (Ivory, paragraph [0030]). Response to Arguments Applicant’s arguments with respect to Claims 1, 9, and 17 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion Applicant’s amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the date of this final action. Any inquiry concerning this communication or earlier communications from the Examiner should be directed to Qing Chen whose telephone number is 571-270-1071. The Examiner can normally be reached on Monday through Friday from 9:00 AM to 5:00 PM ET. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, the Applicant is encouraged to use the USPTO Automated Interview Request (AIR) at https://www.uspto.gov/ interviewpractice. If attempts to reach the Examiner by telephone are unsuccessful, the Examiner’s supervisor, Wei Mui, can be reached at 571-272-3708. 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 more 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. /Qing Chen/ Primary Examiner, Art Unit 2191
Read full office action

Prosecution Timeline

Apr 05, 2024
Application Filed
Jan 30, 2026
Non-Final Rejection mailed — §103
Mar 12, 2026
Response Filed
Apr 16, 2026
Final Rejection mailed — §103
May 31, 2026
Interview Requested
Jun 04, 2026
Applicant Interview (Telephonic)
Jun 04, 2026
Examiner Interview Summary
Jun 16, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12670089
METHOD AND SYSTEM FOR TESTING FUNCTIONALITY OF A SOFTWARE PROGRAM USING DIGITAL TWIN
2y 4m to grant Granted Jun 30, 2026
Patent 12663970
DATA PARALLEL PROGRAMMING TASK GRAPH OPTIMIZATION THROUGH DEVICE TELEMETRY
4y 3m to grant Granted Jun 23, 2026
Patent 12663972
COMPILING DEVICE AND METHOD FOR PERFORMANCE SPEED-UP OF A PROGRAM
3y 0m to grant Granted Jun 23, 2026
Patent 12663978
DEVICE PROGRAM CODE MANAGEMENT IN INFORMATION PROCESSING SYSTEM ENVIRONMENT
2y 12m to grant Granted Jun 23, 2026
Patent 12650915
ANALYSIS FUNCTION IMPARTING METHOD, ANALYSIS FUNCTION IMPARTING DEVICE, AND ANALYSIS FUNCTION IMPARTING PROGRAM
2y 1m to grant Granted Jun 09, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

2-3
Expected OA Rounds
80%
Grant Probability
99%
With Interview (+52.9%)
3y 2m (~11m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 686 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

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

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month