In this semester, we are going to enhance an AddressBook application.
This product is meant for users who can type fast, and prefer typing over mouse/voice commands. Therefore, Command Line Interface (CLI) is the primary mode of input.
Relevant: [
- Constraint-CLI: Command Line Interface is the primary mode of input. The GUI should be used primarily to give visual feedback to the user rather than to collect input. Some minimal use of mouse is OK (e.g. to click the minimize button), but the primary input should be command-driven.
- Mouse actions should have keyboard alternatives.
- Typing is preferred over key combinations. Design the app in a way that you can do stuff faster by typing compared to mouse actions or key combinations.
-
One-shot commands are preferred overmulti-step commands . If you provide a multi-step command to help new users, you should also provide a one-shot equivalent for regular users. Reason: We want the user to be able to accomplish tasks faster using CLI than a GUI; having to enter commands part-by-part will slow down the user. -
While we don't prohibit
GUI-only features, such features will be ignored during grading.