好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

软件工程ch3结构化需求分析与建模.ppt

131页
  • 卖家[上传人]:M****1
  • 文档编号:592024829
  • 上传时间:2024-09-19
  • 文档格式:PPT
  • 文档大小:2.89MB
  • / 131 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第第3章章结构化需求分析与建模 主要内容o模型及其作用o结构化分析n功能模型:数据流图n数据模型:实体关系图n行为模型:状态转换图n数据字典 分析阶段分析阶段的活动:分析阶段的活动:l 收集信息收集信息l 定义系统需求定义系统需求l 划分需求优先级划分需求优先级l 构建可用性和发现原形构建可用性和发现原形l 产生评估各种方案产生评估各种方案l 和管理部门一起复查各种建议和管理部门一起复查各种建议l 分析阶段需要非常详细的定义:信息系统需要完成什么分析阶段需要非常详细的定义:信息系统需要完成什么 来为公司提供所期望的利润来为公司提供所期望的利润l 应该提出多种方案,并选择最优的解决方案应该提出多种方案,并选择最优的解决方案l 在系统设计阶段,再对选中的方案进行详细的设计在系统设计阶段,再对选中的方案进行详细的设计l 在分析阶段,上述在分析阶段,上述6项活动必须全部完成,并且通常是项活动必须全部完成,并且通常是 同时完成同时完成 3.1 需需 求求 分分 析析o需求分析的任务需求分析的任务通过软件开发人员与用户的交流和讨论,准确地获取用户对系统的具体要求o用户对系统的需求功能性需求非功能性需求 需求分析的步骤需求分析的步骤o通过调查研究,获取用户的需求o去除非本质因素,确定系统的真正需求o描述需求,建立系统的逻辑模型o书写需求说明书,进行需求复审 需求分析的原则需求分析的原则o能够表达和理解问题的数据域和功能域o能够将复杂问题分解化简o能够给出系统的逻辑表示和物理表示 获取需求的方法通过需求(详细)调查,获取需求需求(详细)调查的内容:oo组织概况组织概况────组织结构图组织结构图oo组织的业务活动、组织的业务状态、业务的详细内组织的业务活动、组织的业务状态、业务的详细内容容────业务(系统)流程图业务(系统)流程图oo输入输出信息输入输出信息(信息流向、信息种类、利用的目的、(信息流向、信息种类、利用的目的、信息的使用者和制造者、输入和输出地点、输入和信息的使用者和制造者、输入和输出地点、输入和输出信息量)输出信息量)oo存在问题、约束条件、未来要求等存在问题、约束条件、未来要求等 需求(详细)调查对象oo对组织的高层管理者,进行组织管理目标或经营方针等组织战略问题的调查(业务需求)oo对中层的管理者,进行全部业务流的调查(用户需求)oo对业务工作人员,进行详细业务信息的调查(用户需求) 常用调查方法(信息收集技术)oo访谈:正式和非正式oo问卷调查oo情景分析oo实地考查oo构造原型o建立分析小组n领域专家: 主角n系统分析员:导演 准备调研的资料(可能的问题)o部门的名称、人员数量和结构o部门发展或变化简单介绍o部门的主要任务o部门各岗位的职责o部门接受哪些部门或外界的信息及信息的内容和格式o部门产生哪些信息o部门产生的信息送到哪些其他部门、格式要求是什么o现有的哪些设备要继续使用? 准备调研的资料(可能的问题)o业务处理流程o业务处理过程中涉及哪些专业领域的知识o主要算法描述o哪些业务需要实时处理o哪些业务需要交互操作o业务处理有高峰期吗?高峰期的时间及业务量o对信息的输入和输出方式和设备有何要求o数据要求实时备份吗?备份设备及时间策略o工作需要的审批流程是什么? 准备调研的资料(可能的问题)o对产品的运行环境有要求吗o对界面风格和操作方式有要求吗o在系统运行过程中允许停机吗o需要的操作权限有哪些o需要记录系统操作运行日志吗o需要分布式处理吗o需要什么方式的用户操作培训o需要制作联机帮助吗o用户有能力进行系统维护吗?⊙ ⊙ ⊙ ⊙ ⊙ 二、组织结构图 组织结构图是用来描述组织的总体结构以及组织内部各部分之间的联系。

      要建立管理信息系统,就必须知道现行系统的组织机构设置情况和它们之间的隶属关系当然,最为关心的是那些与计算机管理有关的机构和关系 用矩形框表示组织机构,用箭头表示领导关系 在画组织结构图时应注意: o1.不能只画组织中的从属关系、领导和被领导关系因为它们不是全部信息流)o2.应具体调查结构的职能,不能仅按结构名称画图 o3.实际情况往往较复杂,很难设计出面面俱到的IS应突出重点、目标) 某企业组织结构图⊙ 三、业务流程图 业务流程图(Transaction Flow Diagram, TFD)是描绘物理系统的传统工具系统流程图可用图形符号来表示系统中的各个元素例如,人工处理、数据处理、数据库、文件等o业务流程图表示所描述部件的信息流程,而不表示信息加工的控制过程o系统流程图在可行性研究阶段也可以使用o画系统流程图时,要搞清业务处理过程即处理中的各个元素,同时要理解系统的流程图各个符号的含义 业务流程图符号──基本符号 当以概括方式描述一个实际系统时,基本符号即可;当需要更具体地描绘一个物理系统时,还需使用系统符号业务处理单位业务处理单位业务处理单位业务处理单位业务流向业务流向业务流向业务流向业务处理业务处理业务处理业务处理某项业务参与的人或事务某项业务参与的人或事务某项业务参与的人或事务某项业务参与的人或事务业务处理功能业务处理功能业务处理功能业务处理功能业务数据的流动方向业务数据的流动方向业务数据的流动方向业务数据的流动方向 业务流程图符号──系统符号符号名称说明文档表示打印输出,也可表示打印终端输入磁带磁带输入/输出或表示一个磁带文件联机存储表示任何种类的联机存储磁盘磁盘输入/输出显示终端显示部件,可表输入/输出人工输入人工脱机处理,如填表格人工操作人工完成处理,如支票签字通信链路远程通信线路送数据 工资管理系统业务流程图 学生成绩管理流程o每学期课程考核结束后,各任课教师须分班填写学生成绩登记表,经系主任审核签字后交学生所在学院及教务处o教务员使用成绩管理系统登记所有成绩并将成绩单及补考通知书交给学生o学生所在班级根据综合成绩计算综合评分,并将综合评分交给学生科 四、面谈l 面对面交流是理解业务功能和规则的最有效方法面对面交流是理解业务功能和规则的最有效方法l 该方法比较耗时和资源该方法比较耗时和资源l 项目组成员与单个用户或用户组举行会议项目组成员与单个用户或用户组举行会议l 面谈步骤:面谈步骤:l 准备面谈内容:问题详尽准备面谈内容:问题详尽l 进行面谈:用心、得体进行面谈:用心、得体l 面谈的后续工作:整理消化吸收(面谈的后续工作:整理消化吸收(建模建模)) 4 实地观察观察方法:观察方法:l 对办公室进行快速浏览对办公室进行快速浏览l 安排一定的时间观察用户的工作过程安排一定的时间观察用户的工作过程l 同用户一道亲身实践体会工作过程同用户一道亲身实践体会工作过程使用工作流图来进行记录使用工作流图来进行记录l 工作流工作流 – 处理商业事务或客户请求的一系列步骤处理商业事务或客户请求的一系列步骤l 工作流图:工作流图:流程图流程图、、数据流图数据流图、、活动图活动图l 工作流图在分析与设计阶段都是有效的工具工作流图在分析与设计阶段都是有效的工具活动图:活动图:一种工作流图,用来描述用户的活动以及一种工作流图,用来描述用户的活动以及 这些活动的顺序这些活动的顺序 4.4 信息收集技术3))观察并记录业务流程观察并记录业务流程表明决策的表明决策的其他方法其他方法同步条(合并)同步条(合并)同步条(分解)同步条(分解)决策活动决策活动开始活动(伪码)开始活动(伪码)转移箭头转移箭头活动活动结束活动结束活动活动图矩形区活动图矩形区管理者管理者检查检查财政事务财政事务准备报告准备报告活动图中的符号活动图中的符号 获取需求的方法 四、问卷调查l 调查表在信息收集中的作用是具体而有限的调查表在信息收集中的作用是具体而有限的l 使用场合使用场合:(:(1)系统相关者较多)系统相关者较多 ((2)地理上分布广)地理上分布广l 调查表问题类型:(调查表问题类型:(1)封闭问题)封闭问题 ((2)定量问题)定量问题 ((3)开放问题)开放问题 某出版社管理系统问卷调查表编号提出问题1您在哪个部门工作?2出版业务流程是什么?3您每日都处理那些文件、数据、报表?4工作中手工处理特别麻烦的事情是什么?5工作中手工处理什么问题解决不了?影响效率的问题有哪些?6您认为提高工作效率,节省工作时间,减轻工作强度可采取哪些办法? 某出版社管理系统问卷调查表编号提出问题7您的部门需要成本核算和统计的内容有哪些?8您的部门采用计算机管理工作情况如何?9如何改进业务流程使之更合理?10哪些问题是目前传统手工方法根本无法解决的?11出版社计算机管理信息系统需要解决什么问题? n分析员需要一组模型来充分描述信息 系统的需求n不同的模型分别显示了问题和解决方 案的不同部分模型和建模 模型的作用l 建立模型的过程能帮助分析员澄清和改良设计建立模型的过程能帮助分析员澄清和改良设计l 系统往往很复杂,模型能很好表示各部分之间的关系系统往往很复杂,模型能很好表示各部分之间的关系l 模型便于项目组成员之间交流模型便于项目组成员之间交流l 模型有助于和系统用户之间进行交流并促进理解模型有助于和系统用户之间进行交流并促进理解l 建立的模型可以作为以后的维护和升级时的文档建立的模型可以作为以后的维护和升级时的文档 5.1.2 模型的类型l 数学模型:描述系统技术方面的一系列数学公式数学模型:描述系统技术方面的一系列数学公式l 描述模型:描述系统某些方面的叙述性的备忘录、描述模型:描述系统某些方面的叙述性的备忘录、 报表或列表等报表或列表等l 图形模型:描述系统的图表或系统某些方面的示图形模型:描述系统的图表或系统某些方面的示 意性表示意性表示三种常见模型:三种常见模型:数学模型、描述模型、图形模型数学模型、描述模型、图形模型 5.1.3 用于分析和设计的模型l 状态图状态图l 协作图协作图l 时序图时序图l 用例图用例图l 类图类图l 结构化英语结构化英语/伪代码伪代码l 数据元素定义数据元素定义l 数据流定义数据流定义l ERDl DFDl 事件列表事件列表分析阶段创建的模型分析阶段创建的模型l 界面设计界面设计l 报表设计报表设计l 数据库设计数据库设计l 结构图结构图l 系统流程图系统流程图l 网络图网络图l 分布图分布图设计阶段创建的模型设计阶段创建的模型 其他传统模型其他传统模型DFD片断片断数据流定义数据流定义关联图关联图处理描述处理描述其他其他OO模型模型状态图状态图用例和场景描述用例和场景描述交互图交互图用例图用例图事件和事件表事件和事件表事物事物类图类图实体实体-关系图关系图 OO方法方法传统传统方法方法包图包图对象数据库对象数据库设计类图设计类图关系数据库关系数据库系统流图系统流图结构图结构图混合关系数据库模式混合关系数据库模式用户界面对话框、标单、报表用户界面对话框、标单、报表系统控制系统控制伪代码伪代码结点与定位图结点与定位图分析分析设计设计 结构化分析方法Structured AnalysisoSA的核心:数据流图n数据流图:用来表示信息流程和信息变换过程的图解方法,可以方便地描述用数据流的流动联系的各种功能。

      n数据字典:数据流图中的各项数据n结构化英语、判定树、判定表用于具体描述数据流图中的基本功能(或过程)n依赖数据流图的自顶向下的建模方法 o数据实体n系统需要存储的有关信息系统开发方法的信息o传统方法中,数据实体与过程是分离的3.2 数据建模 5.3 事物和系统需求5.3.5 数据实体和对象数据实体和对象数据实体:数据实体:在传统的系统开发方法中,事物被称为数据实体在传统的系统开发方法中,事物被称为数据实体对象:对象:在面向对象的系统开发方法中,将某一个事物称为对象在面向对象的系统开发方法中,将某一个事物称为对象数据实体与过程是分离的数据实体与过程是分离的对象将数据和处理数据的方法封装成一个单元对象将数据和处理数据的方法封装成一个单元要让某个对象执行要让某个对象执行某种操作,可以让某种操作,可以让另外一个对象给该另外一个对象给该对象发送一个消息对象发送一个消息 事物和系统需求事件和事件和事物的区别与联系:事物的区别与联系: 事件事件 – 发生在瞬间,有一定的随机性发生在瞬间,有一定的随机性 事物事物 – 客观存在,不以主观意志为转移客观存在,不以主观意志为转移 联系联系 – 事件的发生可以改变事物的状态或产生新的事物事件的发生可以改变事物的状态或产生新的事物事物:事物:在传统的开发方法中,事物就是构成系统存储在传统的开发方法中,事物就是构成系统存储 信息的相关数据信息的相关数据 在面向对象的开发方法中,事物就是在系统中在面向对象的开发方法中,事物就是在系统中 相互交互的对象相互交互的对象 事物事物实实在在实实在在的事物的事物充当角色充当角色组织部门组织部门设备设备突发事件、突发事件、事件或交互行为事件或交互行为地点位置地点位置飞机书交通工具文件工作表雇员顾客医生病人最终用户系统管理员管区部门工段任务组工作组传感器定时器打印机键盘显示器鼠标航班服务登录退出合同购买订单仓库办公室工厂零售店桌面 事物和系统需求o属性:有关事物的一项特定信息o关键字:唯一标识事物的一个属性。

      o复合属性:包括了许多相关属性的属性所有学生具有的属性所有学生具有的属性每个学生的每个属性都有一个值每个学生的每个属性都有一个值学号学号(pk)991202991203991204姓名姓名张三张三李四李四王五王五出生年月出生年月1982.61982.81983.9........................学习经历学习经历(复合属性复合属性).................. 包含包含 包含包含订单订单#1043财务部财务部红衬衫红衬衫尺寸尺寸16/32牛仔裤尺寸:牛仔裤尺寸:34长长被订购被订购 工作在工作在Smith先生先生事物之间自然发生的关系事物之间自然发生的关系事物间的关系事物间的关系关系关系::某些事物间自然发生的联系,比如客户某些事物间自然发生的联系,比如客户 发送订单以及雇员在某部门工作等发送订单以及雇员在某部门工作等 关系的基数o发生在事物间关联的数目,例如一个顾客发送了多个订单以及一个雇员在一个部门工作等基数可以:基数可以: 0,,1,,0..n,,1..n张先生还未发送订单,但是张先生还未发送订单,但是以后可能会发送很多订单以后可能会发送很多订单基数范围基数范围从从0到更多到更多(可选关系)(可选关系)李女士是某公司职员李女士是某公司职员基数范围基数范围从从1到到1(强制关系)(强制关系)一个订单至少包括一个产品,一个订单至少包括一个产品,也可包括多个产品也可包括多个产品基数范围基数范围从从1到更多到更多(可选关系)(可选关系) 几类事物之间的关系o两类不同事物:二元关系n两种不同类型事物之间的关系,如顾客和订单关系。

      o一元关系n同一类型的两个事物之间的关系,如一个人和另一个人的婚姻关系o三元关系n三种不同类型事物之间的关系,如学生(自然事物)、课程(自然事物) 、选课(事件)之间的关系oN元关系nN中不同类型事物之间的关系,如权限、用户、用户组、用户组选择权限、用户组选择用户 o实体关系图(ERD)n用来定义数据存储需求的模型n数据存储需求包括o数据实体o数据实体的属性o它们之间的关系oERD符号n用矩形代表实体;n连接矩形的直线代表数据实体之间的关系实体关系图(ERD) E-R模型中的基本符号模型中的基本符号符号含          义表示实体表示实体间的联系,与实体间的连线上需用数字标明具体的对应关系表示与实体有关的属性用于实体、属性及联系的连接 实体关系图ERD符号符号 实体-关系图ERD只能一个(强制)只能一个(强制)0或多个(可选)或多个(可选)1或多个(强制)或多个(强制)0或或1个(可选)个(可选)实体之间关系的基数符号实体之间关系的基数符号 有属性的扩展有属性的扩展ERD图图*表示标示符或关键字表示标示符或关键字ERD实例实例 关联实体关联实体表示两个数据实体之间多对多关系的数据实体,例如学生和课程之间存在选课信息。

      关联实体 功能建模数据流图o图形化的系统模型,说明的是信息系统的主要需求,输入、输出、过程和数据存储o大型系统n分层的数据流图来解决复杂问题o分层作用n实现信息抽象n实现信息隐蔽 数据流图l 图形元素少且符号简单易懂图形元素少且符号简单易懂l 较充分表达系统的主要需求:输入、输出、处理较充分表达系统的主要需求:输入、输出、处理 和数据存储和数据存储l 最终用户、管理人员和系统开发人员只需稍加培最终用户、管理人员和系统开发人员只需稍加培 训即可读懂训即可读懂DFD图,方便交流图,方便交流数据流图:数据流图:用处理、外部实体、数据流以及数据存储来用处理、外部实体、数据流以及数据存储来((DFD)) 表示系统需求的图表表示系统需求的图表DFD的特点的特点 数据流图:基本元素o外部实体n代表系统之外的人、物、组织o发出或接受系统的数据o提供系统和外界环境之间关系的注释性说明o数据流n表示DFD的过程、数据存储、外部实体间的数据移动n数据流不代表控制流:反映处理对象,不影响过程执行o数据流反映处理的对象o控制流影响过程的执行 o过程n过程是对数据执行某种操作或转换,把输入数据变成输出数据的一种转换。

      o数据存储n不一定是一个完全的文件n表示文件、或文件的一部分n磁盘、磁带、存储器 数据流图元素符号 数据流图的符号说明数据流图的符号说明处理处理 – 一步步地执行指令,一步步地执行指令, 将输入转换成输出将输入转换成输出 (由人、机器或两者共(由人、机器或两者共 同完成该处理任务)同完成该处理任务) 数据流数据流 – 从一处流向另一从一处流向另一 处的数据,如处理的处的数据,如处理的 输入或输出输入或输出 外部实体外部实体 – 系统之外的系统之外的 数据源或目的地数据源或目的地数据存储数据存储 – 存放起来以存放起来以备备 将来使用的数据通将来使用的数据通 常与常与ERD图中的数据图中的数据 实体相对应实体相对应实时连接实时连接 – 当处理执行时,当处理执行时, 外部实体与处理之间来外部实体与处理之间来 回通信回通信(如信用卡验证如信用卡验证) 数据流图──数据流与加工之间的关系与:数据与:数据A和和B同时输入变成同时输入变成C或:数据或:数据A或或B,或者,或者A和和B同同时输入变成时输入变成C异或:数据异或:数据A或或B其中之一变成其中之一变成C 数据流图例:数据流图例:客户客户查询查询可用条目可用条目目录目录产品条目产品条目库存条目库存条目条目查询条目查询可用的可用的条目细节条目细节图图6-3 显示处理显示处理“查询可用条目查询可用条目”的的DFD从外部实体出发的从外部实体出发的“数据流数据流”可以是:可以是:1. 外部实体发出的外部实体发出的“处理请求处理请求”,即一个事,即一个事件件2. 外部实体给出的外部实体给出的“输入数据输入数据”指向指向“外部实体外部实体”的的“数据数据流流”一般是一般是“处理处理”的反馈或处的反馈或处理理结果结果 客户客户查询查询可用条目可用条目目录目录产品条目产品条目库存条目库存条目条目查询条目查询可用的可用的条目细节条目细节来源来源触发器触发器活动活动响应响应目的地目的地外部实体、数据流和处理来自于外部实体、数据流和处理来自于事件表中有关事件的信息事件表中有关事件的信息数据存储来自于数据存储来自于ERD图图DFD和和ERD之间的一致性关系之间的一致性关系 绘制数据流图:自顶向下,逐层细化抽象层次:抽象层次:把系统分解成一个逐步细化的分层集合的建模技术把系统分解成一个逐步细化的分层集合的建模技术DFD图可以描述高层次的具有高度概括的系统处理图可以描述高层次的具有高度概括的系统处理 也可以描述低层次的具有更详细分解的系统处理也可以描述低层次的具有更详细分解的系统处理 关联图关联图1层图层图2层图层图课程注册课程注册系统系统安排课程安排课程教员教员教学教学部门部门学生学生班级列表班级列表安排时间数据安排时间数据注册请求注册请求课程表课程表教学教学部门部门时间安时间安排数据排数据学生学生提供的课程提供的课程产生班产生班机列表机列表教教 员员班级列表班级列表课程注册课程注册学生学生注册注册课程表课程表注册请求注册请求可用教员可用教员课程课程可用教室可用教室教学教学部门部门分配分配教员教员选择日选择日期时间期时间提供的课程提供的课程学生学生分配分配教室教室提供的课程提供的课程图图6-5 课程注册系统的课程注册系统的DFD抽象层次抽象层次 数据流图的层次o顶层DFDn描述整个系统的作用范围o分解高层数据流和数据过程 例:学生注册课程系统o顶层DFD:关联图l整个系统看作是一个过程,起名:学生注册课程系统l此时不出现数据存储 oDFD细化:n一个过程符号表示系统响应一个事件的DFD。

      更进一步细化 评估DFD质量o高质量的DFDn可读的、内部一致的、能够准确表示系统需求的n不反映处理的顺序n所有元素的命名对客户有意义、且与业务相关n图的编号:过程的编号应该唯一且有层次性n数据通过加工进行流动,避免从一个数据存储流向另一个数据存储 o复杂性最小化,7+-2(Miller数)n单个DFD不应有超过7+-2个过程n单个DFD中不应超过7+-2个数据流进出一个过程、数据存储或数据元素o接口最小化n接口是指一个问题或描述中一部分与其他部分的连接n与7+-2规则相关,接口应保证最小化n当单个过程有大量接口以致于复杂到不可理解时,可把这个过程分解成多个过程 o数据流不一致问题n一个过程和它的过程分解在数据流内容中有差别n有数据流入但无相应数据流出n有数据流出但无相应数据流入o平衡n进出过程的数据流与进出过程分解DFD的数据流在数据内容上一致n子图代表了父图中某个过程的细节(详细描述),父图代表了子图间的接口(抽象描述),二者代表了同一个东西n子图输入、输出数据流必须和父图中相应过程的输入、输出数据流相一致,即要达到平衡 o数据流在单个过程或数据存储之间的一致性n流入过程的所有数据必须流出该过程或用于产生流出该过程的数据。

      n流出过程的所有数据必须曾流入过该过程或是由流入该过程的数据产生 DFD质量评估DFD图常见错误总结图常见错误总结非法的数据流非法的数据流B1B1B2B2改正错误后改正错误后的数据流的数据流B1B1B2B2需要一个过需要一个过程在外部实程在外部实体之间交换体之间交换数据流数据流DS2DS2DS1DS1需要一个过需要一个过程从一个数程从一个数据存储移动据存储移动数据到另一数据到另一个数据存储个数据存储DS1DS1DS2DS2B1B1需要一个过需要一个过程从一个数程从一个数据存储中表据存储中表现数据现数据DS1DS1DS1DS1B1B1B1B1DS1DS1B1B1DS1DS1需要一个过需要一个过程修改程修改/ /使使用一个数据用一个数据存储存储 DFD过程描述o过程分解何时可以停止?o最底层过程的描述方法:n结构化英语n决策树n决策表数据字典 3.5 数据字典(Data Dictionary, DD)DD是SA方法中另一个重要的分析工具DD给出了DFD中所有元素的严格的数据定义,它可以:o减少了分析员和用户之间的通信,消除误解o是以后进行系统设计及维护的重要依据o是进行系统设计的最有价值的文档之一 数据字典── DD编写的基本要求o对DFD中各元素的定义必须明确、一致且易理解o命名、编号应与DFD一致o对DFD中各元素的定义与说明应无遗漏、无同名异义或异名同义o格式规范,文字精练,符号正确 数据字典──符号符  号含    义说      明=表示定义为用于对=左边的条目进行确切的定义+表示与关系X=a+b表示X由a和b共同构成[  |  ][  ,  ]表示或关系X=[a|b]与X=[a,b]等价,表示X由a或b组成(  )表示可选项X=(a)表示a可以在X中出现,也可以不出现{ }表示重复大括号中的内容重复0到多次m{ }n表示规定次数的重复重复的次数最少m次,最多n次“  ”表示基本数据元素“ ”中的内容是基本数据元素,不可再分..连接符month=1..12表示month可取1~12中的任意值*  *表示注释两个星号之间的内容为注释信息 数据字典o数据流条目o数据项条目o数据文件条目(数据存储条目)o数据加工条目o数据结构条目 数据字典──数据流条目o系统名:属于哪个子系统o数据流编号、名称、别名及其简要描述o数据流的来源:一个外部实体、处理逻辑、数据存贮 o数据流的去向:同上o数据流的组成:一个数据流可能包括若干个数据结构,若只有一个数据结构,就不需要专门定义o数据流的流通量:单位时间的传输次数o高峰时期的流通量:业务的频繁程度和时间有关 数据字典──数据流条目系统名:成绩管理系统数据流编号: F1数据流名称:单科成绩单别名:无简述:某学期、某个班、某门课的成绩来源:教师去向:加工P1“成绩单审核”数据流量:2000份/每学期组成: 学期+班级+DS1(学生成绩)+教师姓名+日期 数据字典──数据项条目 数据项也称数据元素,是不可再分的数据最小组成单位,主要内容有:o系统名o数据项名称:数据项名称必须唯一地标识这个数据项,以区别于其他数据项;名称要反映该数据项的含义,易于他人理解与记忆o别名:同一数据项的名称可能不止一个o简要说明o属于数据流 o存储处(属于文件)o数据项的类型、长度、取值范围、取值的含义 数据字典──数据项条目系统名:成绩管理系统数据项名称:学号别名:无简要说明:是每个学生的惟一识别码属于数据流:F1~F4属于数据存储:D1类型:字符型长度:10位取值范围:“0”~“9”含义:1~4位:入学年份;5~7位:专业; 第8位:班级;9~10位:序号 数据字典──数据结构条目 数据结构描述了某些数据项之间的关系。

      一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,也可以由若干个数据项和数据结构组成主要内容包括如下o系统名o数据结构的名称及其编号 o数据结构的组成:如果是一个简单的数据结构,只要列出它所包含的数据项即可如果是一个嵌套的数据结构,只需列出它所包含的数据结构名称,因为这些数据结构同样在数据字典中有定义 数据字典──数据结构条目系统名:成绩管理系统数据结构编号:DS1数据结构名称:学生成绩别名:无数据结构组成: 课程号+课程名+{学号+姓名+成绩} 数据字典──数据项间关系描述符号符号含义例及说明=被定义为+与x=a+b表示x由a和b组成[...|...]或x=[a|b]表示x由a或b组成m{...} n或{...}mn重复x=2{a}5表示x中最少出现2次a,最多出现5次a,2为重复次数的上、下限{...}重复x={a}表示x由0个或多个a(...)可选x=(a)表示a可在x中出现,也可不出现"..."基本数据元素x="a",表示x是取值为字符a的数据元素..连接符x=1..9,表示x可取1到9中任意一个值 数据字典──数据存贮条目 数据存贮是数据结构停留或保存的场所。

      主要内容:o系统名o数据存贮的名称及其编号:在数据流程图中对数据存贮给以命名,并编上一个唯一的编号 o来源、去向o存储组织方式o数据存贮的组成:指它所包含的数据项或数据结构o存取方式、存取频率等 数据字典──数据存贮条目系统名:成绩管理系统数据存储编号:D2数据存储名称:成绩档案别名:无数据来源:加工P2“成绩登记”数据去向:加工P3“成绩统计”存储组织:二维表数据结构组成: DS1+补考成绩+学分 数据字典──加工条目o加工的名称及编号 o加工的输入和输出 o加工的主要功能:对处理逻辑的简明描述,其目的是使人了解这个处理逻辑是做什么用的 o加工的小说明(文档之一) 数据字典──加工条目系统名:成绩管理系统加工编号:P2加工名称:成绩登记别名:无输入:F2“合格单科成绩单”,D1“课程”输出:D2“成绩档案”加工说明:o如果为普通考试,若及格,登记成绩及学分,否则登记实际成绩,学分为0;o如果是补考,若及格,则登记成绩及学分,否则只登记补考成绩 加工逻辑描述 如何对DFD中的基本加工进行描述,是结构化分析的关键部分对基本加工的描述称为“加工说明”o加工说明编写要求:n对DFD中的每个基本加工,必须有一个加工说明n加工说明必须描述加工把输入数据流转换为输出数据流的转换规则,即加工“做什么”,而不是用程序设计语言来描述具体加工过程o常用工具:结构化语言、决策树、决策表 结构化英语o书写过程规范的方法:n结构化编程技术+叙述性语言o适合描述带有一系列处理步骤和相对简单的控制逻辑o不适合:n复杂的决策逻辑n连续的处理步骤很少(或没有) IF 我不在家里 THEN我就在老树咖啡ELSE我就在去老树咖啡的路上 结构化英语结构化英语/伪代码:伪代码:一种描述一种描述“处理处理”的规范方法,将结构化编程技术和的规范方法,将结构化编程技术和叙述性英语结合起来叙述性英语结合起来结构化英语适合用来描述处理步骤清楚、控制逻辑结构化英语适合用来描述处理步骤清楚、控制逻辑相对简单的情况相对简单的情况客户客户记录客记录客户信息户信息客户客户新订单新订单详单细节详单细节图图6-20 RMO处理处理2.1(记录客户信息)和它的结构化英语处理描述(记录客户信息)和它的结构化英语处理描述 结构化英语示例:核对发货单 结构化英语示例:计算运输费用 加工说明──判定树(Decision Tree)o判定树是用来表示逻辑判断问题的一种图形工具。

      它用“树”来表达不同条件下的不同处理,比语言、表格的方式更为直观判定树的左侧(称为树根)为加工名,中间是各种条件,所有的行动都列于最右侧 加工说明──判定树(Decision Tree)成绩登记成绩登记处理逻辑处理逻辑普通考试普通考试成绩登记成绩登记补考考试补考考试成绩登记成绩登记成绩合格:登记学生成绩及学分成绩合格:登记学生成绩及学分成绩不合格:登记学生成绩,学分为成绩不合格:登记学生成绩,学分为0成绩合格:登记学生成绩及学分成绩合格:登记学生成绩及学分成绩不合格:登记学生成绩,学分为成绩不合格:登记学生成绩,学分为0o成绩登记处理逻辑 加工说明──判定树(Decision Tree)o学生升留级处理逻辑 升留级处升留级处理逻辑理逻辑考试总分考试总分≥≥600600考试总分考试总分 <600单科无不及格:发升级通知书单科无不及格:发升级通知书单科有不及格:发升级及重修单科通知书单科有不及格:发升级及重修单科通知书单科有满分:发留级免重修单科通知书单科有满分:发留级免重修单科通知书单科无满分:发留级通知书单科无满分:发留级通知书 判定树:计算运输费用 判定树:核对发货单 加工说明──判定表(Decision Table)o对于具有多个互相联系的条件和可能产生多种结果的问题,用结构化语言描述则显得不够直观和紧凑,这时可以用以清楚、简明为特征的判定表来描述。

      o判定表采用表格形式来表达逻辑判断问题,表格分成四个部分:基本判断条件基本判断条件组合基本动作执行动作规则:规则:将条件取值组合及其相应要执行的动作称为规则将条件取值组合及其相应要执行的动作称为规则规规则则或或CASE 构造判定表步骤o 确定规则的个数 m个条件,每个条件有n种取值,故规则个数为m×no 列出所有的条件和动作o 列出所有的条件组合o 填写每种条件组合下对应的动作o 若表中存在不同规则对应相同动作且其条件组合存在某种关系时,需要对表进行必要的化简 升留级处理判定表规则1 规则2 规则3 规则4 规则5 规则6 规则7 规则8考试总分≥600 ≥600 ≥600 ≥600 <600 <600 <600 <600 单科满分 有 有 无 无 有 有 无 无单科不及格 有 无 有 无 有 无 有 无发升级通知书发单科免修通知书发留级通知书发单科重修通知书 Y Y Y Y N N N N N N N N Y Y N N N N N N Y Y Y Y Y N Y N N N N N 加工说明──判定表(Decision Table) 1 2 3 4考试总分≥600 ≥600 <600 <600 单科满分 - - 有 无单科不及格 有 无 - -发升级通知书发单科免修通知书发留级通知书发单科重修通知书 Y Y N N N N Y N N N Y Y Y N N No如果表中有两条或更多的规则具有相同的动作,并且条件项之间存在着某种关系,则可设法将其合并。

      o简化后的升留级处理判定表 决策表:核对发货单 判定树和判定表o适合描述复杂决策逻辑o决策表n一种处理逻辑的表格,包括:决策变量、决策变量值、角色或公式o决策树n使用树型结构对过程逻辑进行图形化的描述o决策表更严密,决策树更易读 数据字典的建立数据字典的建立 1. 1. 建立数据字典的方法建立数据字典的方法 (1) 手工建立分别将数据字典中每一个条目按照规定的格式写在卡片上,由专人负责管理和维护为了便于查找,通常可将卡片分类,按条目的名称或编号进行排序 (2) 自动建立利用现有的数据字典建立程序,通过按照指定格式输入各类条目的内容,由计算机自动建立相应的数据字典且通常这类工具软件还能够对建立好的数据字典进行完整性、一致性检查,以及进行日常的管理和维护工作 2. 2. 建立数据字典的原则建立数据字典的原则(1) 所有定义必须严密、精确,不能存在二义性2) 书写格式应简洁且严格3) 应可方便地实现对所需条目的按名查阅4) 应便于修改和更新 3.4行为建模状态转化图o描述系统的状态如何响应外部信号来进行推移的一种图形表示n圆圈○:表示系统可达状态n箭头→:表示从一种状态向另一种状态的转换。

      3.4行为建模状态转化图o例:nCPU分配的进程状态迁移ot1:需要等待某一事件发生ot2:等待的事件发生了ot3:时间片到来ot4:时间片用完了nCPU分配的进程状态oS1:就绪:等待分配CPU;oS2:运行:占用CPU进行相应的处理;oS3:挂起:放弃CPU的使用 3.4行为建模状态迁移图 表表3.5 3.5 进程的状态迁移表进程的状态迁移表      状 态 事件S1S2S3t1 S3 t2  S1t3S2  t4 S1  (a) 状态迁移图;(b) 细化后的状态迁移图;(c) 状态迁移图的变形状态迁移图分层表示法 PetriPetri网中的基本符号及含义网中的基本符号及含义符    号含        义位置(place),用于表示系统中的状态变迁(transition),用于表示系统中的事件由状态指向事件的有向边,用于表示事件发生的前提,即对事件的输入由事件指向状态的有向边,用于表示事件导致的结果,即事件的输出3.4行为建模 Petri网 描述静态系统的Petri网 采用Petri网描述系统动态行为的状态变迁图(a)初始状态;(b) 激发t1之后;(c) 激发t2之后;(d) 同时激发t1和t2之后 3.6 3.6 结构化需求分析的若干技术结构化需求分析的若干技术 o 分解o 抽象o采用“自顶向下,逐层分解”的分析思路 系统的顶层数据流图  “自顶向下,逐步分解”过程示意图 3.7 3.7 验证软件需求验证软件需求3.7.1 3.7.1 软件需求规格说明的主要内容软件需求规格说明的主要内容 需求分析阶段的最后一步工作是将对系统分析的结果用标准化的文档,即软件需求规格说明书的形式清晰地描述出来,以此作为审查需求分析阶段工作完成情况的依据和设计阶段开展工作的基础。

      需求规格说明书是系统所有相关人员,包括用户和开发人员对软件系统共同理解和认识的表达形式,是需求分析阶段最重要的技术文档 需求规格说明书中应包括如下主要内容: (1) 引言:用于说明项目的开发背景、应用范围,定义所用到的术语和缩略语,以及列出文档中所引用的参考资料等 (2) 项目概述:主要包括功能概述和约束条件功能概述用于简要叙述系统预计实现的主要功能和各功能之间的相互关系;约束条件用于说明对系统设计产生影响的限制条件,如管理模式、用户特点、硬件限制及技术或工具的制约因素等 (3) 具体需求:主要包括功能需求、接口定义、性能需求、软件属性及其他需求等功能需求用于说明系统中每个功能的输入、处理、输出等信息,主要借助于数据流图和数据字典等工具进行表达;接口定义用于说明系统软/硬件接口、通信接口和用户接口的需求;性能需求用于说明系统对包括精度、响应时间、灵活性等方面的性能要求;软件属性用于说明软件对可使用性、安全性、可维护性及可移植性等方面的需求;其他需求主要指系统对数据库、操作及故障处理等方面的需求 3.7.2 3.7.2 软件需求的验证软件需求的验证 o验证需求的一致性验证需求的一致性o验证需求的完整性验证需求的完整性o验证需求的有效性验证需求的有效性o验证需求的现实性验证需求的现实性 1. 1. 验证需求的一致性验证需求的一致性 所谓一致性,是指目标系统中的所有需求应该是和谐统一的,任何一条需求不能和其他需求互相矛盾。

      当需求分析的结果是用非形式化的方法,如自然语言书写的时候,除了靠人工审查、验证软件需求规格说明书的正确性之外,目前还没有其他更好的方法当目标系统规模庞大、规格说明书篇幅很长的时候,人工审查通常无法消除系统需求中存在的所有的冗余、遗漏和不一致为了克服非形式化需求说明难以验证的困难,人们提出了描述软件需求的形式化方法当软件需求规格说明书是用形式化的需求描述语言书写的时候,可以用软件工具来验证需求的一致性 2. 2. 验证需求的完整性验证需求的完整性 所谓完整性,是指目标系统的需求必须是全面的,需求规格说明书中应包括用户需求的每一个功能或性能由于软件开发人员获得的需求信息主要来源于用户,而许多时候用户并不能清楚地认识到他们的需求,或不能有效地表达他们的需求,大多数用户只有在面对目标软件系统时,才能完整、确切地表述他们的需求,因此需求的完整性常常难以保证 要解决这个问题,需要开发人员与用户双方的充分配合和沟通,加强用户对需求的确认和评审,尽早发现需求中的遗漏 3. 3. 验证需求的有效性验证需求的有效性 所谓有效性,是指目标系统确实能够满足用户的实际需求,确实能够解决用户面对的问题。

      由于只有目标系统的用户才能真正知道软件需求规格说明书是否准确地描述了他们的需求,因此要证明需求的有效性,与证明需求的完整性相同,也只有在用户的密切配合下才能完成 4. 4. 验证需求的现实性验证需求的现实性 所谓现实性,是指确定的需求在现有硬件和软件技术水平上应该是能够实现的为了验证需求的现实性,软件开发人员应该参照以往开发类似系统的经验,分析采用现有的软、硬件技术实现目标系统的可能性,必要的时候可以通过仿真或性能模拟技术来辅助分析需求的现实性。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.