The relationship between methods for systems development that have originated from work in human-computer interaction (HCI) and in software engineering are examined using a classificatory framework of the system life cycle and the development issues are addressed. Software engineering methods tackle few HCI issues and would benefit from the addition of HCI principles and techniques. It is contended that two groups of HCI methods can be identified, task/organisation and cognitive task analysis; both of which should be integrated with structured system development methods to improve system usability. To encourage their practice, HCI methods need to be integrated with software engineering and to offer more prescriptive design advice.