首页 > 其他分享 >12月15日《软件需求十步走》阅读笔记二

12月15日《软件需求十步走》阅读笔记二

时间:2023-12-16 14:34:18浏览次数:26  
标签:需求 分析 12 十步 业务 用户 客户 软件 15

树立正确的软件需求的概念,信息化普及的当代,人们大都着重于软件开发,很轻易的就会忽略开发的最初需求分析,这样导致最后的开发受阻或终止等问题时,就会在时间、人力、物力方面造成大量浪费,那对于开发过程十分重要的需求分析过程,我们有什么好方法可以应用呢?我们一直在寻找真正的“完整、准确、清晰、变化可控”方法。

    对需求分析工作事前千夫所指是有益的,而事后千夫所指是无谓的。“软件危机”的解决之道是软件工程,“需求危机”的解决之道是需求工程。需求工程将整个工程分为需求开发和需求管理两部分,其中需求分析是需求开发的其中一个环节。需求工程是确保软件需求质量的,软件工程是确保软件开发质量的,一个软件项目要想成功,必须握有需求工程和软件工程这两把利剑在手。

     近年来,人们利用了大量的需求分析方法、工具在软件项目中,有成效但仍然存在问题(工具不支持对项目范围和目标的定义工作),方法和工具主要定位基于软件需求分析成果向后端的系统设计和代码的软化,如果软件需求分析是准确的、完整的,那就可以完成成功的需求分析,但现实仍存在误差。所以,当下的需求工程应该在继承原有需求工程成果的基础上将客户业务研究纳入到需求工程,这才是需求工程的全部,向客户业务和系统设计延伸。反思软件开发的失败原因,进行确定范围和目标清晰的项目开发。需求分析由业务需求分析开始,在用户需求分析的基础上进行的功能需求分析和非功能需求分析,软件需求规格说明主要是说明软件需求是什么。软件需求的核心是业务需求,而软件需求规格说明书是软件需求工作的目标。如果说实践是检验真理的唯一标准,那么业务是检验软件的唯一标准,离开了业务的软件什么都不是。

       用户的需求是不稳定的,不准确的,不完整的, 用户的真正需要是一个软件系统,用户所描述的是自己在一个具体业务系统中的事,用户只负责提出问题,而关于问题的深入研究是需求分析人员,也就是我们的工作。是我们应该根据用户提出的问题,在用户业务资料和现场调研的基础上,用逻辑思维方法和系统科学方法对用户业务分析研究,找出业务的内在要素、结构、关系,然后告诉用户该业务的整体情况。

     应用情况和所在时间的变化和需求增减的变化导致了需求的变化。变化的根源在于错把客户作为变化根源,不知客户的服务对象才是变化的真因。变化可以是客户或开发组织两方中任意一方的直接提出。如何控制需求的变化或为此变化预留充足的余量?客户直接接触的变化是其服务对象,服务对象的变化必然带来客户业务的变化,客户业务又会影响信息系统,所以溯其根源,将服务对象、客户业务,软件系统同时作为研究对象,这样可有效控制需求的变化。

    软件需求的描述方式:自然语言(虽其具有二义性,但可通过表格、图形等方法加以补强,减少其二义性)

    软件需求是天平,业务和软件是这个天平上的两个砝码,要想平衡业务和技术就要整体思考。需求分析首先是业务研究,核心是业务研究,其次才是技术研究。技术是支撑业务的,是满足业务需要的,对业务研究充分,技术才能发挥其作用。软件需求的完整性=业务需求的完整性+用户需求的完整性+系统需求的完整性。

    业务向系统的映射:映射存在着 映射不完整、不深入,对业务研究的不深入导致的疏漏等这样的问题。

    业务系统和软件系统是一体两面,是同一个抽象体在两个世界的投射。

    软件需求的验证和测试:验证的目的:保证需求分析结果的完整性和正确性 主要工作:自我验证、系统验证、技术验证、专家验证。存在的问题:大量依赖于人工检测,形式化方法的可操性不高。改善方法:1.在验证内容上提出要求。2.分析上应对业务和系统功能进行量化分析。测试内容:功能和性能 测试方法:人工方式(编写测试用例)和机器方式(模拟一个运行环境来测试)两种。

    软件需求是在现实可见业务的抽象的基础上面向未来软件系统的再抽象,而软件系统只是将未来软件系统的再抽象在信息世界进行具体抽象化的成果。

    软件需求既然是千夫所指,那就大胆点让软件需求成为软件开发活动的圆心。(需求开发工作)星环模型上圆环中心是需求获取(客户业务的分析),客户业务的分析的圆心(客户业务的问题和目标)软件开发活动整体模型如下:

    需求分析人员的主要工作:用户描述的业务转换成用户需求和系统需求。

    新一代软件需求工程的重要理念:从“轻业务、重系统”转变到“重业务、重系统”。

标签:需求,分析,12,十步,业务,用户,客户,软件,15
From: https://www.cnblogs.com/lmyy/p/17904806.html

相关文章

  • 12月16日总结
    在看kube-scheduler组件的过程中遇到了kube-scheduler对于client-go的调用,泛泛的理解调用过程总有种隔靴搔痒的感觉,于是调转头先把client-go理清楚在回来看kube-scheduler。为什么要看client-go,并且要深入到原理,源码层面去看。很简单,因为它很重要。重要在两方面:kubern......
  • 【笔记】2023.12.16 动态规划
    笔记2023.12.16:动态规划今天题目很多,可能有些题不口胡了。LOJ6089小Y的背包计数问题前\(\sqrtn\)个物品直接做单调队列优化是\(O(n\sqrtn)\)。大于\(\sqrtn\)的是完全背包。考虑到完全背包\(v\)的OGF为\(\dfrac{1}{1-x^{v}}\)。这不行。你考虑到对于一个物......
  • 2023-12-16 闲话 中午没睡着
    这半年受这个b回答的影响,发奋图强,现在实力如下:通过考前突击进行刷绩点,绩点寄了。通过每天复健卷竞赛,杭州吃屎了。所有区域赛第45顺位进入ecfinal,金牌堪忧。通过每天知乎b站强训neuronnetwork/robotics,现在水平是等着寒假再学一遍通过boss直聘找实习,找了半个月一个实习机会......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......
  • 1280. 学生们参加各科测试的次数
    1.题目介绍学生表:\(Students\)+---------------+---------+|ColumnName|Type|+---------------+---------+|student_id|int||student_name|varchar|+---------------+---------+在SQL中,主键为student_id(学生ID)。该表内的每一行都记录有学......
  • 2023-2024-1 20231424《计算机基础与程序设计》第12周学习总结
    2023-2024-120231424《计算机基础与程序设计》第12周学习总结作业信息作业属于的课程<班级链接>(2022-2023-1-计算机基础与程序设计)作业要求<作业要求>(2022-2023-1计算机基础与程序设计第一周作业)作业目标《C语言程序设计》第11章作业正文https://www.cnblo......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......
  • H5628L 80V降压恒流IC 72V电动车前大灯驱动IC 输出9V 12V
    本文将介绍H5628L耐压100V降压恒流芯片的特点和应用,包括其80V降12V、降9V的降压能力,以及支持最大2.5A的电流。此外,文章还将阐述该芯片的电路保护和热性能等方面的优势。 H5628L是一款外围电路简单,采用VFPWM连续工作模式的非隔离式恒流LED驱动芯片。H5628L典型开关频率固定为130KHz......
  • 【杂题乱写】12 月北京省选 DP 专题训练
    有一部分题目是模板题,就不放了。D.Luogu-P5336THUSC2016成绩单考虑区间DP,由于操作的特殊性,我们需要设计含有区间最值的状态,设\(f_{l,r,i,j}\)表示区间\([l,r]\)中的所有数只保留值域\([i,j]\)中的最小代价,\(g_{l,r}\)为将区间\([l,r]\)的所有数都删去的最小代价。......