关于需求分析有哪些方法的相关问题,今天柠檬ai小编就来给大家整理说明一下,希望对大家有帮助
三种需求分析的方法:结构化分析方法、面向对象的分析方法、面向问题域的分析方法。
结构化的分析方法是传统的分析法,它的好处是在需求阶段可以不需要精确地定义系统,只需要根据业务框架确定系统的功能范围,以及每个功能的处理逻辑和业务规则,功能需求规格书等。因为不需要精确描述,因此描述系统的方式比较灵活多样,可以采用图表、示例图、文字等等方式来描述系统。在系统开发以前,一般还可以采用更为直观的原型系统方式和最终用户进行交流和确认,因此对业务需求的要求会低一些,业务需求阶段的周期相对容易控制;通过业务全景图,最终用户也能了解系统的功能;通过功能活动图和业务规则的描述,也可以相对精确地描述业务系统;因为没有严格的标记语言,可以采用适当的篇幅描述适当的系统。当然,这种方法的缺点也是明显的,分析人员和业务人员之间可能缺乏共同语言,机器不能识别业务需求书,在设计阶段还需要继续和用户确认一部分功能。
面向对象的分析方法的最大好处是在需求阶段,就能够非常精确地描述一个系统,采用程序语言的方式和最终用户交流(最终用户必须要熟悉这种语言),能够在项目一开始就发现很多问题,避免在开发的过程中出现需求的反复,而且在系统设计和开发阶段不需要最终用户参与。在实施上,一般可以采用场景、业务功能等方式来描述,比较适合于业务流程环节多的系统,或者软件产品的开发。但是,我们也要看到,在现实中,绝大多数的应用系统都很难在需求阶段就可以被精确地抽象化定义,所以这种方法的缺点和困难也是显而易见的:首先,用户要非常清楚地知道最终的业务系统应该是什么样,或者采用一种抽象的方式能够确定最终的应用系统;其次,因为最终用户不需要参与设计和开发阶段的工作,所以双方确定业务需求的过程也会比较长;同时,因为是精确描述,因此描述系统的语言是非常逻辑化的,一般通过某种方式可以使机器识别业务需求,采用这种方式写的业务需求是非常格式化的,一方面描述一个系统需要的信息非常多,可能使需求说明的篇幅非常长,不便于理解和阅读;另外由于通过抽象的方式来推演最终系统的运行方式,对业务人员的要求非常高。
最低0.27元开通文库会员,查看完整内容>
原发布者:450262598
案例one:教学管理系统(用例驱动的交互式需求获取)以一个教学管理系统JXGL的分析与设计作为示例,说明用例驱动技术在软件项目开发中的应用。高等学校的教学管理内容十分丰富,工作繁多。作为一个示例,规定开发教学管理系统JxGL只处理每学期的课程选修注册和学生的成绩管理。教学管理系统JXGL的用户是学校的学生、教师和教学管理员。学生使用JXG系统查询新学期将开设的课程和授课教师的情况,选择自己要学习的课程,并进行登记注册。学生还可以使用JXGL系统查询自己的课程成绩。教师使用JXGL系统查询新学期将开设的课程、参加听课的学生情况,以及学生的考试成绩。教学管理员使用JXGL系统进行教学管理,包括新学期的课程选课注册管理和学生成绩管理。1.需求描述:对教学管理系统JXGL要求提供两个方面的服务:(1)选课管理,负责新学期的课程选课注册工作;(2)成绩管理,负责学生成绩管理。在选课管理方面应填写的用户需求描述如下。(1)录入与生成新学期课程表教学管理员在新学期开始前录入新学期课程,打印将开设的课程目录表,供师生参考选择。若某课程的实际选课学生少于10人,则停开该课程,把该课程从课程目录表中删除;若某课程的选课学生多于30人,则停止选课。(2)学生选课注册新学期开始前一周为选课注册时间,在此期间学生可以选课注册,并且允许改变或取消注册申请。每个学生选课不超过4门课程。每门课程最多允许30名学生选课注册。学生可以在图书馆、各系资料室、学生宿舍等处的计算
需求分析
格式
1 引言
1.1 编写目的
【说明】目标:对用户的需求进行收集、整理与分析,弄清楚系统究竟要 “干什么”及“由谁干”,并用合乎规范的文字及图表予以描述。不需要说明“怎么干”,因为那是设计阶段的事情。有关文字与图表应尽量让用户便于理解。
预期读者:用户方的相关业务人员、双方的开发人员和系统维护人员。
作用:实现开发方与用户方的双向沟通,是把业务需求计算机化的关键步骤。
为下一阶段的概要设计工作提供依据。当用户的需求发生变更时,应添写补充说 明;如变动过大可形成新版本。
软件需求说明(Software Requirements Specification)的主要作用为:
为用户方与开发方建立共同协议奠定基础。
提高开发效率、强化进度控制。
为项目的的评测与验收提供依据。
便于移植。
作为系统不断提高的基础。
1.2 编写背景
1.2.1 系统名称及版本号
【说明】形如“网银三期***系统V3.0.0”。其中,版本号的格式为“XX.XX.XX”,X为阿拉伯数字,左“0”可省略。
1.2.2 使用者
【说明】适应对象和范围。主要指预期读者,也供有关领导审阅。
1.2.3 与其它系统的关系
【说明】在用户现有的及预期的整个应用系统中,给本系统准确定位。用示意图及相应的文字予以说明。
2 用户的基本情况
2.1 系统建设背景
【说明】项目背景与依据、现有基础、项目规模、预期目标等。可繁可简,格式自定。
2.2 组织机构与职能
【说明】用层次示意图及相应文字表示(如果需要开发的系统与部门没有直接依赖关系此节可省略,本章随后的小节数将顺次减1),
加注:组织机构的层次数、数目、各个机构的职能简述。
2.3 用户特点
【说明】所在行业特征、操作人员与系统维护人员的数量、学历与水平、数据量大小、使用频度等。
2.4 用户业务分析
【说明】在本部分,希望系统分析人员能够对用户业务现状进行分析、对用户对本系统的未来发展方向作出一定的预测等。以便设计人员对业务及其发展有所了解,增强系统设计的前瞻性。
2.5 计算机应用现状
【说明】可繁可简,格式自定。
3 业务需求
3.1 项目概述
【说明】
第一、 指明项目的开发意图、应用目标(总目标、分期目标)、作用范围、预期效益等。
第二、 指明在输入信息转变为输出信息的过程中,为了满足用户的业务需求,应用软件必须完成的基本功能(采用自然语言叙述)。但此时不要求对基本功能进行分解。
第三、 如果本系统与其他系统相关联,则应确定本系统的基本功能边界(可采用图示+文字说明的形式,用蓝色标示出本系统的功能,用绿色标示出相关系统的功能)。
3.2 约束条件
3.2.1 费用约束
【说明】 预计投资金额概算、其中软硬件费用的比例、资金分期到位计划。
3.2.2 进度约束
【说明】预计完成日期、分步实施期限。
3.2.3 其它约束
【说明】场地面积限制、通信设施基础、其它干扰因素。
注意:任何计算机系统都不是包罗万象的;用户自身的能力也是有限的。轻诺必寡信。故应特别指出:由于哪些条件的约束,本系统不能满足哪些业务需求与系统需求。
本章主要介绍项目的总体业务功能,要求站在客户的角度把握系统需求.
3.3 性能需求
【说明】依据ISO9000标准及我们的理解,下面列出了软件的6组性能,共涵盖21个子特性。这些性能/子特性的相对重要性并不是等同的。编写时,可以基于具体项目的实际需求,对下述标题或内容进行取舍/侧重。事实上不可能做到面面俱到,往往要作出某些折中。
本节说明系统在性能方面的预期目标,不要求提供实现上述目标的具体实施方案。
3.3.1 功能性
【说明】指与软件实现的各项功能及其指定性质有关的一组属性。这些功能都是满足规定需求和潜在需求所必需的。它包括5个子特性:
适用性:与指定业务所需各项功能的实现及其适合程度有关的一些软件属性。
准确性:与保证正确(或符合要求的)结果(或效果)有关的一些软件属性。
互操作性:与软件同一些指定系统交互作用能力有关的一些软件属性。
复合性:使软件遵守相关的标准、约定/法律或类似规定有关的一些软件属性。
保密安全性:与针对蓄意(或无意)而非法存取程序和数据的预防能力有关的一些软件属性。这里主要指的是保护软件的要素,旨在防止各种非法访问、修改、破坏、泄密及感染计算机病毒等。
3.3.2 可靠性
【说明】指在规定的条件和期限内,与软件保持其性能水平有关的一组软件属性。
成熟性:与软件故障引起的失误频率有关的一些软件属性。
容错性:在软件故障发生或其规定界面被破坏的情况下,与软件仍能保持规定性 能水平的能力有关的一些软件属性。
可恢复性:在失效的情况下、在限定的期限和强度范围内,与软件重建性能水平 并恢复直接受影响的数据的能力有关的一些软件属性。
3.3.3 易使用性
【说明】指与规定用户(或潜在用户)使用软件所需的努力程度、对这种使用所做的评估有关的一组软件属性。它包括3个子特性:
易理解性:与用户为理解其逻辑概念及适用范围需做的努力有关的一些软件属性。
易学习性:与用户学习其应用(例如操作控制、输入、输出)需做的努力有关的一些软件属性。
易操作性:与用户操作及运行控制需做的努力有关的一些软件属性。
3.3.4 高效性
【说明】指在特定的运行环境中,描写软件性能水平与所用的资源量之间关系的一组软件属性。它包括两个子特性:
时间特性:在完成软件功能时,与响应时间、处理时间、吞吐率有关的一些软件属性。
资源特性:在完成软件功能时,与所用资源量及占用时间有关的一些软件属性。
3.3.5 可维护性
【说明】与对软件进行指定的修改所需的工作量有关的一组软件属性。它包括4个子特性:
易分析性:与诊断故障、确定失败原因、在需要修改的部位进行标识等所做努力有关的一些软件属性。
易修改性:与实施修改、排除故障、环境改变所做努力有关的一些软件属性。
稳定性:与修改的意外影响带来的风险有关的一些软件属性。
易测试性:与对经过修改的软件进行检验/确认做努力有关的一些软件属性。
3.3.6 可移植性
【说明】指软件从一个环境转移的另一个环境时,与其适应能力有关的一组软件属性。它包括4个子特性:
适应性:除已有手段外,无须采用其它措施或手段,软件便应能适应指定的环境。与这种能力有关的一些软件属性称为适应性。
易安装性:在指定环境内,与安装软件所需努力有关的一些软件属性。
一致性:软件从一个环境转移的另一个环境时,应符合一定的标准和约定。与这种符合程度有关的一些软件属性,称为一致性。
易替换性:有时会出现这种需求:在某个其它软件的运行环境下,要用本软件来置换那个软件。与这种可能性及所需努力有关的一些软件属性。
4 用户需求
【说明】本章下面介绍的是一般规模软件系统的书写格式。在书写过程中可能要以业务名称划分小节(例如:5.1 代收电话费)。每个业务小节包含两个部分:第一部分是对此业务中角色和功能的定义;第二部分是此业务的图形分析方法。
在本章开始未分节的部分,应当绘制一个总体结构图,依据这个总体结构图进行一个总体描述,使得阅读者对下面分节描述的各个功能形成一个整体印象。这个总体结构图不一定是指在ROSE工具中绘制的用例总图, 而是根据需要可以选择包括“用例总图”、“适当级别的数据流图”、“IDFF图”、“数据流程图”或其他专业图形分析图示等。
每个小节中的第二部分采用rational公司的rose2000作为工具绘制用例(use case)图和顺序(sequence)图。在这里采用rose工具是作为绘图分析工具使用,对需求的描述和分析并不代表我们的设计采用UML标准和面向对象的设计,具体分析人员应当根据实际的用户需求描述绘制顺序图,而并不着重考虑对象的分析限制。
需求变更的处理原则:获得批准的需求变更,需要在《需求分析》中有所体现。增加的需求,需直接从本章尾部顺序添加,相应的小节编号也需要依次增加。例如:本章小节为5.1—5.5,增加的需求小节编号则为5.6。删除的需求,不需要将相应需求直接从《需求分析》中删除,而只需在相应需求小节上注明删除,并标出《需求变更单》编号。修改的需求,可在相应的需求小节直接修改。所有对《需求分析》内容的修改必须在修改历史中留有记录。
4.1 业务名称1
4.1.1 角色/功能定义
【说明】根据会议纪要、小组讨论,确定系统中的角色(角色可以为外部系统或系统用户),和功能,并给出相应的定义或解释。
4.1.2 图形分析
【说明】本节主要描述相应业务的用例图和顺序图的内容
统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。它记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。UML适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域以及各种开发工具,是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。
在本需求模板中我们选取的是UML视图来辅助进行图形需求分析,选用Rational公司的ROSE工具完成。在需求分析过程需要完成结构分类中的用例分析,绘制用例图;对用例的动态行为进行交互分析,描述执行系统功能的各个角色之间相互传递消息的顺序关系,绘制顺序图。
在这里请作者将制作的用例图和顺序图拷贝到本文档中。
基本成分:用例(use case)、用例视图(use case view)、角色(role、actor)、顺序图(sequence diagram)、协作图(collaboration diagram)。
模板和命名:为更好地使用ROSE图形分析工具,我们设定一个基本的分析模板,文件名为lansoftmdl.mdl。该文档涉及项目开发的需求、概设和详设3个阶段,在需求阶段主要完成模板中用例视图(use case view)规定完成的部分。在项目中使用该模板后生成的mdl文件纳入文档的配置管理,具体命名参照SEMP体系的命名规定。修改历史记入文档开始部分的“mdl文档修改历史表”中。
【ROSE使用要求】
1、 要求使用ROSE工具时必须完成模板和使用要求中规定完成的内容,在完成基本内容的基础上,可以根据需要增加部分内容。
2、 在公司没有购买确定版本的ROSE以前,使用的ROSE版本应在项目开始前在项目组规定好,并由配置管理员负责配置。
3、 在用例视图(use case view)中建立一个名称为main的主用例图(use case diagram),具体内容应当包括所有用例图的全部内容,具体应用时还可以根据情况建立多个用例图(use case diagram)。
4、 在用例视图中请采用中文对所有的角色(actor\role)进行命名。其中角色必须在双击该对象图后,详细填写该角色的描述(documentation)和该角色代表的角色数量(detail-multiplic)。
5、 在用例视图中请采用中文对所有的用例(use case)进行命名。命名中在一般的中文概括前应增加代表本节编号的部分,如“1.用户认证”,顺序编号。其中用例必须在双击该对象图后,详细填写该用例的描述(documentation)。
6、 在每个用例下必须组织建立相应的顺序图(sequence diagram),对于一个用例可以包含多个顺序图(sequence diagram),各个顺序图(sequence diagram)的命名需在一般的中文概括前增加代表本节编号的部分,如“1.1用户认证”,顺序编号,其中第一个1代表所属的用例,第二个1代表顺序图(sequence diagram)的编号。产生顺序图的数量根据说明需求的具体要求设定。其中顺序图中的各个对象消息(object message)必须在双击该对象图后,详细填写该对象消息(object message)的描述(documentation)。
4.1.3 数据存储需求
【说明】根据会议纪要、小组讨论,对于在需求调研中有关的数据实体对象或数据实体信息,应当根据需要提出可能数据类型和数据长度以及单位量纲的记录或建议。
5 运行环境
【说明】本章只提出运行环境的逻辑结构,物理结构将在《概要设计说明书》中给出。
容许提出几种可选方案。
5.1 硬件平台
【说明】指出本应用软件适用的主机/服务器与终端/工作站的技术指标、基本配置、接口特点、特殊约定等。
应尽可能地说明上述设备在各级用户机构预计的分布状态。
5.2 网络平台
【说明】选型标准、网络类型、基本部件、接口情况、对综合布线的要求、限制条件等。应画出网络(广域网、局域网)的拓扑结构图,说明后者对前者的接入方式。
5.3 软件平台
【说明】操作系统的名称、生产厂家、版本号等。
数据库的名称、生产厂家、版本号等。
数据库设计工具的名称、生产厂家、版本号等。
网络通信协议的名称、生产厂家、版本号等。
前端开发工具的名称、生产厂家、版本号等。
测试开发工具的名称、生产厂家、版本号等。
现场运行时需要的工具软件的名称、生产厂家、版本号等。
配置管理工具软件的名称、生产厂家、版本号等。
6 附录
【说明】列出基础素材中的文件、报表、单据等的样张,再附上必要的注释。
如果条件成熟,可以把数据字典(data dictionary)作为附件列于后。
6.1 电子文档编写方式与使用工具
【说明】编写要求、工具名、版本号、操作系统平台。使用多种工具时,应分别说明。形如:
Microsoft Word 97 for Windows 95/98
Power Designer 6.0 for Windows 95/98
Rational Rose 98 for Wintel
Visio或Power Point 97 for Windows 95/98
6.2 定义说明与符号
【说明】包括对专用术语及缩略语的解释、所用到的图(如use case、sequence图)之图符的表示与解释等。
6.3 参考资料
【说明】格式:作者,[版本号,]资料来源,日期 [,起止页号] 。其中,《质量保证计划》是必选的参考资料。
6.4 有关表格清单
【说明】列出用户提供的素材,加上我们积累的有关文件,作为系统分析的基础。在这里除系统内部没有用户参与的需求分析工作外,必须包括一个以上的用户访谈纪要、用户确认签名文件以及用户访谈计划等文件的列表。在列表中的文件应当作为附件与需求文档共同纳入配置管理
软件需求分析需要多年的编程工作经历,在各企业中多是有丰富经验老资格的软件程序员担当。大学刚毕业想找到需求分析师的工作岗位,有一定的难度。
如果先把初期的工作岗位定位在软件测试,可能更实际一些。这个工作要求有一般的编程能力,经过适当的软件测试培训,当然自学也可以。而且非常适合女生心细的特点。
如果你有时间,在网页设计师方面或网站设计师方面做些准备,今后找工作,会容易一些。对软件专业的学生,几乎没有难度方面的障碍。女生工作稳定,不爱跳槽,坐得住,网络企业也非常欢迎,找工作时一般不会遇到性别歧视的。
祝你学业有成,前途似锦。
1 写出系统的任务和特点
2 要实现的功能模块及其作用
3 系统结构图(用UML描述)
4 采用的数据库
5 开发运行环境
就这5点就ok了
以上就是柠檬ai小编为你收集整理关于需求分析有哪些方法的全部内容,如果还有其他疑问,请联系本站小编!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/4619.html