阅读笔记:软件需求十步走(二)

一个程序员最需要的就是反思,而往往反思是非常困难而且非常痛苦地一件事,因为你要打破自己以往的观念和想法,从中找到自己的缺点进而改正。

需求问题是软件开发过程中紧紧围绕的一个巨大问题,乃至整本书都在围绕着这个话题进行讨论。能否获得需求是软件成败的关键。

以往以来人们通过各种方法进行软件的需求分析,如结构化分析方法,面向对象方法,面向问题领域分析方法等,其成果能通过case工具,uml工具来完成。其中uml工具将需求分析成

果自动化转化成系统设计成果方面尤为突出,解决了长期困扰软件开发中需求分析和系统设计之间失真的问题。在我们日常的学习中,uml模式图也有为关键,大二上学期比较系统的

学习了uml工具,对其中的各类也有了比较简单的了解,在如今王辉老师的课上,各种软件的设计模式对应着相应的类图,而能不能分析好画好这些类图,当时学习的uml起到了至关重要的作用,学习真是一环扣一环!而在用例的描述中,用例描述完整性和准确性不够这是uml的一项缺点,还有项目的范围和目标的定义是在用例工作开始前需要先完成的工作,uml并不支持,需要我们进行切入的探讨与分析,在项目开始之前,如果不能找到一个确定的范围,就好像有方枯地上打井,打到地也不一定能打出水来。

人们的学习就好像是在画一格一格的圆,学习的越多,圆画的越大,事情往往也会变得越来越难,但无论遇到什么事情都需要有较好的心态去面对,不能被困难所打倒,也不能在困难面前过于自负,反而耽误了解决问题的关键时期。人到不惑之年的时候当听到有人说这件事很简单时,第一直觉是这件事就不简单。人们对做事的原则有个很经典胡总结:“复杂事情简单做,简单事情重复做,重复事情用心做。”这便是对心态的完美表述,人无祸而不立,树无根而不生。

软件的建设更需要软件规格胡说明。

书中所言,往往软件需求规格说明是软件开发者的宠儿,是软件需求的核心,开发人员通过软件需求规格说明来了解用户想要什么,想实现什么;而实际上软件需求规格说明并不是软件需求的核心不是软件需求工作的目标,真正的核心是业务需求,因为软件分析从业务需求分析开始,在用户需求分析的基础上进行的功能需求分析的非功能需求分析,软件需求分析的工作成果是软件需求规格说明,而软件需求规格说明主要是由功能需求分析和非功能需求构成。因此软件需求规格说明是真正软件需求的核心。

离开了业务,软件什么都不是;大部分人可能对此话嗤之以鼻,一般说的绝对的话往往是错误的,诚然我第一次听到此句也是如此的心理,但仔细想来,如果一个软件没有业务需求,便会像无的之矢,茫茫乎不知所终,最后沉默在软件的大潮里。现实中大家多采用场景卡片,系统原型,用例图,用户需求文档来获取用户需求,来让用户确定这是他想要的。从而确定自己的业务目标,不是说不可以,究其根来方法都是为目的来服务,只要找到所要追寻的目的多想些办法,多采取些措施又未尝不可。

形式逻辑的演绎方法可以用来解决需求的完整性问题,形式逻辑的论证方法可以用来解决需求的准确性问题。

在找寻业务根源过程中,常常会面临各种各样的变化,世界因为变化而精彩,而编程与软件开发如果面临各种各样的变化,那程序员肯定会头痛无比,哪怕多一点差别,程序的代码可能就会多出几百行。需求变化的根源往往在于客户,客户以为开发人员是万能的,自己想像的程序员一定会给自己完成,正是由于单方面的不了解往往会产生许多分歧,耽误开发的进程;客户服务对象是变化的根源,明确双方任务与能力,明确各自的初衷,往往会消除很多不便。

时间: 2024-10-29 19:06:52

阅读笔记:软件需求十步走(二)的相关文章

《软件需求十步走》读书笔记二

这次都<软件需求十步走>的后三篇,分别为“方法篇”.“规划篇”.“开发篇”. 方法篇: 1.需求工程的方法观 方法的使命就是要将问题的结构和规律展现出来 2.分析计算方法 分析计算是需求规划方法与传统需求分析方法有本质区别的地方之一.分析计算包括系统支撑能力计算和业务发展能力计算 3.结构化分析方法 结构化的分析(又称SA)方法是本书在需求规划中的业务建模.系统建模和体系建模所采用的方法 4.面向对象分析方法 在需求分析中本书采用面向对象的分析方法作为用例分析和功能需求分析的方法 5.需求统一

《软件需求十步走》读书笔记三

近期读了<软件需求十步走>最后的部分,分别是管理篇.组织篇. 管理篇 1.需求管理的思路 :需求工程的需求业务活动由需求规划中的6个业务活动和需求开发的4个业务活动共计10项业务活动组成,构成了需求工程的业务主线.需求工程的需求管理活动的目标就是确保需求业务活动能够按进度要求.质量要求.成本要求生产出高质量的软件需求. 2.需求版本控制 :软件需求基线是由各阶段需求业务活动的工作成果文档和文档内各部分内容的版本号的集成.软件需求基线工作的落实借助这些工作成果文档和文档内部分内容版本号来实现的.

软件需求十步走读书笔记2

今天读完了软件需求十步走的第二部分.读了知识篇和方法篇.在知识篇中知识体系的构建方法 事物的知识是由知的知识和识的知识构成.识的知识是以知的知识为核心的需求工程的知识构成 需求工程的知识体系是由基础知识体系.专用知识体系.特有知识体系三个部分构成需求工程的基础知识 形式逻辑中演绎.推理.假设.论证等方法对于解决软件需求中“不完整.不准确.总在变.不一致”问题具有帮助需求工程的专有知识.需求工程的专有知识包括软件工程.软件体系架构和信息资源规划需求工程的特有知识 需求规划是新一代软件需求工程有别于

软件需求十步走读书笔记1

今天开始读软件需求十步走这个本书,这本书把软件的需求调研分为十步,两个阶段.书中主要的几个问题:难点问题.性能问题.范畴问题.鸿沟问题.关系问题.观念问题.地位问题.主要针对这几个常见易出的问题,作者做出解释和分析以及面对这些问题应该如何去做,从中交给我们解决问题的道理. 需求规划是新一代需求工程中的最大亮点,它的工作是将业务.对象和信息化体系作为研究对象,采用科学研究.体系架构设计.信息资源规划的方法,编制出具有系统性.科学性.前瞻性的需求规划成果.需求规划的成果中包括形势分析.业务体系分析.

《软件需求十步走》阅读笔记二

这一段时间阅读了<软件需求分析十步走>的第三四章,写一写书中一些个人感觉比较好的说法以及阅读感受. 首先是第三章<软件需求工程概论>. 需求工程和软件工程之间的关系界定没有质的变化,只是将需求工程从软件工程中剥离出来,将需求分析的分析工作和管理工作定义为需求工程.需求工程是面向全局的.系统顶层的.着眼未来的工程,是将客户业务作为内部研究对象,将软件工程全过程作为外部研究对象的工程.需求工程是圆心,软件工程是圆点. 需求工程的特征具有:全局性.主导性.主动性.过程性.规范性.可验证性

《软件需求十步走》阅读笔记六

本次阅读笔记写一下<软件构造十步走>最后一篇<组织篇>. 本篇共分为四章,分别是建立需求分析体系,需求分析部门的组织结构,需求分析部门的管理工作,需求分析部门的业务工作. 首先是<建立需求分析体系>. 长期以来"轻业务.重技术"的理念根深蒂固,而解决措施是建立一个专业从事软件需求分析的独立部门来承担这项工作.此部门是介于业务部门和技术部门之间的,专门负责对组织自身业务.客户业务.客户对象和竞争对手的研究,然后将其转换成提供给技术部门的软件需求规格说明

《软件需求十步走》阅读笔记五

本次阅读笔记写一下本书的第六篇<管理篇>. 第六篇共分为四章,分别是需求管理的思路.需求版本控制.管理变更请求.需求跟踪能力. 首先是第一章<需求管理的思路>. 需求管理活动的目标就是确保需求业务活动能够按照进度要求.质量要求.成本要求生产出高质量的由业务需求.用户需求和系统需求构成的软件需求规格说明.需求管理工作具体是借助由基线.版本.状态.变更.跟踪构成的需求约定这一抓手将需求业务活动集成起来并加以规范化.需求管理活动的目的是在客户与软件开发人员之间建立一个由文档构成的需求基线

《软件需求十步走》阅读笔记一

从学习软件以来,每个程序老师都会告诉我们要进行需求分析,而自己有时会简简单单需求分析一下,有时都不会管,然后每次写程序都会删改到自己都不知道程序要有什么功能,程序是用来做什么的,越做越感觉定题与所实施得到的结果分开了很多,没有了自己最初的设想.现在学习需求分析,感觉是自己的想法太简单了.通过对以前程序编写过程的反思,深刻的体会到了需求分析的重要性.“对需求分析工作事前千夫所指是有益的,而事后千夫所指是无畏的”. 一直以为程序才是软件好坏的关键,总是忽略了对软件的需求分析.许多数据表明,软件需求分

阅读笔记:软件需求十步走(三)

软件需求的验证工作的目的是保证需求分析成果的完整性和正确性,保证软件开发后的软件产品是用户所需要的.软件需求验证的工作的重要性是在于发现修复需求分析中存在的问题.软件需求验证的主要工作是自我验证,用户验证,系统验证,技术验证,专家验证,主要是以评审会方式来展开,收集各方意见来进行修正.需求验证存在的问题是还处于人工检测阶段,对验证工作重视程度不够.而目前在验证的方法上存在的问题,大量的还依赖于人工检测,这对于当前的大数据量服务还远远不够,操作性也不太高.我们想说这种情况下,还有没有其他办法?我认