【我对软件平台架构的理解】第三部分:构建软件平台架构的建议

一、建设平台架构的主要思想

对于建设平台架构,首先应注重对它的工程化设计和管理,而且要用比产品和项目更加严谨的工程化思想,来进行平台构架的规划、设计、落实和演进。

1、工程化

在度娘搜索了一下,关于工程化,没有找到更合适的、权威的名词解释,倒是度娘知道里的一个描述,比较贴合我对工程化理解:工程化即系统化、模块化、规范化的一个过程。【注1】

我认为,软件的工程化,就是在软件的构建过程中,应用理论化、系统化、标准化的思想,对软件进行规划、设计、实施、管理和控制,以保证其过程与结果的质量和效率,及其可维护、可复用和可发展的能力。

针对平台架构上的工程化,就是应用软件工程理论,将平台架构当作一项工程,进行充分的调研分析、系统规划、拆解建模、抽象设计、协作建设、评审验证和持续改进,以使其达到和保持理想化结果的行为。

2、模型化

模型泛指实际系统或过程的特性的一种表示形式,或映成的一种结构。【注2】

平台架构的模型化,就是对平台架构进行结构化拆解、对象化设计,并建立起它的模型和关系的表达。面向对象的理论大家应该都比较熟悉,这里结合平台架构的建设,说一下我的理解,强调的是对平台架构要做好模型化设计,以形成科学合理的架构模式、组成方式和协作关系,为平台架构提供更好的标准性、效率性、灵活性,以及可维护性与可扩展性。(关于模型化及下文中的1)、2)、3),可以见【注3】)

1)、结构化

用系统科学的思想方法,将平台架构看作是一个系统,对它进行抽象、分解,以提炼它的主体结构和分支构成,并以此描述和指导平台架构的建设。

2)、对象化

用面向对象的方法,对平台架构中的各个细微组成,进行抽象和封装,形成合理的结构单元,这些结构单元组合起来,形成了平台架构的整体。

3)、层次化

层次是对抽象的归类和排序,它可以从不同的维度进行拆解,以表达对象及结构间的构成和协作关系。

4)、组件化

组件是把具有某一方面能力的,或含有共同特性的对象汇集在一起,封装成一个大的集合,形成内部统一外部独立的服务载体或能力支撑。

5)、接口化

要对对象间、组件间、结构间、层次间的交互关系及访问过程进行很好的分析、抽象和设计,并形成相对合理而稳固的接口描述。好的接口设计对平台架构的结构、效率、稳定性、维护扩展能力都至关重要。

6)、服务化

服务化是对抽象和封装的升级要求,它强调的是对业务(也可以是技术)的服务化管理,使之应具备如下特性:

  1. 边界清晰、能力稳定。
  2. 高内聚、低耦合。
  3. 无状态、可伸缩。
  4. 轻量、通用、开放。
  5. 可管理。

我认为服务化可以算作模型化的一种深化,虽然模型化并非一定要服务化,但对于平台架构和其支撑的应用来说,服务化则是很重要的手段。

3、规范化

首先应建立起平台架构自身的标准规范,并依此来建设平台架构,保持平台架构的合理性、健康性、稳定性,其次还要建立起基于平台架构搭建产品项目的标准规范,既能用来指导产品项目的实现过程,也能与平台架构本身的标准规范相互验证,以使平台架构更加的科学合理。

规范化是保证平台科学合理、健康稳定的重要标准,如果不能得到良好地执行落实,很可能会对平台架构产生很大的影响。同时,如果有些规范不完善或不合理,则应及时分析问题原因,探讨修补措施或提供替代方案。

二、构建平台架构的过程

1、收集业务需求与发展方向

平台架构要为企业应用服务,在构建平台架构前,需要先了解企业的业务情况、技术需求、发展规划,以及对业务、客户和技术的发展预期,以此来制定平台架构的远近目标、技术方案、建设规划、成本投入、期望成效等内容。

2、整理技术储备与成果储备

平台架构很难从零开始,基本都是利用企业已有的技术底蕴和经验积累,进行融汇整合,并逐步发展起来的,所以在建设平台架构之前,有必要对企业本身的经验

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值