软件工程PPT课件第3章软件需求分析.ppt

上传人:牧羊曲112 文档编号:4997182 上传时间:2023-05-28 格式:PPT 页数:155 大小:691.50KB
返回 下载 相关 举报
软件工程PPT课件第3章软件需求分析.ppt_第1页
第1页 / 共155页
软件工程PPT课件第3章软件需求分析.ppt_第2页
第2页 / 共155页
软件工程PPT课件第3章软件需求分析.ppt_第3页
第3页 / 共155页
软件工程PPT课件第3章软件需求分析.ppt_第4页
第4页 / 共155页
软件工程PPT课件第3章软件需求分析.ppt_第5页
第5页 / 共155页
点击查看更多>>
资源描述

《软件工程PPT课件第3章软件需求分析.ppt》由会员分享,可在线阅读,更多相关《软件工程PPT课件第3章软件需求分析.ppt(155页珍藏版)》请在三一办公上搜索。

1、1,第三章 软件需求分析,3.1 需求分析的任务准确地定义未来系统的目标,确定为了满足用户的需求系统必须做什么。对目标系统提出完整、准确、清晰、具体的要求。用 规范的形式准确地表达用户的需求。,2,在分析软件需求和书写软件需求规格说明书的过程中,分析员和用户都起着关键的、必不可少的作用。用户与分析员之间需要沟通的内容非常多,在双方交流信息的过程中很容易出现误解或遗漏,也可能存在二义性。不仅在整个需求分析过程中应该采用行之有效的通信技术,而且必须严格审查验证需求分析的结果。,3,(1)必须理解并描述问题的信息域,根据这条准则应该建立数据模型。(2)必须定义软件应完成的功能,这条准则要求建立功能模

2、型。(3)必须描述作为外部事件结果的软件行为,这条准则要求建立行为模型。(4)必须对描述信息、功能和行为的模型进行分解,用层次的方式展示细节。,需求分析的结构化分析方法准则,4,实体-联系图,描绘数据对象及数据对象之间的关系,是用于建立数据模型的图形。数据流图,描绘当数据在软件系统中移动时被变换的逻辑过程,指明系统具有的变换数据的功能,是建立功能模型的基础。状态转换图,指明了作为外部事件结果的系统行为,描绘了系统的各种行为模式(称为“状态”)和在不同状态间转换的方式,是行为建模的基础。,5,需求分析的任务和步骤,需求分析的任务建立分析模型 编写需求说明 需求分析的步骤问题分析 需求描述 需求验

3、证(评审),6,需求获取的常用方法,联合分析小组 用户代表、领域专家和系统分析员客户访谈 充分准备,寻找共同语言 循序渐进、逐步逼近 实际观察用户工作流程 问题分析与确认 多个来回,7,软件需求分析的通信途径,8,分析建模,结构化分析模型面向对象分析模型分析模型描述工具DFD、DD和PSPEC(加工规约)CFD、CSPEC(控制规约)和STD E-R图 用例图,对象-关系图,对象-行为图,9,结构化分析模型,10,面向对象分析模型,11,实体-联系图是一种概念性的数据模型,包含3种相互关联的信息:数据对象是可以由一组属性来定义的实体。属性定义了数据对象的性质。数据对象彼此之间相互连接的方式称为

4、联系,也称为关系。(1)一对一联系(11)(2)一对多联系(1N)(3)多对多联系(MN),实体-联系图,12,某校教学管理ER图,13,ER图中包含了实体(即数据对象)、关系和属性等3种基本成分;用矩形框代表实体;用连接相关实体的菱形框表示关系;用椭圆形或圆角矩形表示实体(或关系)的属性,并用直线把实体(或关系)与其属性连接起来。,实体-联系图的符号,14,数据流图DFD,描述系统逻辑模型信息在系统中的流动和处理用途交流信息的工具结构化分析和设计的工具,15,软件需求分析的几个阶段,问题分析问题评估和方案综合建模规约复审 系统分析员的主要焦点是“做什么(what)”,不是“怎样做(how)”

5、,16,3.2 需求获取,3.2.1 需求获取的目的 清楚地理解所要解决的问题 完整地获取用户需求,需求获取面临的挑战:,(1)问题空间理解(2)人与人之间的通信(3)需求的不断变化,17,3.2.2 需求获取的内容,1.用户需求分类(1)功能性需求:定义了系统做什么(2)非功能性需求:定义了系统工作时 的特性,18,2.两类需求包括的内容,(1)功能(2)性能(3)环境(4)界面(5)用户或人的因素,19,(6)文档(7)数据(8)资源(9)安全保密(10)软件成本消耗与开发进度(11)质量保证,20,(1)功能需求,系统做什么?系统何时做什么?系统何时及如何修改 或升级?,21,(2)性能

6、需求,软件开发的技术性指标:存储容量限制 执行速度、相应时间 吞吐量,22,(3)环境需求,硬件设备:机型、外设、接口、地点、分布、温度、湿度、磁场干扰等软件:操作系统 网络 数据库,23,(4)界面需求,有来自其它系统的输入吗?有到自其它系统的输出吗?对数据格式有规定吗?对数据存储介质有规定吗?,24,(5)用户或人的因素,用户类型?各种用户熟练程度?需受何种训练?用户理解、使用系统的难度?用户错误操作系统的可能性?,25,(6)文档需求,需哪些文档?文档针对哪些读者?,26,(7)数据需求,输入、输出数据的格式?接收、发送数据的频率?数据的准确性和精度?数据流量?数据需保持的时间?,27,

7、(8)资源需求,软件运行时所需的数据、软件。内存空间等资源。软件开发、维护所需的人力、支撑软件、开发设备等。,28,(9)安全保密要求,需对访问系统或系统信息 加以控制吗?如何隔离用户之间的数据?用户程序如何与其它程序 和操作系统隔离?系统备份要求?,29,(10)软件成本消耗 与开发进度需求,开发有规定的时间表吗?软硬件投资有无限制?,30,(11)质量保证,系统的可靠性要求?系统必须监测和隔离错误吗?规定系统平均出错时间?出错后,重启系统允许的时间?系统变化如何反映到设计中?维护是否包括对系统的改进?系统的可移植性?,31,3.3 需求分析的步骤,当前系统,目标系统,物理模型,逻辑模型,逻

8、辑模型,物理模型,模型化,抽象化,具体化,实例化,怎么做,做什么,当前系统,目标系统,需求定义,32,对象系统,模型系统,抽象(映射),模型应用,模型构造的过程,逻辑模型和物理模型,模型是对对象系统的形式化的特征 抽象,概括性或近似地表示;形式化语言:数学语言、图形等;构造模型的过程是一个抽象、分 析的过程。,33,现行系统,目标系统,描述现实系统是如何在物理上实现的。,描述新系统的主要业务功能和用户新的需求,无论系统应如何实施。,描述新系统是如何实施的(包括技术)。,逻辑模型 物理模型(本质模型、概念模型)(实施模型、技术模型),描述重要的业务功能,无论系统是如何实施的。,34,需求分析过程

9、示意,学生,(1)通过对现实环境的调查,获当前系统的具体模型(物理模型),学生,购书申请,购书单,发票,领书单,书,107刘,教务科,206王,会计室,206李,出纳员,303赵,教材,学生购买教材的具体模型,35,需求分析过程示意,(2)去掉具体模型中的非本质因素,抽象出当前系统的逻辑模型,学生购买教材的逻辑模型,学生,学生,购书申请,购书单,发票,领书单,书,审查有效性,开发票,开领书单,发书,36,需求分析过程示意,(3)分析当前系统与目标系统的差别,建立目标系统的逻辑模型,计算机售书系统的逻辑模型,学生,学生,购书单,发票,领书单,审查并开发票,开领,书单,无效书单,37,需求分析过程

10、示意,(4)对目标系统进行完善和补充,并写出完整的需求说明;(5)对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止。,38,3.4 分析建摸,结构化分析(传统建模方法)面向对象分析,3.4.1 结构化分析方法,(Structured Analisys,SA)基于数据流技术的分析方法 需求获取应遵循的基本原则:分解 抽象 信息隐藏 模块化,39,分析模型的主要目标,描述用户需要建立创建软件设计的基础定义软件完成后可被确认的一组需求,40,分析模型的结构,数据字典,数据流图,E-R图,状态-迁图,加,工,规,约,控制规约,数,据,对象,描 述,41,分析模型的元素,数据字典(DD)

11、:模型核心(中心库)E-R图(ERD):数据流图(DFD)指明数据在系统中移动时如何被变换;描述对数据流进行变换的功能;DFD中每个功能的描述包含在加工规约(小说明)。状态变迁图(STD)指明作为外部事件的结果,系统将如何 动作。,42,3.4.2 数据建模,E-R图是数据建模的基础,教师,学生,课程,职称,性别,姓名,职工号,学,教,姓名,性别,学号,系,年级,成绩,课程号,课名,学时,学分,教学ER图,学分,43,系统流程图是概括地描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子形式描绘组成系统的每个部件(程序,文档,数据库,人工过程等)。系统流程图表达的是数据在系统各部件之间流动

12、的情况,而不是对数据进行加工处理的控制过程,因此尽管系统流程图的某些符号和程序流程图的符号形式相同,但是它却是物理数据流图而不是程序流程图。,系统流程图,44,面对复杂的系统时,一个比较好的方法是分层次地描绘这个系统。首先用一张高层次的系统流程图描绘系统总体概貌,表明系统的关键功能。然后分别把每个关键功能扩展到适当的详细程度,画在单独的一页纸上。这种分层次的描绘方法便于阅读者按从抽象到具体的过程逐步深入地了解一个复杂的系统。,分层,45,数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被

13、处理的逻辑过程。数据流图是系统逻辑功能的图形表示,即使不是专业的计算机技术人员也容易理解它,因此是分析员与用户之间极好的通信工具。此外,设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎样具体地实现这些功能。,数据流图,46,数据流图是系统的逻辑模型,然而任何计算机系统实质上都是信息处理系统,也就是说计算机系统本质上都是把输入数据变换成输出数据。因此,任何系统的基本模型都由若干个数据源点/终点以及一个处理组成,这个处理就代表了系统对数据加工变换的基本功能。对于上述的定货系统可以画出基本系统模型。,47,3.4.3 功能建模和信息流,基于计算机的系统,输入信息,信息流模型,输出信

14、息,外部实体,外部实体,外部实体,输入信息,外部实体,外部实体,输出信息,输出信息,48,一.数据流图,(DFD,Data Flow Diagram)描述逻辑模型的图形工具,表示数据在系统内的的流动和处理。用途交流信息的工具结构化分析和设计的工具,49,库存管 理,财务管 理,1,配送中心管理信息系统的零层DFD,订货单表,供应商,D1,门店,发票,订货单,送货单,出库单、入库单,订货单表,D3,门店,商品编码,2,商品价 格表,D4,订单表,D5,采购管 理,4,销售管 理,5,配送管 理,3,路单,门店销售信息,缺货单表,D2,订单,商品价格记录,单正确订,销售预测信息,缺货单,缺货单,5

15、0,数据存储(文件或数据库),1.数据流图的四个基本成分,2,或,数据流(数据对象),或,位于被建模系统之外的信息生产者或消费者,称为外部项。说明数据输入的源点(数据源)或数据输出的汇点(数据池),或,2,2,II,数据处理(加工),51,2.DFD各成分的作用和命名注意事项,数据流,表示数据和数据流向三个重要属性:流向(从加工出发或流向加工)数据组成数据流名字,52,数据流命名方法和注意事项,用名词或名词词组 不要使用意义空洞的名词。尽量使用现实系统已有名字,当命名出现困难,考虑是否数据流划分不恰当。不要把控制流作为数据流。,53,加工的命名原则,顶层的加工名就是软件项目 的名字 最好使用动

16、宾词组,也可用 主谓词组 不要使用空洞的动词,54,数据存储,分层数据流图中,数据存储 一般局限在某一层或某几层命名方法与数据流相似,55,举例:,数据源,数据池,没有输出!,加工,没有输入!,加工,数据源,数据池,数据源,数据存储,数据源,数据存储,数据存储,数据存储,数据流必须起于且/或止于加工,加工至少有一个输入数据流和一个输出数据流,56,DFD的性质,与程序流程图的区别(不同用途):程序流程图用于表示程序的过程设计软件分析阶段的工具,DFD不能表示程序的控制结构.(分析阶段只须考虑软件“干什么”,不必问“怎样干”),DFD可以用来表示一个系统或软件在任何层次上的抽象。较大型软件系统D

17、FD分成多层(子图、父图概念),可以表示数据流和功能的进一步的细节。,57,分层数据流图,58,S,2,1,3,2.2,2.1,2.3,3.1,3.2,顶层,0层,1层,(基本系统模型),(系统的子功能),DFD的层次分解,59,怎样画DFD,(1)先画出顶层DFD。(2)自顶向下画出各层DFD 分解原则:分解后的软件成分有相对独立功能 一次分解不要加入细节过多 由外(粗)向里(细)画DFD,60,送货单,配送中心管理信息系 统,配送中心管理信息系统的顶层DFD,供应商,领书单,路单,门店销售信息,连锁门店,订单,发票,订货单,61,库存管 理,财务管 理,1,配送中心管理信息系统的零层DFD

18、,订货单表,供应商,D1,门店,发票,订货单,送货单,出库单、入库单,订货单表,D3,门店,商品编码,2,商品价 格表,D4,订单表,D5,采购管 理,4,销售管 理,5,配送管 理,3,路单,门店销售信息,缺货单表,D2,订单,商品价格记录,正确订单,销售预测信息,缺货单,缺货单,62,入库,1.1,库存管理子系统的DFD(第一层),订货单表,供应商,D1,送货单,出货单表,D3,门店,出库单,库存表,D2,在库,1.2,出库,1.3,入库单号,库存记录,63,制作路单,3.2,配送管理子系统的DFD(第一层),订货单表,D1,路单记录,门店信息表,D2,门店,路单表,D3,路单执行情况跟踪

19、,3.4,确定配送 路线,3.3,配送计划,门店信息,拣货单表,D4,制定配送 计划,3.1,门店信息,路单,配送计划,路单,64,分配货 位号,入库子系统的DFD(第二层),货位文件,DS2,订单文件,DS1,入库单,库存商品文件,DS4,修改库存商品信息,记录入 库单,货位信息,合格商品,检验送 货单,入库单文件,DS3,货位号,货位号,新库存信 息,旧库存信息,合格商品,送货单,65,画分层DFD的指导原则,(1)父图与子图的平衡 模型细化时必须保持数据流的连续性,即每个细化部分的输入和输出必须保持不变(父图和子图输入数据和输出数据应一致)。,66,A,1,4,父图和子图的平衡,2,3,

20、B,F,E,G,C,D,67,C,3.1,父图和子图的平衡,E,D,3.3,3.2,68,购书单,教材购销系统,教材购销系统的顶层DFD,学生,领书单,缺书单,进书通知,书库保管员,69,购书单,缺书单,销售教材,采购教材,1,2,第二层DFD(层)教材购销系统,教材存量表,学生,F1,缺书登记表,F2,书库保管员,进书通知,教材入库信息,领书单,70,按书号汇总缺书,2.1,2.3,第三层DFD(1层)采购子系统(2.0),待购教材表,F5,教材一览表,F6,书库保管员,进书通知,教材存量表,F1,2.2,按出版社统计缺书,修改教材库存和待购量,F2,缺书登记表,缺书单,教材入库信息,71,

21、购书单,缺书单,销售,采购,1,2,第二层DFD(层)教材购销系统,教材存量表,学生,F1,缺书登记表,F2,书库保管员,进书通知,领书单,教材入库信息,72,1.2,第三层DFD(1层)销售子系统(1.0),无效书单,教材存量表,F1,开发票,F2,缺书登记表,学生,各班学生用书表,F3,售书登记表,F4,1.1,审查有效性,1.3,登记并开领书单,学生,1.5,补售教材,1.4,登记缺书,购书单,发票,领书 单,有效购书单,教材入库信息,73,父图与子图平衡的特例,领书单,1.3,发票,教材,学生,领书单,父图,子图,发票学生教材,74,画分层DFD的指导原则,(2)区分局部文件和局部外部

22、项,.1,.2,.3,1,父图,子图,75,购书单,缺书单,销售教材,采购教材,1,2,第二层DFD(层)教材购销系统,教材存量表,学生,F1,缺书登记表,F2,书库保管员,进书通知,教材入库信息,领书单,76,按书号汇总缺书,2.1,2.3,第三层DFD(1层)采购子系统(2.0),待购教材表,F5,教材一览表,F6,书库保管员,进书通知,教材入库信息,教材存量表,F1,2.2,按出版社统计缺书,修改教材库存和待购量,F2,缺书登记表,缺书单,77,画分层DFD的指导原则,(3)遵守加工的编号原则子图图号为分解的父图中的加工号,同级子图在最后数字以序号区别。,78,S,2,1,3,2.2,2

23、.1,2.3,3.1,3.2,顶层(不编号),0层,1层,79,画分层DFD的指导原则,(4)分解的深度与层次 按功能情况定,一般设深度为3-5;如超过5最好分解画,否则容易出错。,80,实例,图书馆管理系统功能:购入新书 读者借书 读者还书 图书注销 查询统计,81,购入新书:,新书编卡片(包括:分类目录号、流水号(唯一)、书名、作者、内容摘要、价 格、购书日期等信息)写入图书目录文件,82,读者借书:,填借书单(包括:读者号、欲借图 书分类目录号)检查读者号有效性,无效,拒借 读者号有效,检查借书是否超数?已达5本,拒绝借;未超,可借,登记图书分类目录 号、读者号、借阅日期等,写回 借书文

24、件中。,83,读者还书:,根据图书流水号,从借书文件中读出与该书相关的借阅记录,查明借书日期,还书日期,求借书时间,再重写回借书文件中,超过期限罚款。,84,图书注销:,从借阅图书文件中删除相关记录 丢失图书时从图书文件中删除相关记录,85,查询统计:,查询某读者情况 查询某图书借阅情况 统计图书借阅情况,86,顶层数据流图,图书管理人员,图书管理系统,系统时钟,读者,图书管理要求,查询要求,统计表,图书情况,读者情况,罚款单,当前日期,87,检 查有效性,图书管理要求,查询要求,无效输入,1,处理查询,3,处理要求,2,有效查询要求,有效图书管理要求,当前日期,罚款单,统计表,图书情况,读,

25、者,情,况,0层数据流图,88,要求类型处理,有效图书管理要求,当前日期,无效输入,2.1,新书入库,2.2,借,入库单,罚款单,一层数据流图(a),借书,2.3,注销图书,2.5,借书,2.4,目录文件,借书单,书,单,注销单,89,查询类别处理,有效查询要求,3.1,读者查询,3.2,统,查询读者情况,统计表,一层数据流图(b),图书查询,借书文件,要,查询图书情况,3.3,图书统计,3.4,计,求,读者文件,目录文件,读者情况,图书情况,90,实例 考务处理系统功能,(1)对考生送来的报名单进行检查;(2)对合格的报名单编好准考证号后将准考证送给考生,并将汇总后的考生名单送给阅卷站;(3

26、)对阅卷站送来的成绩单进行检查,并根据考试中心制定的合格标准审定合格者;(4)制作考生通知单(含成绩及合格/不合格标志)送给考生;(5)按地区进行成绩分类统计和试题难度分析,产生统计分析表。,91,顶层数据流图,考生,考务处理系统,考试中心,阅卷站,不合格报名单,报名单,准考证,考生通知单,成绩清单,合格标准,错误成绩清单,考生名单,统计分析表,92,登记报名单,报名单,准考证,1,统计成绩,2,不合格报名单,考生通知单,成,统计分析表,零层数据流图,考生名册,绩,清,单,合格标准,考生名单,成,绩,清,单,错,误,93,一层数据流图(a),检查报名单,报名单,准考证,1.1,编准考证号,1.

27、2,不合格报名单,考生名册,考生名单,合格报名单,登记考生,1.3,94,一层数据流图(b),检查成绩清单,2.1,审定合格者,2.2,考生名册,正确成绩清单,制作通知单,2.3,分析统计成绩,2.4,分析试题难度,2.5,试题得分清单,考生通知单,难度分析表,合格标准,分类统计表,成绩清单,错误成绩清单,经审定的成绩清单,95,二.数据字典,(DD,Data Dictionary)DFD中的数据流、数据存储表示某个有组织的数据集合,它们要由SA的其他描述工具-需求字典(数据字典)来描述。,数据字典的作用词条描述数据结构描述加工逻辑说明,96,定义方法,找出所有数据元素(数据流,数据存储,数据

28、项,加工)对数据项分类作结构定义规定特性和限制排序,97,DD排序方法,(1)按DFD层次排序(2)先层次排序 后内部排序(字母,汉字.顺序)(3)排序(1),(2)为与过程有关字典,不好维护,98,物理DD(概要设计阶段完成),开发DD,设计DD,DD中的命名遵守系统开发规范规定,DD分类,逻辑DD,物理DD(概要设计阶段完成),开发DD,设计DD,DD中的命名遵守系统开发规范规定,99,DD的实现,(1)人工方法(2)自动方法(利用字典管理程序)DD应具特点(1)通过名字可方便查阅数据定义(2)无冗余(3)易更新修改,DD中数据结构的描述方式,定义式 Warnier图巴科斯范式(BNF),

29、100,定义式中使用的符,操作符 含义描述 定义为 与(顺序结构).重复(循环结构).或(选择结构).,.(.)任选 m.n 界域.,注释符,101,限制重复次数举例:,3,5 或,5,3,表示允许重复3-5次,3,3 或,3,3,表示恰好重复 3 次,1,表示至少出现 1 次,表示允许重复0至任意次,102,数据流条目,给出DFD中某个数据流的定义,通常包括:数据流标识 数据流来源 数据流去向 数据流的数据组成 流动属性描述:频率、数据量,103,购书单,发票,领书单,审查并开发票,开领书单,无效书单,学生,1,2,各班学生用 书 表,举例:,学生,教材存量表,104,数据流条目说明举例,数

30、据流名:发票别名:购书发票组成:(学号)姓名书号 单价数量总价 书费合计数据量:100次/天 高峰值:开学期间400次/天,105,数据存储条目(数据文件词条),对某个文件的定义,包括:文件名 描述 数据结构 数据存储方式 关键码 存取频率和数据量 安全性要求,106,购书单,发票,领书单,审查并开发票,开领书单,无效书单,学生,1,2,各班学生用 书 表,举例:,学生,教材存量表,107,数据存储条目说明举例,文件名:各班学生用书表别名:组成:系编号专业和班编号 年级书号组织:按系、专业和班编号从小到大 排列存取要求:关键字是专业和班编号,108,数据项条目(数据元素词条),不可再分解的数据

31、单位,包括:名称 描述 数据类型 长度(精度)取值范围及缺省值 计量单位 相关数据元素及数据结构,109,数据项条目说明举例,数据项名:系编号别名:取值:2数字2注释:,*例如:01,12*,110,数据项条目说明举例,数据项名:专业和班编号别名:取值:3数字3注释:,*例如:305*,111,数据项条目说明举例,数据项名:年级别名:取值及含义:freshmen,一年级 sophomore,二年级 junjor,三年级 senior,四年级注释:F,M,J,S可分别用1,2,3,4代替,112,数据项条目说明举例,数据项名:书号别名:取值:字母数字注释:,*例如:,*,113,DD数据流条目说

32、明举例,图号DF01-10/*有效购书单*/DF01-10=学号姓名 书号数量,114,数据流条目说明举例,姓名,成,绩,科,目,单科成绩,DB,SE,CAD,平均成绩,总分,名次,李晓,75,80,85,80,240,15,各科成绩一览表,教务处,4.3,各科成绩一览表,115,结构化语言的特点:无确定语法;可分层、嵌套;各层有内、外层之分。,结构化语言,介于自然语言和形式语言之间的语言,116,结构化语言的原则,力求精确,避免二义性尽可能简单动词要有确切含义,与DFD中加工命名相配合名词要用DD中定义的名词不用副词、形容词,117,三.结构化分析实施步骤,1.确定系统边界,画出系统环境图2

33、.自顶向下,画出各层数据流图3.定义数据字典4.定义小说明,118,购书单,缺书单,销售,采购,1,2,第二层DFD(层)教材购销系统,教材存量表,学生,F1,缺书登记表,F2,书库保管员,进书通知,教材入库信息,领书单,119,加工条目(处理流词条),加工类条目即数据处理描述,也称为小说明。描述实现加工的策略而不是实现加工的细节。小说明可认为是DD的组成部分。也可在DD中定义只说明每个加工的组 成(每个处理分解成多少小处理),而在 小说明中详细描述它的处理逻辑.,描述加工的工具:,结构化语言 判定(决策)表 判定(决策)树,120,加工条目(处理流词条),在DD中定义说明每个加工的组成:,2

34、.0采购=2.1 按书号汇总缺书+2.2 按出版社统计缺书+2.3 修改教材库存和待购量,教材购销系统1.0销售+2.0采购,121,小说明描述的内容(1)处理逻辑 描述基本加工如何把输入数据流变化为输出数据流的加工原则,不涉及具体处理方法。(2)执行条件(3)输入/输出(4)优先级(5)执行频率(6)出错处理对策,小说明(加工说明),描述一个加工“做什么?即加工逻辑。,122,小说明举例,加工名:分类采购(CG111MD)编号加工激活条件:受到图书采购员分类 采购操作命令加工逻辑:(1)1.1.1.1 预定图书(2)1.1.1.2 外采图书(3)1.1.1.3 赠送图书 执行频率:随时,12

35、3,小说明举例,处理名:月票额统计(MHCW713MD)编号激活条件:收到每日售票额信息处理逻辑:1 统计月保险金总合 月保险金信息=每日日保险 金信息之和 2 统计月合计 月合计信息=每日日合计信息之和执行频率:1次/月,124,处理名:核实订票处理(MHGP3200MD)编号:3.2激活条件:收到取订票信息处理逻辑:1读订票旅客信息文件 2搜索此文件中是否有与输入信息 中姓名及身份证号相符的项 IF 有 THEN 判断余项是否与文件中信 息相符 IF 是 THEN 输出已订票信息 ELSE 输出未订票信息 ELSE 输出未订票信息执行频率:实时,125,F1:航班信息文件航空公司名称航班号

36、起点终点日期 起飞时间降落时间航空公司名称2字母4 航班号3十进制数字3 字母“A”“Z”十进制数字“0”“9”起点终点1汉字10 起飞时间降落时间时分 时“00”“23”分“00”“59”日期年月日 年2000200120022004 月“01”“12”日“01”“31”,126,判定表(决策表),描述多条件、多目标动作的形式化工具判定表结构:条件类别 条件组合 操作 操作执行,127,判定表举例(计算机票折扣率),旅游时间,订 票 量,折 扣 量,79,12月,16,10,11月,20,20,20,20,15%,5%,20%,30%,条件类别,四种条件组合,操作,条件组合下操作的执行,12

37、8,处理名:计算折扣率(MHGP534MD)编号激活条件:收到预订票信息处理逻辑:计算折扣率执行频率:实时,旅游时间,订 票 量,折 扣 量,79,12月,16,10,11月,20,20,20,20,15%,5%,20%,30%,129,判定树(Decision 决策树),条件1 条件2 结果计 79,订票量20:15%算 12月 订票量20:5%折扣 16,订票量20:30%量 10,11月 订票量20:5%,130,数据流和控制流举例(使用Ward和mellor符号),监控固件和操作接口,每个固件状态,动作警告,机器人初始化控制,操作命令,部件状态缓冲器,位置命令,开始/停止,处理机器人命

38、令,机器人命令文件,操作设置,处理活动,记录机器人动作,位串,131,数据和控制模型的关系,DFD,加工规约,加工模型,CFD,控制规约,控制模型,数据输出,数据条件,数据输入,控制输入,控制输出,加工激活者,132,DFD和CFD例子-DFD,133,DFD和CFD例子-CFD,134,状态转换图(简称为状态图)通过描绘系统的状态及引起系统状态转换的事件,来表示系统的行为模型。,状态转(迁移)换图State Transition Diagr,135,状态是任何可以被观察到的系统行为模式,一个状态代表系统的一种行为模式。状态规定了系统对事件的响应方式。在状态图中定义的状态主要有:初态(即初始状

39、态)、终态(即最终状态)和中间状态。在一张状态图中只能有一个初态,而终态则可以有0至多个。,状态,136,事件是对引起系统做动作或(和)从一个状态转换到另一个状态的外界事件的抽象。简而言之,事件就是引起系统做动作或(和)转换状态的控制信息。,事件,137,符号,138,用例图,用例:系统和外部角色的交互符号表示:,139,Use Case图例子,140,用例之间的关系,扩展关系使用关系,141,对象状态转换图例子,142,面向对象分析方法,基本步骤定义系统的用例领域分析,建立类对象模型建立对象-关系模型建立对象-行为模型编写SRS,143,四、需求验证,(1)正确性(2)无二义性(3)完整性(

40、4)可验证性(5)一致性(6)可理解性(7)可修改性(8)可被跟踪性(9)可跟踪性(10)设计无关性(11)注释,144,需求工程研究新进展,需求工程研究进展可归结为需求工程的对象化、形式化和自动化三个主要方面。实施需求分析的工程成为需求工程。,非形式化的需求陈述,完整的需求定义,功能规约,需求分析的主要难点,问题的复杂性交流障碍不完备性和不一致性需求易变性,145,解决途径,(1)需求模型及语言:功能分解模型 OO模型 单一表示模式 多视点 非形式化方法 形式化方法(2)CASE技术及工具:集成化 零散的机器支撑环境 构件化 自动化最终目标 实现软件生产的全自动化,146,五.需求规格说明书

41、(SRS),(Software Requirement Specification)SRS的作用:便于用户、分析人员、设计人员进行交流开发者与用户间事实上的技术合同书,支持目标软件系统的确认开发者下一步设计和编码的基础控制系统进化过程(追加需求)测试验收目标系统的依据,147,引言信息描述功能描述行为描述质量保证接口描述其它,五.需求规格说明书(SRS),148,SRS大纲,1 前言 1.1 目的 1.2 范围 1.3 定义、缩写词、略语 1.4 参考资料2 任务概述(项目概述)2.1 产品描述 2.2 产品功能 2.3 用户特点,149,SRS大纲(续),2.4 一般约束 2.5 假设和依据

42、3 具体需求 3.1数据描述(DFD、DD)3.2功能描述 3.3接口 3.4 性能需求 3.5 属性 3.6 其它需求,150,需求分析阶段的工作结果是开发软件系统的重要基础,大量统计数字表明,软件系统中15%的错误起源于错误的需求。一旦对目标系统提出一组要求之后,必须严格验证这些需求的正确性。,验证软件需求从哪些方面验证软件需求的正确性,151,一般说来,应该从下述4个方面进行验证:(1)一致性。所有需求必须是一致的,任何一条需求不能和其他需求互相矛盾。(2)完整性。需求必须是完整的,规格说明书应该包括用户需要的每一个功能或性能。(3)现实性。指定的需求应该是用现有的硬件技术和软件技术基本

43、上可以实现的。(4)有效性。必须证明需求是正确有效的,确实能解决用户面对的问题。,152,传统软件工程方法学使用结构化分析技术,完成分析用户需求的工作。需求分析是发现、求精、建模、规格说明和复审的过程。从数据流图出发,在用户的协助下面向数据流自顶向下逐步求精,是与用户沟通获取需求的一个有效的方法。,小结,153,除了创建分析模型之外,在需求分析阶段还应该写出软件需求规格说明书,经过严格评审并得到用户确认之后,作为这个阶段的最终成果。使用实体-联系图建立数据模型,使用数据流图建立功能模型,使用状态图建立行为模型。,154,数据字典描述在数据模型、功能模型和行为模型中出现的数据对象及控制信息的特性,给出它们的准确定义。因此,数据字典成为把3种分析模型粘合在一起的“粘合剂”,是分析模型的“核心”。算法也是重要的,分析的基本目的是确定系统必须做什么。任何一个计算机系统的基本功能都是把输入数据转变成输出信息,算法定义了转变的规则。IPO图是描述算法的有效工具。,155,谢谢各位!,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号