一、 系统介绍该系统采用三层架构模型设计,利用实体在3层之间数据传输,利用Ajax技术实现页面部分刷新,利用登录验证码防止自动登录,利用DES加密算法对数据加密来提高系统的安全性,利用角色进行权限管理等功能实现一般WEB系统中常用的技术。 参考文献管理系统主要是用于用户对期刊和论文的管理,用户分为普通用户,授权用户,系统管理员三类。本系统有三个模块分别是期刊管理、论文管理、系统管理。 二、 基于UML的系统设计2.1 RUP过程指导与本系统的分析设计过程UML是一种建模语言而不是一种方法,UML的表示法和规则能够用来为系统进行面向对象建模,但并没有指定应用UML的过程和方法。1998年正式颁布的RUP(Rational Unified Process)是UML设计者们共同定义的一个软件开发的公共过程框架。 统一过程主要包括四个阶段:开始阶段、细化阶段、构建阶段和移交阶段。 1 进行业务流程建模 通过使用UML的活动图与用例图描述企业的业务流程来理解领域知识,建立业务用例图。 2 进行系统功能建模 寻找用例及其之间的关系(用例图),通过详细描述用例来捕获系统的功能需求,并建立系统用例图,这是整个开发过程的基础。 3 进行领域建模 寻找对象与类,主要是使用类图表现领域中各业务类之间的静态关系,并用交互图、顺序图等具体描述类之间的交互以及对象的状态变化。主要涉及以下活动(并不一定是顺序的): 1> 分析用例以及业务领域; 2> 发现对象,为对象分类,确定对象之间的交互; 3> 确定类之间的关系; 4> 定义类的属性和操作; 5> 分析对象的状态变化。 4 进行系统设计,在系统分析的基础上进行: 系统架构的设计:进行高层的系统决策、确定基本的软件结构,并对应用系统进行划分;对象进一步设计:对领域模型中的业务类进行精化、调整,增添界面类、控制类等用于实现的类。 5 实现 实现的依据是设计过程中得到的静态视图(类图、对象图)、动态视图(顺序图、状态图、协作图、活动图);同时可以将类映射为组件,进而使用CASE工具的框架代码自动生成的功能;同时通过实现图(组件图、配置图)来描述系统的物理视图。 6 单元测试,集成与系统测试 测试实现的部分是否满足用例的功能要求;另外,类图、组件图、协作图等也可以用来进行测试。 我们对本系统的开发过程以及在开发过程中用到的建模图形 2.2 用例图系统总用例图如图 主要用例描述: 1登录/Login 用例名称:login 参与者:系统管理员、授权用户、普通用户 简要说明:用户输入用户名、密码和验证码,登录系统。所要实现的功能为登录模块可以有效的检验用户名和密码、登录模块可以识别不同的用户。 前置条件:用户已经在系统中注册。 基本事件留: 1. 用户在登录界面上输入登录信息和验证码,点“登录”按钮; 2. 系统进行用户信息校验,如果信息校验正确登录系统并转至系统首页,并根据不同的用户给出不同的功能;否则,给出错误提示信息; 3. 用例终止。 异常事件流: 1. 提示错误信息,用户确认; 2. 返回到登录页面 后置条件:用户登录系统,根据用户类型的不同进行不同的操作。 2 论文管理 用例名称:论文管理 参与者:系统管理员、授权用户 简要说明:系统管理员、授权用户可以根据需求新建、修改、删除、浏览和查询论文信息;普通用户可以浏览和查询论文信息。 前置条件:系统管理员、授权用户已经登录系统。 基本事件流: 1. 用户在系统首页上点击“论文管理”按钮; 2. 系统跳转到论文管理页面; 3. 系统管理员、授权用户根据需要进行论文信息的增加、修改、删除、查询; 4. 用户执行完相应操作后点,系统给出对话框询问用户是否确认执行相应操作,如果用户选择“是”,那么系统进行用户信息校验,验证用户是否有相应的权限,如果有,执行相应的操作并写入系统日志且给出操作成功的提示;否则,给出错误提示信息; 5. 用例终止。 异常事件流: 1. 数据库操作错误,提示错误信息,用户确认 2. 返回系统主页面 后置条件:根据用户类型的不同及操作的不同得到不同的结果,数据库信息更新并在页面上刷新出来。 3 期刊管理 该用例描述同2 所以不在给出 2.3 类图2.4 活动图活动图是阐明了业务用例的工作流程。业务用例工作流程说明了业务为向所服务的业务主角提供其所需价值而必须完成的工作。业务用例是由一系列活动组成,它们共同为业务主角生成某些工件。工作流程通常包括一个基本工作流和一个或多个备选工作流程。工作流程的结构使用活动图来进行说明。 该系统的基本活动图(授权用户从登陆到使用系统的活动图) 2.5 顺序图权限管理对于系统来说十分重要,因为它关系到系统得安全性,因此在系统得开发与设计中,我们始终把系统的安全性放在十分重要的位置,因此我们在用顺序图分析的时候始终从系统用户未登陆状态来分析的,我们会给出用户登录的顺序图。 论文管理基本操作的顺序图: 1 新建论文信息的顺序图 2 修改论文信息顺序图 3 删除论文信息顺序图 期刊管理基本操作的顺序图同上,这里就不在给出。 系统管理基本操作: 1 权限管理 我们对操作进行编码,为每个操作角色赋予相应的操作权限,形成操作权限表,系统管理员能根据需要灵活地对操作角色的操作权限进行赋予与修改,以此有效灵活地对用户的操作权限进行控制。 角色管理 (1)角色填加 (2)角色删除 (3)角色权限修改 (4)角色密码修改 权限管理 对系统的权限编号的权限内容进行权限的管理,如修改客户权限的权限大小,入库管理员的权限大小等操作。 2 日志管理 保存每个操作员所进行的所有操作,提供有权限的人进行查询的功能 3 数据备份 将所有数据表信息定期保存在磁盘中。 4 数据恢复 用备份文件替换受损文件。 2.6 协作图协作图用于显示组件及其交互关系的空间组织结构,它并不侧重于交互的顺序。协作图显示了交互中各个对象之间的组织交互关系以及对象彼此之间的链接。 下图为系统管理员新增论文信息的协作图 2.7 构件图构件图描述了软件的各种组件和它们之间的依赖关系。构件图中通常包含3种元素:组件、接口、和依赖。每个组件实现一些接口,并使用另一些接口。在UML2.0中,组件被认为是独立的,在一个系统或子系统中的封装单位,提供一个或多个接口。主要思想是,能容易地在你的设计中重用或替换一个不同的组件实现,因为一个组件封装了行为,实现了特定接口。 UML是用组件来表示代码物理模块的。组件可以包括代码库和运行文件。在生成代码之前,将每个文件映射相应组件。在本系统中,使用的是C#开发。每个类映射一个织件,表示这个类的.cs文件。生成代码时,Rose用组件信息创建相应的代码库文件。本系统构造的组件图框架如下: 2.8 状态图2.9 部署图部署图描述软件如何安置在目标环境,运行软件的系统中硬件和软件的物理结构。目标环境用一组节点表示,每个节点都是一类有计算能力的资源,可以承载某些组件的实例。部署图中通常包含两种元素:节点和关联关系。 部署图如下所示: 三、 系统开发的思考3. 1 数据库设计问题现在的开发环境越来越多的是面向对象的,而存储机制却是不同于此的关系型数据库,这两者之间存在着很大差异。这种差异使系统的开发活动不能统一。典型的情况是,越来越多的应用系统是三层甚至多层体系结构,在此情况下,用户接口层和业务逻辑层是用面向对象技术开发的,而数据库多数仍然是关系型的。 因此,在采用面向对象建模技术分析获得对象模型后,怎样得到关系型的数据库呢?这也是我们本次系统开发中遇到的问题。 (1)属性类型映射成域 UML中的属性类型(Attribute Type)映射成数据库中的域(Domain)。域的使用提高了设计的一致性,且优化了应用的移植性。简单的域是非常容易实现的,仅仅需要替换相对应的数据类型和数据的尺寸。同时,对于使用域的属性,可能要求为域的约束加入SQL的Check串。例如,限定域的取值范围等。 枚举域(Enumeration Domain)限定了域允许取值的集合。其实现通常有几种方法:定义SQL约束来限定取值;为每个枚举值定义标志;枚举表;对枚举值进行编码等。 在本系统地开发中,所有涉及到枚举型的数据对象,我们都单独设置一表来表达,例如计量单位表中就是入库单等表中计量单位数据项的一枚举约束。 (2)类的属性映射至关系数据库表中的列 属性可以直接映射为表中的零到多列。通常,一个属性映射为表中的一列,但也有例外: ①对于非持久的属性可以不进行映射,有些属性置只做为中间值用于计算而不需保存在数据库中。 ②某些对象属性本身就是对象,客户中的地址属性(如果较复杂)可以映射为数据库表或多列。此时,属性映射成多个字段。反之,也可以将多个相似的简单属性映射为一列。 (3)类映射成表 类到表的映射通常不是直接的。只有非常简单的应用,类与表之间才会存在一一对应的关系。 3. 2 数据库访问设计问题数据表E-R图Actioninfo表 字段类型 | 字段名称 | 类型 | 宽度 | 是否为空 | 主鍵与否 | Fid |
| int |
|
| 是 | Foid |
| int |
| 是 |
| Fpid |
| int |
|
|
| Fname |
| varchar(50) |
| 是 |
| ftype |
| varchar(300) |
| 是 |
| flink |
| varchar(50) |
| 是 |
|
信息发布:广州名易软件有限公司 http://www.myidp.net
|