实践论认为:从实践提升到理论,再由理论指导实践,由此向前发展。目前SOA的发展的情况正是如此,通过不少实践,SOA的模型己经被公认为标准规范,目前是正需要进一步总结上升到理论的时候了。
当前国内要发展SOA主要有三方面工作:方法、工具和环境。方法是工程技术,由基础理论来指导提出的。所以一门科学必需要包括:认知科学(哲理)、工程技术和方法、最后是理论。
架构的演化过程
SOA是从面向对象、构件架构等逐步发展完善,且相互依托、相互补充、又各自适应不同范围,因此在讨论SOA理论时,要了解它是如何演化过程来,继承了哪些理论体系,其适应度如何。
结构编程方法
40年前国际上发生了“软件危机”,如IBM公司开发一个操作系统,或美国的航空公司开发飞机订票系统,都花费了上千人数年的工作量。它开发周期长、而开发出来的产品却是错误很多,难以维护和适应修改。
正在此时,一位荷兰的物理家E.W.Dijkstra提出了一种“结构程序设计方法”,他认为:人的智力是有限的,采用数学或物理学的思维方法,用枚举、抽象、归纳、类比等思维方式简化问题。
由于我也是数学系毕业的,我拜读了他的所有论文,就编写一本著作《编程方法学》。用此方法扩展到软件设计中时,称为“结构化分析和结构化设计(SASD)”。
所谓“结构程序设计方法”,就是基于面向对象设计方法的早期蓝本,侧重於解决程序正确性的编程的方法,以此为基础建立了软件工程这门学科,建立了编程的基础理论体系,也是第一个技术与基础理论体系。






