需求分析
2013-02-15 21:10
204 查看
软件需求分为三大部分
1)功能需求:指系统需要完成那些事情,不应该做什么.2)非功能需求:比如可靠性、扩展性、响应时间、性能等等...
3)设计约束:系统对操作系统的要求,硬件环境的要求,技术的可行性,操作的可信性,经济的可行性
需求调查与问题定义
在做需求调查时需要做到1)What-----应该收集什么信息
2)Where----从什么地方收集
3)How-------用什么机制或技术来收集
需求分析通常包括六个方面
1)绘制系统上下文范围关系图:主要用于定义系统与系统外部实体间的界限和接口的简单模型,他可以为需求确定一个范围.其实就是DFD的0层图2)创建用户接口原型
3)分析需求的可行性:这个需求我们应该用什么技术解决,他实现后的性能怎么样,是否与其他需求相重合或是矛盾
4)确定需求的优先级:可采用满意度/不满意度指标来说明(满意度1-5 表示当需求被实现时用户的满意程度;不满意度取值同理)
5)需求建立模型
6)使用质量功能调配(QFD):根据需求的理解发现隐藏需求而这些需求是用户也没有想到的需求,系统实现后会给用户一个惊喜,而没实现用户也不会有抱怨
优秀需求具有的特性(十二点)
1)完整性:每一项需求都必须将所要实现的功能描述清楚.2)正确性:每一项需求都必须准确地陈述所要开发的功能
3)可行性:每一项需求都必须在已知系统和环境的技术、资源等限制范围内是可以实施的
4)必要性:每一项需求都必须和某项真正用户需求
5)与实现无关性:需求关注的是系统将要做些什么,其后的阶段如设计,关注该系统将怎样来实现
6)划分优先级:给每项需求分配一个可实施的优先级以指明特在产品中的重要程度.
7)无二义性:每项需求对所有相关的读者只能有一个明确统一的解
8)可验证性:每项需求都应能够被人或机器加以验证,否则将无法确定该项需求是否实现
9)正确的层面:每项需求或者一组需求都应包含相应的层面信息,以便据此足以导出下一层产品需求或设计,但不应提供对下一层活动如设计不必要的限制.
10)一致性:需求规格说明一致性是指软件需求不能与其它需求如系统需求、业务需求相矛盾.
11)简洁明了:每一需求都应清晰地对应某一系统功能或用户需要,
12)可跟踪性:应能在每项软件需求与它的根源和设计元素、源代码、测试用例之间建立起链接链.
不合格的需求派生的问题(七点)
1)没有足够用户参与 : 用户不多导致产品无法被接受2)用户需求的不断增加 : 带来过度的耗费和产品质量的降低
3)模棱两可的需求说明 : 将导致时间的浪费和返工
4)用户增加一些不必要的特性和开发人员画蛇添足
5)过分简略的需求说明 : 以致遗漏某些关键需求
6)忽略用户分类 : 忽略某类用户的需求将导致众多客户的不满
7)不完善的需求说明 : 使得项目计划和跟踪无法准确进行
外包
1.技术外包: 将客户服务均外包给一家或多家公司来负责2.咨询外包: 指用软件公司的技术为用户的特定需要而进一步地开发新系统,是双方在技术和市场方面的联盟合作
3.测试外包: 把原有的测试部门的大部分测试分到外面去做,仅保留部分和开发互动非常紧密的少数测试人员
4.维护外包: 把旧产品的维护工作交给别的公司,自己则专注新的产品的开发
5.编程外包: 在完成产品设计后,把代码编程的工作外包
6.设计外包: 几乎把所有的开发工作都外包给另一家公司,自己则集中精力做市场
用户体验
图释一:图释二:
相关文章推荐
- 第七次作业--项目需求分析(团队)
- UML学习手记(一):用例分析之用例与需求的关系
- 我们应当怎样做需求分析
- 软件研发之需求分析(二)
- Javascript 在WEB系统需求分析中的应用
- 网站项目管理-如何做好需求分析
- 从一则笑话分析需求的陷阱
- 我们应该如何做需求分析(转)
- 学校就业管理系统需求分析笔记
- 专业实训题目需求分析
- 软工第二周团队作业 - 软件分析和用户需求调查之 必应词典桌面版
- 市场需求分析报告及模板
- 软件需求分析阶段
- 基于ARM的智能灯光控制系统(2)需求分析
- 需求分析沙盘演练
- 需求分析的20条法则
- 从一则笑话里分析需求的缺陷
- 软件需求分析方法收集
- 如何做好数据仓库项目需求分析
- 软件开发需求分析的要点