Skip to main content

2 - Software Design - 4 - User Interface Design


User interface design is very crucial for a system to interact with its clients/users. To achieve a meaningful software, the user interface should be designed to match the :
1. Skill level of the clients/users
2. Experience of the clients/users
3. Expectation of the targeted users

There are 7 User Interface Design Principles.
1. Easy To Learn
2. User Familiarity
3. Consistent 
4. Minimal Suprise
5. Recoverability
6. User Guidance ( How To )
7. User Diversity 

There are some Key Issues that need to be solve.
1. How should the user interact with the software ?
2. How should information from the software be presented to the user ? 

The above key should be solve and integrated properly. User interface design should consider a compromise between the most appropriate styles of interaction and presentation for the software, the background and experience of the software users, and the available devices.

The Design Of User Interaction Modalities
User interaction may involve things such as issuing commands and providing associated data to the interacted software. There are a few styles can be classified as user interaction style.
1. Question Answer
2. Direct Manipulating
3. Menu Selection
4. Form Fill-In
5. Command Language
6. Natural Language

The Design Of Information Presentation
The nature of information presentation may be textual or graphical in nature. A good design keeps the information presentation separate from the information itself ( For Example : MVC Approach ).
It is important for software engineers to consider the response time and feedback in the design of information presentation.
Abstract visualizations can be used when large amounts of information are to be presented.
Color can be used to enhanced the interface of Information Presentation. There are several important guidelines.
1. Limit the number of colors used
2. Use color change to show the change of software status
3. Use color-coding to support the user's task
4. Use color-coding in a thoughtful and consistent way
5. Use colors to facilitate access for people with color blindness or color defiency
6. Don't depend on color alone to convey important information to users with different capabilities

The User Interface Design Process
User interface design is an iterative process, usually a prototype ( wire frame ) often used to kick start the features, organizations, and look of the user interface final output. There are 3 core activities that involved in this process.
1. User Analysis 
2. Software Prototyping
3. Interface Evaluation.

Localization And Internationalization
It is important that the user interface design will cater users localization and internationalization. Things such as different languages at the target audience.
The internationalization definition : " Internationalization is the process of designing a software application so that it can be adapted to various languages and regions without major engineering changes"
The localization definition : " Localization is the process of adapting internationalized software for a specific region or language by adding locale-specific components and translating the text.
It is important that Localization and Internationalization should consider factors such as symbols, numbers, currency, time and date, and measurements units.

Metaphors and Conceptual Models
Metaphors and conceptual models is used to set up mappings between the software and some reference system know to the users in the real world which in return will help the users to more readily learn and use the interface.
For example : delete file can be made into metaphor using the icon of a trash can.
Metaphor also present potential problems with respect to internationalization since not all metaphors are meaningful or are applied in the same way within all cultures.

Back - 3 - Software Structure And Architecture
Next - 5 - Software Design Quality Analysis And Evaluation
Home - Software Requirement
Main - The BOK

Published on : 30-May-2018
Ref no : DTC-WPUB-000013

About Author

My photo
Wan Mohd Adzha CAPM,MCPD,MCSD,MCSE
Passionate about new technology ( Software Engineering ) and how to build,manage and maintain them

Comments