| |
应用软件系统架构设计的“七种武器” |
|
2008年05月20日 23:17 软件架构
|
对于软件架构这一概念,有太多的版本,目前在业界由大师级人物或组织提出的对这一概念的阐述就超过十种以上,我个人比较赞同RUP(Rational Unified Process)中对软件架构的定义,即软件架构包含了关于以下问题的重要决策:
软件系统的组织;
选择组成系统的结构元素和它们之间的接口,以及当这些元素相互协作时所体现的行为;
如何组合这些元素,使它们逐渐合成为更大的子系统;
用于指导这个系统组织的架构风格:这些元素以及它们的接口,协作和组合。
本文我们并不是要探讨软件架构的定义,只是想基于上面这种定义来谈谈在软件系统架构设计的过程中,我们会常常用到的一些“武器”。
长生剑:UML(UML2)
UML(Unified Modeling Language)这一建模语言已经成了软件设计人员的必备工具,几年前就曾有过“苦干年之后,不通UML者无法染指软件开发”的言论,虽然从目前来看,UML的应用还并未达到如此程度,但使用UML最大的好处在我看来就是减少了沟通的成本,让我们把一些想法能够很清晰直观的表达出来,在设计的过程中,使用得较多的是用例图,类图,组件图,部署图和时序图。当下,各种设计和建模工具对UML都有良好的支持,UML本身也是一门不断发展的语言,现在UML2已经成为主流。UML本身也极为简单,对于初学者来说可能有些概念比较难懂,可以结合实际的程序来理解,这样会事半功倍,但我认为也不会太高深,熟练使用就达到了应有的境界。
剑谱:
UML官方网站
《UML基础、案例与应用(第3版)》,此书作为UML入门较为适合,书中也以详实案例来教会我们怎么使用UML(待续)。
|
|
【推荐】【打印】【大 中 小】【关闭窗口】
|
|
|
|
 |
| 推荐:图片搜索 |
|