UPI Study › Courses › System Analysis and Design › Free lessons › Lesson 5.3 Free with a free account
Building Effective Graphical User Interfaces (GUIs)
System Analysis and Design · Chapter 5: Interface Design and Systems ArchitectureSection 5.3 · lesson 36 of 697 min · free with a free account
Free preview
Create a free account to keep watching
It takes a minute and costs nothing. Your free account unlocks all of Chapter 1 and 3 more lessons of System Analysis and Design.
Lesson complete
Earn the 3 college credits for System Analysis and Design
Enrolling adds a quiz after each lesson, the graded work and the official transcript. Recommended for credit by NCCRS.
Next lesson: What Is Systems Architecture? Key Traits and Building Blocks →← User Interface Design: What It Means and How It LooksNext lesson: What Is Systems Architecture? Key Traits and Building Blocks →
In this lesson
The right widget, well-designed forms, output, navigation, and error messages.
- Identify common GUI widgets, and when each is the right choice
- Apply form design guidelines to input controls
- Apply guidelines for output, reports, navigation, and dialogs
- Write error messages that actually help a user recover
Transcript
Everything said in the video, section by section (1,018 words). Read along, or search it.
Interface Design and Systems Architecture
Building Effective GUIs
The last two sections covered the principles of interface design. This one gets practical. We will look at the standard building blocks of a graphical user interface, and when to use each one. Then guidelines for forms, for output and reports, for navigation and dialogs. And finally, how to write error messages that actually help.
GUI Widgets
Each Widget Signals Something
A graphical user interface is built from a small, standard set of widgets. Picking the right widget is one of the simplest ways to make an interface easier to use. Each widget signals something to the user before they even read a label. A text field takes a single line of free text, such as a name or an email address. A text area takes several lines, such as a comment. A checkbox is an independent on or off choice. More than one can be selected at once. Radio buttons offer a mutually exclusive choice among a small set of options. Only one can be selected. A dropdown, or combo box, offers one selection from a longer list, without taking up the space a full set of radio buttons would. A list box shows several items at once, often allowing more than one selection. A slider chooses a value within a range, where the relative position matters more than an exact number. And a button triggers an action, such as submitting a form, or canceling it.
Figure 1
A Registration Form, Widget by Widget
Here are several of those widgets together, in one registration form. Full name is a plain text field. Email is also a text field, but it shows an inline error. Please enter a valid email address. Country is a dropdown, because the list of countries is long and fixed. Account type uses radio buttons. Personal or business, exactly one, from a small set. Subscribe to newsletter is a checkbox, a simple on or off choice. And create account is a button, which triggers the action. Every widget was chosen to match the kind of input it collects.
Input Controls
Form Design Guidelines
Now some guidelines for designing forms. Label every field clearly, and keep labels in a consistent position relative to their fields throughout the form. Group related fields visually. Putting all the shipping address fields under a single heading makes the form read as sections, rather than one long list. Match the control to the data. A dropdown for a fixed, longer list. Radio buttons for a small set of mutually exclusive options. A checkbox for something simply on or off. Validate input as early as possible. Ideally that happens as the user fills in a field, not only after they submit the whole form. And mark required fields clearly, and provide sensible defaults wherever a reasonable default exists.
Output and Reports
Show What the Task Needs
Output and reports have their own guidelines. Show only what the user needs for the task at hand. Not every field the database happens to store. Format consistently. Dates, currency, and numbers should follow the same format everywhere they appear. Support sorting and filtering on any report or list, long enough that scanning it by hand would be impractical. And use visual hierarchy, such as headings and whitespace, so the most important information is the easiest to find at a glance.
Navigation and Dialogs
Keep Users Oriented
Navigation and dialogs keep users oriented. Keep navigation consistent across every screen, so users always know where the main menu or controls will be. Show users where they are. For example, highlight the current section in a menu, or use a breadcrumb trail. Reserve modal dialogs for situations that truly need immediate attention. A modal dialog is a window that interrupts the user's current task, and must be dealt with before they can continue. Because it interrupts whatever the user was doing, it should never be used casually. And give every dialog one clear purpose, with an obvious way to close or cancel it.
Error Messages
The Last Thing Between a User and Success
An error message is often the first thing standing between a frustrated user and finishing their task. So it is worth designing as carefully as any other part of the interface. Write in plain language, not an error code alone, so the user does not have to look up what it means. State clearly what went wrong, rather than a generic message that could apply to almost any problem. Suggest a specific fix whenever one is known, instead of leaving the user to guess. Place the message near the field or action it concerns, as the inline example in the form does. And keep the tone neutral and helpful. Avoid wording that implies the user did something wrong on purpose.
Putting It Into Practice
A Weak Message vs. a Strong One
Here is what those guidelines look like in practice. Imagine a message that just says, error four twenty-two, shown at the top of the page. It fails almost every guideline. It is a code, not plain language. It gives no cause, no fix, and it is far from the field. Now compare the message from the form. Please enter a valid email address, directly under the email field. It is plain. It is specific. It points toward the fix. And it appears right where the problem is. The user can correct it in seconds, without breaking their flow.
Key Terms
The Vocabulary of This Section
Let's lock in the key terms. A widget is a standard, reusable interface element, such as a text field, a checkbox, or a button. An inline error message is shown directly next to the field or action it concerns, rather than in a separate area of the screen. And a modal dialog is a window that interrupts the user's current task, and must be addressed before they can continue.
Key Takeaways
What to Carry Forward
To pull this together. Choosing the right widget for the data, such as radio buttons for a small exclusive set, makes an interface easier before the user reads a label. Good form design groups related fields, validates input early, and marks required fields clearly. Good output design shows only what the task requires, formatted consistently, with sorting and filtering where needed. Good navigation keeps users oriented, and modal dialogs are reserved for situations that truly need attention. And a good error message is written in plain language, states the problem, suggests a fix, and appears near the field it concerns.
About System Analysis and Design at UPI Study
System Analysis and Design (Computer Science 390) is a self-paced online course of 69 video lessons in 9 chapters, from the analyst's role and requirements to UML modeling, interface and database design, testing, maintenance and project management. It carries a NCCRS credit recommendation for 3 semester credits.
Every lesson transcript is free on pages like this one, and the videos are free with a free UPI Study account. Enrolling adds a practice quiz after each lesson, the graded work and final exam that earn the credit, lifetime access, and an official transcript on completion. UPI Study has helped over 130,000 students with college credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Enroll now → Course details Download the syllabus All Computer Science courses Every course with PRO →
Why take it here
Why students take System Analysis and Design with UPI Study
Where the credit goes
Universities that work with NCCRS
System Analysis and Design carries a NCCRS credit recommendation. These universities work with NCCRS; some are UPI Study's signed partners. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
Thomas Edison State UniversitySigned partner
University of the PeopleSigned partner
Charter Oak State CollegeSigned partner
Strayer UniversitySigned partner
Columbia Southern UniversitySigned partner
Indiana TechSigned partner
Penn StateWorks with NCCRS
Southern New Hampshire UniversityWorks with NCCRS
SUNYWorks with NCCRS
+many more cooperating universitiesFind my college →Find my college → Not listed? Ask Athena in the corner of this page, or book a 15-minute call.
FAQ
Questions students ask us
About Building Effective Graphical User Interfaces (GUIs)
When should you use radio buttons, checkboxes, or a dropdown in a form?
What are the best practices for designing a form?
When should a modal dialog be used in a user interface?
How do you write a helpful error message?
About the System Analysis and Design course
How many college credits is System Analysis and Design?
How much does System Analysis and Design cost and what is included?
Which universities accept UPI Study credits?
How long does System Analysis and Design take?
How are the exams done?
How do my credits reach my college?
Ready for the full course? Earn 3 credits in System Analysis and Design.
69 video lessons, a quiz after each one, and the graded work that earns the credit. Recommended for credit by NCCRS.
3 credits · NCCRSEnroll →