软件工程开发文档写作教程(08)—需求分析书的编制目标

这篇具有很好参考价值的文章主要介绍了软件工程开发文档写作教程(08)—需求分析书的编制目标。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl
  • 本文参考资料:电子工业出版社《软件文档写作教程》 马平,黄冬梅编著

需求分析定义

软件工程开发文档写作教程(08)—需求分析书的编制目标

需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需求,回答系统必须“做什么”的问题。获得需求规格说明书。

为了更加准确地描述需求分析的任务,Boehm给出软件需求的定义:研究一种无二义性的表达工具,它能为用户和软件人员双方都接受,并能够把“需求”严格地、形式地表达出来。

对于大中型的软件系统,很难直接对它进行分析设计,人们经常借助模型来分析设计系统。模型是现实世界中的某些事物的一种抽象表示,抽象的含义是抽取事物的本质特性,忽略事物的其他次要因素。因此,模型既反映事物的原型,又不等于该原型。模型是理解、分析、开发或改造事物原型的一种常用手段。例如,建造大楼前常先做大楼的模型,以便在大楼动工前就能使人们对未来的大楼有一个十分清晰的感性认识,显然,大楼模型还可以用来改进大楼的设计方案。

需求分析一般步骤

由于需求分析方法不同,描述形式也不同。需求分析一般的实现步骤如下所述。

(1)获得当前系统的物理模型
物理模型是对当前系统的真实写照,可能是一个由人工操作的过程,也可能是一个已有的但需要改进的计算机系统。首先是要对现行系统进行分析和理解,了解它的组织情况,数据流向,输入输出,资源利用情况等,在分析的基础上画出它的物理模型。

(2)抽象出当前系统的逻辑模型
逻辑模型是在物理模型的基础上,去掉一些次要的因素,建立起反映系统本质的逻辑模型。

(3)速立目标系统的逻辑模型
在分析目标系统与当前系统在逻辑上的区别,建立符合用户需求的目标系统的逻辑模型。

(4)补充目标系统的逻辑模型
对目标系统进行补充完善,将一些次要的因素补充进去,例如出错处理。

需求分析具体任务

根据上述分析得知,需求分析的具体任务如下所述。

(1)确定系统的综合要求
确定系统功能要求是最主要的需求,确定系统必须完成的所有功能。确定系统性能要求应就具体系统而定,例如可靠性,联机系统的响应时间,存储容量,安全性能等。确定系统运行要求主要是对系统运行时的环境要求,如系统软件,数据库管理系统,外存和数据通信接口等。将来可能提出的要求对将来可能提出的扩充及修改做预准备。

(2)分析系统的数据要求
软件系统本质上是信息处理系统,因此,必须考虑数据(需要哪些数据,数据间联系,数据性质,结构),数据处理(处理的类型,处理的逻辑功能)。

(3)导出系统的逻辑模型
通常系统的逻辑模型用DFD图来描述。

(4)修正系统的开发计划
通过需求对系统的成本及进度有了更精确的估算,可进一步修改开发计划。

需求分析书的编制目标

软件驱动着计算机硬件帮助人们完成一个又一个功能,软件没有思想不会思考却能很好地执行人类下达的命令。所以,软件能够做到的事,完全在人类的计划之中,是人类希望借助软件完成功能。于是,一个软件系统最终能给用户提供什么功能,是由软件的开发商决定的。由于将要开发的软件能提供的所有功能被记录在需求分析书中,所以需求分析书的编制目标可以总结为以下3点。

1 .限定软件的功能需求
随着软件用途的扩大,现今人们开发出来的无论是通用软件还是特定领域的专业软件,其功能越来越强大,一般不存在只完成一个简单功能的小软件了,这些简单而单一功能往往由模块或者组件来实现,再将这些实现各种功能的模块或组件集成在一个系统中,团结协作共同完成人们希望实现的功能。软件应该具备什么样的功能,会根据各软件开发的目的不同而有所不同,所以首先应该明确的就是客户为什么要开发该系统,紧接着要确定客户为了达到这些目的希望计算机软件做什么。希望软件做的事就成为了客户的需求,客户的所有需求都应该被明确的记录,不能因为有些功能过于简单或者认为某些需求是理所当然的就不被记入需求说明书中。建房屋需要规划用地,做软件也需要明确功能边界。

2 .明确开发目标
一个人在一大片空地上想走出一条直线是相当困难的,但是,如果空地上有棵树,以该树为目标径直走过去的话,也许中途会走歪,但是从整体来看,路是直的。软件开发的整个过程中,如果经常拿需求作为目标进行比较,到项目最后结束的时候就会发现,做出来的软件并没有太多的偏离原始要求。开发的过程中也不会因为目标不明确而任意发挥,而盲目乱做会导致开发过程受阻或者不断返工。

3 .提供系统评价标准
软件工程当中有一句很经典的话:“是否做了客户希望你做的事,是否用正确的方法做了客户希望你撤的事”,需求分析书恰恰是检验“是否做了客户希望你做的事”最好的方法,系统交付给客户的时候,拿出之前落到纸上的需求分析书,对照其中的每点要求逐条验收,这样就可以检查该系统是否是客户最初设想的系统。文章来源地址https://www.toymoban.com/news/detail-449957.html

到了这里,关于软件工程开发文档写作教程(08)—需求分析书的编制目标的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 软考:软件工程:软件开发方法,软件可行性分析,需求分析,ER实体图,数据流图,状态转换图,数据字典

    软考:软件工程:软件开发方法,软件可行性分析,需求分析,ER实体图,数据流图,状态转换图,数据字典

    提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 (1)自己的科研经历, 科研内容 ,学习的相关领域知识,要熟悉熟透了 (2)自己的实习经历,做了 什

    2024年02月11日
    浏览(13)
  • 字节跳动 从需求到上线全流程 软件工程流程 需求评估 MVP

    字节跳动 从需求到上线全流程 软件工程流程 需求评估 MVP

    整个课程会带大家先从理论出发,思考为什么有流程 大家以后工作的团队可能不一样,那么 不同的团队也会有不同的流程 ,这背后的逻辑是什么 然后会带大家按照走一遍从需求到上线的全流程,告诉大家在流程的每个阶段,究竟要做什么 最后会给大家介绍一下我们 实践当

    2024年02月11日
    浏览(7)
  • 《软件工程》课程四个实验的实验报告(《可行性研究与项目计划》《需求分析》《系统设计》《系统实现》)

    《软件工程》课程四个实验的实验报告(《可行性研究与项目计划》《需求分析》《系统设计》《系统实现》)

    实验学时:     2        实验地点:        任意           实验日期:    12月15日          了解:软件项目可行性研究及项目计划的基本原理与方法; 掌握:Visio等工具进行可行性研究和制定项目计划。 图书管管理系统更便于对图书进行分类和管理,对借阅

    2024年02月03日
    浏览(10)
  • AI+软件工程:10倍提效!用ChatGPT编写系统功能文档

    AI+软件工程:10倍提效!用ChatGPT编写系统功能文档

    系统功能文档是一种描述软件系统功能和操作方式的文档。它让开发团队、测试人员、项目管理者、客户和最终用户对系统行为有清晰、全面的了解。 通过ChatGPT,我们能让编写系统功能文档的效率提升10倍以上。 我们以线上商城系统为例,介绍如何使用ChatGPT帮我们完成系统

    2024年03月25日
    浏览(7)
  • 易语言软件定制软件开发脚本开发协议软件电脑网站APP应用视频制作工程制作

    随着信息技术的不断发展,易语言软件定制开发已成为许多公司的一项重要业务。本文将探讨如何利用易语言承接软件定制软件开发脚本开发协议软件电脑网站APP应用视频制作工程制作。 一、易语言概述 易语言是一种简单易学的编程语言,它采用中文编程,让不会英文的初

    2024年02月08日
    浏览(13)
  • 软件开发工程师 - 面试手册

    软件开发工程师是IT行业中最常见的岗位之一,主要负责设计、开发和维护软件应用。他们需要熟悉至少一种编程语言,了解软件开发的基本流程和原理,具备良好的解决问题能力和团队合作精神。 在招聘广告中,公司通常会对软件开发工程师的要求做出如下描述: 熟悉至少

    2024年02月06日
    浏览(10)
  • 工信部—高级软件开发工程师认证

    工信部—高级软件开发工程师认证

    工业和信息化部教育与考试中心是工业和信息化部直属事业单位,承担计算机技术与软件专业技术资格考试、通信专业技术人员职业水平考试、电子通信行业职业技能鉴定、全国信息技术人才培养工程、产业工人网络平台建设等人才培养选拔工作。 软件工程师(Software Enginee

    2024年02月08日
    浏览(10)
  • [架构之路-152]-《软考-系统分析师》- 8-软件工程-2-软件工程的N维矩阵模型与软件开发方法(形式化方法、逆 向 工 程)

    8.1  软件工程的矩阵模型 横轴X(时间):是软件的生命周期 :需求分析=》架构设计=》编程实现=》测试=》版本发布=》部署运行 纵轴Y1维度/视角:软件开发活动, 不同什么周期阶段,有不同的开发活动,包括需求规格、设计文档、编码、测试规范、测试用例等活动。 纵轴

    2024年02月05日
    浏览(90)
  • AIGC+低代码+软件工程,必将引起软件开发领域一场新的革命!

    AIGC+低代码+软件工程,必将引起软件开发领域一场新的革命!

    引言:AI低代码开发不仅是继面向过程,面向对象之后的一种新的抽象方式,也是继瀑布开发,敏捷开发之后的一种新的开发方法。 正是计算机技术的起步阶段,软件的基础设施正在建立,如操作系统,数据库,互联网底层协议等,软件正在从简单走向复杂。人们发现一旦软

    2024年02月12日
    浏览(8)
  • 软件工程中的人工智能:如何提高开发效率

    随着人工智能技术的发展,人工智能在软件工程领域的应用也越来越广泛。人工智能可以帮助软件工程师更高效地进行软件开发,提高开发效率。在这篇文章中,我们将讨论人工智能在软件工程中的应用,以及如何利用人工智能提高开发效率。 软件工程是一项复杂的技术,涉

    2024年02月21日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包