Though they appear to be arcane and outdated tools by modern standards, traditional command line interfaces (CLIs) still fnd heavy use by sysadmins, software developers and power users. This is largely due to the fact that for many of these users, graphical user interfaces (GUIs) are not often designed to scale to the functionality and control requirements of modern software systems.While CLIs can support powerful and effcient action, it is clear that they challenge usersfin many ways. In examining defciencies with CLIs, we can observe a principle problemfwhich affects the extent to which CLI users are able to effectively and effciently accomplishftheir goals, and, in particular perform action specifcation. This problem is characterised by a need for users to engage in exploratory activities in order to successfully execute validfcommands.The question explored within this dissertation is how this problem of exploration may be addressed, and in doing so, determine how CLIs can better support the solution of novel problems. This is explored through several studies involving expert CLI users, and deriving,testing and evaluating a design for a CLI with usability-enhancing features.Users were found to react well to command suggestion mechanisms, achieving faster tasksuccess and engaging in less documentation checking. However, their inclusion often lead to a less engaging experience for users, and there are still challenges for the integration offthese in real-world CLI software systems. As a consequence of these fndings and others, wefare able to arrive at an informed theoretical model of CLI user action specifcation, whichfmight be used to better understand how the experience of CLI users might be improved.
|Name||Department of Computer Science Technical Report Series|