Systems development methods or software methodologies have evolved considerably over the past few years. This article will review a taxonomy of software development methods as proposed by Blum Blu94. This taxonomy will be used to classify several of the principal software design methodologies. Each of these methodologies will be reviewed and conclusions drawn as to the efficacy of each in the context of the software life cycle. We will demonstrate that all of the traditional design methodologies fail to include a fundamental Human Computer Interaction (HCI) principle, Task Analysis (TA). An alternative methodology, Analysis for Task Object Modelling as proposed by Walsh Wal89, will be discussed, which includes TA with object modelling. We will motivate that TA is an essential part of Requirements Analysis and HCI design. Furthermore, failure to include TA may result in serious usability problems PNW93.