Patent ID: 7587453

Claim:
A method of determining an availability of a plurality of applications in a computing environment, comprising: automatically determining a plurality of topologies of said plurality of applications, wherein a topology of an application of said plurality of topologies of said plurality of applications includes a set of triplets {P i ,P a ,P j }, wherein said P i is an i-th consumer software process of a plurality of consumer software processes included in a plurality of software processes P 1 , . . ., P n , wherein said P j is a j-th provider software process of a plurality of provider software processes included in said P 1 , . . ., P n , wherein said P 1 , . . ., P n are a plurality of running instances of computer programs utilized by said application, wherein said I a is an application programming interface (API) utilized in a request by said P i for an access to a resource managed by said P j , and wherein i≠j; initiating, by said P i , a diagnostic transaction between said P i and said P j , wherein said initiating said diagnostic transaction comprises opening a connection between said P i and said P j via said API and requesting, via said API, said access to said resource managed by said P j , said API utilized by said P i and said P j to perform any communication therebetween; completing said diagnostic transaction via receiving, at said P i , a response from said P j providing said access, or via not receiving said response at said P i ; designating said P j as available to said application in response to said completing via said receiving said response, or as unavailable to said application in response to said completing via said not receiving said response; repeating said initiating, said completing, and said designating until each pair of P i , P j in said set of triplets {P i , I a ,P j } is utilized by said initiating, said completing, and said designating; and determining an availability of said application based on no software process P j in said set of triplets {P i , I a ,P j } being designated unavailable via said designating.