软件架构设计的思想与模式

软件架构设计的思想与模式

ID:37303490

大小:1.40 MB

页数:217页

时间:2019-05-21

软件架构设计的思想与模式_第1页
软件架构设计的思想与模式_第2页
软件架构设计的思想与模式_第3页
软件架构设计的思想与模式_第4页
软件架构设计的思想与模式_第5页
资源描述:

《软件架构设计的思想与模式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、◆中科院计算所培训中心高级软件系统架构师培训软件架构设计的思想与模式中科院计算所培训中心谢新华第一章软件架构设计思想与体系创建在软件组织中,架构师的作用是举足轻重的。本课程针对企业开发最关注的问题深入研讨,抓住投入产出比这个企业的核心价值,讨论架构设计如何使这个核心价值得以实现。我们认为,一个设计如果必须高手云集才能生产出符合质量要求的产品,并不一定是好的架构。架构设计的目标是力争使用总体上能力一般的队伍,通过组织和设计的力量,生产出符合质量要求的产品,从投资回报的角度,两者效果是完全不一样的。另一方面,由于需求变更不可避免,而需求的变更必然造成

2、设计调整进而造成总体投入的增加,这会极大的影响到投资回报,所以我们必须研究架构设计如何更好的适应变更,通过设计确保变更、维护与升级的成本下降。对这一系列问题的深入思考,成为现代软件架构设计的核心思维。软件企业必须认真研究如何培养高水平的架构人员,但仅仅把架构设计作为一个孤立的节点来讨论,或者仅仅就架构谈架构的在一个很窄的思维空间中研究问题是没有意义的。任何设计都来自于目的,我们应该把架构设计放在整个项目过程的大环境下来研究,针对每个关键节点对设计的影响特点进行研讨,这样才可能真正理解架构设计真正精髓的东西,使未来的设计工作就会变得极有主动性和想象

3、力。随着经济全球化进程的不断推进,知识经济的时代已经到来。要增加软件产品的国际竞争力,软件质量作为企业发展的战略问题变得越来越重要,软件质量正被视为软件企业的生命。软件质量管理开始在软件组织内全面开展,强烈的质量意识正慢慢扎根于软件技术和管理人员的心灵深处,直至整个组织质量文化的形成,所以,如何设计高质量的软件产品,也成为软件架构设计的重要主题。统计表明,软件质量问题80%是由需求分析和架构设计两个环节造成的,因此,在需求分析的时候,我们必须研究如何充分理解用户需求,给各方面提供充分而有效的信息,在架构设计上,研究如何尽可能利用已有信息,合理组织

4、技术方案,把人和任务作为一个重要因素进行考虑,在达到质量需求的基础上,使高的投资回报率成为可能,在项目过程管理上,如何与架构设计匹配协调,使技术方案的高质量实现成为可能,同时对于产品线架构和核心资产库构建的理论、方法、组织和技术给于足够的重视,这都需要项目经理、分析师、架构师具有很高的水平。架构设计绝不是某个神秘人物冥思苦想然后又自鸣得意的产物,架构设计应该是集体智慧的成果,软件设计与开发也应该是集体共通劳动的结果,重要的是各种相互矛盾的要求的合理平衡,这都需要有非常良好的方法,把团队的智慧集中起来,如何充分激发集体的智慧,也是一个架构设计师必须

5、具备的能力。影响这个课程主体的主要思想,是21世纪是软件规模经济的时代,下图表达了工具、构件和过程的三个基本技术的进步,图中表达了在假定要求的质量和人员等级不变的情况下,投资回报(ROI)的关系,纵坐标表达了实现软件的单位成本(代码行、功能点),横坐标表达了软件规模,这里表示了随着时代的进步,同样规模的软件成本在大幅下降,投资回报在大幅上升。http://www.TCICT.cn-1-◆中科院计算所培训中心高级软件系统架构师培训伴随着非常大型的项目,比如由系统组成的系统,长生命力的产品以及多个相似项目的产品线,软件组织将达到更好的经济规模。这种规

6、模软件经济的理念,对我的设计方法和思路提出了和过去完全不同的要求,重用、复用和变更促成为重要的主题。架构设计应该从方法论的角度、从质量属性对架构设计影响的角度、从建立可度量的架构质量保证体系以及安全性和可扩展性的角度,在理论和实践两方面全方位研究问题。1.1软件架构师的角色和应掌握的知识体系一、软件架构的定义与问题软件架构(softwarearchiecture)是一组有关如下要素的重要决策:软件系统的组织,构成系统的结构化元素,接口和它们相互协作的行为的选择,结构化元素和行为元素组合成粒度更大的子系统的方式的选择,以及指导这一组织(元素及其接口

7、、协作和组合方式)的架构风格的选择。软件架构是对系统整体结构设计的刻划,包括全局组织与控制结构,构件间通讯、同步和数据访问的协议,设计元素间的功能分配,物理分布,设计元素集成,伸缩性和性能,设计选择等。但是,所谓架构其实并不仅仅指的是软件产品体系结构设计,它还包括管理架构、过程架构以及质量保证架构等一系列问题的研究,因为高质量软件并不能只靠一个节点解决问题,而是需要有一个全面的解决方案。重要的是要知道,一个软件系统的质量,很大程度上是由架构设计的质量决定的,所以,http://www.TCICT.cn-2-◆中科院计算所培训中心高级软件系统架构师

8、培训研究架构设计的思想和方法,成为软件设计领域中一个十分引人注目的问题。但是很长时间以来,人们大都把目光关注在流程、方法、结构原理甚至编

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。