在系统设计的过程中,为了最大限度地增强系统的价值,最大限度地吻合各业务应用的需求,充分考虑系统今后的硬件扩展、功能扩展、应用扩展、集成扩展等多层面的延伸,整个系统设计过程始终遵循面向数据价值,围绕系统应用,依靠业务部门,注重实效的方针。保证系统的开放/可扩展性,以便提高系统的稳定性和可靠性,满足用户需求不断发展变化的要求,便于应用程序的升级及扩展,减少应用系统再开发(二次开发、定制)的工作量从而降低成本。系统的开放/可扩展性从以下几个方面考虑:
组件化结构:采用全组件化结构设计,每个组件都被独立地实现,并通过标准接口联系在一起。每个功能组件在功能上独立,同时可根据用户需求灵活配置、组合,实现平滑升级扩容,功能实体可使业务和开发人员根据具体使用要求增加或减少系统应用模块。
标准化接口:采用标准统一的接口设计,所有功能实体间的数据交换以及对其他模块的数据引用都通过标准接口完成,使多个组件对接时在开放性、稳定性、扩展性与集成性上有着很好的适配空间。
开放的功能包:系统处理组件化结构设计与标准化接口设计以支撑开放体系结构外,为了方便用户个性应用的开发,还封装系统及其组件所需的二次开发应用工具包,使其他技术团队对平台进行二次开发时能够更好地复用。
分层架构设计:采用横向分层和纵向分割架构设计。将层与层之间相互分离,每层的应用和服务,采用独立的模块开发和部署,模块间交互标准化,新增功能模块分解到各层,以插件形式加入原系统,既不影响整体架构,也不影响本层功能提供,具备高模块化设计,保证了系统功能的可扩展性。纵向分割是将业务和可复用服务分离出来,通过分布式服务框架调用。新增产品可以通过调用可复用的服务实现自身的业务逻辑,而对现有产品没有任何影响。可复用服务升级变更的时候,也可以通过提供多版本服务队应用实现透明升级,不需要强制应用同步变更。
部署和升级的扩展性:系统采用的软件开发技术都属于开源系统项目,软件系统可运行于通用的主流硬件平台上,不依赖于特定的、专用的硬件设备或者系统软件。系统配置(硬件系统、操作系统、数据库系统)的升级一般情况下,不会引起系统的修改和再次开发,如确实需要对原系统进行必要的升级改动时,由我司负责相应的升级工作,以适应新的硬件平台。