Jeff Johnson's design principles - Leonhest/HandballOrg_App GitHub Wiki
Jeff Johnsen's design principles consist of 9 points on how to develop a design that will make the application more user-friendly. By following these points in the development of a program, this can make the program easier to guide through. The 9 points that will make the application more user friendly are:
1. Focus on the user and the task, not the technology
This point involves designing an application that is of interest to the user. The developer should mainly think about the user's needs. The program is built in such a way that only important information and options are visible on the screen. For example, the result page only includes match information and result registration options.
2. Functions before presentation
In the application, the function of each page is thought through before the design was prepared. This is so that each page will only contain relevant information for the page and not unnecessary features on each page.
3. Design from the users standpoint
The application is made in a consistent way. This principle discusses the idea of providing an interface where the user is unintentionally surprised and where similar actions provide similar feedback / reactions.
4. Design for the most common tasks
The program is designed so that functions that are repeated are often located in the same places every time. In the program, all buttons with the same function have the same name, and are located in the same place. This makes the program more clear to the user. The same buttons also have the same design and size.
5. Do not distract users from the tasks
The design of the program is designed so that it is easy for the user to understand what to do on each page. There are no distractions that make the user unfocused in terms of the tasks to be performed. Buttons and text boxes are placed in appropriate places so that the user does not have to look for where the various functions are located.
6.Facilitate learning
The program is designed so that functions that are repeated are consistent. Functions that are not repeated are placed in sensible places, in addition to being presented with a text that describes what the function does.
7.Provide information, not just data
The program is descriptive and all buttons, text boxes and other functions are described with a text. When the user clicks on a field, the field will light up blue to indicate what the user has pressed. The current build of the application includes code that informs the user about changes they have done in the program. If the user registers a new team, it shows up immediately. Also, invalid input will be caught and the user will be notified with a text specifying the error. Overall, the program provides immediate feedback to the user.
8. Design for responsiveness
The program is programmed in a way that notifies the user in case of user error. The constraints of the program intentionally reduce the user's choices and potential errors. A good example of this is that if the user tries to set up a new cup on a date that has already been, the user will receive an error message. The user will also receive an incorrect message if the telephone number is not written with the correct number of numbers or if the number consists of letters.
9. Test and fix
The program has been developed according to the customer's needs and several user tests have been performed to tailor the program in the best possible way. There have therefore been a lot of changes in the program after user tests. The first user test was conducted where the user went through a wire frame and commented on what should be changed. Based on these comments, a program was developed that fit the user's descriptions.