- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件工程模型与方法Models Methods of Software Engineering 第五章 结构化需求分析 修佳鹏 media@bupt.edu.cn 本章内容 5.1 结构化需求分析的由来 5.2 结构化分析模型的组成 5.3 数据建模 5.4 功能建模 5.5 数据词典 5.6 行为建模 5.7 软件需求规格说明书 5.1 结构化需求分析的由来 分析建模的开始于20世纪60-70年代,但结构化分析方法的第一次出现是作为另一个重要课题—“结构化设计”的附属品 。 其目的是需要一种图形符号体系来表示数据和对数据进行变换的处理,这些处理最终能被映射到软件体系结构的设计中。 结构化分析这个词汇最初由Douglas Ross提出,由DeMarco进行了推广,定义了创建信息流模型的关键图形符号。80年代中期,结构化分析引入了对实时系统的扩展。 5.2 结构化分析模型的组成 需求分析的分析模型必须达到三个主要目标: 描述客户的需求; 建立创建软件设计的基础; 定义在软件完成后可以被确认的一组需求。 5.2 结构化分析模型的组成 数据字典是模型的核心 实体关系图(ER图):描述数据对象间的关系 ,用于数据建模。 数据流图(DFD图):描述了数据流在系统中流动的过程,以及对数据流进行变换的功能,用于功能建模。 状态迁移图(STD图):描述了对外部事件的响应方式,表示了系统的各种行为模式(称为状态)以及在状态间进行变迁的方式,用于行为建模。 5.3 数据建模 5.3.1 什么是数据模型 5.3.2 数据建模的目标 5.3.3 实体关系图 5.3.4 数据对象、属性和关系 5.3.5 数据结构规范化 5.3.1 什么是数据模型 软件系统本质上是处理信息的系统,即对数据进行处理的系统,因此在开发过程中必须考虑以下两方面的问题: “数据” 需要有哪些数据? 数据之间有什么联系? 数据本身有什么性质? 数据结构等 对数据的“处理” 对数据进行哪些处理? 每个处理的逻辑功能是什么? 5.3.1 什么是数据模型 数据模型是为了把用户的数据要求清晰明确地表达出来所建立的一个概念性的模型,也称为信息模型。 概念性数据模型是一种面向问题的数据模型,是按照用户的观点来对数据和信息建模。它描述了从用户角度看到的数据,反映了用户的现实环境,但与在软件系统中的实现方法无关。 概念模型常用的表示方法是实体-关系图法,也称为实体关系模型。 5.3.2 数据建模的目标 数据建模的目标是为了明确下列与数据处理相关的特定问题: 系统处理哪些主要的数据对象? 每个数据对象的组成如何? 哪些属性描述了这些数据对象? 这些数据对象当前位于何处? 数据对象之间的关系? 数据对象和变换它们的处理之间有哪些关系? 5.3.3 实体关系图 实体-关系方法(Entity Relationship Approach)是最常用的表示概念性数据模型的方法,是以图形的形式表示实体以及实体之间的关系。用这种方法表示的概念性数据模型又称为ER模型。 ER模型中使用的图形工具简称为ER图,是由Peter Chen为关系数据库系统的设计提出的,用来标识一组基本的构件:实体、属性、关系。 ER图仅描述现实世界中的实体和关系,不涉及这些实体在系统中的具体实现方法。 5.3.4 数据对象、属性和关系 数据对象描述包括了数据对象的名称及其所有属性。通常将数据对象简称为“实体”,其具体表现可以是: 外部实体:产生或使用消息的任何事物; 事物:例如建筑物、汽车等物体; 事件:例如警报; 角色:例如老师、学生、管理员等; 组织单位:例如学校教务处、财务处等; 地点:例如仓库、停车场等; 结构:例如文件、档案等。 属性 每个数据对象都具有一些区别于其他数据对象的特征和性质,这些特征称为数据对象的属性。它可用于: 命名数据对象; 描述数据对象实例; 建立与其它数据对象的联系; 能够唯一标识一个数据对象实例的一个(组)属性,称为该数据对象的“关键字”。 例如:汽车实体的属性包括生产厂家、型号、车牌号、车型、颜色、车主、出厂日期、座位数、车长度、发动机型号等。其中关键字为车牌号 。 关系 基数 为了更准确的刻画数据对象之间的关系,数据模型引入基数,表示在一个给定的关系中实体出现的次数。 基数通常简单地表达为“一”或“多”。考虑到“一”和“多”的所有组合,两个实体可能的关联如下: 一对一:例如汽车与车牌号的关系; 一对多:例如生产厂家与汽车的关系; 多对多:汽车生产厂家与购车人的关系; ER图 ER图中的实体与属性用一个带名字的矩形表示。上部表示实体的名称,下面表示实体的属性,用下划线标识实体的关键字属性。 ER图中的关系用连接实体的连线表示,连线上标出关系的名称。 ER图中的基数用连线的不同端点符号
文档评论(0)