升级版Excel,千亿级大厂新选择:吊打金蝶用友?完胜SAP Oracle?-英雄云拓展知识分享
165
2023-10-26
【摘要】 本书摘自《Java架构之完美设计 实战经典》一书中第2章,第1节,由颜廷吉编著。
2.1 架构品质
软件架构的设计与开发离不开品质管理思想的指导,架构应该包含的品质特性如图2-1 所示图中所述的各种特性的实现手段分别如下:
(1)稳定性
稳定性可以参阅《软件品质之完美管理 实 战经典》第5章与第6章中阐述的各种 品质管理方法来进行强化。
(2)可控性
可控性的解决方案之一是先进行概念验证 (Proof Of Concept,POC),也就是原型验证, 来规避所采用的架构技术风险。
(3)可维护性
在设计时就要彻底考虑系统的可维护性,另外需要做好各种必要的文档。系统开发完 毕,亦需根据实际情况编写各种维护手册。
(4)清晰性
在进行架构设计时,要做好各种视角的设计图纸,并进行流程的优化,以确保架构流程 的清晰。
(5)复杂性
一般来说,软件涉及的功能越多,通用性越强,架构就会越复杂。降低复杂性的技巧在 《Java 代码与架构之完美优化——实战经典》里有详细叙述。另外,在便利性上,需要给出 架构功能的各种使用例子及文档说明。
(6)扩展性
应该对可以预见的未来应用给出相应的扩展接口。
( 7 ) 性 能
性能优化的具体解决方案,请参照 《Java 代码与架构之完美优化 实战经典》第8 章以及本书第10章内容。
2.2 架 构 过 程
2.2.1 架 构 流 程
软件开发流程的主要任务如图2-2所示,其中点线内的任务为架构相关的主要流程。由图 可知,架构开发也是由需求定义、需求分析、外部设计、内部设计、编码与测试等阶段组成。
架构开发形成稳定的版本后 (V1.0.0) 并不是其开发的终止,而是要根据需求进行相 应的升级优化。每次架构的优化与升级都需要考虑应该实现的功能、业务关注点、最新技 术、品质要素、开发过程、组织文化、本团队技能、复杂性等要素,同时要权衡各种要素之 间的关系,如图2-3所示。
2.2.2 架 构 成 果
架构开发过程中,产出的主要成果如图2-4点线内所示。
一般业务开发的成果包含程序代码与文档,但是架构开发还有一个重要的成果——架构 使用实例。有时候文档也不能很好地表达架构本身的含义,特别是对于较复杂的架构处理。 因此实例代码就显得格外重要,有时其作用甚至重于文档。
对于程序员来说,当读不懂文档说明时, 一看使用实例,也许马上就会茅塞顿开。另 外,大型系统的架构实例,往往是具体应用开发的样本。例如,开发了某金融系统的基盘架 构,同时给出了业务使用案例,如果有几十个业务系统都需要使用此基盘,那么就可以参照 样本,根据业务的需求,进行修改与添加。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~