Software EngineeringUnit 79 min read

User Interface Design: Principles, Types & Evaluation

Unit 7 of Software Engineering explores the core principles of UI design, interaction styles, usability heuristics, and evaluation techniques, with real-world applications in Nepalese apps like eSewa and global platforms like Google.

TAKEAWAYS:

  • UI design bridges users and software by balancing aesthetics, functionality, and accessibility.
  • Interaction styles (CLI, GUI, NUI) determine how users control and receive feedback from systems.
  • Usability heuristics (e.g., consistency, feedback) are critical for evaluating and improving interfaces.
  • Prototyping tools (wireframes, mockups) enable iterative design before full implementation.
  • Real-world apps (eSewa, WhatsApp) use UI/UX principles to enhance user satisfaction and efficiency.

1. Introduction to User Interface (UI) Design

UI design focuses on creating intuitive, visually appealing interfaces that enable users to interact with software efficiently. It combines graphical design, information architecture, and user experience (UX) principles.

Key Components of UI Design

LayoutTypographyColor TheoryVisual DesignButtonsMenusNavigationInteraction DesignWireframesPrototypesUser FlowsInformation ArchitectureUI Design Components
Hierarchical breakdown of UI design components (Nepali context: e.g., eSewa’s color scheme vs. Pathao’s button interactions)

Why UI Design Matters

  • User Satisfaction: A well-designed UI reduces frustration and improves engagement.
  • Product Success: Apps like eSewa and Khalti rely on intuitive interfaces to retain users.
  • Accessibility: Ensures inclusivity for users with disabilities (e.g., screen readers, high-contrast modes).

2. Types of User Interfaces

User interfaces can be classified based on interaction methods:

Type Description Example (Nepal/Global)
Command-Line Interface (CLI) Text-based input/output (e.g., terminal commands). Linux terminal, git commands.
Graphical User Interface (GUI) Visual elements (icons, buttons, windows) for interaction. Windows, macOS, eSewa app.
Natural User Interface (NUI) Uses gestures, voice, or eye tracking. WhatsApp voice commands, Google Assistant.
Voice User Interface (VUI) Voice-based interactions (e.g., smart speakers). Amazon Alexa, Ncell’s IVR systems.
Touchscreen UI Direct manipulation via touch (e.g., smartphones). Pathao app, Daraz mobile site.

3. UI Design Principles

A. Visual Design Principles

  1. Layout & Alignment

    • Organize elements symmetrically or asymmetrically for balance.
    • Example: eSewa’s payment page aligns buttons and fields for clarity.
  2. Typography

    • Font size, style, and hierarchy improve readability.
    • Example: Google’s Material Design uses Roboto font for consistency.
  3. Color Theory

    • Colors evoke emotions (e.g., red for urgency, blue for trust).
    • Example: Khalti’s green signifies security.

B. Interaction Design Principles

  1. Feedback

    • Users should receive immediate responses (e.g., button click animation).
    • Example: WhatsApp’s typing indicators confirm message delivery.
  2. Affordance

    • Design elements should suggest their function (e.g., 3D buttons look clickable).
    • Example: Daraz’s "Add to Cart" button has a shadow effect.
  3. Consistency

    • Uniform design across screens reduces learning time.
    • Example: Ncell’s app uses the same menu structure in all sections.

4. Usability Heuristics (Nielsen’s 10 Principles)

These guidelines help evaluate UI designs:

Heuristic Description Example Violation
Visibility of System Status Users should know what’s happening. Loading spinner missing on Daraz checkout.
Match Between System & Real World Use familiar language (e.g., "Submit" instead of "Process"). Bank app using jargon like "Debit Entry."
User Control & Freedom Provide undo/redo options. No "Back" button in a poorly designed app.
Consistency & Standards Follow platform conventions (e.g., iOS vs. Android). Inconsistent button placement in eSewa.
Error Prevention Avoid mistakes (e.g., confirm before deletion). No warning before deleting a Khalti transaction.
Recognition Over Recall Minimize user memory load (e.g., dropdowns). Forcing users to remember account details.
Flexibility & Efficiency Shortcuts for frequent users (e.g., keyboard shortcuts). No quick-access menu in NTC’s billing portal.
Aesthetic & Minimalist Avoid clutter; prioritize essential info. Overloaded home screen in Pathao.
Help Users Recognize Errors Clear error messages (e.g., "Invalid PIN"). Cryptic error codes in NEPSE trading app.
Help & Documentation Provide context-sensitive help. No tooltips in a poorly designed UI.

5. UI Design Process

Step 1: Research & Analysis

  • User Personas: Define target users (e.g., elderly users of eSewa).
  • User Stories: "As a student, I want to pay tuition fees via Khalti so I can avoid queues."
  • Competitor Analysis: Study Daraz’s checkout flow for inspiration.

Step 2: Wireframing & Prototyping

Low-FidelitySketchMid-FidelityClickable PrototypeHigh-FidelityFinal Design
Progression from paper sketches (e.g., Ncell IVR wireframes) to interactive prototypes

Step 3: Prototyping Tools

  • Sketch/Figma: For interactive mockups.
  • Adobe XD: For responsive design testing.
  • InVision: For user feedback on prototypes.

Step 4: User Testing & Iteration

  • A/B Testing: Compare two versions (e.g., Daraz’s old vs. new cart design).
  • Usability Testing: Observe users interacting with the prototype.

6. Real-World Applications in Nepal

Example 1: eSewa’s UI for Online Payments

  • Problem: Users struggled with multi-step transactions.
  • Solution:
    • Simplified flow with clear progress indicators.
    • Added tooltips for first-time users.
  • Result: 30% increase in successful transactions.
1. Selects Service2. Authenticates3. Processes Payment4. ConfirmsUserPayment GatewayBankeSewa Server
Simplified flow of eSewa’s UI interaction with backend systems

Example 2: Pathao’s Driver App

  • Problem: Drivers faced confusion in order acceptance.
  • Solution:
    • Color-coded order statuses (green = accepted, red = rejected).
    • Real-time GPS integration.
  • Result: Reduced order rejection rates by 20%.

Example 3: Ncell’s IVR System

  • Problem: Users got lost in voice menus.
  • Solution:
    • Simplified navigation (e.g., "Press 1 for Balance").
    • Added a "Go Back" option.
  • Result: 40% fewer calls to customer support.

7. UI Design Tools

Tool Purpose Example Use Case
Figma Collaborative UI/UX design. Designing a new Khalti feature.
Adobe XD Prototyping and user flows. Creating a Daraz mobile app prototype.
Sketch Vector-based UI design. Designing eSewa’s payment confirmation screen.
InVision Interactive prototypes for testing. Testing Pathao’s ride-sharing UI.
Canva Quick mockups for non-technical stakeholders. Presenting a UI concept to a client.

8. Common UI Design Mistakes

  • Overcomplicating Navigation: Too many menu levels (e.g., NTC’s old portal).
  • Ignoring Mobile Responsiveness: Desktop-first designs breaking on phones.
  • Poor Contrast: Text on colored backgrounds (e.g., light gray text on white).
  • Lack of Accessibility: Missing alt text for images or keyboard navigation.

  • Dark Mode: Reduces eye strain (e.g., WhatsApp’s dark theme).
  • Micro-Interactions: Small animations (e.g., like buttons on Instagram).
  • Voice-First Design: Optimizing for smart speakers (e.g., Google Assistant).
  • AR/VR Interfaces: Immersive experiences (e.g., IKEA’s AR app).

10. Exam Tip

  • Focus on Heuristics: Memorize Nielsen’s 10 principles—they’re often exam questions.
  • Compare UI Types: Know when to use CLI (e.g., servers) vs. GUI (e.g., apps).
  • Case Studies: Relate theories to Nepalese apps (e.g., eSewa’s usability improvements).
  • Prototyping: Be ready to sketch a wireframe or describe a user flow.
  • Accessibility: Always consider WCAG guidelines (e.g., color contrast, screen reader support).

Based on the PU BE Computer (PU) syllabus for Software Engineering (CMP348), unit 7.

Discussion

Loading…