Observability analysis determines whether a unique system state estimate can be obtained for a given set of measurements, i.e., if the system is fully observable. It is an essential requirement for robust power system state estimation and may be carried out offline to determine whether a measurement configuration is adequate, or online to ensure that any changes in the available measurements (e.g., communication or meter failures) have not created isolated observable islands. One aspect of observability analysis is identifying the observable islands, i.e., the subnetworks within the power system in which the states can still be uniquely estimated with the measurements available. The existing numerical methods for observability analysis are noniterative, but fail to correctly identify the observable islands in certain cases. In this paper, the flaw in the underlying theorems behind these existing methods has been identified and a new iterative method is presented that overcomes it. However, online observability analysis is time sensitive, so iterative methods are undesirable. Therefore, a pathological case identification rule (PCIR) is proposed that allows the iterative procedure to be terminated early, if iterations are no longer necessary to prevent an incorrect identification. Furthermore, the new PCIR allows direct identification of observable islands, which allows the proposed iterative method to be faster than the existing noniterative methods. The proposed iterative method and the PCIR are based on mathematical proofs and explained with numerical examples, while the speed improvement from direct island identification is demonstrated using simulations of the IEEE 14 and 2736 bus test systems.