版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第3章章 需求分析需求分析3.1 需求分析的任务需求分析的任务3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法3.3 分析建模与规格说明分析建模与规格说明3.4 实体实体-联系图联系图 3.5 数据规范化数据规范化3.6 状态转换图状态转换图3.7 其他图形工具其他图形工具3.8 验证软件需求验证软件需求3.9 小结小结需求分析的需求分析的意义意义 软件需求的深入理解是软件开发工作获软件需求的深入理解是软件开发工作获得成功的前提条件,不论我们把设计和编码做得成功的前提条件,不论我们把设计和编码做得如何出色,不能真正满足用户需求的程序只得如何出色,不能真正满足用户需求的程序只会令用户失
2、望,给开发带来烦恼。会令用户失望,给开发带来烦恼。 需求分析是软件定义时期的最后一个阶段,它需求分析是软件定义时期的最后一个阶段,它的基本任务的基本任务不是确定系统怎样完成不是确定系统怎样完成它的工作,它的工作,而而是确定系统必须完成是确定系统必须完成哪些工作,也就是对目标系哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。统提出完整、准确、清晰、具体的要求。 并在需求分析阶段结束之前,由系统分析员并在需求分析阶段结束之前,由系统分析员写出软件需求规格说明书,以书面形式准确地描写出软件需求规格说明书,以书面形式准确地描述软件需求。即:述软件需求。即: - - 准确地回答准确地回答“系
3、统必须做什么系统必须做什么?”?” 在分析软件需求和书写软件需求规格说明书的过程中,在分析软件需求和书写软件需求规格说明书的过程中,分析员和用户都起着关键的、必不可少的作用。分析员和用户都起着关键的、必不可少的作用。 3.1.1 3.1.1 确定对系统的综合要求确定对系统的综合要求1 1、功能需求功能需求:划分出系统必须完成的所有功能。划分出系统必须完成的所有功能。2 2、性能需求:、性能需求:包括响应时间、信息量的速率、主存容量、磁盘容量、包括响应时间、信息量的速率、主存容量、磁盘容量、安全性等方面内容。安全性等方面内容。3 3、可靠性和可用性需求、可靠性和可用性需求4 4、出错处理需求:、
4、出错处理需求:说明系统对环境错误应该怎样响应。说明系统对环境错误应该怎样响应。5 5、接口需求:、接口需求:用户接口需求、通信接口需求、软件用户接口需求、通信接口需求、软件/ /硬件接口需求。硬件接口需求。6 6、约束:、约束:如精度、工具和语言约束、设计约束、应该使用的标准和如精度、工具和语言约束、设计约束、应该使用的标准和平台。平台。7 7、 逆向需求:逆向需求:说明系统不应该做什么。说明系统不应该做什么。8 8、将来可能提出的要求:、将来可能提出的要求:以便将来扩充和修改以便将来扩充和修改3.1 3.1 需求分析的具体任务需求分析的具体任务3.1 3.1 需求分析的具体任务(续)需求分析
5、的具体任务(续)3.1.2 3.1.2 分析系统的数据要求分析系统的数据要求: :建立数据模型,用图形化的工具描述建立数据模型,用图形化的工具描述数据结构(如层次方框图和数据结构(如层次方框图和warnierwarnier图)。图)。3.1.3 3.1.3 导出系统的逻辑模型:导出系统的逻辑模型:数据流图、实体联系图、状态转数据流图、实体联系图、状态转换图、数据字典等。换图、数据字典等。3.1.4 3.1.4 修正系统开发计划:修正系统开发计划:由分析过程准确地估计系统的成本由分析过程准确地估计系统的成本和进度,修正以前制定的开发计划。和进度,修正以前制定的开发计划。需求分析步骤需求分析步骤:
6、 :获取需求获取需求(3.2(3.2节节) ) 分析建模与规格说明分析建模与规格说明(3.3(3.3节节,3.5,3.5节节,3.6,3.6节节,3.7,3.7节节) )验证软件需求验证软件需求(3.8(3.8节节) ) 3.2 3.2 与用户沟通获取需求的方法与用户沟通获取需求的方法3.2.1 访谈访谈3.2.2 面向数据流自顶向下逐步求精面向数据流自顶向下逐步求精3.2.3 简易的应用规格说明技术简易的应用规格说明技术3.2.4 快速建立软件原型(快速建立软件原型(它应该实现用户看得它应该实现用户看得见的功能,原型要具有快速并容易修改的特点见的功能,原型要具有快速并容易修改的特点)3.2.
7、23.2.2面向数据流自顶向下求精面向数据流自顶向下求精结构化分析方法就是面向数据流自顶向下层步求精。结构化分析方法就是面向数据流自顶向下层步求精。提倡提倡用户与开发者用户与开发者密切合作,共同标识问题,提出密切合作,共同标识问题,提出解决方案要素,商讨不同方案并指定基本需求。解决方案要素,商讨不同方案并指定基本需求。 进行初步的访谈进行初步的访谈 开发者和用户双方组织的代表出席会议开发者和用户双方组织的代表出席会议 每个小组为每张列表中的项目制定小型规格说明每个小组为每张列表中的项目制定小型规格说明 根据会议成果起草完整的软件需求规格说明书根据会议成果起草完整的软件需求规格说明书3.2.3
8、3.2.3 简易的应用规格说明技术简易的应用规格说明技术3.2.4 3.2.4 快速建立软件原型快速建立软件原型该方法是最准确、最有效、最强大的需求分析技术。该方法是最准确、最有效、最强大的需求分析技术。 快速原型就是快速建立起来的旨在演示目标系统主要快速原型就是快速建立起来的旨在演示目标系统主要功能的可运行的程序。功能的可运行的程序。构建原型的要点是,它应该实现用户看得见的功能构建原型的要点是,它应该实现用户看得见的功能( (例例如,屏幕显示或打印报表如,屏幕显示或打印报表) ),省略目标系统的,省略目标系统的“ “隐含隐含” ”功功能能( (例如,修改文件例如,修改文件) )。应该具备的第
9、一个特性是应该具备的第一个特性是“ “快速快速” ”。第二个特性是。第二个特性是“ “容易容易修改修改” ”。原型的。原型的“ “修改试用反馈修改试用反馈” ”过程可能要重复多过程可能要重复多次。次。3.3 3.3 分析建模与规格说明分析建模与规格说明3.3.1 3.3.1 分析建模分析建模 模型模型 -就是为了理解事物而对事物做出的一种抽象,是对事就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。通常,由一组图形符号和组物的一种无歧义的书面描述。通常,由一组图形符号和组织这些符号的规则组成。织这些符号的规则组成。 建模方法建模方法 在过去的数年中,人们提出了许多种分析建
10、模的方法,其中两种在过去的数年中,人们提出了许多种分析建模的方法,其中两种在分析建模领域占有主导地位:在分析建模领域占有主导地位: 第一种是结构化分析第一种是结构化分析 (Structured Analysis (Structured Analysis,SA)SA),7070年代末由年代末由DeMarcoDeMarco等人提出,这是传统的建模方法。该方法不是被所有的使用等人提出,这是传统的建模方法。该方法不是被所有的使用者一致地使用的单一方法,众多科学家对其进行了扩充,因此它是发者一致地使用的单一方法,众多科学家对其进行了扩充,因此它是发展了超过展了超过3030年的一个混合物。(模型由一组图形
11、符号和组织这些符号年的一个混合物。(模型由一组图形符号和组织这些符号的规则组成。结构化分析实质上是一种创建模型的活动。的规则组成。结构化分析实质上是一种创建模型的活动。 ) 具体的建模方法具体的建模方法/表达方式表达方式 需求分析过程应该建立3种模型,它们分别是数据模型、功能模型和行为模型。功能模型(面向流的建模):功能模型(面向流的建模):数据流图数据流图(DFD),指明系统具有的变换数据的功能,是建立功能模型的基础。数据模型(数据模型(数据数据建模):建模):如实体关系图实体关系图(ERD),描绘数据对象及数据对象之间的关系,是用于建立数据模型的图形。行为模型(基于行为模型(基于行为行为的
12、建模):的建模): Petri网、状态图,状态图,指明了作为外部事件结果的系统行为,是行为建模的基础。3.3.2 3.3.2 软件需求规格说明软件需求规格说明( (SRSSRS) ) S Software oftware R Requirement equirement S Specificationpecification 通常用自然语言通常用自然语言+ +模型,完整、准确、模型,完整、准确、具体地描述系统的数据要求、功能需求、性具体地描述系统的数据要求、功能需求、性能需求、可靠性和可用性要求、出错处理需能需求、可靠性和可用性要求、出错处理需求、接口需求、约束、逆向需求以及将来可求、接口需求
13、、约束、逆向需求以及将来可能提出的要求。能提出的要求。 软件需求规格说明书,是需求分析阶段软件需求规格说明书,是需求分析阶段得出的得出的最主要最主要的文档。的文档。软件需求说明书的编写提示(软件需求说明书的编写提示(GB-T-8567-2006GB-T-8567-2006)3.4 3.4 实体实体- -联系图联系图( (ER) ) Entity Relationship DiagramER图图 - - 是用来建立数据模型的工具。是用来建立数据模型的工具。数据模型数据模型 - - 是一种面向问题的数据模型,是按是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户照用户的观点
14、对数据建立的模型。它描述了从用户角度看到的数据,反映了用户的现实环境,而且与角度看到的数据,反映了用户的现实环境,而且与在软件系统中的实现方法无关。在软件系统中的实现方法无关。数据模型中包含数据模型中包含3 3种相互关联的信息:种相互关联的信息:数据对象数据对象(实体实体)、数据对象的)、数据对象的属性属性及数据对象彼此间相互及数据对象彼此间相互连接的连接的关系关系。实体实体- -联系图的符号联系图的符号ERER图图中包含了中包含了实体实体( (即数据对象即数据对象) )、关系关系和和属性属性等等3 3种基本成分。种基本成分。通常用通常用矩形框矩形框代表实体;代表实体;用连接相关实体的用连接相
15、关实体的菱形框菱形框表示关系;表示关系;用用椭圆形或圆角矩形椭圆形或圆角矩形表示实体表示实体( (或关系或关系) )的的属性;属性;并用并用直线直线把实体把实体( (或关系或关系) )与其属性连接起与其属性连接起来。来。举举 例例图图3.2 3.2 某校教学管理某校教学管理ERER图图对象对象教师属性教师属性学生属性学生属性课程属性课程属性联系属性联系属性关系关系3.5 3.5 数据规范化数据规范化3.6 3.6 状态转换图状态转换图-行为模型行为模型 状态转换图状态转换图( (简称为状态图简称为状态图) ) 通过描绘系统的通过描绘系统的状态状态及引起系统状态转换的及引起系统状态转换的事件事件
16、,来,来表示系统的表示系统的行为行为。1). 1). 状状 态态 状态规定了系统对事件的响应方式状态规定了系统对事件的响应方式。系统对事件的响应,既可以是做一个系统对事件的响应,既可以是做一个( (或一系或一系列列) )动作,也可以是仅仅改变系统本身的状态,动作,也可以是仅仅改变系统本身的状态,还可以是既改变状态又做动作。还可以是既改变状态又做动作。 初态初态 ( (即初始状态即初始状态) ) 状态状态 终态终态 ( (即最终状态即最终状态) ) 中间状态中间状态一张状态图中一张状态图中只能有一个初态只能有一个初态,而终态则可以,而终态则可以有有0 0至多个至多个。2). 2). 事事 件件
17、事件就是引起系统做动作或事件就是引起系统做动作或( (和和) )转换状态的控制转换状态的控制信息。信息。 例如,用户移动或点击鼠标等都是事件。初态用实心圆初态用实心圆表示,表示,终态用一对同心圆终态用一对同心圆( (内圆为实心圆内圆为实心圆) )表示。表示。中间状态用圆角矩形表示中间状态用圆角矩形表示,可以用两条水平横线把它分成,可以用两条水平横线把它分成上、上、中、下中、下3 3个部分。个部分。3). 3). 符符 号号活动表(可选)活动表(可选)状态变量的名状态变量的名字和值(可选)字和值(可选)状态的名称(必须有的)状态的名称(必须有的)初态初态终态终态中间状态中间状态状态转状态转换换(
18、1 1) “事件名事件名”可以是任何事件的名称。在活动表中经可以是任何事件的名称。在活动表中经常使用下述常使用下述3 3种标准事件:种标准事件:entryentry,exitexit和和dodo。 entryentry事件指定事件指定进入该状态的动作进入该状态的动作,exitexit事件指定事件指定退出该退出该状态的动作状态的动作,而,而dodo事件则事件则指定在该状态下的动作指定在该状态下的动作。需要。需要时可以为事件指定参数表。时可以为事件指定参数表。 (2 2)动作表达式描述应做的)动作表达式描述应做的具体动作具体动作。3). 3). 符符 号号事件名事件名(参数表参数表)/动作表达式动
19、作表达式活动表的语法格式:活动表的语法格式:事件表达式的语法:事件表达式的语法:守卫条件是一个布尔表达式,如果既有事件说明守卫条件是一个布尔表达式,如果既有事件说明又有守卫条件,则当事件发生且守卫条件为真是又有守卫条件,则当事件发生且守卫条件为真是状态转换才发生,如果只有守卫条件没有事件说状态转换才发生,如果只有守卫条件没有事件说明,则守卫条件为真时,发生状态转换。明,则守卫条件为真时,发生状态转换。事件说明事件说明守卫条件守卫条件/动作表达式动作表达式事件说明:事件名(参数表)事件说明:事件名(参数表)动作表达式:当状态转换开始时执行该表达式。动作表达式:当状态转换开始时执行该表达式。4).
20、 4). 举举 例例电话系统的状态图电话系统的状态图课堂作业:P73第6题。从问题陈述可知,复印机的状态主要有“闲置”、“复印”、“缺纸”和“卡纸”。引起状态转换的事件主要是“复印命令”、“完成复印命令”、“发现缺纸”、“装满纸”、“发生卡纸故障”和“排除了卡纸故障”。 3.7 3.7 其他图形工具其他图形工具 层次方框图层次方框图 Warnier图图 IPO图图3.7.1 3.7.1 层次方框图层次方框图层次方框图用层次方框图用树形结构的一系列多层次矩形框树形结构的一系列多层次矩形框描绘数据的描绘数据的层次结构层次结构。树形结构的树形结构的顶层是一个单独的矩形框顶层是一个单独的矩形框,它代表
21、完整的数据,它代表完整的数据结构,结构,下面的各层矩形框代表这个数据的子集下面的各层矩形框代表这个数据的子集,最底层最底层的的各个框代表组成这个数据的各个框代表组成这个数据的实际数据元素实际数据元素( (不能再分割的元不能再分割的元素素) )。随着结构的精细化,层次方框图对数据结构也描绘得越来随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,越详细,这种模式非常适合于需求分析阶段的需要这种模式非常适合于需求分析阶段的需要。系统。系统分析员从对顶层信息的分类开始,沿图中每条路径反复细分析员从对顶层信息的分类开始,沿图中每条路径反复细化,直到确定了数据结构的全部细节时为止。化,直到确定了数
22、据结构的全部细节时为止。举举 例例领导层辅助决策系统领导层辅助决策系统查询查询辅助决策辅助决策物物资资信信息息重重点点供供料料信信息息商商情情信信息息人人员员状状况况合合同同监监视视财财务务信信息息计计划划执执行行情情况况工工程程进进展展情情况况超超储储低低储储情情况况经经营营指指标标历历年年对对比比价价格格预预测测物物资资用用量量预预测测库库存存定定额额核核定定库库存存结结构构分分析析经经济济采采购购批批量量保保本本保保利利分分析析3.7.2 3.7.2 Warnier图图法国计算机科学家法国计算机科学家WarnierWarnier提出了表示提出了表示信息层次信息层次结构结构的另外一种图形工
23、具。的另外一种图形工具。WarnierWarnier图也用树形结构描绘信息,但是这种图图也用树形结构描绘信息,但是这种图形工具比层次方框图提供了形工具比层次方框图提供了更丰富的描绘手段更丰富的描绘手段。用用WarnierWarnier图可以图可以表明信息的逻辑组织表明信息的逻辑组织。它可以指出一类信息或一个信息元素是它可以指出一类信息或一个信息元素是重复出现重复出现的的,也可以表示特定信息在某一类信息中是,也可以表示特定信息在某一类信息中是有条有条件地出现件地出现的。的。重复和条件约束是说明软件处理过程的基础,所重复和条件约束是说明软件处理过程的基础,所以很容易把以很容易把WarnierWar
24、nier图转变成软件设计的工具。图转变成软件设计的工具。举举 例例 图中表示一种软件产品图中表示一种软件产品要么要么是系统软件是系统软件要么要么是应用软是应用软件。系统软件中有件。系统软件中有P1P1种操作系统,种操作系统,P2P2种编译程序,此外还有种编译程序,此外还有软件工具。软件工具是系统软件的一种,它又可以进一步细软件工具。软件工具是系统软件的一种,它又可以进一步细分为编辑程序、测试驱动程序和设计辅助工具,分为编辑程序、测试驱动程序和设计辅助工具,图中标出了图中标出了每种软件工具的数量。每种软件工具的数量。3.7.3 3.7.3 IPO图图左边的框左边的框中列出有关的输入中列出有关的输
25、入数据。数据。中间的框中间的框内列出主要的处理,内列出主要的处理,处理框中列出处理的次序暗处理框中列出处理的次序暗示了执行的顺序,但是用这示了执行的顺序,但是用这些基本符号还不足以精确描些基本符号还不足以精确描述执行处理的详细情况。述执行处理的详细情况。在在右边的框右边的框内列出产生的输内列出产生的输出数据。出数据。在在IPOIPO图中还用类似向量符号图中还用类似向量符号的粗大箭头清楚地指出的粗大箭头清楚地指出数据数据通信通信的情况。的情况。一种改进的一种改进的IPO图图( (也称为也称为IPO表表) )在需求分析阶段可以使用在需求分析阶段可以使用IPO表表简略地简略地描述系统的描述系统的主要算法主要算法( (即数据流图中即数据流图中各个处理的基本算法各个处理的基本算法) )。需求分析阶段,需求分析阶段,IPO表中表中的许多附加信息暂时还不的许多附加信息暂时还不具备,但在设计阶段可以具备,但在设计阶段可以进一步补充修正这些图,进一步补充修正这些图,作为设计阶段的文档。作为设计阶段的文档。这正是在需求分析阶段用这正是在需求分析阶段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026江苏省机关事业单位工勤技能岗位技术等级考试(公路养护·中级)历年参考题库含答案详解
- 2026江苏住院医师规范化培训考试(口腔科Ⅱ阶段)题库历年参考题库含答案详解
- 2026正高卫生职称-医学口腔类-口腔正畸学(正高)代码:025历年参考题库含答案详解
- 2026教师职称-辽宁-辽宁教师职称(基础知识、综合素质、初中音乐)历年参考题库含答案详解3套试卷
- 本班课程设计随笔
- 图书借还系统开发课程设计
- 茶叶知识课程设计
- 基于SPI的Flash读写控制器在设计方法课程设计
- 炒菜基础原理课程设计
- 图嵌入安全课程设计课程设计
- GB/T 31880-2026检验检测机构诚信基本要求
- 2026 年夏季四防洪涝过后复工复产安全课件
- 2026秋新教材人教版五年级上册数学《观察简单组合体》教学设计(3课时)
- 1.4 人口普查 课件(共25张) 北师大版数学四年级上册
- 妊娠期妇女心肺复苏急救指南(2025版)中文版+围产期急救操作规范
- 精益基础考试题及答案
- 2026年四川省成都市中考语文真题(试题+答案)
- 2025中国联通广东省分公司校园招聘(174个岗位)笔试历年参考题库附带答案详解
- 2026年国家电网职称考试(工业工程技术-营销工程)(副高)经典试题及答案
- 汽车售后服务管理PPT完整全套教学课件
- 本科毕业论文的写作课件
评论
0/150
提交评论