一整月都在编写某国企的技术平台建设方案。
该企业是一个某500强大型国有企业,他们希望能建设统一的一个软件平台(技术平台+业务平台):各专业部门基于该平台开发相应的专业级插件,并发布到统一的插件平台中,并最终都可集成到一个统一的客户端软件平台中,以达到业务组件能在全公司范围内进行重用。另外,数据方面,会在平台建设的第二、三阶段,为他们建立独立的私有云数据服务。
由于保密性的原因,方案的许多内容都不便说明。以下是整个方案中,技术平台部分的一些重要内容的摘要。
架构分层
产品外围开发环境支持:VS-SDK、开发论坛、开发支持等。
应用插件层:各专业的应用级别插件。
基础应用模块层:平台提供的基础应用模块,包含了一些必备的业务。
基础服务层:基础服务的封装层。
基础框架层:基础的技术核心框架。包含:插件框架、插件管理模块、服务容器、事件总线、界面集成框架、命令系统、多语言支持、日志、异常。
数据框架层:领域实体框架、对象关系映射、虚拟文件访问。
界面集成框架
以 WPF、DevExpress 为基础技术选型,以 MVVM 为主要架构模式。
插件机制
一个支持热插拔的插件框架。
选型:会在 Prism 框架的基础上进行改造。
集成框架
服务容器:基于 IOC 框架构建。
事件总线:使用 Prism 中的事件机制,或开发一个轻量级的事件总线。
数据管理
一期:实现领域实体与本地数据库/文件系统的映射。
二期:实现多项目文件的集中管理。
三期:实现私有云数据服务。
离线场景与并发支持
本地数据库+项目数据整体上传与下载。
同时支持悲观并发、乐观并发两种方式。
私有云交互方案
重客户端直接上传下载整体项目数据。
轻客户端通过服务获取大量数据渲染后的最终界面。
使用微软 SystemCenter 构建私有云。
数据访问框架
选型:对比 EF 与 Rafy 框架。
基于 Rafy 来实现领域实体及与数据库的映射。这里可以贴一下两页 PPT:
上面就是技术平台的主要内容,业务平台相关的内容就不在这里说了。
国庆回来的第一天就要展开整个方案的讲解,希望一切顺利。