Human-Computer Interaction I: Fundamentals & Design Principles

بواسطة: edX

Overview

This course takes you through the first eight lessons of CS6750: Human-Computer Interaction as taught in the Georgia Tech Online Master of Science in Computer Science program.

In this course, you’ll take the first steps toward being a solid HCI practitioner and researcher. You’ll learn the fundamentals of how HCI relates to fields like user experience design, user interface design, human factors engineering, and psychology. You’ll also learn how human-computer interaction has influence across application domains like healthcare and education; technology development like virtual and augmented reality; and broader ideas like context-sensitive computing and information visualization.

You’ll then dive into the fundamentals of human-computer interaction. You’ll learn three views of the user’s role in interface design: the behaviorist ‘processor’ view, the cognitivist ‘predictor’ view, and the situationist ‘participant’ view. You’ll discover how these different views of the user’s role affect the scope we use to evaluate interaction. These perspectives will be crucial as you move forward in designing interfaces to ensure you’re considering what goes on inside the user’s head, as well as in the environment around them.

You’ll then learn the gulfs of execution and evaluation, which determine how easily the user can accomplish their goals in a system and how well they can understand the results of their actions. All of user interface design can be seen as taking steps to bridge these gulfs. You’ll also investigate the notion of direct manipulation, which shortens the distance between the user and the objects they are manipulating in the interface. With these tools, you’ll be well-equipped to start designing effective interfaces.

You’ll then take a deeper dive into what humans are even capable of accomplishing. You’ll learn the limitations of human sensing and memory and how we must be aware of the cognitive load we introduce on the user while using our interfaces. Cognitive load can have an enormous impact on a user’s satisfaction with an interface, and must be kept in mind as you begin your career as a designer.

You’ll finally conclude with an overview of the major design principles in human-computer interaction. Curated from the work of Don Norman, Jakob Nielsen, Ronald Mace, Larry Constantine, and Lucy Lockwood, these design principles cover revolutionary ideas in the design of interfaces: discoverability, affordances, perceptibility, constraints, error tolerance, and more. These principles are crucial whether you move forward as a designer, an evaluator, a front-end engineer, or any other role in technology design.

By the end of the course, you’ll have an understanding of where HCI sits in the broader field, a grasp of the goals of HCI, and a foundation in core principles that inform interface design.

Taught by

David Joyner

Human-Computer Interaction I: Fundamentals & Design Principles
الذهاب الي الدورة

Human-Computer Interaction I: Fundamentals & Design Principles

بواسطة: edX

  • edX
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • أيام محددة
  • beginner
  • English
8.1.2PHP Version234msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (148ms)
    • Application (85.43ms)
    • 1 x Booting (63.21%)
      147.76ms
      1 x Application (36.55%)
      85.43ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed3.67ms
      • select * from `courses` where `slug_ar` = 'human-computer-interaction-i:-fundamentals-&-design-principles' limit 1
        2.11ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. human-computer-interaction-i:-fundamentals-&-design-principles
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-04-13 07:43:49' where `id` = 173
        770μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-13 07:43:49
        • 1. 173
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (26)
        210μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        130μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (22) and `institutions`.`deleted_at` is null
        150μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (1) and `providers`.`deleted_at` is null
        130μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 173 limit 1
        170μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 173
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        yau03Il04asJaAHvYEzaJnbVUNs0FLU5SHdV3vQQ
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/human-...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/human-computer-interaction-i:-fundamentals-&-design-principles
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "priority" => array:1 [ 0 => "u=0, i" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.142.173.6" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "x-forwarded-for" => array:1 [ 0 => "3.142.173.6" ] "cf-ray" => array:1 [ 0 => "92f955acbc4eeae8-ORD" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_PRIORITY" => "u=0, i" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.142.173.6" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_X_FORWARDED_FOR" => "3.142.173.6" "HTTP_CF_RAY" => "92f955acbc4eeae8-ORD" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "58306" "REMOTE_ADDR" => "172.71.254.52" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/human-computer-interaction-i:-fundamentals-&-design-principles" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1744530229.4863 "REQUEST_TIME" => 1744530229 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Sun, 13 Apr 2025 07:43:49 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImtMWHJmVS9VNHRwSjFCcnZERWE5V2c9PSIsInZhbHVlIjoicWV4Qmh5ZnZCQzZKUWpNcWFzaHVBeHVsQUpKTHFjTHVkTUFPVlJhMlRZRm9SVEdtd0svUjdpWUFmUmk2dmYxWVR2MmhnUnIrdzVkNnZUWHRNNTFxelk1WUFYYTBwVVgwaWZjM254UmhMc1BsUzgzMFUxM1pDbm8vTTN4dlEzYmUiLCJtYWMiOiI2YjEyYjJmMjZlMTExZDQ0NmEwY2I4NzI2MWU2NWJhNTI0ZmVjMGMzZTYyZGFjYzUyYThlMTA3NzEyZjZkYzI1IiwidGFnIjoiIn0%3D; expires=Sun, 13 Apr 2025 09:43:49 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6ImtMWHJmVS9VNHRwSjFCcnZERWE5V2c9PSIsInZhbHVlIjoicWV4Qmh5ZnZCQzZKUWpNcWFzaHVBeHVsQUpKTHFjTHVkTUFPVlJhMlRZRm9SVEdtd0svUjdpWUFmUmk2dmYxWVR2MmhnU" 1 => "laravel_session=eyJpdiI6IjNHa1A2RGZJTmsvc0VsTTZVOU1xWWc9PSIsInZhbHVlIjoic2J6ZzkvT2dDYWF2OUxmVzlBV3d5bFFtYjRYcS9jQVE1cUpRY1dpUEtiUWJIS244RHN0ZXp6OUxIYkpuWVVqSWRDenVNL2lZQnFDb3JQL0tGcUM5WkQ0QnVkUnB3NmY2Z01JeFRPNTVORzlKcmNZYTMwYUhNR2tZZktra1RmU1YiLCJtYWMiOiIyYWE5NTMyZmVhNjI1N2U4NWM0ZTZmNzNiNjU2MTA3YTMyZDg4MDZmNjM1OGJkYmRjMjlkMTBjY2Y5Y2FlN2JmIiwidGFnIjoiIn0%3D; expires=Sun, 13 Apr 2025 09:43:49 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6IjNHa1A2RGZJTmsvc0VsTTZVOU1xWWc9PSIsInZhbHVlIjoic2J6ZzkvT2dDYWF2OUxmVzlBV3d5bFFtYjRYcS9jQVE1cUpRY1dpUEtiUWJIS244RHN0ZXp6OUxIYkpuWVVqSWRD" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImtMWHJmVS9VNHRwSjFCcnZERWE5V2c9PSIsInZhbHVlIjoicWV4Qmh5ZnZCQzZKUWpNcWFzaHVBeHVsQUpKTHFjTHVkTUFPVlJhMlRZRm9SVEdtd0svUjdpWUFmUmk2dmYxWVR2MmhnUnIrdzVkNnZUWHRNNTFxelk1WUFYYTBwVVgwaWZjM254UmhMc1BsUzgzMFUxM1pDbm8vTTN4dlEzYmUiLCJtYWMiOiI2YjEyYjJmMjZlMTExZDQ0NmEwY2I4NzI2MWU2NWJhNTI0ZmVjMGMzZTYyZGFjYzUyYThlMTA3NzEyZjZkYzI1IiwidGFnIjoiIn0%3D; expires=Sun, 13-Apr-2025 09:43:49 GMT; path=/XSRF-TOKEN=eyJpdiI6ImtMWHJmVS9VNHRwSjFCcnZERWE5V2c9PSIsInZhbHVlIjoicWV4Qmh5ZnZCQzZKUWpNcWFzaHVBeHVsQUpKTHFjTHVkTUFPVlJhMlRZRm9SVEdtd0svUjdpWUFmUmk2dmYxWVR2MmhnU" 1 => "laravel_session=eyJpdiI6IjNHa1A2RGZJTmsvc0VsTTZVOU1xWWc9PSIsInZhbHVlIjoic2J6ZzkvT2dDYWF2OUxmVzlBV3d5bFFtYjRYcS9jQVE1cUpRY1dpUEtiUWJIS244RHN0ZXp6OUxIYkpuWVVqSWRDenVNL2lZQnFDb3JQL0tGcUM5WkQ0QnVkUnB3NmY2Z01JeFRPNTVORzlKcmNZYTMwYUhNR2tZZktra1RmU1YiLCJtYWMiOiIyYWE5NTMyZmVhNjI1N2U4NWM0ZTZmNzNiNjU2MTA3YTMyZDg4MDZmNjM1OGJkYmRjMjlkMTBjY2Y5Y2FlN2JmIiwidGFnIjoiIn0%3D; expires=Sun, 13-Apr-2025 09:43:49 GMT; path=/; httponlylaravel_session=eyJpdiI6IjNHa1A2RGZJTmsvc0VsTTZVOU1xWWc9PSIsInZhbHVlIjoic2J6ZzkvT2dDYWF2OUxmVzlBV3d5bFFtYjRYcS9jQVE1cUpRY1dpUEtiUWJIS244RHN0ZXp6OUxIYkpuWVVqSWRD" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "yau03Il04asJaAHvYEzaJnbVUNs0FLU5SHdV3vQQ" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/human-computer-interaction-i:-fundamentals-&-design-principles" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]