软件需求分析教程阅读笔记二

管理人员在要求开发一个系统时并不会理解进行需求分析的重要性,他们只知道能不能尽快开发出相应的系统来方便使用,但是如果不做好需求分析,最终开发出的系统也不会有人用。

客户的需求认识并不像软件开发人员这样,了解的比较清楚,客户通常并不懂得从系统的实际用户处得到信息的重要性,然而从产品的实际用户处收集需求有着不可替代的必要性,所以导致项目最终失败的两个原因,一个是缺乏用户参与,另一个是不完整的需求规格说明。

在进行需求分析时,只有系统的实际使用者才能清楚的描述他们要用此系统必须完成的任务。

开发之前要清楚客户的概念。客户指直接或者间接从产品中获得利益的个人或者组织。项目的风险承担着有义务说明业务需求,即产品的高层次概念和产品的主要业务内容。业务需求只是高层次需求,还需要从产品的用户处收集用户需求,能够了解该产品要完成的任务,必须要去实际用户处收集用户需求才会有准确性。如果上述两种需求无法分析明白,除非需求极为简单,否则必须要消除需求中模糊不清的地方和一些使程序人员感到困惑的方面。

客户与开发人员之间要协调好关系,不能总是只想着自已一方的利益,还要为对方的利益着想。在开发过程中,软件客户既有相应的权利,也有对应的需求,要清楚自己一方的权利与义务,来为整个开发过程服务。

在权利方面,

要求分析人员懂得业务术语,软件的使用可能会用到这些业务术语;

分析人员一定要去了解业务和业务目标,必须要编写软件需求规格说明书,这在以后的开发过程中是至关重要的;

开发过程中使用的图表及流程图或符号之类,软件客户有权利知道每一个表示的意义,并且要求开发人员尊重客户的意见;

客户在描述产品性能时,很可能会用词非常主观,用词并不确切对于开发者来说,这样很可能会导致最后开发的产品不能让用户满意,所以描述的时候,分析人员要询问了解客户所要求的具体特性,要定量化的描述;

需求具有灵活性,是可稍微变更的,同客户分析之后,将需求变得灵活一点,这样就可以重用一些已有的软件组件,既能降低成本,也能节省开发时间,先同客户分析,再变更。

在变更需求时,会对软件开发的成本或者其他方面会有影响,这时客户可以要求开发人员分析给出真实可信的评估,开发人员不可以不想变更需求而主观随意夸大成本。

在义务方面,

在进行开发之前的需求分析阶段,客户需要给分析人员讲解业务概念和术语,因为分析人员需要使用这些术语来明白系统的问题和目标而开发出符合要求的系统。如果客户很忙,也需要客户抽出时间来进行详细的讲解。

需求规格说明书是一份很重要的说明,但是里面的内容不一定都能正确理解,所以必须要解决这个问题,可以在说明书中加上一些标记来方便日后的阐述。

在需要客户做出决定时,客户尽量根据当时条件,及时准确的做出决定,这样才不至于延误项目进展。

客户说明需求之后,开发人员会对这些需求进行可行性分析和成本的评估,客户要尊重分析人员进行的评价,从而来决定是否要调整需求。

分析人员了解需求之后,会提供每个需求的话费和风险的相关信息,这时客户应该根据这些信息来划分需求的优先级,从而使开发者在一定的时间内用最小的开支来取得最好的效果。

在书写完成需求规格说明书之后进行开发之前,需要让客户参与需求文档的评审,这样可以给分析人员带来反馈信息,尽早告知分析人员相关的建议,这样可以大大节省后期开发的时间,并且出错的概率也会大大降低。但是仅凭一份文档,用户很难知道软件是什么样子的,开发人员要做一个原型系统来提供更有价值的信息。

开发过程中,如果要变更需求,客户一定要马上联系开发人员,否则越是到开发后期,成本会越高,并且开发时间也会延长。

最后最重要的是,客户一定要理解分析人员在需求分析上花费的功夫,因为这个是非常必要的。

当需求规格说明书完成之后,客户需要在说明书上签字。这意味着客户同意终止需求开发过程,表明客户同意文档表述了目前项目需求的了解,如果以后要做变更,可以基于一定的准线来进行变更,虽然这有可能会影响到成本、资源、和项目工期等方面的问题。明白这些之后,就明白签约的意义了,并不只是签个名字的意义,这会在以后的开发工作以及提出需求变更时,仍能让双方满意。

转载于:https://www.cnblogs.com/diyunfei/p/5966163.html

软件需求分析教程阅读笔记二相关推荐

  1. 大型网站技术架构:核心原理与案例分析阅读笔记二

    大型网站技术架构:核心原理与案例分析阅读笔记二 网站架构设计时可能会存在误区,其实不必一味追随大公司的解决方案,也不必为了技术而技术,要根据本公司的实际情况,制定适合本公司发展的网站架构设计,否则会变 ...

  2. 06软件构架实践阅读笔记之六

    06软件构架实践阅读笔记之六 今天阅读的是第五章实现质量属性,在书中,存在这样的一句话:如果不顾及所有的质量属性,每一个好的质量属性都是有害的.在我认为,这句话就是最好的说明. 在上一章中,聊到的是系 ...

  3. 《挑战程序设计竞赛》阅读笔记二 之 ALDS1_2_C Stable Sort

    <挑战程序设计竞赛>阅读笔记二 之 ALDS1_2_C Stable Sort 第三章 Sort I ALDS1_2_C Stable Sort 这道题目,就是为了说明 冒泡排序是稳定排序 ...

  4. 《逻辑思维简易入门》(第2版) 阅读笔记二

    <逻辑思维简易入门>(第2版) 阅读笔记二 本周阅读的是<逻辑思维简易入门>的第三章,也就是说,本书的第一部分就已经读完了. 第三章.信念的优点 信念和负信念是人们在接受一个事 ...

  5. 《UML大战需求分析》阅读笔记01

    在刚学习软件开发的课程时,首先学习了UML设计,但只是学习了基本的语法,虽然在学期通过课堂练习进行了实践,但并没有真正理解其中作用.为了进一步的理解UML的用法,我阅读了<UML大战需求分析&g ...

  6. 《Evaluate the Malignancy of Pulmonary Nodules Using the 3D Deep Leaky Noisy-or Network》阅读笔记(二)

    <Evaluate the Malignancy of Pulmonary Nodules Using the 3D Deep Leaky Noisy-or Network>阅读笔记–翻译 ...

  7. 《我们应该怎样做需求分析》阅读笔记

    认识: 软件需求分析是贯穿软件项目从出生到成长或者死亡的,我们必须搞清楚到手的软件是为了什么要做什么做成什么样,通过顾客的描述彼此的合作分析需求与业务逻辑,不断改进从而实现软件在合理范围内符合顾客要求 ...

  8. 《需求工程——软件建模与分析》阅读笔记二

    话不多说,直接开始我的这次的总结. 软件系统当中常见的涉众类别有用户.客户.开发者.管理者.领域专家.政府力量和市场力量. ①用户是最终使用和操作产品的人,他们使用软件的目的是为了更好地完成自己的任务 ...

  9. 《软件需求模式》阅读笔记二

    在需求工程开发篇中.需求规划的思路和过程 需求规划工作是面向"全业务.全信息.全系统",采用分析综合.归纳演绎的逻辑方法整理出组织与对象的业务逻辑模型,在此业务的逻辑模型基础上进行 ...

  10. 《我们应当怎样做需求分析》阅读笔记

    在阅读<我们应当怎么做需求分析>这篇文章后,我了解到了许多有关软件需求的相关知识与内容. 文中主要说了三项重要的内容,分别是需求调研.需求分析以及需求确认.而我恰好也觉得这些就是本学期&l ...

最新文章

  1. java: web应用中不经意的内存泄露
  2. 2.3 CMMI2级——项目跟踪和控制(Project Monitoring and Control)
  3. C# winform单元格的formatted值的类型错误 DataGridView中CheckBox列运行时候System.FormatException异常
  4. 速计算机科学,计算机科学速成课30:万维网【视频】
  5. 微信小程序Java登录流程(ssm实现具体功能和问题解决方案)
  6. 【2018.6.7】阶段总结
  7. emacs 编辑模式_作家的5种Emacs模式
  8. 路由协议之间的经典对比
  9. 剑指 Offer II 083. 没有重复元素集合的全排列
  10. Spring Boot入门(1)-第一个Spring Boot应用
  11. 基于auto.js的网课自动签到软件以及facerig控制摄像头内容及auto.js新手教学
  12. cmd 命令 copy 复制文件
  13. 小程序获取附近IBeacon设备
  14. 浪潮存储服务器VAAI
  15. java socket ascii_TCP套接字上的ASCII - java
  16. 程序员修炼之路(十四)IT外企那点儿事--也说跳槽
  17. C++内存模型以及寄存器指针rsp和rbp
  18. stata 求输出相关系数矩阵命令_Stata外部命令:那些最常用的和最新的命令
  19. 用python画小猪佩琪_怎么用python画小猪佩奇
  20. 门禁接入动环系统,门磁接入动环系统怎么设置

热门文章

  1. 一样的Java,不一样的HDInsight大数据开发体验
  2. 《SharePoint Portal Server 2003 深入指南》开放了两个章节在线阅读
  3. ES常用DSL语句(kibana常用语句)
  4. SVN 更新发生冲突各选项含义
  5. 内存检查工具valgrind介绍、安装与使用
  6. Xshell连接centOS7与CentOS7联网——一步到位
  7. php语句insert,SQL INSERT INTO
  8. Nginx源码分析 - HTTP模块篇 - HTTP模块的初始化(20)
  9. Nginx源码分析 - 基础数据结构篇 - 数组结构 ngx_array.c(03)
  10. xgboost算法_XGBoost 原理 及 常见面试题