尊蓝中间件的技术路线

2017-11-27 15:31:37 admin1 199

图片关键词1、设计原则
本项目采用可扩展的架构和可分离的软件模块化设计。凭借上海尊蓝多年的开发经验,和对国际先进应用技术的长期跟踪,按照标准化、科学化、实用化的设计思想,根据总体性能和功能要求,在构建BizLogic业务中间件平台系统的设计中充分体现如下原则:

图片关键词先进性
软件过程先进性:采用先进的Scrum软件开发模型。Scrum是敏捷开发的一种,Scrum认为开发软件就像开发新产品,无法一开始就能定义软件产品最终的规程,过程中需要研发、创意、尝试错误,所以没有一种固定的流程可以保证专案成功。Scrum 将软件开发团队比拟成橄榄球队,有明确的最高目标,熟悉开发流程中所需具备的最佳典范与技术,具有高度自主权,紧密地沟通合作,以高度弹性解决各种挑战,确保每天、每个阶段都朝向目标有明确的推进。Scrum模型较传统开发模型的一个显著特点就是响应变化,它能够尽快地响应变化。
应用开发工具的先进性:全部的应用开发将构筑在JAVA和XML技术上,JAVA和XML是当今世界上最有生命力,支持厂商最多,标准化最强的应用开发语言,JAVA使业务应用实现跨平台,XML使应用数据实现跨平台。利用JAVA和XML实现的应用系统可以不依赖于任何的硬件设备和操作系统,而永远可以选择运行在最先进的平台之上。
图片关键词高效性
项目产品的核心基于久经考验的轻量级框架,采用Spring框架作为模块总线,元数据管理采用Hibernate作为项目产品的持久化框架,充分利用Hibernate的Level 2 Cache功能,提升元数据信息的存取效率。
利用成熟框架提供的集群能力支持,使项目产品能够大幅提升系统处理能力。同时在各个组件模块中灵活有效的使用Cache技术,充分利用数据缓冲池和对象池技术,提高数据访问能力。

图片关键词可靠性
事务处理的可靠性:Spring和Hibernate是经过千锤百炼的框架,在Spring的容器中有专门进行事务处理(Transaction)的组件,可以有效地保证各种操作执行过程中的可靠性,从而规避了通过程序员在程序中加注回滚控制进行复杂事务处理中的风险和低效。可以说我们又一次站在巨人的肩膀上完成了一件非凡的工作。
集群支持:Hibernate能够很好的支持集群方案,使我们底层平台应用具备了与硬件平台无关的特性,从而可以轻松地通过增加服务器集群中的主机数量(二期)就可以实现冗余容错,当集群中的某一台主机出现故障时,系统会自动把应用进程切换到另一台正常的主机上,在故障主机修复后又可以通过热连接的方式加入到集群中来。
图片关键词可扩展性
本系统将随着项目产品的研发和推进、市场环境的变化不断发展和调整,在业务功能设计时会对产品提出更多的需求,因此在系统设计时从分考虑这一点,采用可扩展的架构和可分离的软件模块化设计。
图片关键词安全性
完善密级管理体系,通过不同角色的不同权限访问不同的资源,使用不同的系统功能。全系统都是可管理的,提供用户登录日志文件,跟踪每一个用户的访问。
图片关键词规范性
敏捷软件过程:国内通常采用瀑布式的开发方式,系统设计完成后把开发任务分成多个模块由不同的程序员进行开发,在各模块完成后联调组装,这种开发模式在联调风险很大,往往会造成大量的返工或找不到bug的原因,使工期无法控制。
我们采用Scrum敏捷开发方法。Scrum 开发流程通常以 30 天(或者更短的一段时间)为一个阶段,由客户提供新产品的需求规格开始,开发团队与客户于每一个阶段开始时挑选该完成的规格部分,开发团队必须尽力于 30 天后交付成果,团队每天用 15 分钟开会检查每个成员的进度与计划,了解所遭遇的困难并设法排除。
JavaDoc规范设计文档:全部开发都是按照J2EE标准实现的,所以在完成需求分析、系统设计文档的同时,我们还将利用JavaDoc软件按照标准生成规范的详细设文档。
图片关键词2、体系结构
图片关键词项目采用面向对象的方法进行分析、设计,用UML描述系统模型。整个项目借助Project 2002进行管理,并选择支持敏捷开发和重构的开源开发工具Eclipse进行编码。因此,整个项目的软件环境如下表所示:

名称

说明

Windows XP系列操作系统

操作系统环境

Project 2002

项目管理工具

ArgoUML

需求分析与设计工具

Eclipse 3.2

开发与测试工具

Office 2000

文档编写


图片关键词3、关键功能实现描述
SABP平台中的应用由各层组件组装而成,平台下可以建立应用模块、数据实体组件、展现视图组件、业务流程组件、领域扩展服务组件,通过应用控制器进行业务拼装。
图片关键词(1)应用模块开发
通过在业务领域基础上定义应用模块,将逻辑上紧密耦合的相关组件定义在一个模块包下。模块内的组件是内聚的,模块与模块之间松散耦合,仅通过服务接口协同处理业务。每个应用模块有独立的命名空间。
图片关键词(2)数据实体开发
从领域模型中抽取出实体对象,利用数据字典技术建立实体对象的元数据库,平台框架将通过动态语言的元编程技术,实现应用逻辑与具体的数据库访问之间的隔离。

图片关键词(3)展现视图开发
展现视图可以所见即所得的定义应用系统与用户交互的UI,展现视图可由多部分组成,关联到多个数据实体,展现层框架通过与系统无关的统一XML数据格式与应用层控制器交互。开发工具的控件箱中提供丰富的Ajax功能Widget组件。
图片关键词(4)业务流程开发
通过可视化的方式使用户通过简单的拖拽和连线的操作通过对业务处理过程(节点)的组装即可完成对业务逻辑的表达。用户可以在节点任何节点上设置业务对象的访问权限,并编写业务处理的服务扩展。
图片关键词(5)领域扩展服务开发
领域扩展服务组件内可编写业务扩展代码,支持强大的动态语言Groovy。平台内置了多个强大的服务组件,扩展服务代码可以通过这些服务组件接口很轻松的访问到基础设施层服务,平台服务总线,或者外部WEB服务。

图片关键词(6)数据分析开发
SABP中间件平台可以通过向导,一步步的从数据实体对应的数据库表及其关联关系中抽取出报表的数据源,基于模板做简单的自定义,即可得到所想要的报表和分析图表。
图片关键词4、项目技术实现依据

图片关键词设计思想依据:
规范及质量标准,参照了国际上通行的规范WfMC,XPDL, BPML, ebXML, BPEL4WS,JPDL,SCA/SDO等。

       图片关键词关键技术实现的依据:
中间件的底层内核采用经典的WEB开发模式2架构进行开发。图中所示,是一个为动态内容服务的混合方案,因为它同时使用了servlet和JSP。它利用了两种技术的优势,使用JSP产生表现层而servlet负责执行敏感任务。在这里,servlet扮演控制器的角色,负责请求处理和产生JSP要使用的bean和对象,以及根据客户的动作决定下一步转发到哪一个JSP页面。特别要注意的是JSP页面内部并没有处理逻辑;它只是简单地负责取得可能是servlet事先创建的对象和bean,并为在了静态模版中插入从servlet释放出动态内容。这个办法一般会形成最干净彻底的表现与内容的分离,使得你的开发团队里的开发者和页面设计师的角色与责任能够清晰。实际上,你的应用越复杂,使用模式2带来的好处就越多。

中间件的内核采用Spring 框架。Spring 框架是一个分层架构,由 7 个定义良好的模块组成。Spring 模块构建在核心容器之上,核心容器定义了创建、配置和管理 bean 的方式。组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:
核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用控制反转 (IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。
Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。
Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB 组件,就可以将声明性事务管理集成到应用程序中。
Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。
Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring 的通用事务和 DAO 异常层次结构。
Spring Web 模块:Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。
Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。
Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring 的核心要点是:支持绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB)、独立应用程序、测试环境之间重用。
 


 

尊蓝简介

尊蓝公司成立于2003年,专注于国内物业管理信息化领域,定位于物业管理信息平台产品供应商与服务提供商,是双软认证企业、国务院创新基金支持单位,拥有自主知识产权25项,产品销售遍布全国128个城市,拥有物业公司客户数量,超过1600家;经过多年发展,尊蓝已成为国内物业软件知名品牌。

了解更多

案例分享

联系我们