A method of executing a diagnosis program including multiple procedures
wherein the diagnosis program does not specify an order in which the
procedures are executed comprises receiving priority information
specifying an order in which a plurality of automated diagnostic
procedures is to be performed in a computer system. The plurality of
automated diagnostic procedures is performed in the specified order,
wherein each of the plurality of automated diagnostic procedures passes
or fails depending on at least one condition in the computer system. The
priority information is updated if more than one of the plurality of
automated diagnostic procedures fail.