Aspect based recovery system and method
Abstract
The present invention includes an aspect based recovery system and method. States of a computer system may be defined by aspects. During operation of the computer system, the current state of the computer system may be determined by examining the current aspects. The examination of current state of the computer may include determining whether the current state of the computer is in an expected state with expected aspects. If the state of the computer is not in the expected state, aspect based recovery may modify selected aspects of the computer system to place the computer system in a known state.
Claims
exact text as granted — not AI-modified1 . Method for executing an automatic recovery routine for a computer system, the computer system having a plurality of states defined by aspects, the method comprising:
providing a software routine for placing the computer system in an expected state defined by an expected aspect; executing the software routine on the computer system after which the computer system is in a current state defined by a current aspect; automatically determining whether the current aspect matches the expected aspect; automatically determining whether the current state is the expected state based, at least in part, on automatically determining whether the current aspect matches the expected aspect; and executing an automatic recovery routine if the current state is not the expected state, the automatic recovery routine modifying the current aspect.
2 . The method of claim 1 , wherein the software routine comprises an automated testing routine for the computer system.
3 . The method of claim 1 , wherein executing an automatic recovery routine changes the state of the computer system to a system default state.
4 . The method of claim 3 , wherein the expected state comprises the system default state defined by a system default aspect; and
wherein modifying the current aspect comprises modifying the current aspect to the system default aspect.
5 . The method of claim 1 , wherein the software routine comprises an automated test precondition routine which places the computer system in a precondition state defined by a precondition aspect, and
wherein automatically determining whether the current state is the expected state comprises determining whether the computer is in the precondition state after execution of the automated test precondition routine.
6 . The method of claim 5 , wherein modifying the current aspect comprises modifying the current aspect to a system default aspect.
7 . The method of claim 1 , wherein the aspects are selected from the group consisting of graphical user interface, database, security, user configuration, site configuration, and current user.
8 . The method of claim 1 , further comprising recording the current aspect.
9 . The method of claim 1 , wherein an aspect comprises a graphical user interface aspect,
wherein modifying the current aspect comprises closing all popup windows.
10 . The method of claim 1 , wherein the expected state is defined by a plurality of expected aspects;
wherein the current state is defined by a plurality of current aspects; wherein automatically determining whether the current state is the expected state comprises comparing the current aspects with the expected aspects; and wherein executing an automatic recovery routine comprises selecting which aspects are to be modified and modifying the selected aspects.
11 . The method of claim 10 , further comprising determining which current aspects do not match the expected aspects; and
wherein selecting which aspects to be modified comprises selecting the current aspects which do not match the expected aspects.
12 . The method of claim 11 , wherein executing an automatic recovery routine comprises:
attempting to modify the first aspect to the expected aspect; determining that the attempt to modify the first aspect failed; modifying other aspects to their expected aspects; and attempting for at least a second time to modify the first aspect to the expected aspect.
13 . The method of claim 12 , wherein determining that the attempt to modify the first aspect failed comprises comparing the first aspect with the expected aspect.
14 . The method of claim 11 , wherein the automatic recovery routine comprises iteratively attempting to modify aspects, the automatic recovery routine attempting to recover aspects until a number of aspects that are unrecoverable from one iteration to a subsequent iteration remains constant.
15 . The method of claim 1 , wherein modifying the current aspect comprises modifying the current aspect independent of changes to other aspects.
16 . The method of claim 1 , further comprising a forced restart of the computer system.
17 . Method for executing a recovery routine for a computer system, the computer system having a plurality of states defined by aspects, the method comprising:
executing a software routine; automatically determining, after executing the software routine, whether the computer system is in an unknown state; and automatically changing from the unknown state to a known state of the computer system, the step of automatically changing consisting of automatically modifying aspects of the computer system to place the computer system in the known state.
18 . The method of claim 17 , wherein automatically changing from an unknown state to a known state comprises changing from an unknown state to a system default state.
19 . The method of claim 18 , wherein the expected state comprises the system default state defined by system default aspects; and
wherein modifying aspects comprises modifying at least some of the aspects to their system default aspects.
20 . The method of claim 17 , wherein automatically determining, after executing the software routine, whether the computer system is in an unknown state comprises examining at least some of the aspects of the computer system.
21 . The method of claim 20 , wherein the software routine is for placing the computer system in an expected state defined by an expected aspects;
wherein after executing the software routine, the computer system is in a current state with current aspects; wherein examining at least some of the aspects of the computer system comprises examining the current aspects with the expected aspects to determine the current aspects which differ from the expected aspects; and wherein automatically modifying aspects of the computer system comprises automatically modifying the current aspects which differ from the expected aspects.
22 . The method of claim 17 , further comprising recording aspects of the computer system, the step of recording being performed after automatically determining whether the computer system is in an unknown state.
23 . The method of claim 17 , further comprising a forced restart of the computer system, the forced restart being performed after automatically changing from an unknown state to a known state.
24 . Method for executing a recovery routine for a computer system, the computer system having a plurality of states defined by aspects, the method comprising:
providing a software routine for placing the computer system in an expected state defined by expected aspects; executing the software routine on the computer system after which the computer system is in a current state defined by current aspects; automatically analyzing the current aspects of the current state of the computer system with respect to the expected aspects of the expected state; automatically determining the current aspects which differ from the expected aspects and the current aspects which match the expected aspects; and automatically modifying the state of the computer system by automatically modifying the current aspects which differ from the expected aspects and not modifying the current aspects which match the expected aspects.
25 . The method of claim 24 , wherein the expected state is system default.
26 . The method of claim 24 , wherein the software routine comprises an automated testing routine.
27 . The method of claim 26 , wherein the automated testing routine tests medical imaging software.
28 . Method for executing a recovery routine for a computer system, the computer system having a plurality of states defined by aspects, the method comprising:
providing a software routine for placing the computer system in an expected state defined by expected aspects; executing the software routine on the computer system after which the computer system is in a current state defined by current aspects; automatically analyzing the current aspects of the current state of the computer system with respect to the expected aspects of the expected state; automatically determining the current aspects which differ from the expected aspects and the current aspects which match the expected aspects; and automatically modifying at least some of the current aspects which differ from the expected aspects without restarting the computer system.
29 . The method of claim 28 , further comprising a forced restart of the computer system, the forced restart being performed after modifying at least some of the current aspects.
30 . The method of claim 28 , wherein the expected state comprises system default.
31 . Method for recording aspects for a computer system, the computer system having a plurality of states defined by the aspects, the method comprising:
providing a software routine for placing the computer system in an expected state defined by expected aspects; executing the software routine on the computer system after which the computer system is in a current state defined by current aspects; automatically analyzing the current aspects of the current state of the computer system with respect to the expected aspects of the expected state; automatically determining the current aspects which differ from the expected aspects and the current aspects which match the expected aspects; and recording the current aspects which differ from the expected aspects.
32 . The method of claim 31 , further comprising:
recording the current aspects which match the expected aspects.
33 . The method of claim 31 , further comprising:
recording a time of execution of the software routine.
34 . The method of claim 31 , further comprising:
recording the expected aspects which differ from the current aspects.
35 . The method of claim 34 , further comprising:
recording the expected aspects which match from the current aspects.
36 . An aspect based recovery system for an application software on a computer system comprising;
a computer system having stored thereon the application software; programming code on said computer system for executing at least a portion of the application software; programming code on said computer system for determining whether the computer system is in an unknown state; and programming code on said computer system for changing from the unknown state to a known state of the computer system, the programming code for modifying aspects of the computer system independently of one another to place the computer system in the known state.
37 . The aspect based recovery system of claim 36 , wherein the programming code for changing from the unknown state to a known state consists of programming code for modifying aspects of the computer system independently of one another to place the computer system in the known state
38 . The aspect based recovery system of claim 36 , wherein the programming code for determining whether the computer system is in an unknown state comprises programming code for examining at least some of the aspects of the computer system.
39 . The aspect based recovery system of claim 38 , wherein the programming code for examining at least some of the aspects of the computer system comprises programming code for comparing at least some of the aspects of the computer system with aspects of the known state.
40 . The aspect based recovery system of claim 36 , further comprising:
programming code on said computer system for recording at least some of the aspects of the computer system.Join the waitlist — get patent alerts
Track US2004250155A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.