电子商务项目-软件测试需求分析与建模第一部分[11] 软件需求管理
关键字:需求分析与建模 (3)如何获取用户需求
了解客户方的所有用户类型以及潜在的类型。然后,根据他们的要求来确定系统的整体目标和系统的工作范围。
对用户进行访谈和调研。交流的方式可以是会议、电话、电子邮件、小组讨论、模拟演示等不同形式。需要注意的是,每一次交流一定要有记录,对于交流的结果还可以进行分类,便于后续的分析活动。
可以将需求细分为功能需求、非功能需求(如响应时间、平均无故障工作时间、自动恢复时间等性能和安全等方面的要求)、环境限制、设计约束等类型。
(4)应用要点
在这个阶段中,开发者一般不应该考虑具体的代码或程序细节。将那种以“如何实现”的表述方式转换为“实现什么”的方式,因为需求分析阶段关注的目标是“做什么”,而不是“怎么做”;
用例仅能捕获功能性需求,不适合捕获非功能性需求。
避免下面的情况出现
跨过需求,直接进入了设计甚至实现阶段。
因为在需求方面任何小的疏漏都可能导致进展不利乃致失败,因为太多的工作被浪费在错误的方向上。
用你的想法来理解客户的需求设计不应该成为需求收集的一部分,将需求与设计分离是至关重要的。我们常常是提出问题,然后是解决问题。而不是有了一个解决方案之后,再找一个问题去适合它。问题的解决方案必须在问题已经被确定、形成文档、理解和达成共识之后产生。如果设计在需求之前提出,则系统用的就是自己的需求,并不能代表用户的利益。在设计之前完整地定义问题永远都是明智的。要做到这些的方法只有一个,就是站在用户的角度而不是设计者的角度看待系统。
从一开始你就没听清客户要的是什么
很多时候,用户并不知道自己要什么?需要我们去引导。当系统存在多个用户时,你会发现不同的用户在需求方面是矛盾的。
2、确定需求的流程
(1)需求工作流