hushouqi

SaaS平台概要设计

引言:

    SaaS以服务的形式为中小企业提供软件。企业只需注册帐号,即可在服务商平台上使用。不需独立购买服务器及价格不菲的软件。其优势在于成本低,实施速度快,免费升级。

 

设计目标:

     实现相同的应用服务,不同的数据存储方式。对企业数据与应用进行解耦。

 

公共平台需求:

 为企业提供相同的软件应用

2 为企业提供独立的数据存储区域

3 企业自定义用户

4 企业定义自身的角色,分配权限

 

框架层次划分:

公共信息管理层:

作为底层,对各企业及企业相关信息进行管理。

软件服务应用:

  依赖于公共信息管理,独立的应用系统,如CRM,ERP…

 

对象类型分析:

 

 

群组(group):单独企业视为group。企业下有各自的组织,例如市场部,销售部,也可视为group。企业与部门有一定的区别。即企业相当于部门的一种特殊类型,部门上面有上级,而企业没有,可将企业定义为group一个继承类。SaaS平台不一定只为企业提供服务,可能还包括其他组织,例如一些团队,需要在企业上抽象一个Organization类型。

   

用户(User): 企业包含自身的用户,即企业与用户是聚合关系。部门与用户是关联关系,用户允许分配到不同的部门中。

 

角色(Role)企业包含自身的角色。每个企业之间的角色定义允许不同。角色需要上下级关系,通过上下级关系控制权限。

 

权限(right):为用户分配角色,通过对角色分配权限,控制模块权限。

 

数据源(DataSource:Organization包含自身的数据源,数据源指定数据存储到哪里,即持久化介质。这里只提供数据库方式,其属性包括连接字符串与数据库类型。

 

应用系统(Application) Organization 拥有自己的软件应用系统。Application包括应用入口,即一个URL地址,可定义到不同的服务器。

 

 

总结:

    解决了企业使用相同应用,不同数据存储的问题。将数据分开存储有很好的优势,可以分散数据压力。可针对不同用户提供不同的存储方式。当然有优势也有劣势,维护升级是件很麻烦的事情。针对于维护升级,也需要相应的策略。

 

posted on 2010-06-10 10:42  freemao  阅读(9128)  评论(18编辑  收藏  举报

导航