前文
《要求的-->想要的-->需要的》,讲到不能把用户要求直接当作需求,而是要根据用户要求的,充分交流消除误解,得到用户真正想要的,再通过充分思考,辨别,得到用户真正需要的。用户的要求的和想要都是主观的,易变的,而用户真正需要更接近客观,稳定。
究竟如何来思考和辨别呢?这不是一个容易的事情,下面的方法也许有帮助。
软件产品不是独立存在的,应该把它放在用户整个的工作环境中来考量。在用户的工作环境中添加一个新的软件产品,要思考这个新产品是如何参与到用户的工作流程中。程序员在软件中设置大量的逻辑,这些逻辑必须协调一致,形成一个有机的组合(否则,就会出现Bug)。另外,软件和外部环境,特别是用户的工作方式也必须协调一致,构成统一的整体。如果你开发一个模块,模块的接口应该保存简单,并且希望这个模块最好只接收必要的数据,直接可用的数据。那你为什么会展现多余的信息给用户呢?把用户当成整个系统中的一个模块,用户也最好只接收必要的信息,直接可用的信息。当然,用户这个“模块”有他的特殊性:
- 不同角色的用户,是不同的处理模块,要区分对待。
- 你不是通过编码给用户设定逻辑,而是通过培训和用户手册来给用户安排处理逻辑,而用户不像计算机那样对你的指令无条件的执行。
设计的目标,大多情况下,应该减少用户的负担。在需求阶段,要充分了解当前用户已经在承担“处理逻辑”,即人工的处理部分。设计阶段,要考虑产品实现后,当前阶段的用户接收新处理逻辑(即新的工作方式)的难度,别对“脆弱的用户”造成了伤害。也许你因此考虑暂时不实现某个非常有创意的想法,开发人员特别是做决策的核心设计人员,有时候必须有压制自己创意的自制力。
阅读(1053) | 评论(1) | 转发(0) |