DETAILED ACTION
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 .
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1-2, 10-11 and 17-18 rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1,13 and 17 of U.S. Patent No.12,259,802. Although the claims at issue are not identical, they are not patentably distinct from each other because following observation is made:
Instant Application
Patent No. 12,259,802
1. A method comprising: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system; collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics; performing, by the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, by the system, that an event has occurred to the state of the device; and performing, by the system and based at least in part on the event, an action causing the state of the device to alter.
2. The method of claim 1, wherein the IT infrastructure comprises a data center.
1. A method comprising: initializing an Entity-Component-System (ECS) architecture to create a digital replication of a data center by: mapping a plurality of entities within the ECS architecture to a plurality of devices operating within the data center; mapping a plurality of components within the ECS architecture to a plurality of data metrics for the data center, wherein the plurality of data metrics represents properties of the plurality of devices; associating each of the plurality of components with at least one of the plurality of entities; and generating a plurality of systems in the ECS architecture, wherein each of the plurality of systems represents at least one of monitoring or conducting an analysis on at least one of the plurality of components; collecting, via a communications network, the plurality of data metrics generated from the data center; populating a component of the plurality of components with a corresponding data metric from the plurality of data metrics collected for the component; performing, by a system of the plurality of systems, at least one of monitoring or conducting the analysis on the corresponding data metric stored by the component to determine a state of a device found in the plurality of devices represented by an entity found in the plurality of entities associated with the component, wherein the system performs the analysis on the corresponding data metric based at least in part on the system being associated with the component; based at least in part on the analysis on the corresponding data metrics, determining, by the system, an event has occurred based at least in part on the state of the device; and performing, by the system and based at least in part on the event, an action to cause the state of the device to alter.
10. A computerized system comprising: one or more processors; and computer storage memory having computer-executable instructions stored thereon which, when executed by the one or more processors, implement operations comprising: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system; collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics; performing, via the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, via the system, that an event has occurred to the state of the device; and performing, via the system and based at least in part on the event, an action causing the state of the device to alter.
11. The system of claim 10, wherein the IT infrastructure comprises a data center.
7. A system comprising: one or more processors; and computer storage memory having computer-executable instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations comprising: initializing an Entity-Component-System (ECS) architecture to create a digital replication of a data center using information gathered from the data center, the ECS architecture comprising an entity, a component, and a system, wherein initializing the ECS architecture involves: mapping the entity within the ECS architecture to a device operating within the data center, mapping the component within the ECS architecture to a corresponding data metric for the data center, the corresponding data metric representing a property of the device, associating the component with the entity; and generating the system in the ECS architecture, the system representing at least one of monitoring or conducting an analysis on the component; collecting, via a communications network, data metrics generated from the data center; populating the component with the corresponding data metric from the data metrics; performing, via the system, at least one of monitoring or conducting the analysis on the corresponding data metric stored by the component to determine a state of the device, wherein the system performs the analysis on the corresponding data metric based at least in part on the system being associated with the component; determining, via the system, an event has occurred based at least in part on the state of the device; and performing, via a second system of the ECS architecture and based at least in part on the event, an action to cause the state of the device to alter.
17. One or more computer storage media having computer-executable instructions embodied thereon that, when executed by one or more processors, cause the one or more processors to perform operations comprising: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system; collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics; performing, via the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, via the system, that an event has occurred to the state of the device; and performing, via the system and based at least in part on the event, an action causing the state of the device to alter.
18. The one or more computer storage media of claim 17, wherein the IT infrastructure comprises a data center.
13. One or more non-transitory computer storage media having computer-executable instructions embodied thereon that, when executed, by one or more processors, cause the one or more processors to perform operations comprising: initializing an Entity-Component-System (ECS) architecture to create a digital replication of a data center using information gathered from the data center, the ECS architecture comprising an entity, a component, and a system, wherein initializing the ECS architecture involves: mapping the entity within the ECS architecture to a device operating within the data center, mapping the component within the ECS architecture to a corresponding data metric for the data center, the corresponding data metric representing a property of the device, associating the component with the entity; and generating the system in the ECS architecture, the system representing at least one of monitoring or conducting an analysis on the component; collecting, via a communications network, data metrics generated from the data center; populating the component with the corresponding data metric from the data metrics; performing, by the system, at least one of monitoring or conducting the analysis on the corresponding data metric stored by the component to determine a state of the device, wherein the system performs the analysis on the corresponding data metric based at least in part on the system being associated with the component; determining, by the system, an event has occurred based at least in part on the state of the device; and performing, via the system and based at least in part on the event, an action to cause the state of the device to alter.
Instant claims 1-2,10-11 and 17-18 recites the same ECS initialization, monitoring, event, action sequence as claims 1, 7 and 13 of patent # 12,259,802. Difference between instant application and the patent 12,259,802 is that the instant application recites “IT infrastructure” where the Patent ‘802 recites “data center.” It is well known in the art that a data center is the physical home and environment required to house and run an organization's core IT infrastructure. Therefore, it would have been obvious to a person with ordinary skill in art having the claims 1, 7 and 13 of Patent 12,259,802 to modify the claims to achieve the features of claims 1-2,10-11 and 17-18 of the instant application.
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.
The text of those sections of Title 35, U.S. Code not included in this action can be found in a prior Office action.
As per claims 17-20, they are rejected because the applicant has provided evidence that the applicant intends the term "one or more computer storage media" to include non-statutory matter. The applicant describes a computer-readable storage medium as including open ended language and thus it is reasonable to interpret it to include all possible mediums, including non- statutory mediums (see paragraph [0079]-[0080]). The words "storage" and/or "recording" are insufficient to convey only statutory embodiments to one of ordinary skill in the art absent an explicit and deliberate limiting definition or clear differentiation between storage media and transitory media in the disclosure. As such, the claim(s) is/arc drawn to a form of energy. Energy is not one of the four categories of invention and therefore this/these claim(s) is/are not statutory. Energy is not a series of steps or acts and thus is not a process. Energy is not a physical article or object and as such it is not a machine or manufacture. Energy is not a combination of substances and therefore not a composition of matter. The Examiner suggests amending the claim(s) to read as “one or more non-transitory computer storage media".
Allowable Subject Matter
Claims 3,9,12,16 and 19-20 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-2,4-8,10-11,13-15, and 17-18 are rejected under 35 U.S.C. 103 as being unpatentable over Garcia et al. (Garcia)(Pub No. 20180217879) In view of Hatledal et al . (Hatledal)(NPL: An entity-component-system based co-simulation framework, Simulation Modelling Practice and Theory, Volume 108, April 2021)
Regarding claim 1 Garcia teaches: a method comprising: collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics; [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents executing on a plurality of computing devices, Fig.4, item 102] performing, by the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, by the system, that an event has occurred to the state of the device; and performing, by the system and based at least in part on the event, an action causing the state of the device to alter. [[0043] infrastructure monitor receives information reported from the infrastructure agents and generate various dashboards, reports, and alarms based on this information. In some embodiments, the infrastructure monitor is further configured to automatically take remedial action]
Regarding Claim 1 Garcia does not teach initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system;
However, Hatledal teaches: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture,
wherein the ECS architecture comprises an entity, a component, and a system; [Fig.1 Introduction, software architecture based on the Entity-Component-System (ECS) architecture ]
Therefore, it would have been obvious to one of the ordinary skilled in the art to which this invention pertains before the effective filing date of the inventio to use the Entity-Component-System (ECS) of Hatledal to collect data metric and change the state in Garcia’s system. A person with ordinary skill in the art would have been motivated to use an ECS architecture in Garcia’s system, because ECS codes are more flexible, reusable and easier to extend with new features.
Regarding claim 2, Garcia teaches: the IT infrastructure comprises a data center. [Fig.1, computing environment corresponds to a data center]
Regarding claim 4, Garcia teaches: the corresponding data metric is collected from the device and comprises at least one of a processing metric, a hard drive metric, a memory metric, a network metric, or an operating system-level metric. [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents (hard drive, memory processor etc.) executing on a plurality of computing devices, Fig.4, item 102]
Regarding claim 5 Garcia discloses: the event indicates that the corresponding data metric satisfies a threshold. [[0043] provisioning additional computing devices responsive to thresholds being exceeded, like thresholds indicating CPU or memory usage greater than a threshold amount.]
Regarding claim 6, Garcia teaches: the device is a virtualized container and the event indicates that resources provisioned to the virtualized container need to be reduced or increased. [[0071] a container executed within the base operating system or the virtualized operating system. In some cases, a given operating system instance (either virtualized or non-virtualized) may include a plurality of hosts.]
Regarding claim 7, Garcia teaches: creating a second component associated with the entity; and populating the second component with an indicator of the event to notify a second system of the event. [[0106] receiving, with an application performance monitoring application, events and metrics from a plurality of application agents executing on the plurality of computing devices, wherein: the application agents are configured to monitor application components of a distributed application executing on the plurality of computing devices, and the application performance monitoring application is configured to aggregate second events and metrics from the application agents and organize second the events and metrics according to a logical-architecture topology of the distributed application; determining one or more logical-architecture topology host identifiers corresponding to the one or more network-architecture topology host identifiers; and storing in memory a correlation between the event record and the one or more logical-architecture topology host identifiers.]
Regarding claim 8 Garcia teaches: second system, upon detecting the event via the second component, transmits a solution to the IT infrastructure to perform to alter the state of the device. [[0106] receiving, with an application performance monitoring application, events and metrics from a plurality of application agents executing on the plurality of computing devices, wherein: the application agents are configured to monitor application components of a distributed application executing on the plurality of computing devices, and the application performance monitoring application is configured to aggregate second events and metrics from the application agents and organize second the events and metrics according to a logical-architecture topology of the distributed application; determining one or more logical-architecture topology host identifiers corresponding to the one or more network-architecture topology host identifiers; and storing in memory a correlation between the event record and the one or more logical-architecture topology host identifiers.]
Regrading Claim 10 Garcia teaches: A computerized system [Fig.5 and Fig.1] comprising: one or more processors; [Fig.5, item 1010] and computer storage memory [Fig.5, item 1020] having computer-executable instructions stored thereon which, when executed by the one or more processors, implement operations [[0093] System memory 1020 may be configured to store program instructions 1100 or data 1110. Program instructions 1100 may be executable by a processor (e.g., one or more of processors 1010a-1010n) to implement one or more embodiments of the present techniques.] comprising: collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics; [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents executing on a plurality of computing devices, Fig.4, item 102] performing, via the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, via the system, that an event has occurred to the state of the device; and performing, via the system and based at least in part on the event, an action causing the state of the device to alter. [[0043] infrastructure monitor receives information reported from the infrastructure agents and generate various dashboards, reports, and alarms based on this information. In some embodiments, the infrastructure monitor is further configured to automatically take remedial action]
Regarding Claim 1 Garcia does not teach initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system;
However, Hatledal teaches: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system; [Fig.1 Introduction, software architecture based on the Entity-Component-System (ECS) architecture ]
Therefore, it would have been obvious to one of the ordinary skilled in the art to which this invention pertains before the effective filing date of the inventio to use the Entity-Component-System (ECS) of Hatledal to collect data metric and change the state in Garcia’s system. A person with ordinary skill in the art would have been motivated to use an ECS architecture in Garcia’s system, because ECS codes are more flexible, reusable and easier to extend with new features.
Regarding claim 11, Garcia teaches: the IT infrastructure comprises a data center. [Fig.1, computing environment corresponds to a data center]
Regarding claim 13, Garcia teaches: the corresponding data metric is collected from the device and comprises at least one of a processing metric, a hard drive metric, a memory metric, a network metric, or an operating system-level metric. [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents (hard drive, memory processor etc.) executing on a plurality of computing devices, Fig.4, item 102]
Regarding claim 14, Garcia teaches: the action comprises: creating a second component associated with the entity; and populating the second component with an indicator of the event to notify a second system of the event. [[0106] receiving, with an application performance monitoring application, events and metrics from a plurality of application agents executing on the plurality of computing devices, wherein: the application agents are configured to monitor application components of a distributed application executing on the plurality of computing devices, and the application performance monitoring application is configured to aggregate second events and metrics from the application agents and organize second the events and metrics according to a logical-architecture topology of the distributed application; determining one or more logical-architecture topology host identifiers corresponding to the one or more network-architecture topology host identifiers; and storing in memory a correlation between the event record and the one or more logical-architecture topology host identifiers.]
Regarding claim 15, Garcia teaches: the second system, upon detecting the event via the second component, transmits a solution to the IT infrastructure to perform to alter the state of the device. [[0106] receiving, with an application performance monitoring application, events and metrics from a plurality of application agents executing on the plurality of computing devices, wherein: the application agents are configured to monitor application components of a distributed application executing on the plurality of computing devices, and the application performance monitoring application is configured to aggregate second events and metrics from the application agents and organize second the events and metrics according to a logical-architecture topology of the distributed application; determining one or more logical-architecture topology host identifiers corresponding to the one or more network-architecture topology host identifiers; and storing in memory a correlation between the event record and the one or more logical-architecture topology host identifiers.]
Regarding claim 17, Garcia teaches: One or more computer storage media having computer-executable instructions embodied thereon that, when executed by one or more processors, cause the one or more processors to perform operations [[0093] System memory 1020 may be configured to store program instructions 1100 or data 1110. Program instructions 1100 may be executable by a processor (e.g., one or more of processors 1010a-1010n) to implement one or more embodiments of the present techniques.] comprising: collecting, via a communications network, data metrics generated from the IT infrastructure; populating the component with a corresponding data metric from the data metrics ; [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents executing on a plurality of computing devices, Fig.4, item 102] performing, via the system, an analysis on the corresponding data metric stored by the component to determine a state of a device operating within the IT infrastructure represented by the entity; based at least in part on the analysis on the corresponding data metric, determining, via the system, that an event has occurred to the state of the device; and performing, via the system and based at least in part on the event, an action causing the state of the device to alter. [[0074], receiving, with an infrastructure monitoring application, metrics and events from a plurality of infrastructure agents executing on a plurality of computing devices, Fig.4, item 102]
Regarding Claim 1 Garcia does not teach initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system;
However, Hatledal teaches: initializing, based at least in part on data gathered on an Information Technology (IT) infrastructure, an Entity-Component-System (ECS) architecture, wherein the ECS architecture comprises an entity, a component, and a system; [Fig.1 Introduction, software architecture based on the Entity-Component-System (ECS) architecture ]
Therefore, it would have been obvious to one of the ordinary skilled in the art to which this invention pertains before the effective filing date of the inventio to use the Entity-Component-System (ECS) of Hatledal to collect data metric and change the state in Garcia’s system. A person with ordinary skill in the art would have been motivated to use an ECS architecture in Garcia’s system, because ECS codes are more flexible, reusable and easier to extend with new features.
Regarding claim 18, Garcia teaches: the IT infrastructure comprises a data center. [Fig.1, computing environment corresponds to a data center]
Citation of Relevant Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Prior art Tsuno et al. (Pub No. US 2017/0021424) teaches: central infrastructure monitoring system with asset configurator; general IT infrastructure monitoring architecture, useful for the “IT infrastructure/communication network.
Prior art Gupta et al. (Patent No. US 9,88,6,445) teaches: component with time-series metrics; analytics engine event/outlier detection tied to threshold.
Prior art Ferreyra et al. (Patent No. US 10,603,583) teaches: evidence that the entry-component architectural pattern itself, as a composition-over-inheritance software design pattern, was well known prior art-useful to show the underlying ECS pattern was conventional supporting an obviousness rationale for applying it to a new data domain.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZAHID CHOUDHURY whose telephone number is (571)270-5153. The examiner can normally be reached Monday-Friday.
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, Andrew J Jung can be reached at 571-270-3779. 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.
/ZAHID CHOUDHURY/Primary Examiner, Art Unit 2175