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 Rejections - 35 USC § 103
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 (i.e., changing from AIA to pre-AIA ) 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, 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-5, 7-12 and 14-20 are rejected under 35 U.S.C. 103 as being unpatentable over BAHL (US Publication 20210019194) in view of SUNEJA (US Publication 2019/0294779) in further view of JAEGER (US Publication 2020/0019388) in further view of NAKAGOE (US Publication 2021/0021643).
As to claim 1, BAHL teaches a method for managing and deploying services provided by data processing systems comprising: instantiating an instance of the service (par. 0116-0117; 0015-0019); populating a container for the instance of the service; instantiating an instance of a complementary service (constituent components) for the instance of the service based on a manifest associated with the service image (application profile) (par. 0116-0117; 0015-0019; 0098-0099; 0116-0117); identifying a dependency for the instance of the service (par. 0116-0117; 0015-0019; 0098-0099; 0116-0117); identifying other dependent services (control plane / other related software / network functions / services associated with application service) for the instance of the service based on the dependency; and instantiating an instance of the other dependent service to establish a complete service (par. 0116-0117; 0015-0019; 0053-0057; 0059-0068; 0098-0099; 0116-0117).
However, BAHL does not teach that the service is generated by a service image comprising binary instructions or populating and executing a sidecar to expose a capability of the instance of the service.
SUNEJA teaches as part of an execution of a service in a container (parent application / service / application), populating a container for the instance of the service; populating a sidecar for the instance of the complementary service; executing the sidecar to expose a capability of the instance of the service and identifying, based on the capability exposed by the sidecar, a dependency for the instance of the service (EN: via executing the plugin allows for the access of memory disk state / resources / allow access to processes / allows access to certain files / communicate with certain third party programs. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus access to resources needed for performing the services or access to dependent third party programs through the plugin would constitute to exposing a capability associated with the service.) (abstract; par. 0017, 0020-0023; 0025-0035; claims 1-9).
Therefore, it would be obvious to one of ordinary skill in the art before the effective filing of the claimed invention to combine the teachings of BAHL with SUNEJA in order to augment the core capabilities of the software application with different specialized logic for performing a particular action (0017).
BAHL AND SUNEJA does not teach the microservice is deployed by a generated image.
JAEGER teaches a method for managing services provided by data processing systems by generating a service image comprising binary instructions for instantiating an instance of a service and instantiating an instance of the service based on the binary instructions (par.0078-0088, 0120-0123).
Therefore, it would be obvious to one of ordinary skill in the art before the effective filing of the claimed invention to combine the teachings of BAHL and SUNEJA with the teachings of JAEGER in order to generate a microservice mage for deployment (par. 0120).
BAHL-SUNEJA-JAEGER does not teach that identifying a dependent management service based on an identifier.
NAKAGOE teaches deploying an instance of the service (microservice); instantiating an instance of a complementary service (resource service) for the instance of the service; populating a sidecar (sidecar) for the instance of the complementary service; executing the sidecar to expose a capability of the instance of the service; identifying, based on the capability exposed by the sidecar, a dependency for the instance of the service, the dependency indicating an identifier of a management service (API/Interface monitoring proxy / authorization components of the configuration series); identifying the management service for the instance of the service based on the identifier; and instantiating an instance of the management service to establish a complete service (EN: Since the management service is part of the configuration for the application with the other microservice and all components contain an identifier than the identifier is used to deploy all microservices associated with the application including the management service. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus monitoring and management of communication to the microservice would constitute a management operation as well..; see paragraph 0032-0035, 0037, 0039, 0044-0047, 0052-0053, 0061-0063 and figures 5, 8 and 11).
Therefore, it would be obvious to one of ordinary skill in the art before the effective filing of the claimed invention to combine the teachings of BAHL-SUNEJA- JAEGER with the teachings of NAKAGOE in order to deploy microservices, including management services, with the microservice (par. 0039).
As to claim 2, BAHL teaches instantiating the container for the instance of the service (par. 0059-0061; 0065-0066; 0072).
As to claim 3, BAHL teaches instantiating the instance of the complementary service comprises: instantiating the sidecar for the instance of the complementary service (par. 0053-0054; 0059-0061; 0065-0066). Further, SUNEJA teaches as part of an execution of a service in a container (parent application / service / application), populating and instantiating the sidecar for the instance of the complementary service (EN: via executing the plugin allows for the access of memory disk state / resources / allow access to processes / allows access to certain files / communicate with certain third party programs. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus access to resources needed for performing the services or access to dependent third party programs through the plugin would constitute to exposing a capability associated with the service.) (abstract; par. 0017, 0020-0023; 0025-0035; claims 1-9). Further, NAKAGOE teaches as part of an execution of a service (application / microservice), populating and instantiating the sidecar for the instance of the complementary and management service (EN: Since the management service is part of the configuration for the application with the other microservice and all components contain an identifier than the identifier is used to deploy all microservices associated with the application including the management service. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus monitoring and management of communication to the microservice would constitute a management operation as well..; see paragraph 0032-0035, 0037, 0039, 0044-0047, 0052-0053, 0061-0063 and figures 5, 8 and 11).
Refer to claim 1 for the motivation to combine.
As to claim 4, BAHL teaches the container and the sidecar are members of a pod that share a context (par. 0041-0050, 0052-0054; 0059-0061; 0065-0066). Refer to claim 1 for the motivation to combine. Further, SUNEJA teaches as part of an execution of a service in a container (parent application / service / application), populating and instantiating the sidecar for the instance of the complementary service (EN: via executing the plugin allows for the access of memory disk state / resources / allow access to processes / allows access to certain files / communicate with certain third party programs. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus access to resources needed for performing the services or access to dependent third party programs through the plugin would constitute to exposing a capability associated with the service.) (abstract; par. 0017, 0020-0023; 0025-0035; claims 1-9).
Refer to claim 1 for the motivation to combine.
As to claim 5, BAHL teaches the manifest specifies: infrastructure expectations for the service; application programming interfaces for the service; and the capability (par. 0116-0117). Further, SUNEJA teaches as part of an execution of a service in a container (parent application / service / application), populating a container for the instance of the service; populating a sidecar for the instance of the complementary service; executing the sidecar to expose a capability of the instance of the service and identifying, based on the capability exposed by the sidecar, a dependency for the instance of the service (EN: via executing the plugin allows for the access of memory disk state / resources / allow access to processes / allows access to certain files / communicate with certain third party programs. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus access to resources needed for performing the services or access to dependent third party programs through the plugin would constitute to exposing a capability associated with the service.) (abstract; par. 0017, 0020-0023; 0025-0035; claims 1-9).
Refer to claim 1 for the motivation to combine.
As to claim 7, BAHL teaches the complete service comprises: a first set of instances of services that contribute to a function provided by the complete service (services and constituent components), and a second set of instances of management services that contribute to management of the first set of instances of the services (control plane / other related software / network functions / services associated with application service) (par. 0116-0117; 0015-0019; 0053-0057; 0059-0068; 0098-0099; 0116-0117). Further, NAKAGOE teaches a second set of instances of management services (API monitoring and I/F monitoring proxy / proxies running on the sidecars that contribute to management of the first set of instances of the services (EN: Since the management service is part of the configuration for the application with the other microservice and all components contain an identifier than the identifier is used to deploy all microservices associated with the application including the management service. Further the application specification nor the claims do not provide any distinction as to what the capability that is exposed is and thus monitoring and management of communication to the microservice would constitute a management operation as well.; see paragraph 0032-0035, 0037, 0039, 0044-0047, 0052-0053, 0061-0063 and figures 5, 8 and 11). Refer to claim 1 for the motivation to combine.
As to claims 8-12 and 14, reference is made to a non-transitory machine readable medium that corresponds to the method of claims 1-5 and 7 and is therefore met by the rejection of claims 1-5 and 7 above.
As to claims 15-20, reference is made to system that corresponds to the method of claims 1-5 and 7 and is therefore met by the rejection of claims 1-5 and 7 above.
Claims 6 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over BAHL (US Publication 20210019194) in view of SUNEJA (US Publication 2019/0294779), JAEGER (US Publication 20200019388) and NAKAGOE (US Publication 2021/0021643) in further view of LUTHRA (US Publication 20230205502).
As to claim 6, LUTHRA teaches identifying the artifact comprises: obtaining a list specifying: identifiers of a set of services for the complete service (identifiers), and
capability requirements for the set of services (service specifications) (par. 0027-0031); and making an identification regarding executing instances of a service in a set of services indicated by the identifiers of the set of services; selecting the service of the services for deployment based on identification; and performing a search of an artifact repository based on the selected service (see abstract; par. 0021-0023 and 0033-0037, 0040-0041). It would be obvious to one of ordinary skilled in the art before the effective filing of the claimed invention that the user / administrator searches the registered services / artifacts to obviously makes a determination that no registered instance is satisfactory before creating a new instance of the service as outlined in paragraph 0012 and 0021. Further, BAHL teaches an identifier associated with the service contains capability (governance) information (par. 0015).
Therefore, it would be obvious to one of ordinary skill in the art before the effective filing of the claimed invention to combine the teachings of BAHL, SUNEJA, JAEGER and NAKAGOE with the teachings of LUTHRA in order to bundle artifacts for a service for deployment (pa. 0025-0027).
As to claim 13, reference is made to a non-transitory machine readable medium that corresponds to the method of claim 6 and is therefore met by the rejection of claim 6 above.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-20 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
Any inquiry concerning this communication or earlier communications from the examiner should be directed to LEWIS ALEXANDER BULLOCK JR whose telephone number is (571)272-3759. The examiner can normally be reached Monday-Friday, 9:00-5:00 pm.
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, Cordelia Zecher can be reached at 571-272-7771. 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.
/LEWIS A BULLOCK JR/Supervisory Patent Examiner, Art Unit 2199