1 / 53

《 人机交互的软件工程方法 》

《 人机交互的软件工程方法 》. 冯桂焕,南京大学软件学院 2013 年 8 月. 主要内容. 课程建设背景 课程建设概况 课程 内容梗概. 课程建设背景. 南京大学软件学院教学改革结晶 高年级核心课程 3 学分, 36 学时 自 2009 年开始建设 2011 年完成教材并试用 2013 年正式出版 (机械工业出版社). 课程建设历史. 可用性 实验室. 课程 实施 反馈. 课程 配套教材. 课程知识体系. 2009. 2010. 2012. 2013. 课程相关的几个问题. 为什么要教授 人机交互课程?

brett-case
Download Presentation

《 人机交互的软件工程方法 》

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 《人机交互的软件工程方法》 冯桂焕,南京大学软件学院 2013年8月

  2. 主要内容 • 课程建设背景 • 课程建设概况 • 课程内容梗概

  3. 课程建设背景 • 南京大学软件学院教学改革结晶 • 高年级核心课程 • 3学分,36学时 • 自2009年开始建设 • 2011年完成教材并试用 • 2013年正式出版 (机械工业出版社)

  4. 课程建设历史 可用性实验室 课程实施反馈 课程配套教材 课程知识体系 2009 2010 2012 2013

  5. 课程相关的几个问题 • 为什么要教授人机交互课程? • 人机交互优劣,日益成为软件获得市场的关键 • CCSE 2004将人机交互列为软件工程专业的核心课程 • 人机交互可以通过课程学习吗? • 反对意见:人机交互是一门艺术而非科学 • 课程目标:教学生构建“不难用”的软件 • 为什么强调软件工程视角? • 软件工程成为一级学科,学科建设需要 • 与软件工程课程体系融为有机整体

  6. 学生如何开展交互设计?

  7. 主要内容 • 课程建设背景 • 课程建设概况 • 课程内容梗概

  8. 课程定位与特色 以教会学生开发高可用性的软件为目标 1 2 与传统软件工程课程体系密切结合 3 注重讲授提升交互性能的方法和技术 4 区别于以人机交互技术为主导的课程设计

  9. 课程设计思路 实践创新的课程组织方式 • 吸取国内外优秀人机交互课程和教材精华 • 用前沿技术激发学习兴趣 • 邀请业界工程师(创业学生)来院讲座 注重教学内容的工程性、实践性 • 以培养优秀交互设计师为目标 • 延续软件工程过程主线 • 大量实例+实践教学 构筑完整人机交互知识体系 • 基于专业教学规范CCSE 2004 • 覆盖全部知识点,同时补充新的知识点

  10. 课程实施-课程知识体系 • 课程知识体系

  11. 课程实施-课程知识体系2 • 课程知识体系

  12. 课程实施-课程知识体系3 • 课程知识体系

  13. 课程实施-教学计划 • 教学计划

  14. 课程实施-实践设计 • 从一个已有软件系统出发 • 要求:人机交互特征复杂度适中,有源代码,分组完成(3-4人)

  15. 课程实施-实践设计 • 可用性实验室 • 国内高校大部分设立在心理学和艺术学系 • 清华大学:工业工程系可用性评测与人机交互实验室 • 中南大学:微软中文产品可用性测试实验室 • 大连海事大学:欧盟可用性中国中心 • 北京邮电大学:人机工程实验室 • …… 眼动行为观测的: (a)测试方视图 (b) 观察方视图

  16. 课程实施-媒体资源 • 以前沿交互技术促教学 • 兴趣是最好的老师!

  17. 课程考核(50%-60%) • 选择题 • 在复制文件夹时,屏幕会出现文件从一个文件夹移动到另一个文件夹的动画,这是以下哪种现象的实例: • (a) 可视化 • (b) 映射(mapping) • (c) 启发性(affordance) • (d) 反馈 • 简答题 • 请指出KLM、GOMS和HTA三种方法分别适合应用在什么场合,以及如何应用它们进行分析。 • 设计题 • 现需为某四层楼设计电梯面板(四层楼记作parking, main floor, second和third floor),应包含开门、关门、停止和紧急呼叫功能。请在下方同一行中绘出这些按钮的设计方案,并使用心理学原则(格式塔心理学)中的相近性和相似性帮助用户学习和使用。

  18. 课程资源 • 在线课程网站 • http://218.94.159.106/class8.html • 配套教材

  19. 主要内容 • 课程建设背景 • 课程建设概况 • 课程内容梗概

  20. 课程内容概览 第一部分 基础篇 第二部分 设计篇 第三部分 评估篇 • Ch5. 交互式系统的需求 • Ch6. 交互式系统的设计 • Ch7. 可视化设计 • Ch8. 交互设计模型与理论 • Ch9. 以用户为中心的设计 • Ch10. 评估的基础知识 • Ch11. 评估之观察用户 • Ch12. 评估之询问用户和专家 • Ch13. 评估之用户测试 • Ch1. 人机交互概述 • Ch2. 人机交互基础知识 • Ch3. 交互设计目标与原则 • Ch4. 交互设计过程

  21. Ch1. 人机交互基础 • 主要内容 • 什么是人机交互 • 人机交互的重要性 • 人机交互的研究内容 • 人机交互的相关领域 • 人机交互的发展历史 • 人机交互与软件工程 的关系 “ACM SIGCHI关于人机交互的研究内容”

  22. Ch1. 人机交互基础-2 • 教学重点 • 人机交互的学科内涵和外延 • 人机交互≠人机界面 • 人机交互历史上三个主要阶段 • 旧的交互形式作为新形式的特例保存下来 • 人机交互与软件工程学科之间的关系和异同

  23. Ch1. 人机交互基础-3 • 教学难点 • 理解人机交互作为交叉学科的特点 • 能够协调工作中多学科人员的沟通 • 理解人机交互对软件质量的重要性 • 正确处理本课程与其他专业课程之间的关系 “Lethbridge对于软件工程人员最为重要的25个知识领域”

  24. Ch2. 人机交互基础知识 • 主要内容 • 交互框架 • 常用交互范型/形式 • 命令行、菜单驱动、表格、直接操纵、问答、隐喻等 • 关于人(和交互密切相关的) • 信息处理模型 • 认知心理学 • 记忆和感觉 • 常用交互设备 “投影键盘”

  25. Ch2. 人机交互基础知识-2 • 教学重点 • 执行/评估活动周期 • 不同交互范型各自的优缺点 • 格式塔心理学 • 人的记忆和认知特性 “Donald Norman的交互模型(执行/评估活动周期)”

  26. 补充:视觉感知&上下文 • 你从图中看到了什么?

  27. 补充:视觉感知&上下文 • 提示:一只面向你的动物

  28. 补充:视觉感知&上下文 • 提示:它的头在左侧,能产奶

  29. 补充:期望对感知的影响 From: after Bruner and Postman, 1949, pp. 206 – 23.

  30. Ch2. 人机交互基础知识-3 • 教学难点 • 理解执行隔阂和评估隔阂 • 理解信息处理模型的重要性 • 格式塔心理学对交互的影响 • 正确认识7±2法则 • 能够选择恰当的交互设备 “Card等人类处理机模型”

  31. Ch3. 交互设计的目标和原则 • 主要内容 • 可用性目标 • 用户体验目标 • 简易可用性工程 • 可用性度量 • 交互设计原则 主观满意度 高效率 易学习 可用性 易记忆 少出错 “ISO9241-11关于可用性的定义”

  32. Ch3. 交互设计的目标和原则-2 • 教学重点 • 可用性目标的五个属性 • 简易可用性工程的四种关键技术 • 理解用户、场景、边做边说、启发式评估 • Jacob Nielsen的“十条启发式规则” • 教学难点 • 如何开展对可用性属性的度量实验 • 不同设计原则的异同,以及应用原则指导交互设计

  33. Ch4. 交互设计过程 • 主要内容 • 交互设计的基本活动和关键特征 • 设计中的若干问题 • 选择用户、需求定义、提出候选方案、决策 • 交互设计生命周期 • 教学重点和难点 • 理解设计的迭代特性 • 从交互设计生命周期体会 • 交互设计的灵活性 • 评估的重要性 • 对用户的重视 “交互设计的基本活动”

  34. Ch5. 交互式系统的需求 • 主要内容 • 影响产品交互需求的两方面 • 产品特性 • 用户特性 • 用户建模 • 场景 • 基于人物角色和场景的交互需求定义 • 任务分析 • 基于原型的需求验证 “人物角色定义举例”

  35. Ch5. 交互式系统的需求-2 • 教学重点 • 用户差异在交互设计中的体现 • 人物角色的用户建模方法 • 场景描述 • 应用人物角色和场景定义需求 • 任务分析方法 • 教学难点 • 用人物角色指导需求获取 • 将用户与产品的交互融入场景描述

  36. Ch6. 交互式系统的设计 • 主要内容 • 设计框架 • 简化设计三策略 • 删除、组织、隐藏、(转移) • 设计中的折中 • 个性化与配置、本地化与国际化、审美与实用 • 设计细节 • 加快响应时间 • 减轻记忆负担 • 减少等待感 • 设计模式

  37. Ch6. 交互式系统的设计-2 • 教学重点 • 教学生逐步开展交互设计工作 • 学习在设计中做“减法” • 学习软件设计的小技巧 • 教学难点 • 理解由粗到精的设计过程,不要立即进入到细节的工作 • 理解并非功能越多的软件越受欢迎 • 认识到良好的设计需要折中 • 不存在“完美”的软件 • 合理使用个性化

  38. Ch7. 可视化设计 • 主要内容 • 窗口和菜单 • 对话框 • 常用控件 • 命令、选择、显示、文本输入 • 工具栏 • 屏幕复杂度度量

  39. Ch7. 可视化设计-2 • 教学重点 • 菜单的设计原则 • 菜单的工业标准 • 对话框的设计要点 • 理解菜单和工具栏图标的区别 • 教学难点 • 体会菜单深度与广度的差别 • 理解对话框是一个“单独的房间” • 注意减少和管理对话框 • 能够灵活选用不同控件 • 适当使用默认值

  40. Ch8. 交互设计模型与理论 • 主要内容 • 预测模型 • GOMS、KLM、Fitts’ Law • 动态模型 • 状态转移网络 • 三态模型 • 语言模型 • BNF表达式 • 系统模型 • Z标记法 “著名的轮流轻拍实验”

  41. Ch8. 交互设计模型与理论 • 教学重点 • 能使用GOMS描述任务的完成过程 • 会使用KLM预测任务的完成时间 • Fitts定律的由来及对人机交互的指导意义 • 能够使用STN描述系统状态变化 • 教学难点 • 应用KLM对任务完成时间进行预测 • 理解预测模型的局限性 • 掌握M操作符的放置方法 • 理解Fitts定律对人机交互的指导意义 • 充分利用屏幕边缘 • 适当应用光标位置 “Windows操作系统返回桌面图标的变化”

  42. Ch10. 评估的基础知识 • 主要内容 • 评估目标和原则 • 评估范型与技术 • 评估的步骤 • 教学重点 • 为评估设定可行目标 • 不同评估技术的适用场合及选择因素 • 掌握DECIDE评估框架 • 注重开展小规模试验

  43. Ch10. 评估的基础知识-2 • 教学难点 • 评估是交互式软件系统设计至关重要的环节,应该出现在产品开发生命周期的各个阶段 • 能够根据实际情况选择恰当的评估技术 • 掌握多种评估技术的组合 • 理解小规模试验的重要性 “评估技术的比较”

  44. CH11. 观察用户 • 主要内容 • 实验室观察vs.现场观察 • 观察与访谈的结合 • 数据记录方式 • 纸笔、音视频、日志和交互记录 • 常用数据分析方法 • 教学重点 • 观察不仅可用于需求获取,同时也可用于评估 • 实验室观察和现场观察的区别 • 掌握不同数据记录方式的应用场合

  45. CH11. 观察用户-2 • 教学难点 • 能够在复杂的现场环境中完成观察 • 掌握常用的数据记录方法 • 掌握评估中常用的定性和定量分析技术 “实验室环境的观察”

  46. CH12. 询问用户和专家 • 主要内容 • 访谈 • 焦点小组 • 问卷调查 • 认知走查 • 启发式评估 • iTunes评估实例

  47. CH12. 询问用户和专家-2 • 教学重点 • 访谈的技巧 • 焦点小组 • 问卷设计与组织 • 启发式评估 • 教学难点 • 能有效开展访谈 • 掌握优秀调查问卷设计的能力 • 开展启发式评估的能力 • 理解用户的能力局限性 • 制定恰当的启发式规则

  48. Ch.13 用户测试 • 主要内容 • 如何开展用户测试 • 数据分析与总结报告 • 网站用户测试实例 • 教学重点 • 选择恰当的参与者 • 设计明确的测试任务 • 制定详细的测试步骤 • 搜集数据并分析

  49. Ch.13 用户测试-2 • 教学难点 • 如何保证参与者的代表性,并对参与者进行有效组织 • 测试任务要基于用户语言,而非程序语言 • 通过小规模测试保证实验的有效性 • 灵活运用数据搜集与分析方法 “定量数据与定性数据分析技术”

  50. Ch9. 以用户为中心 • 主要内容 • 什么是“以用户为中心” • 用户参与设计 • 理解用户工作 • 对“以用户为中心”思想的分析 • 教学重点 • 理解为什么要“以用户为中心” • 掌握用户参与的不同形式 • 对“以用户为中心”思想的正确评价 “PICTIVE协同设计”

More Related