Während das Wissen eines Designers für Programmoberflächen meist alle Interna des Programms umfasst, kennt der Benutzer oft nur die Oberfläche. Um eine benutzergeeignete Oberfläche und Bedienung – also eine hohe Usability – zu erreichen, können viele Regeln angewandt werden. Nach Jeff Johnson [1] gibt es hierfür neun einfache Regeln, die es zu beachten gilt: