研究生软件工程课程第三章-结构化建模技术课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《研究生软件工程课程第三章-结构化建模技术课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 研究生 软件工程 课程 第三 结构 建模 技术 课件
- 资源描述:
-
1、 第三章第三章 系统建模技术系统建模技术-结构化方法结构化方法 (一)结构化分析方法(一)结构化分析方法 要回答:如何定义问题?要回答:如何定义问题?就如何定义问题而言,如何获得需求就如何定义问题而言,如何获得需求 如何规约需求如何规约需求 如何验证需求如何验证需求 1、关于需求获取、关于需求获取 需求面临的挑战需求面临的挑战 问题空间理解问题空间理解 人与人之间的通信人与人之间的通信 需求的不断变化需求的不断变化 重要性之一重要性之一 软件需求工程直接关系到软件需求工程直接关系到“成本、质量和按时交付成本、质量和按时交付”等问题等问题-它们是项目成败的关键因素。它们是项目成败的关键因素。项目
2、的五维:进度,特性,质量,成本,人员。项目的五维:进度,特性,质量,成本,人员。重要性之二重要性之二 软件需求工程软件需求工程-这种发生在软件生命周期的初始阶段这种发生在软件生命周期的初始阶段的错误是非常难于改正,并且是代价极高的。的错误是非常难于改正,并且是代价极高的。最新的研究兴趣聚焦于最新的研究兴趣聚焦于“需求引出需求引出”,因为它涉及到因为它涉及到软件开发人员与非软件专业人员合作的问题。软件开发人员与非软件专业人员合作的问题。分析问题和需求的能力取决于分析人员的分析问题和需求的能力取决于分析人员的思维思维和和经验经验。思维来源于思维来源于:严谨、逻辑和严谨、逻辑和“活跃活跃”的思考习惯
3、。的思考习惯。(1)严谨要求严谨要求思考的对象思考的对象应该是不放过任何一个应该是不放过任何一个“小小”问题问题 (2)逻辑要求逻辑要求思思考的过程应该是一种符合规则的考的过程应该是一种符合规则的 推导过程推导过程 (3)活跃思维要求活跃思维要求思考的方式思考的方式应该是并行的,即应该是并行的,即 不是仅一个角度,而是多个角度来思考问题不是仅一个角度,而是多个角度来思考问题经验来源于:经验来源于:(1)开发了一些软件并善于总结开发了一些软件并善于总结-创新与教训创新与教训 (2)跟踪最新技术。跟踪最新技术。4 4)需求获取技术特征)需求获取技术特征由上可见,需求获取技术特征:由上可见,需求获取
4、技术特征:方便通讯(使用易于理解的语言)方便通讯(使用易于理解的语言)提供定义系统边界的方法提供定义系统边界的方法 提供划分、抽象、投影等方法提供划分、抽象、投影等方法 允许采用多种可供选择的设计方法允许采用多种可供选择的设计方法 适应需求的变化适应需求的变化 支持使用问题空间的术语,思考问题和编制文档支持使用问题空间的术语,思考问题和编制文档 2)语义与表示)语义与表示 一般地说,一般地说,USE CASE是用户为了达到某一目标和系统是用户为了达到某一目标和系统进行的典型交互。例如:进行的典型交互。例如:“做一次拼写检查做一次拼写检查”“对一个文档建立索引对一个文档建立索引”对一个用况而言,
5、关键要素是:对一个用况而言,关键要素是:表示一种用户可以理解表示一种用户可以理解并对该用户有价值的功能。并对该用户有价值的功能。用况提供了客户和开发人员在制订项目计划中进行交流用况提供了客户和开发人员在制订项目计划中进行交流的主要成分。的主要成分。(1)USE CASE语义语义 一个一个USE CASEUSE CASE是系统或其它语义实体(例如子系统或一个是系统或其它语义实体(例如子系统或一个类)所提供的一块类)所提供的一块(unit)(unit)高内聚的功能,显露该系统和一个高内聚的功能,显露该系统和一个或多个外部的交互者(称为操作者)交替出现的消息序列,或多个外部的交互者(称为操作者)交替
6、出现的消息序列,以及该系统所执行的动作。以及该系统所执行的动作。可见,一个可见,一个USE CASEUSE CASE捕获了参与交互的各方关于其行为捕获了参与交互的各方关于其行为的一个约定。通过这一约定,描述了该语义实体在不同条件的一个约定。通过这一约定,描述了该语义实体在不同条件下的行为对参与者一个要求的响应,以实现某一目的。不同下的行为对参与者一个要求的响应,以实现某一目的。不同的行为序列,依赖于所给出的特定要求以及与这些要求相关的行为序列,依赖于所给出的特定要求以及与这些要求相关的条件。的条件。(2)表示与描述表示与描述 USE CASEUSE CASE通常被表示为:通常被表示为:USE
7、CASE USE CASE包含一组操作和属性,这些操作和属性包含一组操作和属性,这些操作和属性规约了该规约了该USE CASEUSE CASE的实例所执行的那个动作序列。动作的实例所执行的那个动作序列。动作包含状态的改变以及该包含状态的改变以及该USE CASEUSE CASE与其环境的通讯。与其环境的通讯。为了表明为了表明USE CASEUSE CASE所包含的具体内容,还应给出它所包含的具体内容,还应给出它的正文描述。即:的正文描述。即:USE CASE 中包含的信息中包含的信息名称名称(Name)(Name)标识标识(Identifier)(Identifier)描述描述(Descrip
8、tion)(Description)角色角色(Actor)(Actor)状态状态(Status)(Status)活动及时序活动及时序频度频度(Frequency)(Frequency)注:具体例子请参见注:具体例子请参见P16-17P16-17。3)操作者语义与表示操作者语义与表示 一个操作者定义了一组高内聚的角色,当用户与该一个操作者定义了一组高内聚的角色,当用户与该实体交互时,用户可以扮演这一角色。实体交互时,用户可以扮演这一角色。对于每一对于每一USE CASEUSE CASE,一个操作者有一种角色,即每,一个操作者有一种角色,即每一一USE CASEUSE CASE与具有一种角色的操作
9、者进行通讯。与具有一种角色的操作者进行通讯。通常,一个操作者被表示为:通常,一个操作者被表示为:5)关系)关系 在在USE CASEUSE CASE之间,或在操作者与之间,或在操作者与USE CASEUSE CASE之间,存在一之间,存在一些标准的关系:些标准的关系:关联:参与关系,即操作者参与一个关联:参与关系,即操作者参与一个USE CASEUSE CASE。例如,操作者的实例与例如,操作者的实例与USE CASEUSE CASE实例相互通讯。实例相互通讯。关联是操关联是操作者和作者和USE CASEUSE CASE之间的唯一关系。之间的唯一关系。扩展:扩展:USE CASE AUSE C
10、ASE A到到USE CASE BUSE CASE B的一个扩展关系,的一个扩展关系,指出了指出了USE CASE BUSE CASE B的一个实例可以由的一个实例可以由A A说明的行为予以扩说明的行为予以扩展(根据该扩展所说明的特定条件),并依据该扩展点定展(根据该扩展所说明的特定条件),并依据该扩展点定义的位置,义的位置,A A说明的行为被插入到说明的行为被插入到B B中。中。包含:包含:USE CASE AUSE CASE A到到USE CASE BUSE CASE B的一个包含,指的一个包含,指出出A A的一个实例将包含的一个实例将包含B B说明的行为,即这一行为将包含在说明的行为,即
11、这一行为将包含在A A定义的那部分中。定义的那部分中。泛化:泛化:USE CASE AUSE CASE A到到USE CASE BUSE CASE B的泛化,指出的泛化,指出A A是是B B的特殊情况。的特殊情况。1 *the salesperson asks for the catalog Place Orderextension pointsadditional requests:after creation of the order SupplyCustomer Data Order Produck Arrange Payment Request Catalogsalesperson 例
12、:例:USE CASE USE CASE 关系关系 Actor Actor 关系关系Supervisor Establish Credit 1 *6)、)、USE CASE图图 USE CASEUSE CASE图给出了操作者和图给出了操作者和USE CASEUSE CASE以及它们之间以及它们之间的关系。即图中给出了一些操作者、一组关系、一些的关系。即图中给出了一些操作者、一组关系、一些接口和这些元素之间的关系。接口和这些元素之间的关系。(关系是操作者和关系是操作者和USE CASEUSE CASE之间的关联之间的关联 是操作者之间的泛化是操作者之间的泛化 是是USE CASEUSE CASE
13、之间的泛化、扩展和包含之间的泛化、扩展和包含)可以将一些可以将一些USE CASEUSE CASE用一矩形括起,以表示所包括用一矩形括起,以表示所包括的那个系统或其它语义实体的边界。的那个系统或其它语义实体的边界。Check statusPlace orderFill order Establish credit Telephone CatalogSalespersonShipping ClerckSupervisorCustomer例:例:USE CASEUSE CASE图图2、关于需求规约、关于需求规约需求规约的主要目标:需求规约的主要目标:依据需求陈述(作为输入),解决其中的歧义、不依据
14、需求陈述(作为输入),解决其中的歧义、不一致等问题,以系统化的形式表达用户的需求,即给出一致等问题,以系统化的形式表达用户的需求,即给出问题的形式化或半形式化的描述(建立模型),形成需问题的形式化或半形式化的描述(建立模型),形成需求规格说明书。为了实现这一目标,求规格说明书。为了实现这一目标,(一)结构化分析方法(一)结构化分析方法 1 1提出的概念有:提出的概念有:数据流:数据流:加工:加工:数据存储:数据存储:数据源:数据源:数据潭:数据潭:概念是完备的概念是完备的。2 2建模过程建模过程 (1)(1)建立系统的功能模型建立系统的功能模型 -使用的工具为数据流图使用的工具为数据流图DFD
15、DFD 首先:建立系统环境图,确定系统边界首先:建立系统环境图,确定系统边界 继之:自顶向下,逐层分解继之:自顶向下,逐层分解 (2)建立数据字典建立数据字典 定义数据流定义数据流 定义数据存储定义数据存储 定义数据项定义数据项 (3)(3)给出加工小说明给出加工小说明 -使用的工具可以为判定表使用的工具可以为判定表 判定树判定树 (1)(1)建立系统的功能模型建立系统的功能模型 -使用的工具为数据流图使用的工具为数据流图DFDDFD 数据流图:是一种描述数据变换的图形工具。例如:数据流图:是一种描述数据变换的图形工具。例如:旅行社旅行社订票单订票单预定预定机票机票准备准备机票机票记帐记帐费用
展开阅读全文