ABFrame(Application Base Framework) EOS应用基础框架(针对EOS6)

 

一、EOS应用基础框架(ABFrame)对使用者的重要性
=================================================

基于EOS实现的开源EOS应用基础框架(ABFrame)对使用者的重要性表现在如下几个方面:
一、对EOS的开发者而言,ABFrame是一个非常好的应用系统学习案例:项目中的模型清晰,容易理解,代码质量较高,代码规范性较高,注释清楚,项目中涵盖了一个企业应用常见的技术点,如树的处理、菜单、登录、session处理、ajax等等 。
二、对应用项目开发组而言,ABFrame是一个非常好的业务组件,可以大大减少系统开发的工作量:ABFrame提供的组织机构权限管理模型通用性较高,功能比较强大;由于是非常规范的开源系统,功能扩展方便灵活
三、对基于ABFrame实现应用系统的最终用户而言,ABFrame是一个功能强大,高效稳定,易于维护和扩展的系统功能模块:ABFrame具有较强的扩展性,对业务系统的权限模型有较强的兼容性;为未来统一所有业务系统的用户权限管理提供的可能 。

二、系统背景
=================================================
对于任何一个应用系统来说,组织机构和角色权限管理都是基础的不可缺少的组成部分。使用EOS6开发项目同样需要一个组织机构和角色权限管理系统,ABFrame应运而生,我们衷心的希望
      以更高的起点开发目标系统 :提高系统的开发速度和稳定性
      展示EOS构件思想 :涉及构件规划、开发规范
      展示EOS技术点 :使EOS技术点以可运行的形式展现,同时帮助开发人员更便捷,快速地学习

三、系统介绍
=================================================
3.1 系统实现的基本功能
1、认证授权: 认证授权主要包括登录,操作员管理,Portal资源管理,登录策略等几个功能模块。
2、权限管理:权限管理功能主要维护ABFrame中与权限紧密相关的功能、菜单、角色三个重要部分。应用功能是ABFrame中权限控制的基础单元,权限的分配与验证都是以功能为单位的,同时功能可以与菜单相关联,一些功能有可操作界面可以作为菜单的执行入口。角色又称为权限集是一组功能的集合,角色可以与ABFrame系统中的多个对象关联,如机构、岗位、职务、工作组、操作员从而给不同的操作员对系统功能的不同访问权限。
3、 组织管理:组织机构模块是ABFrame两大基础功能之一,主要维护机构、岗位、人员信息,工作组信息,职务信息、业务机构信息。可以建立多个根机构,每个机构下可以有多个子机构或者岗位。岗位下可以建立子岗位,体现岗位的汇报和层级关系。系统中的人员至少隶属于一个机构,也可在多个机构下,同时也可以分配到一个或者多个岗位下。一个岗位可设置一个对应职务,一个职务可设置到多个岗位上标识这些岗位的共性。工作组则类似于一个临时性的机构,但工作组不能全新的增加一个人员只能选择已有的人员,且这些人员可来自不同的机构,同样的工作组下可以设置多个的岗位。各个组织对象如机构、岗位、人员、工作组、职务上可设置权限集(角色)用于赋权给属于这个机构对象下的人员。
4、 其它管理: 其他管理包括业务字典管理、日志管理、快捷菜单管理、首选项、个人身份设置个人菜单重组、文件管理、Excel导出等功能,作为ABFrame的功能补充。
3.2 系统的特性
1、SSO:集成开源josso框架;可灵活配置,支持session管理,身份凭证、session的持久化。
2、构件包对外提供服务:登录服务等…。
3、灵活的权限设置:可将权限配置到机构岗位工作组。
4、国际化。
3.3 使用角色
1、特定操作员(内置):Sysadmin 拥有eosadmin角色。
2、特定角色(保留):eosadmin 拥有ABFrame的所有操作权限;orgadmin 拥有组织机构的操作权限;appadmin 拥有应用功能的操作权限。
3、灵活的权限设置:可将权限配置到机构岗位工作组。
3.4 接口、服务
1、 登录服务接口。
2、角色权限接口:获取个人角色列表,菜单列表等...
3、组织机构接口:组织机构列表,上下级组织机构查询等...
4、约束控制接口。

四、ABFrame与FBFrame的对比
=================================================
4.1 组织机构模型变化
1、允许定义多套机构:如总公司1、总公司2。
2、岗位层级关系: 岗位也可以挂在岗位下,表示下属岗位;岗位可以对应某个职务。
3、允许设置人员的一个直接主管。
4、 一个人员可以在多个岗位上,也可以挂在多个机构下:
有主机构、主岗位之分。
5、 工作组不属于机构,但隶属于机构:表明属于该机构管辖;工作组下也可以挂工作组、人员和岗位;人员可以来自不同机构。
6、 允许基于组织机构定义业务机构或虚拟机构。
4.2 权限模型变化
1、人员与功能额外配置:特别开通、特别禁止。
2、 人员菜单设定:通过人员拥有的功能与菜单关联获取。
3、角色授权灵活:可在机构、工作组、岗位、职务。
4.3 页面实现方式差异
1、采用eos6的页面构件。
2、大量使用树、标签页操作。
3、支持国际化。

五、二次开发相关事项
=================================================
5.1 开发规范(具体规范参考《ABFrame项目设计与开发规范》)
5.2 MUO定制
1、登录程序的输出。
2、user-config的配置(后期将改为构件包配置)。
5.3 样式改变
1、可通过修改css改变eos6的webui构件风格。
2、通过skins的改变来变更样式。
3、 可改变菜单风格。
4、右侧显示样式。
5.4 约束控制
1、使用约束来实现功能、角色等的互斥依赖功能。
2、 可对任意资源进行配置。
5.5 单点登录与其他SSO服务器集成
1、Session持久化。
2、 自定义登录登出服务。
3、自定义单点登录的应用群。
4、自定义用户信息的存储方式(jdbc、LDAP)。
5.6 工作流组织机构接口
1、可根据实际需求更改工作流组织机构接口。
2、提供缺省样例作为参考。
5.7 LDAP认证配置
1、可配置LDAP相关信息。
5.8 开源代码可自行修改

六、资源下载
=================================================

(A)下载地址:(注意下载最新版本)

ftp://211.152.33.58/EOS6/Abframe

(B)版本说明

V1.2 20090527正式发布
V1.2针对V1.1的改进列表,参考链接:ftp://211.152.33.58/EOS6/Abframe/V1.2/changes_new.txt

v1.1 20090508正式发布
V1.1针对V1.0的改进列表,参考链接:ftp://211.152.33.58/EOS6/Abframe/V1.1/changes.txt

V1.0 20090330正式发布

(C)支持环境

1)操作系统
Windows 2003、Windows XP、Red Hat Enterprise Linux 3或以上、AIX 5.3、HPUX 11.23、Solaris 8。
2)J2EE服务器
Weblogic 9.2、Weblogic 10、WebSphere 6.1.0.15、Jboss 4.0.5 GA、Tomcat-5.5.20。
3)JDK
IBM JDK 1.5.0、SUN JDK1.5.0_09。
4)数据库
Oracle 9i/10g、
DB2 UDB_V8.2、
Sqlserver 2000、
MySQL 5.0.22 。
5)EOS
EOS6.0GA(3207)
6)浏览器
IE6、IE7、FireFox2

(D)下载资源文件说明
开源项目部署文件fbframe.epj
EOS源码工程fbframe.zip
开源项目的模版文件
开源项目的部署使用说明install.txt
开源项目的说明readme.txt
开源项目的cvs提取手册
EOS基础业务框架(fbframe)说明书:详细说明了该项目的功能、设计、技术特性等
数据库模型文件EOS-ORG.pdm
概念模型fbframe.cdm
通过EOS Studio自动生成的项目详细设计文档。