UML和模式应用1 Applying UML and Patterns(中文版).pdf

4星(超过85%的资源)
所需积分/C币:37 2015-09-03 16:51:20 11.91MB PDF
257
收藏 收藏
举报

UML和模式应用1 Applying UML and Patterns(中文版)、
目标 本书的主要目标是 通过应用一套可以解释的设计原则和启发式的教学法帮助学生和开发人员创建更好的面 向对象的设计。 通过学习和运用本书所提供的信息和技术,你将能够更加熟练地从概念和过程两个方面来 理解问题,并能够运用对象技术设计更加完善的问题解决方粲。 适用读者 本书适用于以下读者: ·对面向对象程序设计语言有一定使用经验,但还不熟悉或不很熟悉面向对象分析与设 计技巧的开发人员。 ·在计算机科学或软件工程课程中学习对象技术的学生。 对面向对象分析与设计有一定熟悉程度,并想进一步学习统一建模语言表示法和运用 设计模式的人,或者想磨练和提高自已的分析设计技巧的人。 预备知识 为了更好地从本书受益,读者必须具备以下一些预备知识 面向对象的程序设计语宦(如C++、Java或 Smalltalk)方面的知识和使用经验。 了解对象技术的基本概念,如类、实例、接口、多态、封装和继承等。 本书中没有给出上述的对象技术中最基本概念的定义。 本书的组织 本书的基本组织思路是:以类似于软件项目开发所经历的两个迭代开发周期的顺序来引入 面向对象分析与设计的各个专题。第一个迭代开发周期中引入了一定的分析与设计。第二个迭 代开发周期又引入了新的分析和设计专题,与此同时,还将对前一个周期中的专题进行更深入 的讨论。见图1所示。 本书目的 尽管对象技术很有发展前景,但是如果不能正确地使用某些技巧的话,人们将很难意识到 对象技术所具有的潜力。我的目标是通过运用面向对象分析与设计技巧来促进对象技术的成功 应用,以及促进人们在这方面技术能力的提高。我这样做的原因在于我已经察觉到我所提到的 Ⅵ 这些技巧是成功地开发和维护重要系统项目的关键因素。 在第一个开发周期中,介绍 在第二个开发周期中,深人 性地讨论分析和设计 讨论更多的分析和设计专题。 图1按照项目开发过程来组织本书的内容 致谢 首先要感谢所有使用、学习UML和面向对象分析与设计技术的人,我写这本书正是要帮 助他们,同时他们也是我最好的老师。 这里要特别感谢本书(或其中部分章节)的审阅者,包括 Kent Beck、 Jens Coldewey、 Clay davis、 Tom heruka、 Luke hohman、 Dayid norris、 David nuni、 Brett Schuchert以及整个 水星组( Mercury team)o感谢 Grady booch对本书相关教学材料的审阅。还要感谢 Jim Rum baugh,他就书中UML和软件过程之间的关系等内容提出了很多反馈意见。 因为还有许多人对书中有关模型和过程等内容提出了宝贵意见,所以在此我还要感谢 Todd girvin、 John Hebley、 Tom heruka、 David norris、 David nunn、 Charles rego和 Raj Wall 等 非常感谢 Grady booch、 Ivar Jacobson和 Jim rumbaugh正是他们三位合作开发了统一建 模语言并创建了一个标准的、开放的模型表示法,这在当前无章可循的大环境下是深受业界欢 迎的。此外,我还从他们的主张中学到了很多东西。 感谢我的同事 Jef Newsom为本书增加了Java解决方案的案例学习内容。 感谢我的出版商 Prentice-hall公司的 Paul becker,正是他坚信本书是值得出版的好书。 最后,谢谢 Graham glas提供的一切便利。 关于作者 作者拥有计算机科学学士和硕士学位,他从1978年开始应用从4GL编程、逻辑程序设计 到面向对象程序设计等各种软件技术,从事从大型计算机到微机等各种平台上的大型软件系统 和小型软件系统的开发。 在20世纪80年代初期,作者钟情于人工智能和知识系统中的程序设计技术,并从那时起 开始接触到面向对象的程序设计(使用Lisp语言)。他从1984年开始使用和讲授Lisp语言的 面向对象程序设计,到1986年改用 Smalltalk,到1991年变为C→,最近又开始使用Java语 言,并结合程序设计讲授各种面向对象的分析和设计方法。他在对象技术领域指导和帮助过的 学生超过2000人。 作者现任 Objectspace公司的首席讲师, Objectspace是一家专门研究分布式计算、 agent技 术和对象技术的公司。 读者可以通过电子邮箱: carman@acm.org与作者本人联系。 排版约定 新出现的术语用黑体印刷。 类名或者方法名如果保持英文原文用斜体印刷,如果译为中文用楷体印刷。 相关作者的参考文献用方括号括住的文献缩写来引用,如[Bb67]。 “-”符号用作类名和类中方法名之间的连接符,如 ClassName- methadName( 顺序图 契约 id2 契约 名称: 职责 message( 类 交叉引用 message 注解: 输出 前置条件: 协作图 后置条件: 实例名:类名 实例名:类名 属性=值 0g1(参数列表) 2: [test] message fss1;类 3a:[tesr] messages d2:类 互斥条件子句 Bb:(not test2] message 址R;类 迭代子句 :卩≥1.10]m50 :类 发送给集合对象的消息 5 多对象 类图设计视图 类名 接口 属性 关联名 winter:ac +方法() 导航 接实现 参数化的类 (模板 std vector Cass 类的根包 UML及相关表示法样例 用况 用况 系统名 用况名: 参与者 日的: 用况1 概述 类型 参与者 交叉引用 典型的事件发生过程 上 参与者的动作系统响应 用况2 用况2 可供选择的过程 静态结构图 类名 类名 软件规格说明的类名 属性 属性 属性:类型 属性:类型=初始值 类属性 《接口》 抽象类名 派生属性 接日名 属性 方法1() 操作( 方法2(参数:类型):返回值类型 抽象方法 +公有方法() 类名 私有方法() 接 注意:一个UM中的“类” 保护方法() O既可以用于领域概念建模 又可用于软件规格说明建模。 类方法() 关联: 多性: 关联名 类1 角色-1 角色 类2 c8零个成多个 “许多 关联类 个或多个 泛化: 组成 1.40 个到40个 子类型 整体 c 正好5个 子类型1 子类型2 部分 正好3个或 5个或8个 目录 译者序 2.3高层步骤…………… 16 前 2.4迭代开发 24.1确定开发周期的时间盒 24.2用况和迭代开发周期… 17 第一部分绪论 24.3划分用况的层次… 2.5计划和细化阶段 18 第1章面向对象的分析与设计…… 1.1运用UM、模式和面向对象的分析与 26构造阶段—开发周期 ………………19 2.7选择制品创建的时机 设计技术 2.7.1何时创建概念模型… 1.2分配职责 272何时创建扩展用况 21 1.3什么是分析和设计…… 5第3章定义模型和制品 ……23 1.4什么是面向对象的分析和设计 3.1导言 23 1.5类比—组织 MicroChaos公司的 3.2建模系统…………… 业务…………… 33样例模型 1.51 MicroCha0s公司正迅速发展壮大……6 34制品之间的关系 1.5.2什么是业务过程…… 1.5.3组织中的角色是什么 7第二部分计划和细化阶段 1.54谁该干什么?他们之间如何 协作… 第4章学习案例:销售点终端 16面向对象的分析与设计的例子………84.1销售点终端系统 16.1定义用况………………8 4.2系统体系结构的层次和学习案例的 1.6.2定义概念模型 重点 163定义协作图…………… 4.3我们的策略:反复学习和反复开发……30 164定义设计类图 ……10第5章理解需求… 1.6.5掷骰子游戏例子的总结 5.1导言… 1.7面向对象的与面向功能的分析与 52需求…… 设计 5.3总体问题陈述 18警告:“分析”和“设计”可能引起 54顾客 术语上的“冲突” 5.5目标…… 1.9统一建模语言… 12 5.6系统功能 34 第2章开发过程导论 5.6.1功能的分 2.1导言… 14 5.62基本功能… ……35 2.1.1推荐的过程和模型——RPM……14 5.6.3处理支付的功能 2.1.2讨论范围 15 5.7系统属性 35 22UML和开发过程……………15 58需求阶段的其他制品………… 36 第6章用况:对过程的描述 …38 6.17样例模型… 6.1导言 38第7章用况的分类和时间调度 6.2活动及其相互问的依赖关系 71导言 6.3用况 …………39 72将用况调度分配到开发周期中实现 631高层用况举例:购买商品…39 72.1用况和开发周期 63.2扩展用况举例:用现金购买 7.2.2用况的分类… 商品 73销售点终端应用系统中的用况分类 63.3扩展格式的说明 74“系统启动”用况 678 6.4参与者 ,······q曲自音是要 ………41 7.5销售点终端应用系统中用况的时间 6.5使用用况时的常见错误 调度 6.6用况的识别 7.51创建复杂用况的多个版本……58 6.7用况和领域过程 7.5.2用况分配 6.8用况、系统功能和可跟踪性…… 76“购买商品”用况的版本 69用况图 43 76.1购买商品一版本1 610用况的格式 762购买商品一版本2… 6.10.1高层格式 7.7小结 610.2扩展格式… 第8章开始进入一个开发周期 611系统及其边界……………………44 612主要、次要和可任选的用况………46 第三部分分析阶段(1) 613基本用况和真实用况 6.13.1基本用况 46第9章建立一个概念模型 9.1导言… 613.2真实用况……………47 6133购买商品的基本用况…… 92活动及其相互之间的依赖关系 93概念模型 6134购买商品的真实用况 47 614表示法要点 9.3.1理解领域词汇…… 614.1用况的命名 9.32概念模型不是软件设计模型 48 9.3.3概念…… 6142扩展用况的开始部分…… 9.3.4概念模型和问题分解…… 6143判定点和分支的表示法… 6.15一个开发过程中的用况………49 93.5销售点终端系统问题域中的 概念 615.1计划和细化阶段的步骤…… 69 94识别概念的策略 6152选代开发周期阶段中的步骤………50 6.16销售点终端系统的处理步骤… 94.1使用概念目录列表来找出概念 942根据名词性短语找出概念 6161识别参与者和用况…………50 6.162用高层格式书写用况…… 95销售点终端问题域中的候选概念……71 95.1报告类对象—模型中包括 6163绘制系统的用况图 收据吗… 6164为用况增加关联… 72 9.5.2销售点终端系统的概念模型(只 16书写一部分扩展的基本用况 括概念) 6.16.6在必要情况下书写一些真实 9.6建立概念模型的指导原则 用况 961怎样建立一个概念模型……72 6167划分用况的层次…… 962事物的命名和建模:制图者的 方法 73 114.3纯数据值 963在识别概念时常犯的错误 11.44设计问题蔓延:避免使用 9.7类似概念的解析—POST和 Register 34555 外部键属性…… ……9I 11.5非简单属性类型………… 91 98非现实世界中的概念建模 116对属性的数量和单位建模… 9.9规格说明或描述型概念… 11.7销售点系统中的属性 99.1对规格说明的需求 11.8销售点模型中的属性… 9.9.2什么时候需要规格说明型 119从 Saleslinelten到ltem的多重性……95 概念………………… 11.10销售点系统的概念模型……95 9.9.3另一个规格说明的例子 76 11.11小结…… 910UML中有关术语的定义 …77第12章在术语表中记录术语… 9.11样例模型…… 78 12.1导言 第10章概念模型一添加关联……丌12.2术语表… 10.1导言 79 123活动及其相互之间的依赖关系 10.2关联 销售点系统的术语表的示例 10.3关联的UML表示法… 80第13章系统行为—一系统顺序图 104找出关联—通用关联列表…8013.1导言……… 105关联应该精细到什么程度………81 132活动及其相互之间的依赖关系……9g 106关联原则………………………81 13.3系统行为 10.7角色… 134系统顺序图 100 108关联的命名…… 13.5系统顺序图的例子 101 109两个类型间的多重关联…………83 13.6系统事件和系统操作……………102 10.10关联和它的实现 137如何建立一个系统顺序图………103 10.11销售点问题域中的关联 13.8系统顺序图和其他制品… 0.111在商店中不能被遗忘的一些 139系统事件和系统边界 关系 13.10系统事件和操作的命名…………1095 10.1l2使用关联核对列表的分类… 13.11显示出用况的文本描述…………105 10.12销售点系统的概念模型 13.12样例模型… 10.122“需要知道”型关联和理解灬…8等14章系统行为—契约 10.12.1只保存“需要知道”型 …….107 关联吗… 14.1导言……………… 107 142活动及其相互之间的依赖关系 型关联… 导·· 14.3系统行为 第11章概念模型——派加属性… 108 88 144契约… 108 11.1导言 88 14.5契约举例 I09 11.2属性……… 88 14.6契约段…… ………109 11.3属性的UML表示法… 88 147如何建立一个契约…… 110 11.4有效的属性类型 鲁 148后置条件…… …111 114.1保持属性的简单性 89 148.1后置条件与概念模型相关 114.2分析和设计相比:属性如何 111 14.82使用后置条件的优点………11 用代码来实现 90 149后置条件的核心:舞台和帷幕

...展开详情
试读 127P UML和模式应用1 Applying UML and Patterns(中文版).pdf
立即下载 身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
Jack_SK 谢谢楼主,很不错噢!
2018-09-04
回复
hydreamZK 很好用,帮上忙了,谢了楼主
2018-08-11
回复
郁闷阳光 很不错的东西,谢谢分享。
2017-12-05
回复
Librazy 软件工程必读
2017-09-20
回复
qqqqq大熊 挺好的,很实用
2017-09-07
回复
ylf宗师 不错的资源
2017-08-24
回复
学习使我快乐啊 有缺页就很烦恼。
2017-03-13
回复
ylmilo 书很好,辛苦楼主了。
2017-01-01
回复
pearl20121221 谢谢分享,UML一直都知道,一直没静下心来好好学习,加油加油
2016-04-13
回复
凌小星 挺好的,很实用
2016-04-08
回复
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
上传资源赚钱or赚积分
最新推荐
UML和模式应用1 Applying UML and Patterns(中文版).pdf 37积分/C币 立即下载
1/127
UML和模式应用1 Applying UML and Patterns(中文版).pdf第1页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第2页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第3页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第4页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第5页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第6页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第7页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第8页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第9页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第10页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第11页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第12页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第13页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第14页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第15页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第16页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第17页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第18页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第19页
UML和模式应用1 Applying UML and Patterns(中文版).pdf第20页

试读结束, 可继续阅读

37积分/C币 立即下载