IT system often deals with resources and their availability. In case of disaster, all systems could be off and thus should be reactivated in a way to minimize the business impact. Service Level Agreement (SLA), which may for example define how long a system can be off without impacting the business. Once this period ends, the system should be back on. The acceptable elapse time that a resource can be off without impacting the business is generally defined as the Recovery Time Objective (RTO).
IT Systems are not anymore monolithic. With new technologies, such as Service Oriented Architecture, an end-user application uses different services provided by other systems and these services also can use other services and so on. So, dependencies exist between the end-user applications and services. These services use also other systems, such as web-servers, application-servers, databases and so on. This is another level of dependencies. These intermediate systems must be on to allow the full system to run correctly. This is not only true at the application level components but also at the infrastructure level. The systems such as the above mentioned (end-user applications, services, databases . . . ) need an infrastructure to run. The infrastructure is a composition of servers, network, routers, power supply, etc. Each of these components is in fact a resource which must be available at a certain moment to respect the business need and these resources are linked to each other because some resources need others to be fully operational.
It is also possible that a resource needs another resource but not immediately. For example, a resource needs another but only one hour after its own activation or next Wednesday or the first day of the next month. This means that a dependency delay also exits.
Then it becomes important to find the optimized activation sequence for all resources composing a solution in order to minimize the business impact.
The present invention offers a solution to this need.