




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件需求分析与建模软件需求分析与建模软件工程方法与实践12021/6/162/150主要问题主要问题l什么是软件需求?什么是软件需求?l软件需求分析有哪些过程?软件需求分析有哪些过程?l如何启动分析过程?如何启动分析过程?l什么是面向数据的建模?什么是面向数据的建模?l什么是面向数据流的建模?什么是面向数据流的建模?l什么是非形式化建模、半形式化建模和形式化建模?什么是非形式化建模、半形式化建模和形式化建模?l什么是统一建模语言(什么是统一建模语言(UML)?)?l什么是用例建模?什么是用例建模?l什么是领域模型?什么是领域模型?3/150软件需求分析过程软件需求分析过程4/150软件需求分析
2、过程软件需求分析过程l什么是软件需求?什么是软件需求?l软件需求分析有哪些过程?软件需求分析有哪些过程?l如何启动分析过程?如何启动分析过程?l需求规格文档有哪些内容?需求规格文档有哪些内容?l需求分析有哪些技术?需求分析有哪些技术?5/150 一般一般把需求定义为把需求定义为“(正在构建的)系统必须符(正在构建的)系统必须符合的条件或具备的功能或能力合的条件或具备的功能或能力”。电气和电子工程师。电气和电子工程师学会使用的定义与此类似。学会使用的定义与此类似。 著名的需求工程设计师著名的需求工程设计师 Merlin Dorfman Merlin Dorfman 和和 Richard H. T
3、hayer Richard H. Thayer 提出了一个包容且更为精练的定提出了一个包容且更为精练的定义,它特指软件方面义,它特指软件方面 - - 但不仅仅限于软件:但不仅仅限于软件: 1 1、软件需求可定义为软件需求可定义为: 用户需解决某一问题或达用户需解决某一问题或达到某一目标所需的软件功能。到某一目标所需的软件功能。 2 2、系统或系统构件为了满足合同、规约、标准或其、系统或系统构件为了满足合同、规约、标准或其他正式实行的文档而他正式实行的文档而必须满足或具备的软件功能必须满足或具备的软件功能。1 什么是软件需求什么是软件需求6/150需求工程基本任务需求工程基本任务需求工程需求工程
4、需求管理需求管理需求开发需求开发需求获取需求获取需求分析需求分析需求规格说明需求规格说明需求验证需求验证变更管理变更管理7/150需求分析的基本任务需求分析的基本任务l需求分析的基本任务不是确定系统怎样完成它的工需求分析的基本任务不是确定系统怎样完成它的工作,而是作,而是确定系统必须完成哪些工作确定系统必须完成哪些工作,也就是对目,也就是对目标系统提出完整、准确、清晰、具体的要求。并在标系统提出完整、准确、清晰、具体的要求。并在在需求分析阶段结束之前,由系统分析员写出软件在需求分析阶段结束之前,由系统分析员写出软件需求规格说明书,以书面形式准确地描述软件需求。需求规格说明书,以书面形式准确地描
5、述软件需求。l需求分析的任务需求分析的任务就是借助于当前系统的逻辑模型导就是借助于当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统的出目标系统的逻辑模型,解决目标系统的 “做什么做什么” 的问题。的问题。8/150需求分析模型需求分析模型系统实现模型系统实现模型目标系统目标系统当前系统当前系统物理模型物理模型逻辑模型逻辑模型逻辑模型逻辑模型物理模型物理模型模型化模型化抽象化抽象化实例化实例化具体化具体化理理解解需需求求表表达达需需求求导导出出做什么做什么怎怎么么做做需求分析的需求分析的主要工作主要工作系统流程图系统流程图或高层或高层DFDDFD图图DFDDFD图、图、STDSTD图、图、
6、E-RE-R图、用例图、用例图、图、类图、顺序图类图、顺序图等等9/150目目标标系系统统描述现实系统是如何描述现实系统是如何在物理上实现的。在物理上实现的。描述新系统是如何实描述新系统是如何实施的(包括技术)。施的(包括技术)。 逻辑模型逻辑模型 物理模型物理模型 ( (本质模型、概念模型本质模型、概念模型) () (实施模型、技术模型实施模型、技术模型) )描述重要的业务功能描述重要的业务功能,无论系统是如何实,无论系统是如何实施的。施的。需求分析模型需求分析模型10/150软件需求曾经让我们如此狼狈软件需求曾经让我们如此狼狈11/150软件开发的问题分类软件开发的问题分类1 1、需求规格
7、说明、需求规格说明4 4、软件和测试、软件和测试2 2、管理客户需求、管理客户需求5 5、项目管理、项目管理3 3、建档、建档6 6、编码、编码问题的重要性依次降低问题的重要性依次降低ESPITI(ESPITI(欧洲软件欧洲软件过程改进培训倡议)过程改进培训倡议)所作的一个调查,所作的一个调查,38003800个被调查者认个被调查者认为,软件开发的主为,软件开发的主要问题、次要问题要问题、次要问题和不是问题的问题和不是问题的问题如图。如图。一半以上的人认为,一半以上的人认为,软件的二个最大问软件的二个最大问题是:题是:1 1、需求规格说明、需求规格说明2 2、管理客户需求、管理客户需求相对而言
8、,编码不相对而言,编码不是问题是问题12/150需求错误的代价需求错误的代价修复的相对成本修复的相对成本需求阶段需求阶段0.1-0.20.1-0.2设计设计0.50.5维护维护2020验收测试验收测试5 5单元测试单元测试2 2编码编码1 1“ 需求开发需求开发可能是软件开发中最困难、最关键、最易可能是软件开发中最困难、最关键、最易出错以及最需要沟通的方面出错以及最需要沟通的方面 ”13/150需求变化需求变化合理范围内的变化:合理范围内的变化:u用户不了解自己的需求用户不了解自己的需求u需求本身易变,市场、技术、竞争因素需求本身易变,市场、技术、竞争因素不合理的变化:不合理的变化:u需求文档
9、质量不高需求文档质量不高u需求分析技能、技术和管理上的缺陷需求分析技能、技术和管理上的缺陷需求变化的原因:需求变化的原因:u未受控制的需求变更未受控制的需求变更u遗漏需求遗漏需求u用户交流不够用户交流不够u需求规约质量差需求规约质量差u低效的需求分析低效的需求分析谨记一点,谨记一点,需求是经常变动的需求是经常变动的,只有先做好需求的分析,了解只有先做好需求的分析,了解业务以后的发展趋势,做好具业务以后的发展趋势,做好具有拓展性的系统设计,才会给有拓展性的系统设计,才会给系统更大的扩展空间,从而在系统更大的扩展空间,从而在需求发生变化的时候可以更从需求发生变化的时候可以更从容的修改。容的修改。
10、14/150需求分析的重要性需求分析的重要性l需求的重要性:需求的重要性:u需求是产品的根源,需求工作的优劣对产品影响最大。需求是产品的根源,需求工作的优劣对产品影响最大。u是系统开发的基础,质量和成败的关键是系统开发的基础,质量和成败的关键 u国内软件业的痼疾:人们并不清楚究竟该做什么,但却一国内软件业的痼疾:人们并不清楚究竟该做什么,但却一直忙碌不停地开发。直忙碌不停地开发。l需求分析需求分析是通过问题识别、分析与综合、制订规格说明和评是通过问题识别、分析与综合、制订规格说明和评审等阶段,达到为系统设计提供依据的目标。因此,需求分审等阶段,达到为系统设计提供依据的目标。因此,需求分析过程包
11、括:析过程包括:u确定对系统的综合要求确定对系统的综合要求u分析系统的数据要求分析系统的数据要求u抽象出并确立目标系统的逻辑模型抽象出并确立目标系统的逻辑模型u编写需求规格说明书编写需求规格说明书15/150l 需求分析就是为了实现系统需求,并使最后交付成果与需求需求分析就是为了实现系统需求,并使最后交付成果与需求所要求的目标不产生:所要求的目标不产生:含糊性、不完整性、不可检验性、不含糊性、不完整性、不可检验性、不一致性、不可追踪性和不可用性一致性、不可追踪性和不可用性。l 需求分析面向下阶段需求分析面向下阶段系统概要设计系统概要设计l 需求分析采用自己的特定方法,达到相应的阶段要求需求分析
12、采用自己的特定方法,达到相应的阶段要求u采用的方法是尽量地让用户和开发团队都能理解并认同采用的方法是尽量地让用户和开发团队都能理解并认同系统目标和范围界定的方法系统目标和范围界定的方法业务业务/ /系统模型、用例和系统模型、用例和USE CASEUSE CASE图图u需求分析阶段的目标是用计算机的(而不再是用户)眼需求分析阶段的目标是用计算机的(而不再是用户)眼光和语言,分解需求、定义需求。但是,这个眼光不是光和语言,分解需求、定义需求。但是,这个眼光不是程序设计员程序设计员的眼光,是的眼光,是系统分析师系统分析师的眼光的眼光u经过需求处理后,经过需求处理后,达到需求规范要求达到需求规范要求u
13、分析的方法是一套分析的方法是一套“建模建模”技术技术需求分析的成果需求分析的成果16/150软件需求的分类软件需求的分类l功能需求:描述系统预期提供的功能或服务功能需求:描述系统预期提供的功能或服务u对系统应提供的服务对系统应提供的服务u如何对输入做出反应如何对输入做出反应u系统在特定条件下的行为系统在特定条件下的行为l非功能需求:指那些不直接与系统具体功能相关非功能需求:指那些不直接与系统具体功能相关的一类需求的一类需求u产品需求产品需求u机构需求机构需求u外部需求外部需求l领域需求:源于系统的应用领域需求领域需求:源于系统的应用领域需求17/150 功能需求功能需求l软件系统的功能需求描述
14、可以有许多方式:软件系统的功能需求描述可以有许多方式:u文字描述文字描述u图表表示图表表示l功能需求可以以不同的详细程度反复编写和细化功能需求可以以不同的详细程度反复编写和细化l功能需求描述应该完整而且一致和准确功能需求描述应该完整而且一致和准确u完整性意味着用户所需的所有的服务应该全部给完整性意味着用户所需的所有的服务应该全部给出描述出描述u一致性意味着需求描述不能前后矛盾一致性意味着需求描述不能前后矛盾u准确性是指需求不能出现模糊和二义性的地方准确性是指需求不能出现模糊和二义性的地方18/150功能需求描述:出卷系统功能需求描述:出卷系统l教师能够根据自己的要求手动或自动出一份试卷;教师能
15、够根据自己的要求手动或自动出一份试卷;l教师可以修改试卷中不合适的题目,并能自动生教师可以修改试卷中不合适的题目,并能自动生成各种样式的试卷;成各种样式的试卷;l教师可以对试题中的题目进行更新。教师可以对试题中的题目进行更新。19/150 非功能需求非功能需求l非功能需求主要与系统的总体特征相关,是一些限制非功能需求主要与系统的总体特征相关,是一些限制性要求,是对实际使用环境所做的要求性要求,是对实际使用环境所做的要求u性能要求性能要求u可靠性要求可靠性要求u安全性要求安全性要求u可用性要求可用性要求u移植性要求移植性要求l非功能需求关心的是系统整体特征而不是个别的系统非功能需求关心的是系统整
16、体特征而不是个别的系统的特征,比功能需求对系统更关键。的特征,比功能需求对系统更关键。l非功能需求却很难检验非功能需求却很难检验l非功能需求与功能需求有时会发生冲突,它们之间存非功能需求与功能需求有时会发生冲突,它们之间存在着相互作用关系在着相互作用关系20/150非功能需求举例非功能需求举例l一个一个POS系统所需的存储因为成本原因有所限制,系统所需的存储因为成本原因有所限制,而商品的描述和价目表的信息量很大。而商品的描述和价目表的信息量很大。l如果采用远程服务器,提供商品描述和价目表信如果采用远程服务器,提供商品描述和价目表信息,那必然需要网络通信,而这需要网络技术。息,那必然需要网络通信
17、,而这需要网络技术。l当当POS机数量多时必然引起服务器处理瓶颈问题。机数量多时必然引起服务器处理瓶颈问题。21/150 领域需求领域需求l领域需求领域需求反映应用领域的基本问题,直接影响到反映应用领域的基本问题,直接影响到系统的可用性。系统的可用性。l例如:图书馆系统的功能需求基于标准用户界面例如:图书馆系统的功能需求基于标准用户界面将一些文档输出到本地打印机或网络打印机上,将一些文档输出到本地打印机或网络打印机上,但因为版权限制,这些文档打印之后应立即删除。但因为版权限制,这些文档打印之后应立即删除。22/150领域需求示例:短信系统领域需求示例:短信系统l如果短信经过终端无线模块发送之前
18、必须经过短消息协议如果短信经过终端无线模块发送之前必须经过短消息协议标准编码才能发送出去。标准编码才能发送出去。l要对短信编码,必须要对由要对短信编码,必须要对由ESTI制订的制订的SMS规范有所了解规范有所了解u技术实现技术实现(含编码方式含编码方式)GSM 03.38、GSM 03.40uSMS的的DTE-DCE接口标准接口标准(AT命令集命令集):GSM 07.05l三种方式来发送和接收三种方式来发送和接收SMS信息:信息:uBlock ModeuText Mode:纯文本方式,可使用不同的字符集,也可:纯文本方式,可使用不同的字符集,也可用于发送中文短消息,主要用于欧美地区。用于发送中
19、文短消息,主要用于欧美地区。uPDU Mode:PDU Mode被所有手机支持,可以使用任被所有手机支持,可以使用任何字符集,这也是手机默认的编码方式何字符集,这也是手机默认的编码方式23/1502 需求分析过程需求分析过程l需求分析过程需求分析过程主要是理解客户需要什么、分析要求、评主要是理解客户需要什么、分析要求、评价可行性、协商合理的方案、无歧义地详细说明方案、价可行性、协商合理的方案、无歧义地详细说明方案、确认规格说明、管理需求以至将这些需求转化为可行系确认规格说明、管理需求以至将这些需求转化为可行系统统l过程包括:过程包括:u初步沟通初步沟通u导出需求导出需求u分析和精化分析和精化u
20、可行性研究可行性研究u协商与沟通协商与沟通u规格说明规格说明u需求验证需求验证u变更管理变更管理24/1502.1 初步沟通初步沟通l业务领域的共利益者(如业务管理人员,市场营业务领域的共利益者(如业务管理人员,市场营销人员,产品管理人员)定义业务用例销人员,产品管理人员)定义业务用例l确定市场的范围确定市场的范围l初略地可行性分析初略地可行性分析l确定项目范围的工作说明确定项目范围的工作说明25/1502.2 导出需求导出需求l导出需求应理解问题:导出需求应理解问题:u范围问题:系统的边界,是客户和开发者共同关范围问题:系统的边界,是客户和开发者共同关心的部分心的部分u理解问题:确定业务需求
21、、需求冲突、说明有歧理解问题:确定业务需求、需求冲突、说明有歧义和不可测试的需求义和不可测试的需求u易变问题:分清需求稳定部分和易变部分易变问题:分清需求稳定部分和易变部分l收集活动:收集活动:u识别真正的客户识别真正的客户/用户用户u正确理解客户的需求正确理解客户的需求u耐心听取客户意见和思考耐心听取客户意见和思考u尽量使用符合客户语言习惯的表达尽量使用符合客户语言习惯的表达26/1502.3 分析和精化分析和精化l开发一个精确的技术模型,用以说明软件的功能、开发一个精确的技术模型,用以说明软件的功能、特征和约束。特征和约束。l精化是一个分析建模动作,由一系列建模和求精精化是一个分析建模动作
22、,由一系列建模和求精任务构成任务构成l定义了问题的信息域,功能域和行为域定义了问题的信息域,功能域和行为域27/1502.4 可行性研究可行性研究l可行性研究的目的是确定用最小的代价,在尽可可行性研究的目的是确定用最小的代价,在尽可能短的时间内确定问题是否能够解决能短的时间内确定问题是否能够解决l可行性研究的输入是系统的一个框架描述和高层可行性研究的输入是系统的一个框架描述和高层逻辑模型逻辑模型l输出是一份需求开发评价报告,对需求工程和系输出是一份需求开发评价报告,对需求工程和系统开发是否值得做的具体建议和意见统开发是否值得做的具体建议和意见l三个问题:三个问题:u系统是否符合机构的总体要求?
23、系统是否符合机构的总体要求?u系统是否可以在现有的技术条件、预算和时间系统是否可以在现有的技术条件、预算和时间限制内完成?限制内完成?u系统能否把已存在的其他系统集成?系统能否把已存在的其他系统集成?28/150可行性研究的任务可行性研究的任务 l可行性研究的目的就是用最小的代价在尽可能短的时间内确可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。必须记住,可行性研究的目的不是解定问题是否能够解决。必须记住,可行性研究的目的不是解决问题,而是确定问题是否值得去解决。决问题,而是确定问题是否值得去解决。l一般来说,至少应该从下述四个方面去研究每种解法的可行一般来说,至少应该
24、从下述四个方面去研究每种解法的可行性:性:u技术可行性:使用现有的技术能实现这个系统吗?技术可行性:使用现有的技术能实现这个系统吗?u经济可行性:这个系统的经济效益能超过它的开发成本吗?经济可行性:这个系统的经济效益能超过它的开发成本吗?u操作可行性:系统的操作方式在这个用户组织内行得通吗?操作可行性:系统的操作方式在这个用户组织内行得通吗?u时间可行性:能在预定时间内完成吗?时间可行性:能在预定时间内完成吗?l可行性研究最根本的任务是对以后的行动方针提出建议。可行性研究最根本的任务是对以后的行动方针提出建议。29/1502.5 协商与沟通协商与沟通l调节冲突和问题调节冲突和问题l需求排序需求
25、排序l识别和分析与每项需求相关的风险、开发工作量、识别和分析与每项需求相关的风险、开发工作量、成本和交付时间成本和交付时间30/1502.6 软件需求规格软件需求规格l一个规格说明可以是一份写好的文档、一套图形一个规格说明可以是一份写好的文档、一套图形化的模型、一个形式化的数学模型、一组使用场化的模型、一个形式化的数学模型、一组使用场景、一个原型或以上各项的任意组合。景、一个原型或以上各项的任意组合。l软件需求规格(软件需求规格(SRS,Software Requirement Specification)是需求分析任务的最终)是需求分析任务的最终“产品产品”,它是客户、管理者、分析工程师、测
26、试工程师、它是客户、管理者、分析工程师、测试工程师、维护工程师交流的标准和依据。维护工程师交流的标准和依据。l软件需求规格描述了系统的数据、功能、行为、软件需求规格描述了系统的数据、功能、行为、性能需求、设计约束、验收标准、以及其他与需性能需求、设计约束、验收标准、以及其他与需求相关的信息。求相关的信息。l分为:分为:用户需求和系统需求用户需求和系统需求31/150用户需求描述示例用户需求描述示例l2.1 处理销售:完成一次销售过程。处理销售:完成一次销售过程。l2.1.1 基本流程:(基本流程:(1)顾客携带所购商品或服务到收银)顾客携带所购商品或服务到收银台通过台通过POS机付款;(机付款
27、;(2)收银员开始一次新的销售)收银员开始一次新的销售交易;(交易;(3)收银员输入商品条码;()收银员输入商品条码;(4)系统逐条记)系统逐条记录销售的商品,并显示该商品的描述、价格和累计额;录销售的商品,并显示该商品的描述、价格和累计额;重复(重复(3)(4),直到输入结束;(),直到输入结束;(5)系统显示)系统显示总额;(总额;(6)收银员告知顾客总额,并请求付款;()收银员告知顾客总额,并请求付款;(7)顾客付款,系统处理支付;(顾客付款,系统处理支付;(8)系统记录完整的销)系统记录完整的销售信息,并将销售金和支持信息发送到外部的帐务系售信息,并将销售金和支持信息发送到外部的帐务系
28、统和库存系统;(统和库存系统;(9)系统打印票据;()系统打印票据;(10)顾客携)顾客携带商品和票据离开。带商品和票据离开。l2.1.2 扩展流程:扩展流程:.32/150系统需求系统需求l系统需求是比用户需求更详细的需求描述,是系系统需求是比用户需求更详细的需求描述,是系统实现的基本依据统实现的基本依据l系统需求描述可能包括许多不同的模型,如对象系统需求描述可能包括许多不同的模型,如对象模型和数据流模型模型和数据流模型33/150软件需求各组成部分之间的关系软件需求各组成部分之间的关系34/150软件需求规格说明的原则软件需求规格说明的原则35/150需求规格文档标准需求规格文档标准1 1
29、 引言引言 1.1 1.1 编写目的编写目的 1.2 1.2 项目背景(单位和与其他项目背景(单位和与其他系统的关系)系统的关系) 1.3 1.3 定义(专门术语和缩写词)定义(专门术语和缩写词)2 2 任务概述任务概述 2.1 2.1 目标目标 2.2 2.2 运行环境运行环境 2.3 2.3 条件限制条件限制3 3 数据描述数据描述 3.1 3.1 静态数据静态数据 3.2 3.2 动态数据动态数据 3.3 3.3 数据库描述数据库描述 3.4 3.4 数据字典数据字典 3.5 3.5 数据采集数据采集4 功能需求功能需求 4.1 功能划分功能划分 4.2 功能描述功能描述5 性能需求性能
30、需求 5.1 数据精确度数据精确度 5.2 时间特性时间特性 5.3 适应性适应性6 运行需求运行需求 5.1 用户界面用户界面 5.2 硬件接口硬件接口 5.3 软件接口软件接口 5.4 故障处理故障处理7 其他需求其他需求(检测或验收标准、可用性、(检测或验收标准、可用性、可维护性、可移植性、安全保可维护性、可移植性、安全保密性)密性)36/1502.7 需求验证需求验证l需求验证是软件需求阶段的一个重要环节,需求验证是软件需求阶段的一个重要环节,未经验证的需未经验证的需求给项目成功带来较大的需求风险求给项目成功带来较大的需求风险l需求验证对需求文档和制品进行质量评估,确保需求需求验证对需
31、求文档和制品进行质量评估,确保需求说明准确、完整说明准确、完整l包括以下内容:包括以下内容:u正确性正确性u一致性一致性u完整性完整性u可行性可行性u必要性必要性u可检验性可检验性u需求的可跟踪性需求的可跟踪性u最后签字最后签字37/150需求变更的原因多种多样,但管理变更,应确立以需求变更的原因多种多样,但管理变更,应确立以下原则:下原则:(1 1)认识到变更是不可避免的,为变更指定计划;)认识到变更是不可避免的,为变更指定计划;(2 2)确定需求基线;)确定需求基线;(3 3)建立控制变更的唯一渠道)建立控制变更的唯一渠道(4 4)使用变更控制系统来控制变更过程;)使用变更控制系统来控制变
32、更过程;(5 5)分层次地管理变更。)分层次地管理变更。时间紧迫时间紧迫压缩需求过程压缩需求过程产品不满足需求产品不满足需求变更需求变更需求维护工作量增加维护工作量增加项目资源恶化项目资源恶化需求过程的恶性循环需求过程的恶性循环2.8 需求变更管理需求变更管理38/150需求变更管理需求变更管理l需求变更管理是组织、控制和文档化需求的系统方需求变更管理是组织、控制和文档化需求的系统方法法l建立建立基线基线以便在客户和开发人员之间建筑一个约定以便在客户和开发人员之间建筑一个约定l需求管理从标识开始,建立跟踪表需求管理从标识开始,建立跟踪表l需求跟踪表可以跟踪需求的特征、来源、依赖、子需求跟踪表可
33、以跟踪需求的特征、来源、依赖、子系统和接口等关系系统和接口等关系39/150通用跟踪表通用跟踪表需求需求系统系统A01A01 A02A02A03A03A04A04A05A05AmmAmmR01R01R02R02R03R03R04R04RnnRnn40/1503 3 启动分析过程启动分析过程l确定共利益者:直接或间接从正在开发的系统中获确定共利益者:直接或间接从正在开发的系统中获益的人。益的人。u例如,例如,POS机系统中的共利益者有:收银员,售机系统中的共利益者有:收银员,售货员,顾客,公司,经理,支付授权服务,帐务货员,顾客,公司,经理,支付授权服务,帐务系统和库存系统等系统和库存系统等l识
34、别视点:从不同的视角看待该系统。识别视点:从不同的视角看待该系统。u比如,收银员关心准确、快速生成一次销售,且比如,收银员关心准确、快速生成一次销售,且没有支付错误;售货员关注销售提成没有支付错误;售货员关注销售提成l协同工作:共利益者之间的协作协同工作:共利益者之间的协作l首次提问:集中于客户和其他共利益、整体目标、首次提问:集中于客户和其他共利益、整体目标、收益等收益等41/1504 非形式化需求分析技术非形式化需求分析技术l会谈:会谈:u正式会谈:提出一些可自由回答的问题正式会谈:提出一些可自由回答的问题u非正式会谈:提出一些事先准备好的议题非正式会谈:提出一些事先准备好的议题l情景分析
35、:需求分析从对场景的评论中得到信息,然情景分析:需求分析从对场景的评论中得到信息,然后再将其以形式化方式表示出来。后再将其以形式化方式表示出来。l使用调查表使用调查表u制定调查表制定调查表u分析分析l建立原型建立原型u界面界面u执行过程执行过程42/150场景分析场景分析l分析员与项目相关人员共同识别出情景,并捕获分析员与项目相关人员共同识别出情景,并捕获这些情景的细节。这些情景的细节。l把细节加入到一个纲要的需求描述中时,情景特把细节加入到一个纲要的需求描述中时,情景特别有用别有用l情景是对交互实例片断的描述,每个情景可能包情景是对交互实例片断的描述,每个情景可能包含一个或多个交互,它们能在
36、不同的细节层次上含一个或多个交互,它们能在不同的细节层次上提供不同类型的情景信息提供不同类型的情景信息l情景开始于一个框架,在导出过程中,细节被逐情景开始于一个框架,在导出过程中,细节被逐渐增加,直到产生交互的一个完整的描述渐增加,直到产生交互的一个完整的描述43/150情景情景l一个情景可能包括如下内容:一个情景可能包括如下内容:u 在情景开始部分有一个系统状态描述;在情景开始部分有一个系统状态描述;u 一个关于标准事件流的描述;一个关于标准事件流的描述;u 一个关于哪儿会出错,以及如何处理错误的一个关于哪儿会出错,以及如何处理错误的描述;描述;u 有关其他可能在同一时间进行的活动的信息;有
37、关其他可能在同一时间进行的活动的信息;u 在情景完成后系统状态的描述在情景完成后系统状态的描述44/1505 实例分析实例分析5.1 出卷系统出卷系统l用户:用户:u教师:关注如何出一份合理的试卷,并能根据样式打印与教师:关注如何出一份合理的试卷,并能根据样式打印与输出。输出。u学生:关注如何通过生成一些模拟试题,并在线学习和检学生:关注如何通过生成一些模拟试题,并在线学习和检查学习结果。查学习结果。u题库维护人员:关注试题的添加、更新和删除等工作。题库维护人员:关注试题的添加、更新和删除等工作。l视点:视点:u教师关注自动出卷、手工出卷、试卷编辑和试卷输出。教师关注自动出卷、手工出卷、试卷编
38、辑和试卷输出。u学生关注随时抽卷、联系试卷和评价分析。学生关注随时抽卷、联系试卷和评价分析。u题库维护人员关注试题管理。题库维护人员关注试题管理。45/150出卷系统的功能需求出卷系统的功能需求l自动出卷:系统根据教师的要求自动生成一份合自动出卷:系统根据教师的要求自动生成一份合理的试卷。理的试卷。l手动出卷:教师手动从候选的试题中挑选题目。手动出卷:教师手动从候选的试题中挑选题目。l随机抽卷:系统随机抽取试题生产一份试卷。随机抽卷:系统随机抽取试题生产一份试卷。l在线练习:学生可以在线做练习和查看答案。在线练习:学生可以在线做练习和查看答案。l在线评价:系统在线评价学生练习的情况。在线评价:
39、系统在线评价学生练习的情况。l试题管理:管理人员维护题库中的试题。试题管理:管理人员维护题库中的试题。l试卷编辑:更新试题。试卷编辑:更新试题。l试卷输出:根据某个样式输出试卷。试卷输出:根据某个样式输出试卷。46/1505.2 POS机系统机系统l收银员:能够准确、快速地输入,而且没有支付错误,因为收银员:能够准确、快速地输入,而且没有支付错误,因为如果少收货款,将从其薪水众扣除。如果少收货款,将从其薪水众扣除。l售货员:自动更新销售提成。售货员:自动更新销售提成。l顾客:希望以最小代价完成购买活动并得到快速服务。便捷、顾客:希望以最小代价完成购买活动并得到快速服务。便捷、清晰地看到所输入的
40、商品项目和价格。得到购买凭证,以便清晰地看到所输入的商品项目和价格。得到购买凭证,以便退货。退货。l公司:希望准确地记录交易,满足顾客要求。确保记录了支公司:希望准确地记录交易,满足顾客要求。确保记录了支付授权服务的支付票据。有一定的容错性。能够自动、快速付授权服务的支付票据。有一定的容错性。能够自动、快速地更新记帐和库存信息。地更新记帐和库存信息。l经理:能够快速执行超控操作,并易于更正收银员的不当操经理:能够快速执行超控操作,并易于更正收银员的不当操作。作。l支持授权服务:依据正确的通信格式进行授权服务。支持授权服务:依据正确的通信格式进行授权服务。l库存系统:正确的方式更新库存信息。库存
41、系统:正确的方式更新库存信息。l记账系统:能够准确地记录每次销售支付信息。记账系统:能够准确地记录每次销售支付信息。47/150POS机系统主要功能需求机系统主要功能需求l处理销售:收银员完成一次销售记录,并出具票处理销售:收银员完成一次销售记录,并出具票据和更新库存系统和帐务系统。据和更新库存系统和帐务系统。l处理支付:完成一次销售对应的支付,包括现金处理支付:完成一次销售对应的支付,包括现金支付,信用卡支付和支票支付。支付,信用卡支付和支票支付。l处理退货:根据顾客请求完成商品退货处理。处理退货:根据顾客请求完成商品退货处理。l办理会员卡:注册、注销和更新会员记录。办理会员卡:注册、注销和
42、更新会员记录。48/1505.3 图书馆系统图书馆系统l图书馆系统的共利益者与视点有:图书馆系统的共利益者与视点有:u图书流通管理:负责图书借还工作。图书流通管理:负责图书借还工作。u用户:希望快速得到借书,还书服务,能够续用户:希望快速得到借书,还书服务,能够续借、预约图书,以及查询个人和图书信息。借、预约图书,以及查询个人和图书信息。u编目管理员:负责图书的管理、用户管理和处编目管理员:负责图书的管理、用户管理和处理罚金等。理罚金等。49/150图书馆系统的主要功能需求图书馆系统的主要功能需求l图书借出:管理员完成一次借书过程。图书借出:管理员完成一次借书过程。l图书归还:管理员完成一次还
43、书过程。图书归还:管理员完成一次还书过程。l图书预约:用户查询要借的图书,若不能借,可预约图书预约:用户查询要借的图书,若不能借,可预约该图书。该图书。l图书续借:用户可以将图书的归还日期延长一段时间。图书续借:用户可以将图书的归还日期延长一段时间。l图书管理:添加新书。更新图书馆信息,销毁图书。图书管理:添加新书。更新图书馆信息,销毁图书。l用户管理:注册新用户,更新用户信息,注销用户。用户管理:注册新用户,更新用户信息,注销用户。l处理罚金:用户缴纳罚金吼,系统将罚金数额清零。处理罚金:用户缴纳罚金吼,系统将罚金数额清零。50/1505.4 短信系统短信系统l本系统共利益者和视点有:本系统
44、共利益者和视点有:u收发人员:负责发送短信给用户或接受用户的短信。收发人员:负责发送短信给用户或接受用户的短信。u用户管理:添加用户,更新用户信息,删除用户。用户管理:添加用户,更新用户信息,删除用户。l本系统主要功能需求有:本系统主要功能需求有:u短信发送:填写发送内容,选择发送用户,并指明是否短信发送:填写发送内容,选择发送用户,并指明是否要回执,然后发送短信。(通过无线终端或短信网关)要回执,然后发送短信。(通过无线终端或短信网关)u短信接收:从无线终端或短信网关读取短信内容,并显短信接收:从无线终端或短信网关读取短信内容,并显示查看。示查看。u用户管理:添加新用户,更新用户信息,删除用
45、户。用户管理:添加新用户,更新用户信息,删除用户。51/1505.5 ATM系统系统l银行客户银行客户:接受系统服务;接受系统服务;l银行的代表银行的代表:银行间自动柜员机有互惠协议;银行间自动柜员机有互惠协议;l支行管理者支行管理者:从该系统中获得管理信息;从该系统中获得管理信息;l支行柜台职员支行柜台职员:负责系统日常运转和处理客户意见;负责系统日常运转和处理客户意见;l数据库管理者数据库管理者:负责系统和客户数据库集成;负责系统和客户数据库集成;l银行信息安全管理者银行信息安全管理者:负责保证系统信息安全;负责保证系统信息安全;l银行市场开发部银行市场开发部:将该系统视为银行市场开拓手段
46、;将该系统视为银行市场开拓手段;l硬件和软件工程师硬件和软件工程师:负责硬件和软件维护及升级。负责硬件和软件维护及升级。52/150ATM系统主要功能需求系统主要功能需求l存款:从存款:从ATM机上存钱到指定账户上。机上存钱到指定账户上。l取款:从指定账户上取一定数量的货币。取款:从指定账户上取一定数量的货币。l转账:从一个账户取出一定数量的货币,然后转转账:从一个账户取出一定数量的货币,然后转存到另一个账号上。存到另一个账号上。l查询余额:察看指定账户的余额。查询余额:察看指定账户的余额。l修改密码:修改账户密码。修改密码:修改账户密码。53/15054/150需求分析通信途径需求分析通信途
47、径55/150l系统分析(详细业务调查)系统分析(详细业务调查)1 1、原则:、原则: 1 1)自顶向下;)自顶向下; 2 2)用户参与;)用户参与; 3 3)工程化;)工程化; 4 4)全面与重点相结合;)全面与重点相结合; 5 5)友善的工作方式。)友善的工作方式。2 2、调查范围、调查范围 1 1)组织机构与功能业务;)组织机构与功能业务; 2 2)数据和数据流程;)数据和数据流程; 3 3)业务流程;)业务流程; 4 4)决策方式及过程;)决策方式及过程; 5 5)可用资源与限制条件)可用资源与限制条件 6 6)现存问题及改进。)现存问题及改进。3 3、调查方法、调查方法 1 1)召开
48、调查会;)召开调查会; 2 2)访问;)访问; 3 3)发调查表;)发调查表; 4 4)参加业务实践。)参加业务实践。56/150某出版社系统调查表某出版社系统调查表编号提出问题1 1您在哪个部门工作?2出版业务流程是什么?3您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪些?6您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法?7您的部门需要成本核算和统计的内容有哪些?8您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系
49、统需要解决什么问题?57/150组织结构与功能分析组织结构与功能分析l组织结构图组织结构图u是一张反映组织内部之间隶属关系的树状结构图。是一张反映组织内部之间隶属关系的树状结构图。l组织业务关系图组织业务关系图58/150业务流程分析业务流程分析l需求:组织的某些部分不能完整地反映该部分所包含的所有需求:组织的某些部分不能完整地反映该部分所包含的所有业务,所以要改变业务,所以要改变u随着生产的发展,生产规模的扩大和管理水平的提高,组随着生产的发展,生产规模的扩大和管理水平的提高,组织的某些部分业务范围越来越大,功能也越来越细,由原织的某些部分业务范围越来越大,功能也越来越细,由原来单一的业务派
50、生出许多业务。来单一的业务派生出许多业务。u这些业务在同一组织中由不同的业务人员分管,其工作性这些业务在同一组织中由不同的业务人员分管,其工作性质已经逐步有了变化。质已经逐步有了变化。u这些变化将引起组织本身的变化,裂变出一个新的、专业这些变化将引起组织本身的变化,裂变出一个新的、专业化的组织,由它来完成某一类特定的业务功能。化的组织,由它来完成某一类特定的业务功能。l以功能为准绳来设计和考虑系统,系统将会对组织结构的变以功能为准绳来设计和考虑系统,系统将会对组织结构的变化有一定的独立性。化有一定的独立性。l以业务功能分析为基础,获得一张业务功能表以业务功能分析为基础,获得一张业务功能表所以:
51、系统必须所以:系统必须以业务为中心,以业务为中心,业务功能与组织结构保持相业务功能与组织结构保持相对的对的独立性独立性从组织结构直接转变为系统功能结构是初级从组织结构直接转变为系统功能结构是初级系统分析师的系统分析师的第二个常犯的错误第二个常犯的错误59/150l业务功能图业务功能图销售系统管理销售系统管理销售计销售计划管理划管理成品库成品库管理管理销售合销售合同管理同管理销售核销售核算管理算管理市场市场预测预测销销售售历历史史资资料料管管理理编编制制年年度度销销售售大大纲纲编编制制销销售售计计划划合合同同有有效效性性审审查查合合同同执执行行情情况况分分析析合合同同登登记记和和变变更更销销售售
52、利利润润核核算算销销售售统统计计分分析析出出入入库库管管理理库库存存统统计计市市场场预预测测市市场场分分析析60/150建立业务流程图建立业务流程图业务流程图表示系统的操作业务流程图表示系统的操作控制和数据流。业务流程图控制和数据流。业务流程图包括:包括:a a指明数据存在的数据符号,指明数据存在的数据符号,这些数据符号也可指明该数这些数据符号也可指明该数据所使用的媒体;据所使用的媒体; b b定义要执行的逻辑路径以定义要执行的逻辑路径以及指明对数据执行的操作的及指明对数据执行的操作的处理符号;处理符号;c c指明各处理和(或)数据指明各处理和(或)数据媒体间数据流的流线符号;媒体间数据流的流
53、线符号;d d便于读、写系统流程图的便于读、写系统流程图的特殊符号。特殊符号。 业务处理单位业务处理单位业务处理业务处理/ /功能描述功能描述表格报表制作表格报表制作数据文件存档数据文件存档收集处理数据收集处理数据信息传递过程信息传递过程61/150业务流程图业务流程图示示例例银行文件银行文件处理系统处理系统客户财务客户财务报表报表分期贷分期贷款程序款程序帐户核对帐户核对处理处理存款处理存款处理分期贷款分期贷款处理处理贷款分析贷款分析报告报告客户票据客户票据存款文存款文件修改件修改文件修文件修改核对改核对帐户核帐户核对程序对程序分期贷款分期贷款文件修改文件修改存款存款程序程序62/150需求分
54、析过程举例需求分析过程举例学学生生学学生生购购书书申申请请购购书书单单发发票票领领书书单单书书107107刘刘教务科教务科206206王王会计室会计室206206李李出纳员出纳员303303赵赵教材教材学生购买教材的具体模型学生购买教材的具体模型(1) (1) 通过对现实环境的调查,获当前系统的具体模通过对现实环境的调查,获当前系统的具体模型型( (物理模型物理模型) )63/150需求分析过程举例需求分析过程举例 (2) (2) 去掉具体模型中的非本质因素,去掉具体模型中的非本质因素,抽象抽象出当出当前系统的逻辑模型前系统的逻辑模型学生购买教材的逻辑模型学生购买教材的逻辑模型学学生生学学生生
55、购购书书申申请请购购书书单单发发票票领领书书单单书书审查审查有效性有效性开发票开发票开领开领书单书单发书发书64/150需求分析过程示意需求分析过程示意 (3) (3) 分析当前系统与目标系统的差别,建立分析当前系统与目标系统的差别,建立目标系统的逻辑模型目标系统的逻辑模型 计算机售书系统的逻辑模型计算机售书系统的逻辑模型学学生生学学生生购书单购书单发票发票领书单领书单审查并审查并开发票开发票开领开领书单书单无效书单无效书单65/150小结l需求分析也称为需求工程,是一个非常重要而有很复杂的,需求分析也称为需求工程,是一个非常重要而有很复杂的,需要交替进行,反复迭代的过程。需要交替进行,反复迭
56、代的过程。l软件需求分为功能需求和非功能需求。功能需求描述系统所软件需求分为功能需求和非功能需求。功能需求描述系统所预期提供的服务,而非功能需求描述与系统不直接相关的一预期提供的服务,而非功能需求描述与系统不直接相关的一些需求。些需求。l领域需求是一种特有的功能需求,反应应用领域的基本问题。领域需求是一种特有的功能需求,反应应用领域的基本问题。l软件需求规格说明文档描述了系统的数据、功能、行为、性软件需求规格说明文档描述了系统的数据、功能、行为、性能需求、设计约束、验收标准以及其他于需求相关的信息,能需求、设计约束、验收标准以及其他于需求相关的信息,它有可能成为客户与开发商之间的合同。它有可能
57、成为客户与开发商之间的合同。l需求分析过程通过执行初步沟通、需求导出、分析与精化、需求分析过程通过执行初步沟通、需求导出、分析与精化、可行性研究、协商和沟通、规格说明、验证和变更管理八个可行性研究、协商和沟通、规格说明、验证和变更管理八个不同的活动来完成。不同的活动来完成。l非形式技术主要包括会谈、调查表和场景技术,用于获取用非形式技术主要包括会谈、调查表和场景技术,用于获取用户需求和系统需求。户需求和系统需求。66/150结构化分析建模结构化分析建模67/150结构化分析建模结构化分析建模l分析模型元素分析模型元素l结构化需求分析结构化需求分析l面向数据的建模方法面向数据的建模方法l案例分析
58、案例分析68/150软软件件开开发发方方法法69/150结构化分析建模结构化分析建模l需求分析的任务就是准确地指出需求分析的任务就是准确地指出“软件目标产品必须做什么软件目标产品必须做什么”l需求分析的一个重要过程就是需求建模的过程需求分析的一个重要过程就是需求建模的过程l结构化分析方法结构化分析方法是一种传统的系统建模技术,其过程是创建描是一种传统的系统建模技术,其过程是创建描述信息内容和数据流模型,依据功能和行为对系统进行划分,述信息内容和数据流模型,依据功能和行为对系统进行划分,并描述过必须建立的系统要素。并描述过必须建立的系统要素。l结构化分析结构化分析:使用数据流程图、数据字典、结构
59、化英语、判定:使用数据流程图、数据字典、结构化英语、判定表和判定树等工具,来建立一种新的、称为结构化说明书的目表和判定树等工具,来建立一种新的、称为结构化说明书的目标文档需求规格说明书。标文档需求规格说明书。l结构化体现在将软件系统抽象为一系列的逻辑加工单元结构化体现在将软件系统抽象为一系列的逻辑加工单元, ,各单元各单元之间以之间以数据流数据流发生关联。发生关联。l该方法的要点是:面对数据流的分解和抽象;把复杂问题自顶该方法的要点是:面对数据流的分解和抽象;把复杂问题自顶向下逐层分解向下逐层分解70/1501 分析模型分析模型l分析模型的目的是为基于计算机系统提供必须的分析模型的目的是为基于
60、计算机系统提供必须的信息、功能和行为域的说明信息、功能和行为域的说明l模型是对系统某个方面的抽象,抛弃了具体细节,模型是对系统某个方面的抽象,抛弃了具体细节,对系统中最突出的特征作简化对系统中最突出的特征作简化71/1501.1 分析模型元素分析模型元素l使用不同的表现模型来描述分析模型使用不同的表现模型来描述分析模型l分析模型元素:分析模型元素:u基于场景的元素基于场景的元素u基于过程的活动序列的元素基于过程的活动序列的元素u基于类的元素基于类的元素u行为元素行为元素u面向信息流的元素面向信息流的元素u基于数据的元素基于数据的元素72/1501.2 分析模式分析模式l分析模式分析模式:在软件
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 单边合同范本
- 临时清理卫生合同范例
- 保价收购合同范例
- 卖家违约租房合同范例
- 卷闸合同范例
- 劳务分包补充合同范例
- 乡村房子租售合同范例
- 书画购销合同范例
- 写真加工转让合同范例
- 双象股合同范本
- 第二次世界大战后资本主义的变化及其实质
- 铁路钢轨探伤合同(2篇)
- 广州市海珠区六中鹭翔杯物理体验卷
- 国家职业技术技能标准 6-28-01-14 变配电运行值班员 人社厅发2019101号
- 肿瘤患者的康复与护理
- 电机学完整全套教学课件2
- 新版《铁道概论》考试复习试题库(含答案)
- 中国柠檬行业分析报告:进出口贸易、行业现状、前景研究(智研咨询发布)
- 【课件】人居与环境-诗意的栖居+课件高中美术人美版(2019)+必修+美术鉴赏
- 全国大学英语四级考试考试大纲(2023修订版)
- 抖音本地生活商家直播培训
评论
0/150
提交评论