《概要设计说明书-通用权限管理系统.docx》由会员分享,可在线阅读,更多相关《概要设计说明书-通用权限管理系统.docx(10页珍藏版)》请在优知文库上搜索。
1、通用权限管理系统概要设计说明书软件部2013年7月文档修改记录版本修订人修订说明批准人发布日期1.0.1.0XXX初稿20130714本文档中所包含的信息属于商业机密信息,如无上海电科的书面许可,任何人都无权复制或利用。模版版本信息编辑部门:软件部批准日期:2013/7/14目录1 引言21.1 编写目的21.2 软件设计目标21.3 定义21.4 法律法规和参考资料22 系统用例22.1 角色与用例描述32.2 角色授权流程42.3 资源权限管理53 系统架构设计63.1 设计方法63.2 应用结构图63.3 系统架构71引言1.1 编写目的在完成需求分析的基础上,为了更好的明确平台需求、以
2、及指导程序员的开发工作,编写了这份概要设计说明书,该说明书主要对需求进行分析、设计、框架的整体设计,以及部分实现方案,接近详细设计,程序员通过该设计便可以进行开发工作。预期读者:编码人员、测试人员、设计人员,上级领导,各产品部技术同行等。1.2 软件设计目标系统的设计目标主要包括以下四点:1、 对应用系统的所有资源进行权限控制,比如应用系统的功能菜单、单个界面的按纽控件等进行权限的操控。2、 完善用户、角色、组织、资源、操作的管理功能,其中的组织管理模块只提供组织视图,不参与权限的控制管理。3、 开发人员开发新的系统功能,通过资源和角色模块进行操作管理。使用系统管理员身份登陆,直接将访问路径作
3、为对角色资源授权给操作,实现资源访问控制管理。4、 在多应用之间实现SSO功能,对用户登陆的IP进行管理及控制。1.3 定义SSO:SingleSignOn单点登录1.4 法律法规和参考资料J2EE设计模式2系统用例系统业务用例图:2.1角色与用例描述1、系统用户(1)、系统管理员:具有系统最高级别的权限,实行信息的全局管理与数据维护工作。系统管理员账号不可被删除,只能进行相关信息修改。(2)、普通用户:由系统管理员创建并分配权限,在角色权限范围内进行访问与操作,可以为一个用户分配多个角色。2、用户登陆流程3、工作界面系统根据用户的权限对工作窗口进行初始化,不同角色的用户具有对应的工作窗口界面
4、。4、用户管理系统管理员完成用户信息的录入、维护以及用户授权工作,并给用户指定组织机构。系统应具备根据部门编号,用户编号,用户姓名来检索数据的功能。5、角色管理角色是一组用户的集合,具有指定的权限完成特定的资源访问与操作作为。为对有相似权限的用户进行分类管理,定义了系统管理员、管理员、用户、访客等角色。6、组织管理与企业的部门或者机构对应,用于实现对用户的分组归类管理。7、资源管理资源权限是系统对用户访问的资源的路径(页面)显示和访问进行控制。2.2 角色授权流程系统各大功能模块在用户授权流程中关系如下图所示:用户授权流程主要是完成用户角色以及用户组织的分配,显示了系统用例之间的相互调用关系。
5、授权流程如下:1、创建用户信息,分配业务角色;2、进行角色管理,如果没有对应的角色,可以在角色管理模块完成角色的创建和资源授权工作;3、给用户分配组织机构,完成用户授权2.3 资源权限管理1、资源管理包括资源类型、应用管理、资源权限等。资源类型默认的有增、册k改、查等四种。用户可以创建应用,并为根据应用功能设定各种权限,以通用权限系统为例,用户管理可分为:创建用户、编辑用户、删除用户、查询用户信息等等权限。每种权限有对应的权限类型及所属的应用。2、角色资源权限用于管理角色的资源,一个角色可以拥有多种资源权限;可以为一个角色分配某个应用的某种类型权限,这样该角色就会拥有这种类型的所有权限。3、组
6、织资源权限组织部门也拥有不同的权限资源,类似于角色,组织部门资源权限是对角色资源权限的一种补充。一个用户归属于一个组织、及一个或多个角色,用户拥有的权限是这些权限的合集。4、用户资源权限对角色资源权限及部门资源权限的补充,可以为单个用户独立分配资源权限。5、资源权限判断流程3系统架构设计3.1 设计方法采用了面向对象和组件,自顶向下逐步迭代的软件工程技术;整个设计方法是基于一个分层的软件体系结构。采用PoWerdeSigner进行数据库设计,首先定义了不同功能组件的概念模型,随后采用visi。对系统的架构及业务流程进行设计,定义并且描述系统的体系结构。3.2 应用结构图通过对系统应用结构的分析得到系统应用结构图,如图所示:3.3 系统架构系统采用B/S架构模式,对外公共接口采用rest方式Cresteasy架构)。系统采用OraCle(SqISerVer)数据库和tomcat应用服务器开发,部署在WindowsorIinux服务器下运行。用户权限管理系统概貌如图所示:系统应用管理开发框架SpringSt,utsJPAIbatisAJAXDataListxt,eeOracle9i数据库