05什么是构架过程?

26

什么叫架构?

Fore metaphors for architecture

Architecture as blueprint. / Architecture asliterature. / Architecture as language. / Architecture as decision.

架构的前喻——架构作为蓝图。/  架构作为文献。/ 架构作为语言。/ 架构作为决定。

软件架构,以前没有统一的定义,不同的人从不同的角度定义了这个概念。那当然是哪些人的定义比较全面客观有影响力,我们就用哪个人的定义了。

架构找到了四种比喻,现在看起来还不太准确,后续会修正的。架构,它是需求和设计之间的一座桥梁桥,它连接了我们的需求与设计,从而架构本身也成为了一门学科。软件架构学科无疑是公认的学科,架构就位于这个抽象的中心点。

架构要通过抽象人们的关注点,从而针对这些关注点进行分割,来简化软件开发的复杂性,这是我们的一个中心思想。

27

视图在某种意义上是等价的,但是透视图,更多的是横切的,最典型的例子,就是安全锁,这个是软件和硬件细节配合起来,才能实现一个安全。

这些都是需要,功能性,内部结构与硬件结构是配合在一起工作的,我们的对应点是涉众,然后,从涉众自己的视角(perspectives),看到的问题的不同方面。

就正如那个大象的故事,我们需要把他们不同的视角都融合在一起,那个大象的图像,经过一个组装,形成一个完美而真实的架构,这就是整个软件构架的过程,从而获得了一个架构设计的成果。

软件架构的目的,就是满足需求的情况下,一定要满足系统的质量,并将过程和结果记录下来。

软件工程,最终做出来的是一个具体的东西,它一定是有些质量指标的。而架构是在这个系统里面的,体现出那些质量指标,从而达到我们的目的和手段有机地统一在一起,我们的目的当然是要满足用户需求了。

软件最终是一堆具体的软件质量属性,通过一定的手段和方法,去实现与满足不同的涉众的需要。


28

因此,Role of Software Architecture/软件架构的作用是,A crucial bridge between requirements and design.

它是需求与设计之间的重要桥梁。因此,软件架构的本质动机就是:

The software architecture discipline is centered on theidea of reducing complexity through abstraction and separation of concerns.

软件体系结构学科的核心是通过抽象和关注的分离来降低复杂性的思想。它为了解决在系统高层交互上的麻烦,处理关于设计和实施的决策,改善涉众之间的交流,以及增强架构的复用。

Software architecture is really the amalgamation of the multiple perspectives a system always embodies.

软件架构实际上是一个系统始终体现的多重视角的融合。

那,软件架构的目的是什么呢?

the purpose of the software architecture is to ensure that the system meets thegoals of the stakeholders with respect to various software qualities such asmaintainability, scalability, testability, etc.

软件架构的目的是确保系统能够满足利益干系人(涉众)对各种软件质量的目标,如可维护性、可伸缩性、可测试等。

架构师,他要为这个应用软件确定一个参考架构,他一定要追寻一种开发方法,然后能有一个参考模型,再然后记录下他的一些关键性的架构。参考模型,是对这个应用程序连在一起的。也就是说,不同的衣服,或者不同的风格,你的参考模型是不一样的。

29

不同的参考模型,就构成了不同的模式。架构模式又分成了三类。架构风格,是一种架构模式,风格是模式的一种,但模式不一定是风格,所以风格的力度会更大一些。

我们的核心概念是应用框架,因为我们是在框架思维的指导下进行工作的,应用框架但不是一个参考模型,应用框架里面有架构的基本,最终的架构是在模型之后。首先要确定的是风格,然后是架构的机制,当一个系统做完了随着需求的变化而改变,首先改变的就是一种架构的风格,架构的风格会有很多,不同的风格组合在一起,就形成一个异构的风格。

比如,每个企业都会去解决一个社会问题,那它都有一个架构,而架构首先体现了它的价值。企业会根据具体的业务形式,在一个行业里面解决问题的时候,还形成了一套自己的固定的风格。如果,他们的风格是一样的,那就形成了依赖性,比如电子商务这类企业,电子商务构成的一类系统,形成了这样的风格,于是,所有的使用电子商务应用系统,他们都有基本一致的架构风格,比如选了一些固定的BS(浏览器服务器)结构的架构风格。

选择了这样的架构,就构成了这个行业的软件系统,于是就体现出了广义的模式,这是我们整个的思路了。就是一个怎么样的风格,使得它可以能满足各种需求,通过架构使得我们能够从需求到设计上的来解决问题。

首先要理解的,就是架构处于的上下文环境。

比如,我们学习行业软件,然后说一定的风格是什么,风格是经验的一个总结,因为风格是某些系统共有的。形成了一个架构的风格,一个架构的模式。那,经验从哪里来,经验其实就是一种体验,是从实践中来的。

行业里应用的这些规则,这叫工程,engineering,但是我们在这个基础上,又要有一些创造性,creative,那就是艺术。任何行业里面的应用软件系统,都是在一定的约束规则下,再去发挥你有限的创新性,这需要找到一个平衡,这就是架构的风格。

30

核心图,实际上就演绎了这个approach。当我们讲架构的,我们用的是UML,这是我们的架构描述语言,最核心的就是要识别涉众,找到每个涉众的关注点,然后管理分割这些关注点,形成一个具体的架构的模型。

别忘了,本书的目的是什么?

高度决定视野。

角度改变观念。

尺度把握人生。

因此,《框架思维》,通过一个完全真实的案例,使用模型驱动开发(MDD)的软件工程过程的方法,有效运用由用例捕获的系统需求(用例模型),去驱动一个强壮的模型驱动的架构(MDA)的开发必须的理念和技巧。

在本书中,读者将在框架思维的指导下,学会如何进行架构的构思、定义、描述、记录、分析、设计、实施和评估等关键活动,通过在整个软件项目生命周期中,运用UML去捕获和交流软件架构决策。

我们在一个用例驱动的、以架构为中心的、迭代和增量的软件工程过程中,学会如何架构符合软件架构目标和系统质量特性的软件架构。

31

达到目标时,一个读者将具备以下能力:

熟练掌握框架思维这一普遍性科学性的方法论,熟练掌握软件架构的定义、范围、目标、风格、框架、描述,验证和评估等。

熟练掌握软件架构师的定义、定位、职责、评估、培养以及与系统分析师、软件设计师和项目管理等角色的重要区别和内在联系等。熟练掌握软件构架的过程。通过呈现一组架构视点和架构透视图,为软件架构师改善个人和组织的软件系统架构的途径提供具体的方向。

掌握设计反映和平衡不同的涉众需要的架构的方法。掌握和涉众一起交流架构并且论证架构满足他们的需求的方法。聚集架构设计的重要方面,包括常被忽略的诸如性能、弹性和位置等架构重要的方面。

以及,使用场景和模式去驱动架构的创建和验证。使用一组相关的视图文档化架构。使用透视图确保满足系统的性能、伸缩性和安全等重要质量属性。熟练掌握不同层级的架构机制,例如:分析机制、设计机制和实施机制。熟练掌握分析模型、设计模型、实施模型、部署模型的开发。

因此,内容包括并不限于:

01框架思维与软件架构导论

02 UML用例分析与机制

03案例与软件开发方法论

04思维模式与需求分析

05架构风格模式

06可重用的架构资产

07架构分析设计与架构实施

08 MVC架构风格与RSA工具的使用

09关键需求决定架构

10文档化架构与架构评价依据

11面向对象的架构设计原理

32

此系列适合于已经积累了面向对象的软件系统开发经验的项目经理、架构师和设计师。以及其它想了解此类内容的人士。读者需要了解,软件工程过程和软件项目的生命周期,UML和建模工具,软件开发过程,软件需求工程,面向对象的设计模式。架构集成开发环境(IDE),使用Rational Software Architect(RSA)。

图012 软件工程过程和软件项目生命周期

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容