Computer-implemented methods, computer programs and computer systems (Digital Twin-enabled asset performance and upgrade management)
A digital twin-based system simulates future hardware, firmware, and software changes to optimize asset management, ensuring compatibility and reducing downtime by identifying compatible upgrades and open-source alternatives.
Patent Information
- Application Number
- JP2021167062
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2020-10-15
- Filing Date
- 2021-10-11
- Publication Date
- 2025-02-04
- Estimated Expiration
- 2041-10-11
AI Technical Summary
Current asset management systems do not effectively utilize digital twin technology to monitor and manage future hardware, firmware, and software changes in real-time, leading to potential system failures and increased costs due to unsupported applications or outdated software.
The implementation of a digital twin-based system that simulates future changes in hardware, firmware, and software, generating reports and recommendations for asset management, including the use of open-source alternatives, to ensure compatibility and minimize downtime.
Enables proactive management of asset upgrades, reducing the risk of system failures and optimizing project budgets by identifying compatible software and hardware changes before implementation, thus enhancing asset lifecycle management.
Smart Images

Figure 0007626550000001 
Figure 0007626550000002 
Figure 0007626550000003
Abstract
Description
[Technical field]
[0001] The present invention relates generally to the field of data processing, and more specifically to performance and upgrade management of digital twin enabled assets. [Background technology]
[0002] A digital twin is a virtual representation of a physical object or system throughout its lifecycle. It uses real-time data and other sources to enable learning, reasoning, and dynamic recalibration for improved decision-making. Simply put, this means generating a highly complex virtual model that is an exact counterpart (or twin) of the physical thing. The "thing" could be a car, a tunnel, a bridge, or even a jet engine. Sensors connected to the physical asset collect data that can be mapped to the virtual model. By looking at the digital twin, users can now see important information about how the physical thing is operating in the real world.
[0003] Asset Performance Management (APM) is a collection of software tools and applications designed to improve the reliability and availability of physical assets (such as plants, systems of equipment, and infrastructure) that are critical to the operation of an enterprise. APM encompasses data capture, integration, visualization, and analysis capabilities tied together for the express purpose of improving the reliability and availability of physical assets. APM systems act to improve the reliability and availability of physical assets while minimizing risk and operational costs. APM typically includes condition monitoring, predictive maintenance, asset integrity management, reliability-centered maintenance, and often involves techniques such as asset health data aggregation, visualization, and analysis. Summary of the Invention [Problem to be solved by the invention]
[0004] Does not utilize digital twin technology to improve asset lifecycle management by monitoring upcoming hardware / firmware changes and software dependencies in real time. [Means for solving the problem]
[0005] An embodiment of the present invention discloses a method, computer program product, and system for performance and upgrade management of a digital twin enabled asset. In one embodiment, future changes to an asset are received, where the future changes include at least one of hardware requirements, firmware requirements, software requirements, hardware upgrades, firmware upgrades, and software upgrades. The future changes to the asset are stored in a repository, where an appropriate repository is determined using topic modeling. The digital twins are updated, where each digital twin is continually updated with the future changes. A continued usage metric is calculated for each asset based on an output of the digital twin, where the continued usage metric is specific to each asset. A report is generated based on the future changes and the continued usage metric, where the report includes at least one of hardware dependencies, firmware dependencies, software dependencies, and upgrade dependencies. [Brief description of the drawings]
[0006] [Figure 1] 1 illustrates a cloud computing environment according to an embodiment of the present invention.
[0007] [Diagram 2] 3 illustrates abstraction model layers according to an embodiment of the present invention.
[0008] [Diagram 3] FIG. 1 is a functional block diagram illustrating a distributed data processing environment according to an embodiment of the present invention.
[0009] [Figure 4]1 is an example of a system architecture according to an embodiment of the present invention.
[0010] [Diagram 5] 4 is a flowchart illustrating the operational steps of an upgrade management program on a computing device in the distributed data processing environment of FIG. 3 for performance and upgrade management of digital twin enabled assets in accordance with an embodiment of the present invention.
[0011] [Figure 6] 4 illustrates a block diagram of components of a computing device executing an upgrade management program within the distributed data processing environment of FIG. 3 according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0012] In many cases, after the latest application is released by the vendor, the application is no longer supported on the system. Another scenario occurs when the hardware or system vendor updates the operating system or other firmware / hardware and the application becomes obsolete. For large companies that invest a lot of money in licensing such applications, when an application becomes obsolete due to a particular software or firmware update by the operating system, the company often tries to find an alternative application. In order to stay within the project budget, these alternative applications may include open source software. This is because it is not always feasible to acquire new software or upgrade to new hardware in the middle of a project. Operating system providers are usually not willing to take on the task of supporting the many applications that users install on the operating system, so users are left to support the applications themselves.
[0013] For example, a recent upgrade of a popular computer platform removed support for all 32-bit applications. This required all users of that particular platform to upgrade all applications to 64-bit if such versions were available. Many users were unaware of this change, and the upgrade caused these systems to fail.
[0014] A digital twin is a virtual model of a process, product, or service. This pairing of the virtual and physical worlds allows data analysis and monitoring of systems to avoid problems before they occur, prevent downtime, develop new opportunities, and even plan for the future using simulations. For example, a digital twin of an Internet of Things (IoT) device provides both the elements and dynamics of how the device operates and persists throughout its lifecycle.
[0015] While numerous systems exist for asset management and lifecycle management, none of the current technologies utilize digital twin technology to improve asset lifecycle management by monitoring upcoming hardware / firmware changes and software dependencies in real-time. The present invention ensures that asset management, as well as infrastructure as a service, platform as a service, software as a service, and cloud service providers, are proactively handled for organizations with the help of digital twin update reports.
[0016] The present invention uses digital twin technology to generate a virtual hardware replica of an asset that has upcoming hardware / firmware changes and software dependencies as input. In the context of the present invention, upcoming changes are those that have been announced but not yet implemented by the user. The present invention evaluates these upcoming changes before implementation to determine the impact of the upcoming changes on the system deployed by the user. A continuous feed of upcoming hardware / firmware changes and software dependencies is provided to the digital twin, which generates a report containing the changes and mapping of hardware and software dependencies.
[0017] In an embodiment, the present invention has the capability to automatically simulate future changes in hardware or firmware sources on a physical system using a digital twin, thereby automatically generating a list of software that depends on hardware or firmware sources that will become obsolete based on the future changes. In an embodiment, the present invention generates simulations of different version upgrades of the software or future releases of that software, and maps them to the identified hardware or firmware changes in the future releases to automatically generate a list of application software that can fit the changing scale of the technology in terms of hardware and firmware upgrades.
[0018] In an embodiment, the invention automatically informs the respective procurement team by classifying all software that will become obsolete based on hardware or firmware changes and alternative software, including open source software, that may be a replacement for the obsolete software. In an embodiment, the invention then generates a suitability metric by simulation against the digital twin to display the closest match to the obsolete software to enable project planning accordingly.
[0019] In an embodiment, the present invention uses IoT feeds received from various systems, including server usage metrics and other external and internal data feeds from multiple sources, to simulate the impact of any potential hardware or firmware changes on the system as they are discovered, proactively helping asset management teams inform decisions.
[0020] In one possible use case example, a smart city with multiple IoT sensors deployed throughout the city to obtain traffic information requires firmware for each interdependent IoT sensor. If an upcoming change is detected in the IoT firmware, the present invention allows for simulating the impact of the firmware update to prepare management in advance. This could potentially avoid a system-wide shutdown if the firmware upgrade has unexpected consequences.
[0021] Although this disclosure includes detailed descriptions of cloud computing, it should be understood that implementation of the teachings described herein is not limited to cloud computing environments. Rather, embodiments of the invention can be implemented in conjunction with any other type of computing environment now known or later developed.
[0022] Cloud computing is a service delivery model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal management effort or interaction with the service provider. The cloud model can include at least five characteristics, at least three service models, and at least four deployment models.
[0023] The characteristics are as follows:
[0024] On-Demand Self-Service: Cloud consumers can unilaterally provision computing capabilities such as server time and network storage automatically as needed without requiring human interaction with the provider of the service.
[0025] Pervasive Network Access: Functionality is available over the network and accessed via standard mechanisms that facilitate use by heterogeneous thin- or thick-client platforms (e.g., cell phones, laptops, and PDAs).
[0026] Resource Pooling: Provider computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically allocated and reallocated depending on demand. Location independence is recognized in that consumers generally have no control or knowledge over the exact location of the provided resources, although it may be possible to specify location to a higher level of abstraction (e.g., country, state, or data center).
[0027] Rapid Elasticity: Capabilities can be provisioned quickly and elastically, in some cases automatically, scaled out quickly, released quickly, and scaled in quickly. To the consumer, the capabilities available for provisioning often appear unlimited, and any quantity can be purchased at any time.
[0028] Measured Services: Cloud systems automatically control and optimize resource usage by leveraging metering capabilities at several levels of abstraction appropriate to the type of service (e.g., storage, processes, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported to provide transparency to both providers and consumers of the services utilized.
[0029] The service model is as follows:
[0030] Software as a Service (SaaS): The functionality provided to the consumer is the use of the provider's applications running on a cloud infrastructure. The applications are accessible through thin-client interfaces such as web browsers (e.g., web-based email) from a variety of client devices. The consumer does not manage or control the underlying cloud infrastructure, including the network, servers, operating systems, storage, or even individual application functionality, with the possible exception of limited user-specific application configuration settings.
[0031] Platform as a Service (PaaS): The functionality offered to the consumer is the deployment of consumer-generated or acquired applications, generated using programming languages and tools supported by the provider, on a cloud infrastructure. The consumer does not manage or control the underlying cloud infrastructure, including networks, servers, operating systems, or storage, but does have control over the deployed applications and, in some cases, the application hosting environment configuration.
[0032] Infrastructure as a Service (IaaS): The functionality offered to the consumer is to provision processes, storage, network, and other basic computing resources on which the consumer can deploy and run any software, which may include operating systems and applications. The consumer does not manage or control the underlying cloud infrastructure, but has control over the operating systems, storage, deployed applications, and possibly limited control of selected networking components (e.g., host firewalls).
[0033] The deployment model is as follows:
[0034] Private Cloud: The cloud infrastructure serves only an organization. It may be managed by that organization or a third party and may exist on-premise or off-premise.
[0035] Community Cloud: Cloud infrastructure is shared by several organizations to support a specific community that shares concerns (e.g., mission, security requirements, policies, and compliance considerations). It may be managed by the organizations or a third party and may exist on-premise or off-premise.
[0036] Public Cloud: Cloud infrastructure is made available to the general public or large industry organizations and is owned by organizations that sell cloud services.
[0037] Hybrid Cloud: A cloud infrastructure is a combination of two or more clouds (private, community, or public) bound together by standardized or proprietary technologies (e.g., cloud bursting for load balancing between clouds) that remain unique entities but allow data and application portability.
[0038] Cloud computing environments are service-oriented and focus on statelessness, loose coupling, modularity, and semantic interoperability. At the heart of cloud computing is an infrastructure that includes a network of interconnected nodes.
[0039] Referring now to FIG. 1, an exemplary cloud computing environment 50 is shown. As shown, the cloud computing environment 50 includes one or more cloud computing nodes 10 that may communicate with local computing devices used by cloud consumers, such as, for example, a personal digital assistant (PDA) or mobile phone 54A, a desktop computer 54B, a laptop computer 54C, or an automobile computer system 54N, or combinations thereof. The nodes 10 may communicate with each other. They may be physically or virtually grouped (not shown) in one or more networks, such as a private, community, public, or hybrid cloud as described above, or combinations thereof. This allows the cloud computing environment 50 to provide infrastructure, platform, or software, or combinations thereof, as a service without requiring cloud consumers to maintain resources on local computing devices. It is understood that the types of computing devices 54A-N shown in FIG. 1 are intended to be exemplary only, and that the computing nodes 10 and the cloud computing environment 50 may communicate with any type of computerized device via any type of network or network addressable connection (e.g., using a web browser), or both.
[0040] Referring now to Figure 2, a set of functional abstraction layers provided by cloud computing environment 50 (Figure 1) is shown. It should be understood in advance that the components, layers, and functions shown in Figure 2 are intended to be illustrative only, and embodiments of the present invention are not limited thereto. As shown, the following layers and corresponding functions are provided:
[0041] Hardware and software layer 60 includes hardware and software components. Examples of hardware components include mainframe 61, RISC (Reduced Instruction Set Computer) architecture based servers 62, servers 63, blade servers 64, storage devices 65, and networks and networking components 66. In some embodiments, software components include network application server software 67 and database software 68.
[0042] The virtualization layer 70 provides an abstraction layer from which the following examples of virtual entities may be provided: virtual servers 71, virtual storage 72, virtual networks including virtual private networks 73, virtual applications and operating systems 74, and virtual clients 75.
[0043] In one example, management layer 80 may provide the functions described below: Resource provisioning 81 provides dynamic procurement of computing and other resources utilized to execute tasks within the cloud computing environment. Metering and pricing 82 provides cost tracking as resources are utilized within the cloud computing environment and provides billing or invoicing for the consumption of these resources. In one example, these resources may include application software licenses. Security provides identity verification for cloud consumers and tasks, as well as protection for data and other resources. User portal 83 provides consumers and system administrators with access to the cloud computing environment. Service level management 84 provides allocation and management of cloud computing resources so that required service levels are met. Service level agreement (SLA) planning and fulfillment 85 provides pre-positioning and procurement of cloud computing resources where future requirements are predicted according to SLAs.
[0044] The workload tier 90 provides examples of functions for which a cloud computing environment may be utilized. Examples of workloads and functions that may be provided from this tier include mapping and navigation 91, software development and lifecycle management 92, virtual classroom instructional delivery 93, data analytics processes 94, transactional processes 95, and digital twin upgrade management 96.
[0045] 3 is a functional block diagram illustrating a distributed data processing environment, generally designated 100, suitable for operation of upgrade management program 112 in accordance with at least one embodiment of the present invention. As used herein, the term "distributed" describes a computer system that includes multiple, physically separate devices that operate together as a single computer system. FIG. 3 is provided only as an example of one implementation and does not imply any limitation with regard to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made by one of ordinary skill in the art without departing from the scope of the invention as set forth in the claims.
[0046] Distributed data processing environment 100 includes computing device 110 connected to network 120. Network 120 may be, for example, a telecommunications network, a local area network (LAN), a wide area network (WAN) such as the Internet, or a combination of the three, and may include wired, wireless, or fiber optic connections. Network 120 may include one or more wired or wireless networks, or both, capable of receiving and transmitting data, voice or video signals, including multimedia signals including voice, data, and video information, or combinations thereof. In general, network 120 may be any combination of connections and protocols that support communications between computing device 110 and other computing devices (not shown) in distributed data processing environment 100.
[0047] Computing device 110 may be a standalone computing device, an administrative server, a web server, a mobile computing device, or any other electronic device or computing system capable of receiving, transmitting, and processing data. In an embodiment, computing device 110 may be a laptop computer, a tablet computer, a netbook computer, a personal computer (PC), a desktop computer, a personal digital assistant (PDA), a smartphone, or any programmable electronic device capable of communicating with other computing devices (not shown) in distributed data processing environment 100 via network 120. In another embodiment, computing device 110 may represent a server computing system utilizing multiple computers as a server system, such as in a cloud computing environment. In yet another embodiment, computing device 110 represents a computing system utilizing clustered computers and components (e.g., database server computers, application server computers, etc.) that function as a single pool of seamless resources when accessed in distributed data processing environment 100.
[0048] In an embodiment, computing device 110 includes upgrade management program 112. In an embodiment, upgrade management program 112 is a program, application, or subprogram of a larger program for performance and upgrade management of digital twin enabled assets. In alternative embodiments, upgrade management program 112 may be located on any other device accessible by computing device 110 via network 120.
[0049] In an embodiment, the computing device 110 includes an information repository 114. In an embodiment, the information repository 114 may be managed by the upgrade management program 112. In an alternative embodiment, the information repository 114 may be managed by the device's operating system, alone or together with the upgrade management program 112. The information repository 114 is a data repository that may store, collect, compare, or combine information, or any combination thereof. In some embodiments, the information repository 114 is located external to the computing device 110 and accessed via a communications network, such as the network 120. In some embodiments, the information repository 114 is stored on the computing device 110. In some embodiments, the information repository 114 may reside on another computing device (not shown) so long as the information repository 114 is accessible by the computing device 110. The information repository 114 includes, but is not limited to, update data, upgrade data, digital twin data, system data, user data, other data received by the upgrade management program 112 from one or more sources, and data generated by the upgrade management program 112.
[0050] In an embodiment, the information repository 114 may also include a digital twin repository. In an embodiment, the digital twin repository may be separate from the information repository 114, so long as the digital twin repository is accessible by the computing device 110.
[0051] The information repository 114 may be implemented using any volatile or non-volatile storage medium for storing information, as known in the art. For example, the information repository 114 may be implemented with a tape library, an optical library, one or more independent hard disk drives, multiple hard disk drives in a redundant array of independent disks (RAID), a solid state drive (SSD), or random access memory (RAM). Similarly, the information repository 114 may be implemented with any suitable storage architecture known in the art, such as a relational database, a NoSQL database, an object-oriented database, or one or more tables.
[0052] FIG. 4 is an example of one possible system architecture, generally designated 200, according to an embodiment of the present invention. System architecture 200 includes hardware resource information 210 and software consumption details 220, which represent data to be input into a digital twin of the managed asset. System architecture 200 also includes digital twin replicated resources 230, which is a digital twin of the managed asset. Corpus 240 is an information corpus that includes information about upcoming dependency changes obtained from various sources, as described below. The analysis also includes suggestions to asset management platform 250 for changes in software configurations, hardware assets, and firmware configurations to manage the dependency changes. The analysis of upcoming dependency changes is output to asset management platform 250.
[0053] FIG. 5 is a flow chart illustrating operational steps of upgrade management program 112, generally designated workflow 300, on a computing device in the distributed data processing environment of FIG. 3 for performance and upgrade management of digital twin enabled assets, according to an embodiment of the present invention. In alternative embodiments, the steps of workflow 300 may be performed by any other program working with upgrade management program 112. In an embodiment, upgrade management program 112 receives entry of any upcoming hardware, software, or firmware requirements for the organization. In an embodiment, based on the results of the discovery mechanism, upgrade management program 112 stores the information received in step 302 in appropriate repositories of hardware, firmware, and software. In an embodiment, upgrade management program 112 feeds the stored data to the digital twin to generate a replica with updated hardware and software details. In an embodiment, upgrade management program 112 continuously updates the digital twin based on inputs to the system with changes in hardware, firmware, and software. In an embodiment, once the digital twin resources are up to date with the latest hardware and software information, the upgrade manager 112 generates a report detailing the working dependencies, non-working dependencies, and hardware asset dependencies that are provided to any software and hardware asset management platform. In an embodiment, the upgrade manager 112 sends the report to a user.
[0054] It should be appreciated that embodiments of the present invention are provided at least for performance and upgrade management of digital twin-enabled assets. However, FIG. 5 provides only an example of one implementation and does not imply any limitation with respect to the environments in which different embodiments may be implemented. Many modifications to the depicted environments may be made by one of ordinary skill in the art without departing from the scope of the present invention as set forth in the claims.
[0055] The upgrade manager 112 receives hardware, firmware, and software requirements (step 302). In an embodiment, the upgrade manager 112 receives entries for any upcoming hardware, software, or firmware requirements for the organization. These entries also include any upgrades to the organization's existing assets. In an embodiment, the upgrade manager 112 also continuously receives data from various sources, including communications for upcoming systems. These data can be publicly available information or vendor published data from current vendors, or data collected by existing technologies such as web crawlers. In an embodiment, the upgrade manager 112 receives relevant data from various sites, such as vendor sites, vendor news feeds, historical data, IoT feeds, social media feeds, etc. In an embodiment, the upgrade manager 112 receives feeds from various systems including server usage metrics. In an embodiment, the upgrade manager 112 generates a dataset by pre-processing the data and applying filtering to the discovered content using topic modeling. In an embodiment, the upgrade manager 112 performs topic modeling on the received unlabeled data based on the organization's information technology management needs. After this clustering is performed, the result is a labeled data set called a classification.
[0056] In an embodiment, the relevant data received by upgrade manager 112 includes usage metrics specific to the use of assets, i.e., hardware, software, or firmware, for specific projects by location or business unit. In an embodiment, the usage metrics are configurable for specific assets as high, low, or selectively used based on frequency of use, allowing information technology managers to be prepared by providing information to the severity of the impact on that asset.
[0057] Upgrade manager 112 stores the requirements data in a repository (step 304). In an embodiment, based on the results of the discovery mechanism performed in step 302, upgrade manager 112 stores the information received in step 302 in an appropriate repository of hardware, e.g., hardware resource information 210 from FIG. 2, firmware, and software, e.g., software consumption details 220 from FIG. 2. Upgrade manager 112 uses the topic modeling performed in step 302 to index the data to determine an appropriate repository in which to store the requirements data.
[0058] Upgrade manager 112 feeds the updated requirements data to the digital twin (step 306). In an embodiment, upgrade manager 112 feeds the data stored in step 304 to the digital twin, e.g., digital twin replica resource 230 from FIG. 2, to generate a replica with updated hardware and software details.
[0059] The upgrade manager 112 generates 308 a digital twin replica with the updated requirements data. In an embodiment, the upgrade manager 112 continuously updates the digital twin based on inputs to the system with changes in hardware, firmware, and software. In various embodiments, these inputs may include hardware resource models, changes in CPU architecture, changes in memory architecture, functional changes to the hardware architecture, design changes, changes in CPU speed and core architecture, software consumption details, software non-functional requirements details, and current working scenarios and mapping details with hardware resources.
[0060] In an embodiment, the hardware resource model is the actual new hardware resource for which information is fed into the digital twin model to generate the virtual replica. For example, a digital twin simulation for a facility may consider the physical assets in the facility, such as servers, computers, cabling, etc., which may help arrive at a base model or repository of different types of systems or machines in the facility. Alternatively, based on the type of project, the system may present different types of challenges that may occur, which are also simulated by using the digital twin. In an embodiment, the functional change to the hardware architecture refers to any change to the hardware access, such as providing better security, better read / write access, or I / O operation changes to the hardware. In an embodiment, the change in CPU speed and core architecture includes a change in the core architecture, such as a change in CPU core speed from 2.3 GHz to 3.2 GHz, or a change from a 32-bit core to a 64-bit core.
[0061] In an embodiment, the software consumption details are data from the repository collected in step 304 that are input into the digital twin to generate software dependency metrics. In an embodiment, the software non-functional requirement details define attributes of the system, such as security, reliability, performance, maintainability, scalability, and usability, that are requirements for running the software, but not the functionality of the software. For example, if a software appliance designed to run on a system with resource sharing functionality is modified to run on a new server with different hardware or firmware upgrade changes to that functionality, such as higher security, the working operation of the appliance may be interrupted. The change may not affect the software functionality, but may prevent the software from running.
[0062] In an embodiment, the current working scenarios and mapping details with hardware resources is a measure of how well the software works with the current hardware resources and those working scenarios.
[0063] In an embodiment, the upgrade manager 112 calculates continued usage metrics for the assets based on the usage metrics and updates to the hardware, firmware, and software received in step 302 .
[0064] The upgrade manager 112 generates a work dependency report from the digital twin (step 310). In an embodiment, once the digital twin resources are updated with the latest hardware and software information in step 308, the upgrade manager 112 generates a report detailing the work dependencies, non-work dependencies, and hardware asset dependencies (e.g., USB mouse does not work with USB 2.0 adapter) that is provided to any software and hardware asset management platform, such as the asset management platform 250 from FIG. 2. In an embodiment, the generated report is used to tag assets for more usable and non-usable items based on future technology changes. In an embodiment, the upgrade manager 112 generates new asset requirements and includes these in the report. In an embodiment, the upgrade manager 112 includes the continued use metrics of the assets calculated in step 302 in the work dependency report. In an embodiment, the upgrade manager 112 includes a list of assets that will become obsolete based on future changes in hardware, firmware, or software. In an embodiment, the upgrade manager 112 includes a list of software upgrades that are compatible with future hardware or firmware changes. In an embodiment, the upgrade manager 112 includes in the report the solutions discovered through the various feeds received in step 302 and suggests project units that enable the software application to respond to configuration changes.
[0065] In an embodiment, the upgrade manager 112 uses the various data feeds received to generate a corpus of available alternative software products, including open source software. In an embodiment, the upgrade manager 112 uses a corpus, such as corpus 240 from FIG. 2, and the results of the digital twin simulation to determine any alternative software, including open source software, that may be a replacement for the obsolete software based on the hardware or firmware changes. In an embodiment, the upgrade manager 112 simulates the alternative software to determine whether it is compatible with the hardware and firmware changes. In an embodiment, if the upgrade manager 112 determines that the alternative software is compatible with the hardware and firmware changes, then the upgrade manager 112 generates a suitability metric for the alternative software by simulation on the digital twin to display the alternative software, including the open source software, that is the closest match to the obsolete software. In an embodiment, the APM system uses these suitability metrics to perform project planning accordingly.
[0066] Upgrade management program 112 sends the work dependency report (step 312). In an embodiment, upgrade management program 112 inputs the report directly into the APM system. In an embodiment, upgrade management program 112 interfaces with an APM tool to generate recommendations based on the report. For example, the report may indicate that a new hardware upgrade will make certain keyboards obsolete, but the APM system discovers that those keyboards may be used in another department. In an embodiment, these recommendations enable the APM system to proactively acquire or replace software or hardware components that will become obsolete due to upcoming changes. In another embodiment, upgrade management program 112 sends the report generated in step 310 directly to the user. Upgrade management program 112 is then finished for this cycle.
[0067] Figure 6 is a block diagram illustrating components of a computing device 110 suitable for upgrade management program 112 in accordance with at least one embodiment of the present invention. Figure 6 illustrates a computer 400, one or more processors 404 (including one or more computer processors), a communications fabric 402, memory 406 including random access memory (RAM) 416 and cache 418, persistent storage 408, a communications unit 412, an I / O interface 414, a display 422, and external devices 420. It should be understood that Figure 6 is only intended to provide an illustration of one embodiment and is not intended to suggest any limitation with respect to the environments in which different embodiments may be implemented. Many modifications to the depicted environment may be made.
[0068] As shown, computer 400 operates via a communications fabric 402 that provides communications between computer processor 404, memory 406, persistent storage 408, communications unit 412, and I / O interface 414. Communications fabric 402 may implement any architecture suitable for passing data or control information between processor 404 (e.g., microprocessor, communications processor, and network processor), memory 406, external device 420, and any other hardware components in the system. For example, communications fabric 402 may be implemented with one or more buses.
[0069] Memory 406 and persistent storage 408 are computer-readable storage media. In the illustrated embodiment, memory 406 includes RAM 416 and cache 418. In general, memory 406 may include any suitable volatile or non-volatile computer-readable storage medium. Cache 418 is a high-speed memory that improves performance of processor 404 by holding recently accessed data from RAM 416 and near recently accessed data.
[0070] Program instructions for upgrade management program 112 may be stored in persistent storage 408, or more generally, in any computer-readable storage medium, for execution by one or more of the respective computer processors 404 via one or more memories of memory 406. Persistent storage 408 may be a magnetic hard disk drive, a solid-state disk drive, a semiconductor storage device, a read-only memory (ROM), an electronically erasable programmable read-only memory (EEPROM), flash memory, or any other computer-readable storage medium capable of storing program instructions or digital information.
[0071] Additionally, the media used by persistent storage 408 may be removable. For example, a removable hard drive may be used for persistent storage 408. Other examples include optical and magnetic disks, thumb drives, and smart cards that are inserted into a drive to transfer data to another computer-readable storage medium that is also part of persistent storage 408.
[0072] In these examples, communications unit 412 provides for communication with other data processing systems or devices. In these examples, communications unit 412 includes one or more network interface cards. Communications unit 412 may provide for communication through the use of either or both physical and wireless communications links. In the context of some embodiments of the present invention, sources of various input data may be physically separate from computer 400 such that input data may be received and output may be transmitted via communications unit 412 as well.
[0073] The I / O interface 414 allows for the input and output of data with other devices that may be connected to the computer 400. For example, the I / O interface 414 may provide a connection to external devices 420, such as a keyboard, keypad, touch screen, microphone, digital camera, or some other suitable input device, or combination thereof. The external devices 420 may also include portable computer-readable storage media, such as, for example, thumb drives, portable optical or magnetic disks, and memory cards. Software and data used to implement embodiments of the present invention, such as the upgrade management program 112, may be stored on such portable computer-readable storage media and loaded into the persistent storage 408 via the I / O interface 414. The I / O interface 414 is also connected to a display 422.
[0074] The display 422 provides a mechanism for displaying data to a user and may be, for example, a computer monitor. The display 422 may also function as a touch screen, such as the display of a tablet computer.
[0075] The programs described herein are identified based on the application for which they are implemented in particular embodiments of the invention. However, it should be understood that any specific program terminology herein is used merely for convenience, and thus the invention should not be limited to use only in any particular application identified and / or suggested by such terminology.
[0076] The present invention may be a system, a method, or a computer program product, or a combination thereof. The computer program product may include computer readable storage medium(s) having computer readable program instructions for causing a processor to perform aspects of the present invention.
[0077] A computer readable storage medium may be any tangible device capable of holding and storing instructions for use by an instruction execution device. A computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the above. A non-limiting list of more specific examples of computer readable storage media includes: portable computer diskettes, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), static random access memories (SRAM), portable compact disk read-only memories (CD-ROM), digital versatile disks (DVD), memory sticks, floppy disks, mechanically encoded devices such as punch cards or ridge structures in grooves having instructions recorded thereon, and any suitable combination of the above. Computer-readable storage medium, as used herein, is not to be construed as a transitory signal per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted through wires.
[0078] The computer-readable program instructions described herein may be downloaded from the computer-readable storage medium to each computing / processing device or to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, or a wireless network, or a combination thereof. The network may comprise copper transmission cables, optical transmission fiber, wireless transmission, routers, firewalls, switches, gateway computers, or edge servers, or a combination thereof. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and transfers the computer-readable program instructions for storage in the computer-readable storage medium within the respective computing / processing device.
[0079] The computer readable program instructions for carrying out the operations of the present invention may be either assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including object oriented programming languages such as Smalltalk, C++, and the like, and conventional procedural programming languages such as the "C" programming language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partially on the user's computer as a stand-alone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (e.g., through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may execute computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry to perform aspects of the invention.
[0080] Aspects of the present invention are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer readable program instructions.
[0081] These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine such that the instructions executed via the processor of the computer or other programmable data processing apparatus produce means for implementing the functions / acts specified in a block or blocks of the flowcharts and / or block diagrams. These computer readable program instructions may also be stored on a computer readable storage medium that may direct a computer, programmable data processing apparatus, or other device, or combination thereof, to function in a particular manner such that the computer readable storage medium on which the instructions are stored may include an article of manufacture including instructions that implement aspects of the functions / acts specified in a block or blocks of the flowcharts and / or block diagrams.
[0082] Furthermore, the computer readable program instructions may be loaded into a computer, other programmable data processing apparatus, or other device and cause a series of operational steps to be executed on the computer, other programmable apparatus, or other device to generate a computer-implemented process, such that the instructions executing on the computer, other programmable apparatus, or other device may implement the functions / operations specified in a block or blocks of the flowcharts or block diagrams, or both.
[0083] The flowcharts and block diagrams in the drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. In this regard, each block in the flowcharts or block diagrams may represent a module, segment, or portion of instructions, including one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions described in the blocks may occur in an order other than that described in the drawings. For example, two blocks shown in succession may in fact be executed substantially simultaneously, or the blocks may be executed in the reverse order depending on the functionality involved. It should also be noted that each block of the block diagrams and / or flowchart diagrams, and combinations of blocks in the block diagrams and / or flowchart diagrams, may be implemented by a dedicated hardware-based system that performs the specified functions or operations, or a combination of dedicated hardware and computer instructions.
[0084] The description of various embodiments of the present invention is presented for illustrative purposes, but is not intended to be exhaustive or limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the present invention. The terms used in this specification are selected to most appropriately explain the principles of the embodiments, practical applications, or technical improvements to the technology found in the industry, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. 1. A computer-implemented method for digital twin based asset management, the computer-implemented method comprising: receiving, by one or more computer processors, one or more future changes to one or more assets, the one or more future changes to the one or more assets including at least one of one or more hardware requirements, one or more firmware requirements, one or more software requirements, one or more hardware upgrades, one or more firmware upgrades, and one or more software upgrades; storing, by the one or more computer processors, the one or more future changes to the one or more assets in one or more repositories, where an appropriate one of the one or more repositories is determined using topic modeling; updating, by the one or more computer processors, one or more digital twins, each digital twin of the one or more digital twins being a virtual hardware replica of an asset, and further wherein each digital twin of the one or more digital twins is continually updated with the one or more future changes in the one or more repositories; calculating, by the one or more computer processors, a continuing use metric for each asset of the one or more assets based on an output of the one or more digital twins, the continuing use metric being specific to each asset of the one or more assets; generating, by the one or more computer processors, a first report based on the one or more future changes and the continued usage metrics, the first report including at least one of hardware dependencies, firmware dependencies, software dependencies, and upgrade dependencies; A computer-implemented method comprising:
2. 2. The computer-implemented method of claim 1 , wherein the first report includes a list of any assets of the one or more assets that will become obsolete based on the one or more future changes and the output of the one or more digital twins.
3. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, further comprising: mapping, by the one or more computer processors, the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; determining, by the one or more computer processors, whether the one or more software upgrades are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating, by the one or more computer processors, a list of each of the one or more software upgrades that are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; 3. The computer-implemented method of claim 1, comprising:
4. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, further comprising: mapping, by the one or more computer processors, each software upgrade of the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating, by the one or more computer processors, a list of each of the one or more software upgrades that are incompatible with the one or more hardware upgrades and the one or more firmware upgrades; generating, by the one or more computer processors, a list of each of the one or more alternative software that are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets, where each of the one or more alternative software is a potential replacement for the one or more software upgrades; 4. The computer-implemented method of claim 1 , comprising:
5. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, further comprising: receiving, by the one or more computer processors, one or more server usage metrics; simulating, by the one or more computer processors, the one or more server usage metrics and the one or more future changes to the one or more assets on the one or more digital twins; generating, by the one or more computer processors, a second report, the second report being a listing of an impact of the one or more future changes on each of the one or more server usage metrics of each asset of the one or more assets; 5. The computer-implemented method of claim 1 , comprising:
6. 6. The computer-implemented method of claim 1, wherein the one or more future changes to the one or more assets are received from at least one of a publicly available information feed, a vendor public data site, web crawler data, a vendor news feed, historical data, Internet of Things data, social media data feeds, and a server metric data feed.
7. The computer-implemented method of claim 1 , further comprising transmitting, by the one or more computer processors, the first report to an asset performance management system.
8. 1. A computer program for digital twin based asset management, comprising: receiving one or more future changes to one or more assets, the one or more future changes to the one or more assets including at least one of one or more hardware requirements, one or more firmware requirements, one or more software requirements, one or more hardware upgrades, one or more firmware upgrades, and one or more software upgrades; storing the one or more future changes to the one or more assets in one or more repositories, where an appropriate repository of the one or more repositories is determined using topic modeling; updating one or more digital twins, each digital twin of the one or more digital twins being a virtual hardware replica of an asset, and further wherein each digital twin of the one or more digital twins is continually updated with the one or more future changes in the one or more repositories; calculating a continuing use metric for each asset of the one or more assets based on an output of the one or more digital twins, the continuing use metric being specific to each asset of the one or more assets; generating a first report based on the one or more future changes and the continued usage metrics, the first report including at least one of hardware dependencies, firmware dependencies, software dependencies, and upgrade dependencies; A computer program for executing the above.
9. 9. The computer program product of claim 8, wherein the first report includes a list of any assets of the one or more assets that will become obsolete based on the one or more future changes and the output of the one or more digital twins.
10. Calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, mapping the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; determining whether the one or more software upgrades are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating a list of each of the one or more software upgrades that are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each of the one or more assets; 10. A computer program according to claim 8 or 9, further comprising:
11. Calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, mapping each software upgrade of the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating a list of each of the one or more software upgrades that are incompatible with the one or more hardware upgrades and the one or more firmware upgrades; in response to determining whether one or more alternative software are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets, generating a list of each of the one or more alternative software that are compatible with the one or more hardware upgrades and the one or more firmware upgrades, each of the one or more alternative software being a potential replacement for the one or more software upgrades; 11. A computer program according to any one of claims 8 to 10, further comprising:
12. Calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets, receiving one or more server usage metrics; simulating the one or more server usage metrics and the one or more future changes to the one or more assets on the one or more digital twins; generating a second report, the second report being a listing of an impact of the one or more future changes on each of the one or more server usage metrics for each asset of the one or more assets; 12. A computer program according to any one of claims 8 to 11, further comprising:
13. 13. The computer program product of claim 8, wherein the one or more future changes to the one or more assets are received from at least one of a publicly available information feed, a vendor public data site, web crawler data, a vendor news feed, historical data, Internet of Things data, social media data feeds, and a server metric data feed.
14. 14. A computer program product as claimed in any one of claims 8 to 13, further causing the processor to perform the step of transmitting the first report to an asset performance management system.
15. 1. A computer system for digital twin based asset management, the computer system comprising: one or more computer processors; one or more computer readable storage media; program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors; Equipped with The stored program instructions include: receiving one or more future changes to one or more assets, the one or more future changes to the one or more assets including at least one of one or more hardware requirements, one or more firmware requirements, one or more software requirements, one or more hardware upgrades, one or more firmware upgrades, and one or more software upgrades; storing the one or more future changes to the one or more assets in one or more repositories, where an appropriate repository of the one or more repositories is determined using topic modeling; updating one or more digital twins, each digital twin of the one or more digital twins being a virtual hardware replica of an asset, and further wherein each digital twin of the one or more digital twins is continually updated with the one or more future changes in the one or more repositories; calculating a continuing use metric for each asset of the one or more assets based on an output of the one or more digital twins, the continuing use metric being specific to each asset of the one or more assets; generating a first report based on the one or more future changes and the continued usage metrics, the first report including at least one of hardware dependencies, firmware dependencies, software dependencies, and upgrade dependencies; A computer system having instructions for performing the steps of:
16. 16. The computer system of claim 15, wherein the first report includes a list of any assets of the one or more assets that will become obsolete based on the one or more future changes and the output of the one or more digital twins.
17. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets; mapping the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; determining whether the one or more software upgrades are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating a list of each of the one or more software upgrades that are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each of the one or more assets; 17. A computer system according to claim 15 or 16, further comprising one or more of a plurality of program instructions stored on said one or more computer readable storage media for performing the following:
18. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets; mapping each software upgrade of the one or more software upgrades to the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets; generating a list of each of the one or more hardware upgrades and the one or more software upgrades that are incompatible with the one or more firmware upgrades; generating a list of each of the one or more alternative software that are compatible with the one or more hardware upgrades and the one or more firmware upgrades for each asset of the one or more assets, wherein each of the one or more alternative software is a potential replacement for the one or more software upgrades; 18. The computer system of claim 15, further comprising one or more of a plurality of program instructions stored on the one or more computer readable storage media for performing the following:
19. calculating the continued use metric for each asset of the one or more assets based on the output of the one or more digital twins, the continued use metric being specific to each asset of the one or more assets; receiving one or more server usage metrics; simulating the one or more server usage metrics and the one or more future changes to the one or more assets on the one or more digital twins; generating a second report, the second report being a listing of an impact of the one or more future changes on each server usage metric of the one or more server usage metrics for each asset of the one or more assets; 19. The computer system of claim 15, further comprising one or more of a plurality of program instructions stored on the one or more computer readable storage media for performing the following:
20. 20. The computer system of claim 15, wherein the one or more future changes to the one or more assets are received from at least one of a publicly available information feed, a vendor public data site, web crawler data, a vendor news feed, historical data, Internet of Things data, social media data feeds, and a server metric data feed.
Citation Information
Patent Citations
Thermal design simulation method for printed circuit board, and thermal design simulation support program for printed circuit board
JP2006154983A
System and method for remote maintenance of client systems in electronic networks using virtual machine software testing
JP2013522795A
Power system control arrangement, power system control system, power system control method and power system program
JP2019154201A
An autonomous generative design synthesis system using data from design tools and knowledge from digital twin graphs
JP2020515963A