软件需求素材教学提纲.ppt
《软件需求素材教学提纲.ppt》由会员分享,可在线阅读,更多相关《软件需求素材教学提纲.ppt(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件需求素材内容提要需求分析面临的困难需求分析面临的困难需求分析基本方法和工具需求分析基本方法和工具数据需求分析数据需求分析功能需求分析功能需求分析非功能性需求分析非功能性需求分析实时系统需求分析实时系统需求分析基于基于USE CASEUSE CASE的需求分析的需求分析基于原型方法的分析基于原型方法的分析需求分析需求分析分析是指通过对分析是指通过对问题域问题域的研究的研究,获得对该领获得对该领域特性及存在于其中的待解决的问题特性域特性及存在于其中的待解决的问题特性的透彻理解并用文档说明。的透彻理解并用文档说明。需求分析是前面需求获取阶段的继续,通需求分析是前面需求获取阶段的继续,通过对所获取
2、的信息进一步加工获得对系统过对所获取的信息进一步加工获得对系统的更精确描述,成为转换成需求规格说明的更精确描述,成为转换成需求规格说明的直接信息元。的直接信息元。但是否将需求分析作为独立的过程?但是否将需求分析作为独立的过程?需求分析的关键点需求分析的关键点问题域的结构问题域的结构问题域的数据问题域的数据问题域的行为问题域的行为问题域的事件问题域的事件问题域的状态问题域的状态派生需求派生需求只是只是只是只是针对问题域针对问题域针对问题域针对问题域吗?吗?吗?吗?一.需求分析面临的困难需求分析是一个项目的开端,也是项目建设的基石。在失败的项目中,80是由于需求分析的不明确而造成的。因此一个项目成
3、功的关键因素之一,就是对需求分析的把握程度。由于软件项目的特殊性和行业覆盖的广阔性,以及需求分析的高风险性,软件需求分析的重要性是不言而喻的,同时需求分析又面临着很多困难。二.需求分析基本方法和工具图图1 软件需求工程的组成软件需求工程的组成获取需求工程需求开发需求管理分析分析 编写规约 确认 绘制关联图绘制关联图 创建用户界面和技术创建用户界面和技术原型原型 分析需求的可行性分析需求的可行性 确定需求的优先级确定需求的优先级 为需求建模为需求建模 创建数据字典创建数据字典 将需求分解到子系统将需求分解到子系统 应用质量功能调配应用质量功能调配需求分析包括:需求分析包括:需求分析包括:需求分析
4、包括:分析方法分析方法结构化分析结构化分析面向对象分析面向对象分析分析模型描述工具结构化分析工具DFDDFD、DDDD和和PSPEC PSPEC CFDCFD、CSPECCSPEC和和STD STD E-RE-R图图 面向对象分析工具用例图,类图,对象图用例图,类图,对象图对象对象-关系图关系图对象对象-行为图行为图需求分析建模工具需求分析建模工具数据流图数据流图实体关系图实体关系图状态转换图状态转换图对话图对话图类图类图Petri Net建模技术建模技术面向处理技术面向处理技术Context diagram 上下文图上下文图Data flow diagram(DFD)数据流图数据流图流程图流
5、程图面向数据结构技术面向数据结构技术E-R D-Entity Relationship Diagrams面向对象建模面向对象建模处理和数据相结合处理和数据相结合Object and Class 对象和类的技术对象和类的技术需求分析基本方法 结构化分析方法结构化分析方法(SA)(SA)结构化分析(Structured Analysis,简称SA法)的基本思想:“分解”和“抽象”n分解:把系统的复杂性降低到可以掌握的程度,把大问题分解成若干小问题,然后分别解决。n n抽象:即先考虑问题最抽象:即先考虑问题最本质的属性,暂把细节本质的属性,暂把细节略去,以后再逐层添加略去,以后再逐层添加细节,直至涉
6、及到最详细节,直至涉及到最详细的内容。细的内容。图4 自顶向下逐层分解数据流图数据流图DFD描述系统逻辑模型信息在系统中的流动和处理信息在系统中的流动和处理用途交流信息的工具交流信息的工具结构化分析和设计的工具结构化分析和设计的工具数据流图数据流图DFD组成符号 圆框代表加工圆框代表加工 箭头代表数据流向箭头代表数据流向 方框代表源点和终点方框代表源点和终点 双杠表示数据文件或数据库双杠表示数据文件或数据库分层 从高层到低层从高层到低层 分解前后的数据流必须一致分解前后的数据流必须一致命名 数据流数据流 处理处理数据流图 DFDDFD练习练习售书系统售书系统领书单领书单 进书通知进书通知 购书
7、单购书单 缺书单缺书单 学学生生教材教材购销购销系统系统书书 库库保保 管管员员图5 售书系统顶层数据流图数据流图 DFDDFD练习练习售书系统售书系统领书单领书单 进书通知进书通知 进书通知进书通知 购书单缺书单购书单缺书单 1销销售售 2采采购购书库书库保保管管员员学学生生F1教材存量表教材存量表 F2缺书登记表缺书登记表 功能需求分析 加工说明加工说明PSPECPSPEC加工说明PSPEC说明说明DFDDFD中的每个加工中的每个加工描述工具结构化语言结构化语言判定表判定表判定树判定树处理方法:事件列表与功能列表事件就是要求系统执行某项功能的请求业务事件与产品事件对复杂的业务任务采用任务说
8、明、用例说明或数据流图等方法进行解释。对复杂的功能采用数据流图、算法描述、活动图、数学说明等进行解释。处理方法:事件列表与功能列表事件及功能列表的优点主要作为核对清单,以说明应开发什么。其中主要作为核对清单,以说明应开发什么。其中对这些功能的详细说明构成了功能需求的主要对这些功能的详细说明构成了功能需求的主要部分。部分。开发人员可以方便的检查产品是否实现每一个开发人员可以方便的检查产品是否实现每一个功能。功能。用户能够在某种程度上确认业务事件和任务列用户能够在某种程度上确认业务事件和任务列表。表。通过一致性检查确定列表是否完备。数据需求分析 数据字典数据字典DDDDDFD中所有元素的定义的集合
9、内容数据流数据流数据流分量数据流分量数据存储数据存储处理(一般不用处理(一般不用DDDD描述)描述)定义数据的方法自顶向下分解数据自顶向下分解数据数据需求分析 数据字典数据字典DDDD数据元素的组合方式顺序:顺序:A+BA+B选择:选择:A|BA|B重复:重复:1A51A5可选可选:(A A)DD的用途分析阶段的交流工具分析阶段的交流工具包含控制信息包含控制信息数据库设计的基础数据库设计的基础E-R图用于对复杂数据的数据分析和建模实体、属性和关系组成符号0:11:10:m1:mE-R图例子电话机电话机生产厂商生产厂商经销商经销商用户用户生生产产购购买买使用使用经销经销数据需求与功能需求的区别数
10、据需求指定了系统的存储数据。功能需求则说明数据的用途,以及如何记录、计算、转换、修改及传输数据等。数据需求与功能需求的区别:状态迁移图 STDSTDSTD(State Transition Diagram)描述软件状态变迁符号表示矩形矩形-系统状态系统状态箭头箭头-状态转变方向状态转变方向规则表达式规则表达式-事件事件/触发行为触发行为状状 态态1状状 态态2事件事件/触发行为触发行为状态迁移图 STDSTD例子例子20秒到/翻屏生成最新数据/翻屏半小时到/工控处理半分钟到/传送空闲/采集物品经过/计数采集PLC计数传送工控处理实时翻屏上下文图作用上下文图能很好地概括产品的必要接口,初步上下文
11、图能很好地概括产品的必要接口,初步确定产品包含了哪些内容,产品之外又包含哪确定产品包含了哪些内容,产品之外又包含哪些内容。即说明产品及其环境的视图。些内容。即说明产品及其环境的视图。说明产品的范围。说明产品的范围。优点:上下文图为开发任务概括了所有的接口,在开上下文图为开发任务概括了所有的接口,在开发中或开发后,方便地验证是否已经处理了所发中或开发后,方便地验证是否已经处理了所有接口。有接口。用户容易理解,并发现遗漏的接口。用户容易理解,并发现遗漏的接口。对话图对话图对话图代表了一个高层抽象的用户界面体系结构。对话图代表了一个高层抽象的用户界面体系结构。对话图描绘了系统中的对话元素和它们之间的
12、导航连接,对话图描绘了系统中的对话元素和它们之间的导航连接,但它没有揭示具体的屏幕设计。但它没有揭示具体的屏幕设计。对话图可以使你在对需求的理解上探索假设的用户界面概对话图可以使你在对需求的理解上探索假设的用户界面概念。念。用户和开发者可以通过对话图在用户如何利用系统执行任用户和开发者可以通过对话图在用户如何利用系统执行任务上达成共同的视觉界面。务上达成共同的视觉界面。对话图与系统情节叙述相关联,这些叙述还包括对每一个对话图与系统情节叙述相关联,这些叙述还包括对每一个屏幕意图的简短说明。屏幕意图的简短说明。对话图抓住了用户一系统交互作用和任务流的本质,而不对话图抓住了用户一系统交互作用和任务流
13、的本质,而不会使你太快陷入到屏幕布局和数据元素的特定细节中。用会使你太快陷入到屏幕布局和数据元素的特定细节中。用户可以通过跟踪对话图寻找遗漏、错误或多余的转换,和户可以通过跟踪对话图寻找遗漏、错误或多余的转换,和因此而有遗漏、错误或多余的需求。因此而有遗漏、错误或多余的需求。你可以把在需求分析过程中形成的对话图用作详细用户界你可以把在需求分析过程中形成的对话图用作详细用户界面设计时的指南,最终形成一个执行的对话图,该对话图面设计时的指南,最终形成一个执行的对话图,该对话图记录了产品的真正用户界面的体系结构。记录了产品的真正用户界面的体系结构。对话图示例对话图示例非功能性需求分析所谓非功能性需求
14、,是指软件产品为满足用户业所谓非功能性需求,是指软件产品为满足用户业务需求而必须具有且除功能需求以外的特性。软务需求而必须具有且除功能需求以外的特性。软件产品的非功能性需求包括系统的件产品的非功能性需求包括系统的性能、可靠性、性能、可靠性、性能、可靠性、性能、可靠性、可维护性、可扩充性可维护性、可扩充性可维护性、可扩充性可维护性、可扩充性和和对对技术和对业务的适应性技术和对业务的适应性技术和对业务的适应性技术和对业务的适应性等。等。非功能性需求涉及的范围很广,软件产品本身不非功能性需求涉及的范围很广,软件产品本身不是孤立存在的,还涉及到诸多外在环境的影响。是孤立存在的,还涉及到诸多外在环境的影
15、响。非功能性需求必须考虑软件既要可用,又要易用。非功能性需求必须考虑软件既要可用,又要易用。实时系统需求分析实时系统广泛应用在航天、航空、通信、国防等领域。实时系统以计算机技术为基础、以应用为目的、将软件和硬件紧密结合在一起,实现特定功能的系统。与通用系统相比,实时系统具有一些显著的特点:实时性实时性可靠性可靠性可预测性可预测性实时系统需求分析基于实时系统的特点,在开发一个复杂的实时系基于实时系统的特点,在开发一个复杂的实时系统时,一个充分再现系统特性的建模工具至关重统时,一个充分再现系统特性的建模工具至关重要,对于系统分析、设计、实现、成本控制、可要,对于系统分析、设计、实现、成本控制、可重
16、用都具有重要的意义。重用都具有重要的意义。可选用可选用UML-RTUML-RT工具进行实时系统的需求分析。工具进行实时系统的需求分析。UML-RTUML-RT是利用通用建模语言是利用通用建模语言UMLUML的扩展机制并借鉴的扩展机制并借鉴实时的面向对象的方法实时的面向对象的方法ROOMROOM(Real-time Object-Real-time Object-Oriented ModelingOriented Modeling)的优点发展而来。)的优点发展而来。实时系统需求分析UML-RTUML-RT用协作图表示特定环境下类之间的关系。用协作图表示特定环境下类之间的关系。UML-RTUML-
17、RT有两种结构元素:模型结构和模型行为。有两种结构元素:模型结构和模型行为。模型结构:模型结构:封装体封装体端口端口连接器连接器模型行为:模型行为:协议协议状态机状态机定时服务定时服务Petri Net(Activity Diagram)ElementsPosition TransitionTransition arcMarkingPetri Net行为行为(功能功能)建模建模FSM有限状态机有限状态机-通过输入输出之间的因果关系通过输入输出之间的因果关系通过输入输出之间的因果关系通过输入输出之间的因果关系对系统的行为进行建模对系统的行为进行建模对系统的行为进行建模对系统的行为进行建模系统可看
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 需求 素材 教学 提纲
限制150内