传统的软件开发咱们看到能力复用层面是比较差的,对于系统管理,工做流引擎,公共技术组件库,UI库,技术架构和平台每每都须要本身搞一套,这自己和 SOA复用的思想也是违背的。按SOA业务和流程驱动IT,CBM组件化业务模型的思路,后续最理性的就是逐步淡化掉业务系统的概念。整个企业就一个业务大系统,在这个业务大系统里面剩余的仅仅是业务功能组件。
原有的系统构建和结构能够描述为以下:
基于组件化架构的思路,须要解决的是淡化业务系统的概念,强化业务组件的概念。同时对业务系统内部已有的业务功能模块进行解耦,业务组件经过注册到ESB 上的业务服务进行交付。而基于平台化的思路,则是原有业务系统构建过程当中全部和业务无关的内容都进行平台化建设,全部平台化层面的内容都进行统一规划和建设,为全部的业务组件提供公共服务能力。以下图:
在这种模式下能够看到业务系统彻底进行了拆解,真正一个业务系统的构成须要多个技术能力支撑单元和业务单元共同组装来完成。对于用户来说可能看不到太大的变化,可是在内部实现细节上则进行了平台化和标准化。理想的业务系统构建模式将变化为基于一个完整的提供技术,平台,前台展示各类支撑能力的空应用容器中开发知足各个业务需求的业务组件。
系统再也不是后续的交付单位,业务组件才是交付单位。业务组件建设彻底只关注业务,不关注技术底层和各类平台层能力的实现。业务组件经过服务接口和各类底层支撑能力,外层挂接能力进行集成。业务组件高度自治,能够独立进行分析,设计,打包部署和运行。
公共技术组件和平台层组件彻底独立部署和运行。其能力的提供一方面能够是以注册在ESB总线上的服务的方式,也能够是业务组件直接内嵌平台层组件提供的代理模块和轻量API接口。底层组件提供全局的数据建模和数据存储,这些数据跨全部的业务组件共享。
外层应用框架是一个彻底能够运行起来的相似门户的框架,其自身已经包含了登陆认证,权限,菜单管理等各类基础功能。外层应用框架实现各个业务组件的动态装载和使用。企业内应用构建彻底实现AppStore化。而对于ESB企业服务总线,则既实现业务组件和底层平台层的服务集成,也实现业务组件间的服务集成。技术集成以消息和轻量的rest方式实现,而业务集成则以传统的soap webservice方式实现。html