
内容简介
Jolt 大奖素有“软件业之奥斯卡”的美称,Jolt大奖精选丛书精选自Jolt 历届获奖图书,以植根于开发实践中的独到工程思想与杰出方法论为主要甄选方向。本书第1 版和第2 版分别于1991 年和1993 年荣获Jolt 震撼奖。 《面向对象分析与设计(第3版)(修订版)》是UML 创始人Grady Booch 的代表作之一。 《面向对象分析与设计(第3版)(修订版)》分为理论和应用两部分。理论部分深刻剖析了面向对象分析与设计(OOAD)的概念和方法。应用部分连续列出了5 个不同类型、不同领域的应用,描述如何从初始阶段到交付阶段,将OOAD 理论和方法应用到项目中。应用部分所涉及的领域包括系统架构、数据获取、密码分析、控制系统和Web 开发,还给出了一些关于重要问题的有效建议,包括分类、实现策略和高性价比的项目管理。《面向对象分析与设计(第3版)(修订版)》中介绍的概念都基于牢固的理论基础。同时,作者十分注重实效,基于其丰富的经验,面向软件工程实践者的实际需要,提出了改进的对象开发方法,用于解决系统和软件开发者面临的复杂问题;运用大量例子说明了基本概念,解释了方法,并展示了在不同领域的成功应用。 《面向对象分析与设计(第3版)(修订版)》的表示法采用最新的UML 2.0,因此本书是学习UML 2.0 不可多得的参考书。本书非常适合实际系统和软件的开发者、系统分析师或架构师、项目经理阅读,也可以作为高等院校软件工程和高级编程课程的教材使用。
作者简介
Grady Booch在软件架构、软件工程和建模领域的创新工作是世界知名的。从1981年Rational公司创建开始,他就一直担任该公司的首席科学家。Grady于2003年3月成为了IBM院士(IBM Fellow)。 Grady是统一建模语言(UML)最早的开发者之一,也是几个Rational产品的最早开发者之一。Grady曾担任世界各地一些复杂的软件密集型项目的架构师和架构指导者。 Grady是6本畅销书的作者,包括UML Users Guide和Object-Oriented Analysis with Applications。Grady发表了几百篇有关软件工程的技术文章,其中包括在20世纪80年代早期发表的文章,这些文章最先提出了面向对象设计的术语和实践。他曾在世界各地演讲和咨询。 Grady是美国计算机协会(ACM)、美国电气电子工程师学会(IEEE)、美国科学促进会(AAAS)、有社会责任的计算机专家协会(CPSR)的成员。他是IBM院士、ACM院士、世界技术网络院士,也是软件开发论坛梦想家。Grady是敏捷联盟、Hillside集团和软件架构师世界学院的创始委员会成员,也是Northface大学的顾问委员会成员。 Grady于1977年从美国空军学院获得学士学位,于1979年从加州大学圣巴巴拉分校获得电子工程科学硕士学位。 Grady与他的妻子和他的猫生活在科罗拉多。他的兴趣包括阅读、旅行、唱歌和弹奏竖琴。 Robert A. Maksimchuk是Unisys Chief Technology Office的一名研究主管。他关注新出现的建模技术,目的是提升Unisys 3D可视企业建模框架的战略方向。Bob为这项任务带来了不同行业的大量系统工程、建模、面向对象分析与设计的专业知识。他是UML for Mere Mortals和UML for Database Design的合著者,也写了许多文章。他曾经周游世界各地,在各种技术论坛上作为重要演讲者发言,举办关于UML和面向对象开发的研讨会和培训。Bob是电气电子工程师学会(IEEE)和国际系统工程学会(INCOSE)的成员。 Michael W. Engle是洛克希德马丁公司的首席工程师。他有超过26年的技术和管理经验——从项目启动到运营支持,涵盖了完整的系统开发生命周期。利用系统工程师、软件工程师和系统架构师的背景,Mike运用了面向对象技术,为复杂的系统开发提供创新的开发方式。 Bobbi J. Young,Ph.D.,是Unisys Chief Technology Office的一名研究主管。她有着多年的IT行业从业经验,与商业公司和国防部合同供应商一同工作。Young博士是一名咨询师,她在项目管理、企业架构、系统工程和面向对象分析与设计方面提供现场指导。在她的职业生涯中,她关注于系统生命周期过程和方法学,同时也关注企业架构。Young博士拥有生物学、计算机科学和人工智能学位,她获得了管理信息系统的博士学位,也曾是美国海军预备役的一名指挥官(已退伍)。 Jim Conallen是IBM Rational的模型驱动开发战略小组的一名软件工程师。在这个小组中,他积极参与,将对象管理集团(OMG)的模型驱动架构(MDA)计划应用于IBM Rational的模型工具中。Jim在基于资产的开发和可复用资产规范(RAS)领域也很活跃。Jim经常在会议上演讲,也经常写文章。他的专业领域是Web应用开发。 他开发了UML的Web应用扩展(WAE)。这是对UML的一种扩展,让开发者能够利用UML在合适的抽象和细节层面上对Web应用的架构进行建模。这项工作是IBM Rational Rose和Rational XDE Web Modeling功能的基础。 Jim与人合著了两个版本的Building Web Applications with UML,第一个版本采用微软公司的ASP技术,后一个版本采用J2EE技术。 Jim的经验也来自于加入Rational之前的工作,那时他曾是独立的咨询师、Peace Corps的志愿者和大学讲师。他还是3个孩子的父亲。Jim从Widener大学获得了计算机和软件工程的学士学位和硕士学位。 Kelli Houston是IBM Rational的IT咨询专家。她是IBM内部方法的方法架构师,负责编写方法并集成IBM的方法。除了方法架构师的角色,Kelli还在IBM内部领导Rational Method Composer(RMC)特别兴趣小组(SIG)工作,为客户和IBM内部咨询师提供有效使用RMC方面的咨询和现场指导服务。
网友热评
学良: 绝对的经典,计算机的书里面唯一一个认真读过三遍的
图书目录
第1篇概念 第1章复杂性.......................................................................................2 1.1复杂系统的结构.......................................................................................3 1.1.1个人计算机的结构.......................................................................3 1.1.2植物和动物的结构.......................................................................4 1.1.3物质的结构...................................................................................5 1.1.4社会机构的结构...........................................................................5 1.2软件固有的复杂性...................................................................................6 1.2.1定义软件复杂性...........................................................................6 1.2.2为什么软件在本质上是复杂的...................................................7 1.3复杂系统的5个属性.............................................................................11 1.3.1层次结构.....................................................................................11 1.3.2相对本原.....................................................................................12 1.3.3关注点分离.................................................................................12 1.3.4共同模式.....................................................................................12 1.3.5稳定的中间形式.........................................................................13 1.4有组织和无组织的复杂性.....................................................................13 1.4.1复杂系统的规范形式.................................................................13 1.4.2人在处理复杂性时的能力局限.................................................16 1.5从混沌到有序.........................................................................................17 1.5.1分解的作用.................................................................................17 1.5.2抽象的作用.................................................................................21 1.5.3层次结构的作用.........................................................................22 1.6复杂系统的设计.....................................................................................23 1.6.1作为科学和艺术的工程.............................................................23 1.6.2设计的含义.................................................................................23 1.7小结.........................................................................................................26 第2章对象模型.................................................................................27 2.1对象模型的演进.....................................................................................27 2.1.1程序设计语言的换代.................................................................28 2.1.2第一代和第二代早期程序设计语言的拓扑结构.....................30 2.1.3第二代后期和第三代早期程序设计语言的结构.....................31 2.1.4第三代后期程序设计语言的结构.............................................32 2.1.5基于对象和面向对象的程序设计语言的结构.........................33 2.2对象模型基础.........................................................................................35 2.2.1面向对象编程.............................................................................38 2.2.2面向对象设计.............................................................................39 2.2.3面向对象分析.............................................................................40 2.3对象模型要素.........................................................................................40 2.3.1抽象的意义.................................................................................42 2.3.2封装的意义.................................................................................48 2.3.3模块化的意义.............................................................................51 2.3.4层次结构的意义.........................................................................55 2.3.5类型的意义.................................................................................61 2.3.6并发的意义.................................................................................64 2.3.7持久的意义.................................................................................66 2.4应用对象模型.........................................................................................68 2.4.1对象模型的好处.........................................................................69 2.4.2开放式问题.................................................................................70 2.5小结.........................................................................................................70 第3章类与对象.................................................................................71 3.1对象的本质.............................................................................................71 3.1.1什么是对象,什么不是对象.....................................................72 3.1.2状态.............................................................................................74 3.1.3行为.............................................................................................77 3.1.4标识符.........................................................................................81 3.2对象之间的关系.....................................................................................83 3.2.1链接.............................................................................................84 3.2.2聚合.............................................................................................87 3.3类的本质.................................................................................................88 3.3.1什么是类,什么不是类.............................................................88 3.3.2接口和实现.................................................................................90 3.3.3类的生命周期.............................................................................91 3.4类之间的关系.........................................................................................92 3.4.1关联.............................................................................................92 3.4.2继承.............................................................................................94 3.4.3聚合...........................................................................................105 3.4.4依赖关系...................................................................................106 3.5类与对象的互动...................................................................................106 3.5.1类与对象的关系.......................................................................107 3.5.2类与对象在分析和设计中的角色...........................................107 3.6创建高品质的类与对象.......................................................................107 3.6.1评判一种抽象的品质...............................................................108 3.6.2选择操作...................................................................................109 3.6.3选择关系...................................................................................111 3.6.4选择实现...................................................................................113 3.7小结.......................................................................................................114 第4章分类........................................................................................115 4.1正确分类的重要性...............................................................................115 4.1.1分类的困难...............................................................................116 4.1.2分类的增量和迭代本质...........................................................118 4.2确定类和对象.......................................................................................120 4.2.1经典方法和现代方法...............................................................120 4.2.2面向对象分析...........................................................................124 4.3关键抽象与机制...................................................................................132 4.3.1确定关键抽象...........................................................................132 4.3.2识别机制...................................................................................134 4.4小结.......................................................................................................137 第2篇方法 第5章表示法...................................................................................140 5.1统一建模语言.......................................................................................140 5.1.1简单历史回顾...........................................................................141 5.1.2模型与多重视图.......................................................................141 5.1.3图分类.......................................................................................142 5.1.4在实践中使用图.......................................................................144 5.1.5概念模型、逻辑模型和物理模型...........................................145 5.1.6工具的角色...............................................................................145 5.1.7面向对象开发的产品...............................................................146 5.1.8规模上的伸缩...........................................................................147 5.1.9UML的语法和语义.................................................................147 5.1.10UML2.0信息资源.................................................................148 5.2包图.......................................................................................................148 5.2.1基本概念:包表示法...............................................................149 5.2.2基本概念:元素的可见性.......................................................150 5.2.3基本概念:依赖关系...............................................................151 5.2.4基本概念:包图.......................................................................152 5.2.5高级概念:导入和访问...........................................................154 5.3组件图...................................................................................................156 5.3.1基本概念:组件表示法...........................................................157 5.3.2基本概念:组件图...................................................................158 5.3.3基本概念:组件接口...............................................................160 5.3.4基本概念:组件实现...............................................................161 5.3.5高级概念:组件的内部结构...................................................163 5.4部署图...................................................................................................164 5.4.1基本概念:工件表示法...........................................................165 5.4.2基本概念:节点表示法...........................................................165 5.4.3基本概念:部署图...................................................................166 5.5用例图...................................................................................................168 5.5.1基本概念:执行者...................................................................169 5.5.2基本概念:用例.......................................................................169 5.5.3基本概念:用例图...................................................................169 5.5.4高级概念:?include?和?extend?关系.....................................172 5.5.5高级概念:泛化.......................................................................176 5.6活动图...................................................................................................177 5.6.1基本概念:动作.......................................................................178 5.6.2基本概念:开始和停止...........................................................178 5.6.3基本概念:判断节点和合并节点...........................................179 5.6.4基本概念:分区.......................................................................179 5.6.5高级概念:分叉、结合和并发...............................................180 5.6.6高级概念:对象流...................................................................182 5.6.7高级概念:其他元素...............................................................182 5.7类图.......................................................................................................182 5.7.1基本概念:类表示法...............................................................184 5.7.2基本概念:类关系...................................................................186 5.7.3高级概念:模板(参数化)类...............................................189 5.7.4高级概念:可见性...................................................................190 5.7.5高级概念:关联端名称和限定符...........................................191 5.7.6高级概念:约束.......................................................................192 5.7.7高级概念:关联类和注解.......................................................196 5.8序列图...................................................................................................197 5.8.1基本概念:对象与交互...........................................................197 5.8.2基本概念:生命线与消息.......................................................198 5.8.3高级概念:销毁事件...............................................................199 5.8.4高级概念:执行说明...............................................................200 5.8.5高级概念:交互使用...............................................................201 5.8.6高级概念:控制结构...............................................................201 5.9交互概述图...........................................................................................204 5.9.1基本概念:框...........................................................................204 5.9.2基本概念:控制流元素...........................................................204 5.9.3基本概念:交互图元素...........................................................206 5.10组合结构图.........................................................................................206 5.10.1基本概念:组合结构的部分.................................................206 5.10.2基本概念:组合结构的部分与接口.....................................207 5.10.3基本概念:组合结构连接器.................................................208 5.10.4高级概念:协作.....................................................................208 5.11状态机图..............................................................................................209 5.11.1基本概念:初始状态、最终状态和简单状态.....................210 5.11.2基本概念:转换与事件.........................................................211 5.11.3高级概念:状态活动——入口活动、.................................213 执行活动和出口活动.............................................................213 5.11.4高级概念:控制转换.............................................................213 5.11.5高级概念:复合状态与嵌套状态.........................................215 5.11.6高级概念:并发与控制.........................................................216 5.11.7高级概念:子状态机状态.....................................................221 5.11.8高级概念:其他状态机图元素.............................................222 5.12时间图.................................................................................................222 5.12.1基本概念:更多相同之处.....................................................223 5.12.2基本概念:布局.....................................................................223 5.12.3基本概念:事件.....................................................................224 5.12.4基本概念:约束.....................................................................224 5.12.5高级概念:另一种表示形式.................................................225 5.12.6高级概念:事件与消息.........................................................226 5.13对象图.................................................................................................226 5.13.1基本概念:对象.....................................................................227 5.13.2基本概念:对象关系.............................................................228 5.13.3高级概念:端点名称和限定符.............................................229 5.14通信图.................................................................................................230 5.14.1基本概念:对象、链接和消息.............................................230 5.14.2基本概念:顺序表达式.........................................................230 5.14.3高级概念:消息与同步.........................................................233 5.14.4高级概念:迭代子句和约束条件.........................................233 5.15小结.....................................................................................................234 第6章过程.......................................................................................236 6.1首要原则...............................................................................................236 6.1.1成功项目的特征.......................................................................236 6.1.2追求理性的开发过程...............................................................240 6.2宏观过程:软件开发生命周期...........................................................244 6.2.1概述...........................................................................................244 6.2.2宏观过程的内容维:科目.......................................................246 6.2.3宏观过程的时间维:里程碑和阶段.......................................249 6.2.4宏观过程的时间维:迭代.......................................................255 6.2.5发行计划...................................................................................257 6.3微观过程:分析与设计过程...............................................................260 6.3.1概述...........................................................................................260 6.3.2抽象层次...................................................................................261 6.3.3活动...........................................................................................262 6.3.4产品...........................................................................................263 6.3.5微观过程与抽象层次...............................................................267 6.3.6识别元素...................................................................................270 6.3.7确定元素间的协作...................................................................274 6.3.8确定元素间的关系...................................................................278 6.3.9详细确定元素的语义...............................................................281 6.4小结.......................................................................................................285 第7章实战.......................................................................................287 7.1管理和计划...........................................................................................288 7.1.1风险管理...................................................................................288 7.1.2任务计划...................................................................................289 7.1.3开发复查...................................................................................290 7.2人员配备...............................................................................................292 7.2.1资源配置...................................................................................292 7.2.2开发团队角色...........................................................................293 7.3发布版本管理.......................................................................................296 7.3.1配置管理和版本控制...............................................................296 7.3.2集成...........................................................................................297 7.3.3测试...........................................................................................298 7.4复用.......................................................................................................298 7.4.1复用的元素...............................................................................298 7.4.2建立复用制度...........................................................................299 7.5质量保证和测量指标...........................................................................299 7.5.1软件质量...................................................................................300 7.5.2面向对象测量指标...................................................................301 7.6文档化...................................................................................................304 7.6.1开发遗产...................................................................................304 7.6.2文档化的内容...........................................................................305 7.7工具.......................................................................................................306 7.7.1工具种类...................................................................................306 7.7.2组织上的意义...........................................................................307 7.8特殊主题...............................................................................................308 7.8.1领域特定问题...........................................................................308 7.8.2采纳面向对象技术...................................................................309 7.9面向对象开发的好处和风险...............................................................310 7.9.1面向对象开发的好处...............................................................310 7.9.2面向对象开发的风险...............................................................311 7.10小结.....................................................................................................313 第3篇应用 第8章系统架构——基于卫星的导航...............................................316 8.1初始.......................................................................................................317 8.1.1卫星导航系统的需求...............................................................318 8.1.2定义问题的边界.......................................................................319 8.1.3确定任务用例...........................................................................322 8.1.4确定系统用例...........................................................................325 8.2细化.......................................................................................................329 8.2.1开发一个好的架构...................................................................329 8.2.2定义架构开发活动...................................................................330 8.2.3验证所建议的系统架构...........................................................331 8.2.4分配非功能需求和确定接口...................................................339 8.2.5规定系统架构及其部署...........................................................341 8.2.6分解系统架构...........................................................................344 8.3构造.......................................................................................................350 8.4交付之后...............................................................................................350 8.4.1添加新的功能...........................................................................351 8.4.2改变目标硬件...........................................................................352 第9章控制系统——交通管理..........................................................353 9.1初始.......................................................................................................354 9.1.1列车交通管理系统的需求.......................................................354 9.1.2决定系统用例...........................................................................357 9.2细化.......................................................................................................362 9.2.1分析系统功能...........................................................................362 9.2.2定义TTMS架构......................................................................366 9.2.3从系统工程到硬件和软件工程...............................................368 9.2.4关键抽象和机制.......................................................................371 9.3构造.......................................................................................................373 9.3.1消息传送...................................................................................374 9.3.2列车时刻表计划.......................................................................377 9.3.3显示信息...................................................................................381 9.3.4传感器数据采集.......................................................................382 9.3.5发布版本管理...........................................................................383 9.3.6系统架构...................................................................................384 9.3.7子系统规格说明.......................................................................385 9.4交付之后...............................................................................................387 第10章人工智能——密码分析........................................................389 10.1初始.....................................................................................................390 10.1.1密码分析需求.........................................................................390 10.1.2定义问题的边界.....................................................................391 10.1.3黑板框架的架构.....................................................................394 10.1.4知识源的分析.........................................................................396 10.2细化.....................................................................................................397 10.2.1黑板对象.................................................................................397 10.2.2依赖和认定.............................................................................399 10.3构造.....................................................................................................401 10.3.1设计黑板对象.........................................................................402 10.3.2设计知识源.............................................................................407 10.3.3设计控制器.............................................................................414 10.3.4集成黑板框架.........................................................................416 10.3.5添加新的知识源.....................................................................419 10.4交付之后.............................................................................................421 10.4.1系统增强.................................................................................421 10.4.2改变需求.................................................................................423 第11章数据采集——气象监测站....................................................424 11.1初始......................................................................................................424 11.1.1气象监测站需求.....................................................................425 11.1.2定义问题的边界.....................................................................425 11.1.3场景.........................................................................................437 11.2细化......................................................................................................438 11.2.1气象监测系统用例.................................................................438 11.2.2架构框架.................................................................................448 11.3构造......................................................................................................450 11.3.1帧机制.....................................................................................450 11.3.2发布计划.................................................................................454 11.3.3传感器机制.............................................................................455 11.3.4显示机制.................................................................................457 11.3.5用户界面机制.........................................................................458 11.4交付之后..............................................................................................461 第12章Web应用——休假跟踪系统...............................................463 12.1初始.....................................................................................................464 12.1.1需求.........................................................................................464 12.1.2用例模型.................................................................................466 12.2细化.....................................................................................................467 12.2.1部署视图.................................................................................468 12.2.2逻辑视图.................................................................................470 12.2.3进程视图.................................................................................472 12.2.4实现视图.................................................................................475 12.2.5用例视图.................................................................................475 12.3构造.....................................................................................................480 12.3.1用户体验模型.........................................................................480 12.3.2分析和设计模型.....................................................................482 12.3.3实体.........................................................................................493 12.3.4控制器.....................................................................................502 12.3.5Web页面和用户界面.............................................................503 12.4交付和交付之后.................................................................................508 附录A面向对象编程语言.................................................................510 附录B进一步阅读............................................................................530 注解.....................................................................................................539 术语表..................................................................................................566

版权说明
1、本站不保存、不存储任何实质资源,以上二维码指向为网盘资源链接,其内容归对应版权方所有2、如有侵犯版权的情况,请点击下面举报/反馈按钮反馈或发送邮件[email protected]投诉说明情况3、我们核实后将第一时间删除相关页面内容,谢谢理解和配合
- Go语言程序设计.pdf 28天前
- 和暗恋对象结婚后夜夜笙歌(70集)王子林&杨允 1月前
- 万能人物素材.pdf 17天前
- 自己动手写Docker.epub 1月前
- 英语核心词汇1500.pdf 1天前
- 东课楼经变 10天前
- 重生后,开启富贵人生(88集)王梓亦&付予&王艺珂 2天前
- 全新英语听力-初中 739.3MB(共148个pdf+mp3) 2月前
- 消失的13台阶 17天前
- LwIP应用开发实战指南:基于STM32.epub 1月前
- 1【经典书籍】《新概念英语》4册PDF+视频 17.2GB
- 2国家地理杂志 美国版 1888~2023合集 珍藏版 55.5GB(共1578个项目)
- 3国家中小学智慧教育平台电子教材全套 共2299个项目 44GB
- 4《电脑报》(2012-2024)合集 珍藏版 17.6GB(共660个项目)
- 5《故事会》大全 1955-2024 合集 622个项目 16.5GB
- 6七本易经相关书籍汇总 7 mobi 2.4MB
- 7丁丁历险记中文版&英文版&动画片&电影版 40GB
- 821世纪学生英文报 (2019-2024) 19.4GB(共1489个项目)
- 9中国国家地理期刊2003-2024 珍藏版合集 共292个项目 58.4GB
- 10《电脑报》2024年 全50期合集 511.7MB(共50个项目)
暂无评论