人机交互技术 Week 11_Data gathering
Summary: Different Kinds of Requirements
- Functional requirements
- Data requirements
- Environmental requirements
- Physical requirements
- Social requirements
- Organizational requirements
- Technical requirements
- User requirements
- Usability requirements
Class activity
Suggest one key functional, data, environmental, user and usability requirement for each of the following scenarios:
- A system for use in a university's self-service cafeteria that allows users to pay for their food using a credit system
- Functional: the system will calculate the total cost of purchases.
- Data: The system must have access to their price of products.
- Environmental: The physical environment will be noisy and bysy, and users may be talking with friends and colleagues while using the system.
- User: The majority of users are likely to be under 25 and comfortable dealing with technology.
- Usability: The system needs to be simple so that new users can use the system immediately, and memorable for more frequent users. Users won't want to wait around for the system to finish processing, so it needs to be efficient and to be able to deal easily with user errors.
- A system to control the functioning of a nuclear power plant
- A system to support distributed design teams, e.g. for car design
- Functional: the system will be able to communicate information between remote sites.
- Data: The system must have access to design information that will be captured in a common file format (such as AutoCAD).
- Environmental: Physically distributed over a wide area. Files and other electronic media need to be shared.The system must comply with available communication protocols and be compatible with network technologies.
- User: Professional designers, who may be worried about technology but who are likely to be prepared to spend time learning a system that will help them perform their jobs better. The design team is likely to be multi-lingual.
- Usability: Keep transmission error rate low is likely to be of high priority.
Data gathering
- an important part of requirements activity and also of evolution
- Purpose: to collect sufficient, relevant, and appropriate data so that a set of stable requirements can be produced.
- expand, clarify, and confirm the Initial requirements
- Needs to cover a wide spectrum of issues due to quite varied requirements
- Need to find out user tasks, goals, context...
Data gathering techniques
Essentially a small number of basic techniques for data gathering
- questionnaires
- interviews
- focus groups and workshops
- naturalistic observation
- studying documentation
Data gathering techniques are flexible and can be combined and extended in many ways.
(1) Questionnaires
- Can give quantitative or qualitative data
- Good for answering specific questions from a large, dispersed group of people
- Infeasible to visit them all
- Often used in conjunction with other techniques
- Information obtained through interviews might be corroborated (确证) by sending a questionnaire to a wider group of stakeholders to confirm the conclusions.
(2) Interviews
- Forum for talking to people
- face-to-face vs telephone
- Structured, unstructured or semi-structured
- how rigorously the interviewer sticks to a prepared set of questions
- Context
- home setting
- Props, prototypes, can be used In Interviews
- Good for exploring issues
- more encouraging
- But are time consuming and may be infeasible to visit everyone
(3) focus groups and workshops
- Group interviews
- Structured or unstructured, facilitator
- Good at gaining a consensus view and/or highlighting areas of conflict and disagreement.
- On a social level it also helps for stakeholders to meet designers and each other, and to express their views in public.
- The sessions need to be structured carefully and the participants need to be chosen carefully.
- It is easy for one or a few people to dominate discussions.
(4) Naturalistic observation
- Why?
- It can be very difficult for humans to explain what they do or to even describe accurately how they achieve a task.
- Observation provides a richer view.
- Spend time with stakeholders in their day-to-day tasks, observing work as it happens, in a natural setting.
- A member of the design team shadows a stakeholder, making notes, asking questions, and observing what is being done in the natural context of the activity.
- Gain insights into stakeholders' tasks
(5) Studying documentation
- Procedures and rules are often written down in manuals
- Other documentation: diaries or job logs that are written by the stakeholders during the course of their work
- Good source of data about the steps involved in an activity, and any regulations governing a task
- Not to be used in isolation
- Good for understanding legislation (立法), and getting background information
- No stakeholder time, which is a limiting factor on the other techniques
Choosing between techniques
- The kind of information your want will probably be determined by where you are in the cycle of iterations.
- at the beginning of the project
- interviews
- at the beginning of the project
- The resources available will influence the choice.
- sending questionnaires nationwide
- time, money, good design, pilot it, issue it, collate (比较) the results and analyze them.
- has only 3 weeks? No one in the team has designed a survey before?
- sending questionnaires nationwide
- The location and accessibility of the stakeholders need to be considered.
- attractive to run a workshop
- spread across a wide geographical area?
Choosing between data-gathering techniques rests on two issues:
- The nature of the data gathering technique itself
- The task to be studied
Data gathering techniques differ in two ways:
- Amount of time, level of detail and risk associated with the findings
- naturalistic observation: 2 days effort and 3 months of training
- Interviews: 1 day effort and 1 month of training
- Knowledge the analyst requires
Problems with data gathering
- Identifying and involving stakeholders: users, managers, developers, customer reps?, union reps?, shareholders?
- Involving stakeholders: workshops, interviews, workplace studies, co-opt(指派) stakeholders onto the development team
- ‘Real’ users, not managers: traditionally a problem in software engineering, but better now
- Requirements management: version control, ownership
- Communication between parties:
- within development team
- with customer/user
- between users...different parts of an organisation use different terminology
- Domain knowledge distributed and implicit:
- difficult to dig up and understand
- knowledge articulation: how do you walk?
- Availability of key people
- Political problems within the organisation
- Dominance of certain stakeholders
- Economic and business environment changes
- Balancing functional and usability demands
Some basic guidelines
- Focus on identifying the stakeholders' needs
- Involve all the stakeholder groups
- Involve more than one representative from each stakeholder group
- Use a combination of data gathering techniques
- Support the process with props such as prototypes and task descriptions
- Run a pilot session
- You will need to compromise on the data you collect and the analysis to be done, but before you can make sensible compromises, you need to know what you'd really like
- Consider carefully how to record the data
Data interpretation and analysis
- Aim: to begin structuring and recording descriptions of requirements. Start soon after data gathering session
- The experience will be fresh in the minds of the participants and this can help overcome any bias caused by the recording approach.
- A good idea is to discuss the findings with others to get a variety of perspectives on the data.
- Using a template highlights the kinds of information you should be looking for and guides the data interpretation and analysis.
Class Diagram
In software engineering, a class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes the structure of a system by showing the system's classes, their attributes, and the relationships between the classes.
Class Activity
For each of the situations below, consider what kinds of data gathering would be appropriate and how you might use the different techniques. Assume that you are at the beginning of the development and that you have sufficient time and resources.
- (a) You're developing a new software system to support a small accountant's office. There is a system running already with which the users are reasonably happy, but it is looking dated and needs upgrading.
- (b) You are looking to develop an innovative device for diabetes sufferers to help them record and monitor their blood sugar levels. There are some products already on the market, but they tend to be large and unwieldy(不实用的). Many diabetes sufferers rely on manual recording and monitoring methods involving a ritual with a needle, some chemicals, and a written scale.
- (c) You are developing a website for a young person's fashion e-commerce site.
人机交互技术 Week 11_Data gathering的更多相关文章
- 人机交互技术 Week 1_人机交互概述
HCI Week 1_Introduction 18-19学年春夏学期选修了计院万华根老师的人机交互技术课程,老师由于知识产权相关原因不能提供课件,故尽可能对课程内容做详尽的课堂笔记以供复习,如有不妥 ...
- 人机交互技术 Week 2_History of HCI
Recap: Interaction Design Interaction Design Designing interactive products to support people in the ...
- 2014年4月份第3周51Aspx源码发布详情
WPY净水机网站源码 2014-4-14 [VS2008]源码描述: 实现产品展示,在线留言,信息发布,在线咨询,营销网络地图. 网站基本管理:网站banner管理 管理首页滚动图片信息 网站右下部 ...
- Apache Commons CLI 开发命令行工具示例
概念说明Apache Commons CLI 简介 虽然各种人机交互技术飞速发展,但最传统的命令行模式依然被广泛应用于各个领域:从编译代码到系统管理,命令行因其简洁高效而备受宠爱.各种工具和系统都 提 ...
- 中国VR公司的详尽名单
中国VR公司的详尽名单 <VR圈深度投资报告一:2014年以来所有VR/AR融资事件> 特征一.投资机构观望居多 尽管VR在媒体和二级市场炒得很热,但大多风险投资机构却慎于出手,以观望 ...
- 红透半边天的VR(虚拟现实)产业
目前在做一些与AR与VR相关的工作,特此把一些个人总结的普及性概念与各位朋友共享. 一: 什么是虚拟现实(VR)技术? 虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统它利用计算机生成一种模拟 ...
- VREP中的力触觉设备接口(CHAI3D)
力反馈技术是一种新型的人机交互技术,它允许用户借助力反馈设备触碰.操纵计算机生成的虚拟环境中的物体,并感知物体的运动和相应的力反馈信息,实现人机力觉交互.虽然传统的鼠标.键盘.触摸屏等交互手段可以满足 ...
- 什么是UE、UI、UCD、UED?UE、UI、UCD、UED四者的区别(转)
字面释义: UE (User Experience) : 用户体验 UI (User Interface) : 用户界面 UCD (User-Centered Design) :以用户为中心的设计 U ...
- AR和VR的区别到底在哪?
AR是Augmented Reality的字母缩写,中文名字是“增强现实”,是一种全新人机交互技术.通过AR技术,让参与者与虚拟对象进行实时互动,从而获得一种奇妙的视觉体验,而且能够突破空间.时间以及 ...
随机推荐
- java代码拼写sql
java后台 String zffwdm=map.get("zffwmc")==null?"":map.get("zffwmc"); ...
- 深度学习面试题05:激活函数sigmod、tanh、ReLU、LeakyRelu、Relu6
目录 为什么要用激活函数 sigmod tanh ReLU LeakyReLU ReLU6 参考资料 为什么要用激活函数 在神经网络中,如果不对上一层结点的输出做非线性转换的话,再深的网络也是线性模型 ...
- SVN创建分支/合并/切换使用
原文地址:https://blog.csdn.net/lisq037/article/details/17501327 最近接项目要求,要在svn主干上创建分支,用分支来进行程序的bug修改,而主干上 ...
- Visual Studio 2019更新到16.1.6
Visual Studio 2019更新到16.1.6 此次更新主要是修复几个安全漏洞,如CVE-2019-1077(VS自动更新漏洞).CVE-2019-1075(ASP.net Core欺骗漏洞) ...
- Spring cloud微服务安全实战-5-6实现授权码认证流程(2)
授权服务器,返回给我一个授权码,这里我只需要把授权传回去就可以了.来证明我是这个服务器. URI的地址传和第一次的地址一样的,认证服务器会比,第一次跳转的请求和第二次申请令牌的请求redirect_u ...
- linux添加动态库路劲
修改这个文件/etc/ld.so.conf.d,最后加上so的绝对路径即可
- C++的override和final
1.final用于让虚函数不可被重写 struct B2 { virtual void f() final {} // final 函数 }; struct D2 : B2 { virtual voi ...
- JS的正则表达式限定开始和结尾等测试
[]:匹配该区间内人任意一个字符^:匹配以某内容开头的$:匹配以模拟内容结尾的字符\w:测试是英文字母,数字,下划线.{}:设置区间,可出现几次到几次该文学习和测试几个正则的方法,测试结果如图,不加多 ...
- 修改ecshop的70种技巧
1.如何修改网站”欢迎惠临本店”答复(dafu):languages\zh_cn\common.php文件中,$_LANG['welcome']=’欢迎惠临本店’:将他修改成你需要的字样. 2.如何修 ...
- 【Leetcode_easy】840. Magic Squares In Grid
problem 840. Magic Squares In Grid solution: class Solution { public: int numMagicSquaresInside(vect ...