在设计产品,绘制原型的同时,通常会针对产品的功能需求进行说明,比如产品的每个页面的跳转,不同权限的用户所拥有不同的功能等等。那么针对产品功能以外的功能怎么处理,该如何描述这一块需求呢?
非功能性需求是指依靠一些条件判断系统运作情形或其特性,而不是针对系统特定行为的需求。比如网络中断的情况下,要做什么提示。突然来了电话,被中断的操作要怎么处理,控件在什么情况下可以点击,什么时候不可点击,输入法在什么情况下会出现或消失,按HOME键时,软件是否直接退出。
▍一、通用非功能性需求说明
1、缓存机制
每一步操作,每一个页面切换之后,都要想得到的数据需要缓存么?缓存到哪里?清理缓
存的机制是什么?
2、网络判断
a、当涉及到下载或其他很耗费流量的操作时,会进行2G/3G网络还是wifi网络的判断,当判断出是非wifi时,会进行提醒
b、其他需要向后台请求数据时,只进行简单的网络状况是否良好的判断,当网络状况不良时进行提示
比如:用户点击立即注册时在网络较慢的情况下,页面和按钮如何响应
3、中断机制
除退出登陆外,要考虑出现什么情况会导致用户中断操作,中断操作会有什么影响,比如是否要保存操作进度等等,常见的几种情况如下:
a、来电
b、按返回键(安卓)
c、页面上有暂停使用的功能,比如倒计时,音频播放过程中的暂停按钮
d、Home键,退到后台运行
4、操作过程中的继续操作
考虑按钮操作过程中的继续操作会造成什么影响?操作进度需要保持吗?需要进行提示吗?
a、缓冲
b、操作进度显示:如进度条
5、操作之后
a、是否出现了合适的提示?
出现提示的类型:选择轻(tip/小红点)、中(Toast)、重(提示框)优先级别是否恰当
b、操作后按钮状态的变化
c、操作后出现的各种结果,成功,失败,空值
6、思考特殊情况对此按钮的操作带来的影响
b、此按钮需要登陆吗?如果未登陆能进行操作吗?需要进行登陆提醒吗?
c、多次连续的点击,会造成什么影响,是否给予反馈?
d、操作之后得到的数据需要缓存吗?缓存到哪里?清理缓存的时机是什么?
e、一些操作实施后,引起的变化是什么时候显示出来?即刻显示?此刻不显示,再次进入此页面时显示?还是此刻不显示,再次进入应用时显示?
比如,聊天记录删除后,返回聊天页,是立即清空聊天记录还是再次进入时清空?
▍二、控件说明
1、输入框
若输入框有默认提示,点击输入框,弹出软键盘
当输入框内不为空(空格除外)时,默认显示消失
2、软键盘的弹出及退出机制
当输入框内必须输入的为数字时,弹出数字软键盘,其余时候,弹出文字软键盘
当在软键盘以外区域,点击或向下滑动时,软键盘退去
3、小黑块提示
显示2秒,然后自动消失
4、选择弹框
弹框上有操作按钮,点击弹框以外的区域,弹框消失
5、手机按键
a、点击手机上返回键,返回上一层,并弹出相应提示(安卓)
b、按home键,程序改为后台运行,再次打开软件时,则回到按home键时的界面
6、控件的状态
a、控件的各种状态出现的前提条件是什么?不同身份进入页面时,按钮的状态一样吗?
b、控件的状态定义是什么?比如提交按钮,要定义清楚什么时候可以点,什么时候不可点?
c、控件的位置,大小是否合适?待操作按钮在当前页面中是否明确?重要、频繁触发的功能按钮是否在手机的可操作区域?
d、控件的操作方式有几种?每种操作的结果是什么?用户能找到隐藏的比较深的操作方式么?需不需要加用户引导?
常见的控件操作方式有:点击、长按、左右划
e、控件的格式要求有什么?
分别涉及到用户名格式,邮箱格式,密码长度格式。比如密码包含的字符要求,两次密码输入时的一致性校验等等
网友评论