成功加入购物车

去购物车结算 X
倒爷图书专营店
  • 软件架构设计(第2版):程序员向架构师转型必备 9787121170874

软件架构设计(第2版):程序员向架构师转型必备 9787121170874

举报

全新正版 可开票 支持7天无理由,不清楚的请咨询客服。

  • 出版时间: 
  • 装帧:    其他
  • 开本:    16开
  • ISBN:  9787121170874
  • 出版时间: 
  • 装帧:  其他
  • 开本:  16开

售价 34.03 4.9折

定价 ¥69.00 

品相 全新

优惠 满包邮

优惠 满减券
    运费
    本店暂时无法向该地区发货

    延迟发货说明

    时间:
    说明:

    上书时间2024-01-25

    数量
    库存9
    微信扫描下方二维码
    微信扫描打开成功后,点击右上角”...“进行转发

    卖家超过10天未登录

    • 商品详情
    • 店铺评价
    手机购买
    微信扫码访问
    • 货号:
      31135652
      商品描述:
      作者简介
          温昱,资深咨询顾问,软件架构专家。软件架构思想的传播者和积极推动者,中国软件技术大会杰出贡献专家。十五年系统规划、架构设计和研发管理经验,在金融、航空、多媒体、电信、中间件平台等领域负责和参与多个大型系统的规划、设计、开发与管理。

      目录
      CONTENTS
      目    录




      第1章  从程序员到架构师1
      1.1  软件业人才结构1
      1.1.1  金字塔型,还是橄榄型?1
      1.1.2  从程序员向架构师转型2
      1.2  本书价值3
      1.2.1  阅读路径1:架构设计入门3
      1.2.2  阅读路径2:领会大系统架构设计4
      1.2.3  阅读路径3:从需求到架构的全过程5
      1.2.4  阅读路径4:结合工作,解决实际问题6
      第1部分  基本概念篇
      第2章  解析软件架构概念10
      2.1  软件架构概念的分类10
      2.1.1  组成派11
      2.1.2  决策派11
      2.1.3  软件架构概念大观12
      2.2  概念思想的解析13
      2.2.1  软件架构关注分割与交互13
      2.2.2  软件架构是一系列有层次的决策14
      2.2.3  系统、子系统、框架都可以有架构17
      2.3  实际应用(1)――团队对架构看法不一怎么办18
      2.3.1  结合手上的实际工作来理解架构的含义18
      2.3.2  这样理解“架构”对吗19
      2.3.3  工作中找答案:先看部分设计19
      2.3.4  工作中找答案:反观架构概念的体现22
      第3章  理解架构设计视图24
      3.1  软件架构为谁而设计24
      3.1.1  为用户而设计25
      3.1.2  为客户而设计26
      3.1.3  为开发人员而设计26
      3.1.4  为管理人员而设计26
      3.1.5  总结27
      3.2  理解架构设计视图28
      3.2.1  架构视图28
      3.2.2  一个直观的例子28
      3.2.3  多组涉众,多个视图29
      3.3  运用“逻辑视图+物理视图”设计架构30
      3.3.1  逻辑架构31
      3.3.2  物理架构32
      3.3.3  从“逻辑架构+物理架构”到设计实现32
      3.4  实际应用(2)――开发人员如何快速成长33
      3.4.1  开发人员应该多尝试设计33
      3.4.2  实验项目:案例背景、训练目标34
      3.4.3  逻辑架构设计(迭代1)35
      3.4.4  物理架构设计(迭代1)35
      3.4.5  逻辑架构设计(迭代2)36
      3.4.6  物理架构设计(迭代2)37
      第2部分  实践过程篇
      第4章  架构设计过程40
      4.1  架构设计的实践脉络41
      4.1.1  洞察节奏:3个原则41
      4.1.2  掌握过程:6个步骤43
      4.2  架构设计的速查手册45
      4.2.1  需求分析45
      4.2.2  领域建模46
      4.2.3  确定关键需求47
      4.2.4  概念架构设计49
      4.2.5  细化架构设计50
      4.2.6  架构验证51
      第5章  需求分析53
      5.1  需求开发(上)――愿景分析53
      5.1.1  从概念化阶段说起54
      5.1.2  愿景54
      5.1.3  上下文图56
      5.1.4  愿景分析实践要领60
      5.2  需求开发(下)――需求分析60
      5.2.1  需求捕获vs.需求分析vs.系统分析61
      5.2.2  需求捕获及成果63
      5.2.3  需求分析及成果64
      5.2.4  系统分析及成果65
      5.3  掌握的需求全不全65
      5.3.1  二维需求观与ADMEMS矩阵65
      5.3.2  功能66
      5.3.3  质量68
      5.3.4  约束71
      5.4  从需求向设计转化的“密码”72
      5.4.1 “理性设计”还是“拍脑袋”72
      5.4.2  功能:职责协作链73
      5.4.3  质量:完善驱动力74
      5.4.4  约束:设计并不自由74
      5.5  实际应用(3)――PM Suite贯穿案例之需求分析75
      5.5.1  PM Suite案例背景介绍76
      5.5.2  第1步:明确系统目标77
      5.5.3  第2步:范围 + Feature + 上下文图77
      5.5.4  第3步:画用例图82
      5.5.5  第4步:写用例规约85
      5.5.6  插曲:需求启发与需求验证86
      5.5.7  插曲:非功能需求88
      5.5.8  《需求规格》与基于ADMEMS矩阵的需求评审88
      第6章  用例与需求89
      6.1  用例技术族89
      6.1.1  用例图90
      6.1.2  用例简述、用户故事90
      6.1.3  用例规约91
      6.1.4  用例实现、鲁棒图92
      6.1.5  4种技术的关系93
      6.2  用例技术族的应用场景94
      6.2.1  用例与需求分析94
      6.2.2  用例与需求文档95
      6.2.3  用例与需求变更97
      6.3  实际应用(4)――用例建模够不够?流程建模要不要99
      6.3.1  软件事业部的故事99
      6.3.2  小型方法:需求分析的三套实践论(上)99
      6.3.3  中型方法:需求分析的三套实践论(中)100
      6.3.4  大型方法:需求分析的三套实践论(下)101
      6.3.5  PM Suite应用一幕102
      第7章  领域建模105
      7.1  什么是领域模型106
      7.1.1  领域模型“是什么”106
      7.1.2  领域模型“什么样”106
      7.1.3  领域模型“为什么”107
      7.2  需求人员视角――促进用户沟通、解决分析瘫痪108
      7.2.1  领域建模与需求分析的关系108
      7.2.2  沟通不足109
      7.2.3  分析瘫痪110
      7.2.4  案例:多步领域建模,熟悉陌生领域111
      7.3  开发人员视角――破解“领域知识不足”死结113
      7.3.1  领域模型作为“理解领域的手段”113
      7.3.2  案例:从词汇表到领域模型113
      7.4  实际应用(5)――功能决定如何建模,模型决定功能扩展115
      7.4.1  案例:模型决定功能扩展116
      7.4.2  实践:功能决定如何建模118
      7.4.3  PM Suite领域建模实录(1)――类图122
      7.4.4  PM Suite领域建模实录(2)――状态图125
      7.4.5  PM Suite领域建模实录(3)――可扩展性126
      第8章  确定关键需求129
      8.1  众说纷纭――什么决定了架构129
      8.1.1  用例驱动论130
      8.1.2  质量决定论131
      8.1.3  经验决定论132
      8.2  真知灼见――关键需求决定架构132
      8.2.1 “目标错误”比“遗漏需求”更糟糕132
      8.2.2  关键需求决定架构,其余需求验证架构132
      8.3  付诸行动――如何确定关键需求133
      8.3.1  确定关键质量133
      8.3.2  确定关键功能135
      8.4  实际应用(6)――小系统与大系统的架构分水岭137
      8.4.1  架构师的“拿来主义”困惑137
      8.4.2  场景1:小型PMIS(项目型ISV背景)138
      8.4.3  场景2:大型PM Suite(产品型ISV背景)139
      8.4.4  场景3:多个自主产品组成的方案(例如IBM)140
      8.4.5 “拿来主义”虽好,但要合适才行141
      第9章  概念架构设计143
      9.1  概念架构是什么144
      9.1.1  概念架构是直指目标的设计思想、重大选择144
      9.1.2  案例1:汽车电子AUTOSAR――跨平台复用145
      9.1.3  案例2:腾讯QQvideo架构――高性能149
      9.1.4  案例3:微软MFC架构――简化开发150
      9.1.5  总结151
      9.2  概念架构设计概述151
      9.2.1 “关键需求”进,“概念架构”出151
      9.2.2  概念架构≠理想化架构152
      9.2.3  概念架构≠细化架构152
      9.3  左手功能――概念架构设计(上)153
      9.3.1  什么样的鸿沟,架什么样的桥153
      9.3.2  鲁棒图“是什么”153
      9.3.3  鲁棒图“画什么”154
      9.3.4  鲁棒图“怎么画”156
      9.4  右手质量――概念架构设计(下)159
      9.4.1  再谈什么样的鸿沟,架什么样的桥159
      9.4.2  场景思维159
      9.4.3  场景思维的工具160
      9.4.4  目标―场景―决策表应用举例162
      9.5  概念架构设计实践要领163
      9.5.1  要领1:功能需求与质量需求并重163
      9.5.2  要领2:概念架构设计的1个决定、4个选择163
      9.5.3  要领3:备选设计165
      9.6  实际应用(7)――PM Suite贯穿案例之概念架构设计165
      9.6.1  第1步:通过初步设计,探索架构风格和高层分割165
      9.6.2  第2步:选择架构风格,划分顶级子系统169
      9.6.3  第3步:开发技术、集成技术与二次开发技术的选型171
      9.6.4  第4步:评审3个备选架构,敲定概念架构方案172
      第10章  细化架构设计174
      10.1  从2视图方法到5视图方法175
      10.1.1  回顾:2视图方法175
      10.1.2  进阶:5视图方法175
      10.2  程序员向架构师转型的关键突破――学会系统思考176
      10.2.1  系统思考之“从需求到设计”177
      10.2.2  系统思考之“5个设计视图”179
      10.3  5视图方法实践――5个视图、15个设计任务181
      10.3.1  逻辑架构=模块划分+接口定义+领域模型181
      10.3.2  开发架构=技术选型+文件划分+编译关系184
      10.3.3  物理架构=硬件分布+软件部署+方案优化185
      10.3.4  运行架构=技术选型+控制流划分+同步关系187
      10.3.5  数据架构=技术选型+存储格式+数据分布188
      10.4  实际应用(8)――PM Suite贯穿案例之细化架构设计189
      10.4.1  PM Suite接下来的设计任务189
      10.4.2  客户端设计的相关说明191
      10.4.3  细化领域模型时应注意的两点192
      第11章  架构验证194
      11.1  原型技术194
      11.1.1  水平原型vs.垂直原型,抛弃原型vs.演进原型195
      11.1.2  水平抛弃原型196
      11.1.3  水平演进原型197
      11.1.4  垂直抛弃原型197
      11.1.5  垂直演进原型197
      11.2  架构验证198
      11.2.1  原型法198
      11.2.2  框架法199
      11.2.3  测试运行期质量,评审开发期质量199
      第3部分  模块划分专题
      第12章  粗粒度“功能模块”划分202
      12.1  功能树203
      12.1.1  什么是功能树203
      12.1.2  功能分解≠结构分解203
      12.2  借助功能树,划分粗粒度“功能模块”204
      12.2.1  核心原理:从“功能组”到“功能模块”205
      12.2.2  第1步:获得功能树207
      12.2.3  第2步:评审功能树211
      12.2.4  第3步:粗粒度“功能模块”划分212
      12.3  实际应用(9)――对比MailProxy案例的4种模块划分设计213
      12.3.1  设计213
      12.3.2  设计的优点、缺点213
      12.4  实际应用(10)――做总体,要提交啥样的“子系统划分方案”214
      第13章  如何分层217
      13.1  分层架构218
      13.1.1  常见模式:展现层、业务层、数据层218
      13.1.2  案例一则218
      13.1.3  常见模式:UI层、SI层、PD层、DM层219
      13.1.4  案例一则220
      13.2  分层架构实践技巧221
      13.2.1  设计思想:分层架构的“封装外部交互”思想221
      13.2.2  实践技巧:设计分层架构,从上下文图开始221
      13.3  实际应用(11)――对比MailProxy案例的 4种模块划分设计223
      13.3.1  设计223
      13.3.2  设计的优点、缺点224
      第14章  用例驱动的模块划分过程225
      14.1  描述需求的序列图 vs. 描述设计的序列图225
      14.1.1  描述“内外对话” vs. 描述“内部协作”226
      14.1.2 《用例规约》这样描述“内外对话”227
      14.2  用例驱动的模块划分过程228
      14.2.1  核心原理:从用例到类,再到模块228
      14.2.2  第1步:实现用例需要哪些类231
      14.2.3  第2步:这些类应该划归哪些模块235
      14.3  实际应用(12)――对比MailProxy案例的 4种模块划分设计236
      14.3.1  设计236
      14.3.2  设计的优点、缺点236
      第15章  模块划分的4步骤方法――运用层、模块、功能 模块、用例驱动238
      15.1  像专家一样思考238
      15.1.1  自顶向下vs.自底向上,垂直切分vs.水平切分238
      15.1.2  横切竖割,并不矛盾239
      15.2  模块划分的4步骤方法――EDD方法241
      15.2.1  封装驱动设计的4个步骤241
      15.2.2  细粒度模块的划分技巧242
      15.3  实际应用(13)――对比MailProxy案例的4种模块划分设计245
      15.3.1  设计245
      15.3.2  设计的优点、缺点246

      内容摘要
      本书围绕“软件架构设计”主题,从“程序员”成长的视角,深入浅出地讲述了架构师的修炼之道。从“基础篇”、到“设计过程篇”、到“模块划分专题”,本书覆盖了架构设计的关键技能项,并且对于架构设计过程中可能出现的各种问题给与了解答。

      配送说明

      ...

      相似商品

      为你推荐

    孔网啦啦啦啦啦纺织女工火锅店第三课

    开播时间:09月02日 10:30

    即将开播,去预约
    直播中,去观看