首页>参考读物>计算机科学与技术>软件工程及软件方法学

软件架构师职业导读
作者 : (美)Marc T.Sewell,Laura M.Sewell
译者 : 蒋慧 等
出版日期 : 2003-04-01
ISBN : 7-111-11498-1
定价 : 19.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 139
开本 : 16开
原书名 : Software Architect's Profession, An Introduction
原出版社: Pearson Education,Inc
属性分类: 店面
包含CD :
绝版 : 已绝版
图书简介

本书将软件制造业与传统建筑业相比较,对软件架构的本质、软件架构师的定义,以及这一职业该如何走向成熟进行了深入的研究。其主要内容包括软件工程师和软件“建筑者”的角色和责任,架构师的职业特点,设计软件架构的各个阶段等。是软件架构师必读的一本好书。

本书内容:
  弥补客户与技术人员之间的隔阂;
  区分软件开发业内的不同职业,定义软件工程师和软件架构师的角色和责任;
  讨论标识软件架构师的职业特点和学术倾向;
  概述架构的各个阶段;
  阐述在理解和确认软件构造与设计的过程中客户的关键作用.

图书前言

当某种转变悄然发生时,如果正好处在转变的正确方向上将非常令人振奋,而如果处于转变的错误方向上则令人沮丧,因为这样会觉得一切都不顺。有人会顺应改变,而有的人则不。为了适应转变,人们需要改变观察问题的方法,改变被心理学家称之为的心理定向(mental set)。这就是本书的目的所在:为了改变人们观察软件设计和构造的方法,向读者提供一种全新的认知指南。
  本书不是一本技术类书籍。本书所要说明的是:在构建一幢建筑物和构建一个软件系统之间存在着惊人的相似性,而这个类比就是帮助我们完成转变的工具。如果我们深入研究那些熟悉的软件设计及构造的名词术语和实践,那么将会把具有技术背景的读者拖进由他们自己的经验建立起来的习惯的泥潭中—这反而会阻碍转变。
  相反,我们将更多地谈及架构和构造的建立,然后把主题引回到软件业,从而展示这一类比所呈现的明白无误的道理。希望读者能从一个崭新的角度(而不是从他们自己软件构建经历的角度)来真正了解架构和构造,了解它们的历史、角色和过程。认识架构和构造的经典形式及其产生的独特样板,与所熟悉的软件构建背景结合起来,从而促进转变的发生。这样就能以可预测的和可靠的方式构建软件。
  这一类比是完成这一转变的工具,不要被它那看似简单的外表所愚弄。简单不等于肤浅,简单的背后也有深奥的道理。建筑物是很复杂的,它的构造是困难的,但所有人都了解建筑物的构造过程以及参与者的角色分工。软件构造缺乏的就是角色和过程的明确定义,因此给软件业角色进行明确定义正是改变视角的关键。
  本书是为广大的技术和非技术人员写的。对软件项目的客户、软件业内人士、学生,以及所有对软件系统感兴趣的人都会有所帮助。客户尤其重要,因为是他们而不是学术界或职业软件人在推动着这一转变。
  在20世纪90年代,客户和雇主开始使用架构方法进行软件构建。是他们把架构师(architect)这一头衔授予职业软件人,进而描述这一工作,并成立了架构部门。
  但即使是这些客户和雇主也没有同时认识到架构师的明确定义。他们发明了CTO头衔,这种人负责技术、企业架构和软件战略等方面的工作。他们把这个头衔的名称搞错了,实际上,CTO就是担任了首席架构师的角色。
  客户对这个类比有一个自然、直观的理解。他们从心理上能理解和管理软件构建。简而言之,他们认为软件构造就是先进行设计,然后在该设计的要求下仔细地构建。
  我们希望这本书至少能使读者在这一工具的帮助下,从一个全新的角度深入地理解架构。

Marc Sewell和Laura Sewell
marcandlaura@wwisa.org

图书序言

安德利亚·帕拉迪奥(Andrea Palladio)是历史上最具影响力的建筑设计师。他于1570年在威尼斯出版的奠基性作品—The Four Books of Architecture(建筑学四本书),对文艺复兴时期的建筑产生了迅疾而深远的影响。帕拉迪奥的天才在于他具有把罗马建筑风格的精华萃取出来的能力,并在此基础上为整个建筑领域建立起一套广泛的术语和概念,明白而清晰地给出一系列实用的规则,帮助建筑设计师们创造出具有实用而美观结构(structure)的建筑物。正如帕拉迪奥所说,“有三点……是每座建筑都需要考虑的,没有它们,任何大型建筑都不值得称赞—这就是实用(或方便)、强度、美观。”帕拉迪奥醉心于他的职业,并通过他的著作与人们分享他对这一职业的热忱与理解。
  Marc和Laura同样对软件架构师(software architect)这一新兴职业充满热忱。在本书中,我们将分享他们在这一行业的资深经历。从伊姆贺特普到李·柯贝伊,从贝聿铭到克里斯多佛·亚历山大,作者把软件架构师与建筑设计师的历史相比较,对软件架构师的角色、他不能做什么,以及能做什么都给出了清晰的陈述。
  软件是最终的建筑材料,具有无限的适应性和不可损毁性。经济的发展引导我们不断建筑更复杂的系统,而由于人类在处理复杂性事物时所具有的与生俱来的局限性,所以常常进行抽象。因而,软件工程的历史就是抽象的历史。在向更高层次抽象的过程中,面向对象取代了功能分解。然后,出现设计模式,以便为开发团队提供充足的术语来描述一个由社会对象组成的机制。架构的框架比设计模式更广泛,它表达设计中所有那些为塑造整个系统的结构和行为而做出的公共并且重要的决策。从而,是否具有很强的架构视图则成为预测复杂系统成功与否的一个关键。因此,软件架构师的重要性在不断加强。这一行业还处于成长的阶段,但在本书中,Marc和Laura却把它当成一个真正的职业,一个能从中学习到知识,并且值得从事的职业。
  如果你已经是一名软件架构师,本书将从更广泛的角度帮助你更高效地完成你的角色职责。如果你正希望成为一名软件架构师,那么本书通过从职业的角度到深入的技术活动,对架构意义、架构设计过程,以及这一职业的功能进行解释,帮助你完成这一转变。
  作为职业软件人,我们都寻求使用一种有效而经济的过程来建造一个能够工作的有用的产品。所以软件架构师将具有很大的需求,以及难以置信的回报。软件架构师在他的全盛时期将构造出优美的系统。
  祝愿你也能构建出优美的系统。

Grady Booch
Rational软件公司首席科学家

作者简介

(美)Marc T.Sewell,Laura M.Sewell:暂无简介

译者简介

蒋慧 等:蒋慧: 蒋慧,女,1973年2月出生。1995年毕业于南京通信工程学院计算机系,获计算机应用专业工学学士学位。1998年于南京通信工程学院计算机软件专业毕业,并获硕士学位。1998年9月至今,于解放军理工大学攻读博士学位。自1995年以来,在国内外重要学术刊物和会议上发表8篇论文,其中2篇论文被IEEE国际会议录用。已出版3本有关网络的译作。目前从事软件需求工程、网络协议验证形式化方法以及函数式语言等方面的研究。

图书目录

第1章  一个简单的类比 1
1.1  完美的类比 1
1.2  认知图 2
1.3  类比揭示出被遗漏的要素—架构 3
1.4  类比使角色和意图之间的关系明晰 4
1.5  一切从客户和建筑设计师开始 6
1.6  通过类比,每个词汇都有意义 8
1.7  通过类比,过程变得可以预见 10
1.8  类比使复杂性和灵活性有了秩序 11
1.9  结论 12
第2章  没有软件架构师的世界 15
2.1  软件业的悖论 15
2.2  臭名昭著的软件 17
2.3  联邦航空管理局 17
2.4  美国国税局税务系统现代化 19
2.5  结论 22
第3章  什么是架构 25
3.1  技术—各种架构的共同基础 27
3.2  难以定义的事物有多种定义 27
3.3  Utilitas、Venustas、Firmitas 28
3.4  设计的神话 29
3.5  圣彼得大教堂的教训:和谐与统一 30
3.6  无以言表的品质 32
3.7  结论 34
第4章  建筑简史 37
4.1  希腊的理想 37
4.2  建筑师:无名的工匠与超级明星 39
4.3  现代建筑:它的兴起和没落 41
4.4  建筑设计师是社会的思想家 43
4.5  架构与第三次浪潮 44
4.6  结论 45
第5章  软件构造过程中的角色 49
5.1  建筑设计师、建筑工人、工程师、科学家 49
5.2  指导原则 50
5.3  软件架构师决定结构的外观和功能 51
5.4  软件工程师使结构合理 52
5.5  “开发人员”建造结构 57
5.6  计算机科学家推进知识 60
5.7  客户的角色 61
5.8  定义而非限制 64
5.9  对构造角色的举例说明 65
5.10  结论 66
第6章  软件架构师的角色 71
6.1  架构师的角色始于客户 72
6.2  架构师是客户的代言人,是设计的领导者 72
6.3  倾听的艺术 74
6.4  观察的艺术 75
6.5  策略的艺术 75
6.6  巴黎的金字塔 77
6.7  结论 85
第7章  架构驱动的软件—构造阶段 89
7.1  两个大致阶段 89
7.2  架构阶段以及一些警示 91
7.3  设计是不可交付的 91
7.4  设计阶段不是线性的 93
7.5  构建阶段 95
7.6  结论:聚会阶段 96
第8章  架构计划 99
8.1  架构计划的特征 99
8.2  好的架构师,好的计划 100
8.3  究竟为什么需要计划 101
8.4  计划的层次 102
8.5  结论 104
第9章  软件架构师的教育 107
9.1  第二次浪潮教育,第三次浪潮需要 107
9.2  另一次危机 109
9.3  做我们想做的 110
9.4  计算机科学家的特征是什么 110
9.5  架构教育 112
9.6  设立软件架构教育 114
9.7  设计能否传授 114
9.8  结论 116
第10章  架构师职业宣言 119
10.1  职业是什么 120
10.2  客户的期望 120
10.3  标准知识体 122
10.4  教育 123
10.5  身份鉴定 124
10.6  职业道德准则与标准 125
10.7  从何开始 128
索引 129

教学资源推荐
作者: 郑人杰 马素霞 等编著
作者: (美)克拉斯·沃林(Claes Wohlin) 佩尔·鲁内松(Per Runeson) 马丁·霍斯特(Martin Host) 马格纳斯力 C. 欧尔松(Magnus C. Ohlsson) 比约恩·雷格尔(Bjorn Regnell) 安德斯·韦斯伦(Anders Wessl·n) 著
作者: 窦万峰 主编 宋效东 史玉梅 李东振 赵菁 等参编
作者: [英]伊恩·萨默维尔(Ian Sommerville) 著
参考读物推荐
作者: (美)Tom DeMarco,Timothy Lister著
作者: (美)Stephen H.Kan
作者: Brian Chess;Jacob West