- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第六章 面向对象的需求分析齐治昌《软件工程》第二版
第六章 面向对象的需求分析齐治昌《软件工程》第二版 1. 概念与思想 2. UML概述 3. 基于UML的需求分析 6. OOA概述 OOA的核心是利用面向对象的概念和方法建造需求模型。包含:图形语言机制+面向对象方法学 历史: 60年代中Simula 67; 80年代初Smalltalk;80年代中后期成为软件开发方法。 90年代中后期,UML(统一建模语言) 6.1 OO的概念与思想 OO方法把程序看作是相互协调而又彼此独立的对象的集合。 OO方法强调软件开发过程中面向客观世界中的事物,采用人类认识世界的普遍的思维方法。 现实世界、问题空间、解空间、语意断层 现实世界由实体及其相互关系构成,与问题相关的实体及其属性抽象为问题空间的对象,通过映射为解空间中的基本对象来寻求问题的软件解。 6.1 OO的概念——对象 定义:是现实世界中个体或事物的抽象表示,是其属性和相关操作的封装。 理解: 构成世界的一个独立单位。对象=属性+服务,属性-静态特征 服务-动态特征 以数据为中心:围绕数据协调处理,不设置与数据无关的操作。 对象是主动的:进行处理的主体。 实现了数据封装:数据对外是隐藏的、不可见的。 本质上具有并行性。 模块独立性好。 6.1 OO的概念——类 定义:某些对象共同特征(属性和操作)的表示。 理解: 人类认识客观世界常用的思维方法。本质特征、抽象、概念/类。 类给出了符合该类所有对象的抽象定义,对象是符合这种定义的一个实体。 一个对象称为类的实例,类称作对象的模板。 对象有自己的存储空间,类是形式定义。 一般类、特殊类 6.1 OO的概念——继承 定义:是现实世界中遗传关系的直接模型,它表示类间的内在联系以及对属性和操作的共享。 理解: 特殊类自动、隐含地拥有其一般类的所有属性与服务。 继承具有传递性。 多继承性。 多继承的命名冲突。 6.1 OO的概念——聚集 定义:现实世界中部分-整体关系的模拟。 理解: 物理上的组成关系。 抽象概念的组成关系。 6.1 OO的概念——消息 定义:对象与外部世界相互关联的唯一途径 理解: 对象间通信唯一合法的途径。 C++中,所谓消息就是函数(或过程、例程)调用。 “消息”有更强的适应性。 6.2 UML概述——简介 用于对软件密集型系统的制品进行可视化、祥述、构造和文档化的图形语言,是一种描绘系统蓝图的标准方法。 综合了Grady Booch的Booch方法、Jackson的 OOSE和Rumbaugh的OMT方法,1994年底开始,1998年发布了UML 1.3版。 UML是一种语言,提供了用于交流的词汇表和词汇表中组合词汇的规则。特别着重于对系统进行概念上物理上的可视化描述。主要完成的工作:可视化、祥述、构造、文档化。 使用UML描述系统,可直接得到需求、体系结构、项目计划和源代码等文档。 6.2 UML概述——语言机制 图形化的表示机制,十多种视图,分4类: 用例图:用户角度:功能、执行者 静态图:系统静态结构 类图:概念及关系 对象图:某种状态或时间段内,系统中活跃的对象及其关系 包图:描述系统的分解结构 行为图:系统的动态行为 交互图:描述对象间的消息传递 顺序图:强调对象间消息发送的时序 合作图:强调对象间的动态协作关系 状态图:对象的动态行为。状态-事件-状态迁移-响应动作 活动图:描述系统为完成某功能而执行的操作序列 实现图:描述系统的组成和分布状况 构件图:组成部件及其关系 部署图:物理体系结构及与软件单元的对应关系 6.2 UML概述——语言机制(用例图) 例:p147-150 6.2 UML概述——语言机制(类图) 6.2 UML概述——语言机制(顺序图) 6.2 UML概述——语言机制(协作图) 6.2 UML概述——语言机制(状态图) 6.2 UML概述——基于UML的软件开发过程 迭代渐进式,四个阶段: 初启:确定目标、范围 细化:初步需求分析、初步高层设计、部分详细设计、部分原型构造 用到的UML语言机制:用例及用例图、类图、活动图、包图、交互图等 细化结束的条件:主要需求通过用例及用例图描述;重要风险已标示;能够精确估算实现每一用例的时间(p151) 构造:通过迭代完成对所有用例的软件实现。 迭代计划及其原则:业务价值大、风险高的用例优先( p151-152) 迭代过程:针对用例的分析、设计、编码、测试、集成 用到的UML语言机制:p152 (1)-(8) 移交 6.3 基于UML的需求分析 基于UML的需求分析大致分为两步骤: 利用用例及用例图表示需求 利用包图及类图表示目标系统结构 两步骤无时序关系、可并行。P153 图6.7 6.3 需求分析——开发场景 场景:从单个执行者的角度观察目标软件系统的功能和外部行为。是用
文档评论(0)