毕业论文管理系统项目概要设计说明书Word下载.docx

上传人:b****4 文档编号:17081505 上传时间:2022-11-28 格式:DOCX 页数:73 大小:195.42KB
下载 相关 举报
毕业论文管理系统项目概要设计说明书Word下载.docx_第1页
第1页 / 共73页
毕业论文管理系统项目概要设计说明书Word下载.docx_第2页
第2页 / 共73页
毕业论文管理系统项目概要设计说明书Word下载.docx_第3页
第3页 / 共73页
毕业论文管理系统项目概要设计说明书Word下载.docx_第4页
第4页 / 共73页
毕业论文管理系统项目概要设计说明书Word下载.docx_第5页
第5页 / 共73页
点击查看更多>>
下载资源
资源描述

毕业论文管理系统项目概要设计说明书Word下载.docx

《毕业论文管理系统项目概要设计说明书Word下载.docx》由会员分享,可在线阅读,更多相关《毕业论文管理系统项目概要设计说明书Word下载.docx(73页珍藏版)》请在冰豆网上搜索。

毕业论文管理系统项目概要设计说明书Word下载.docx

1.系统整体方案

(1)毕业论文管理系统主要特性

我们从以下五个方面确定目标系统特性如下:

●用户界面的复杂度:

数据的静态显示/可定制视图(customizableview)

●用户界面的部署约束:

基于独立的桌面电脑或专用工作站的浏览器

●用户的数量和类型:

组织内的日常使用者,总共几百人

●系统接口类型:

通过HTTP协议提供服务,未来可以使用SOAP的SOA技术

●性能:

主要是独立的数据更新,有少量并发处理

从上述特性我们可以判断毕业论文管理系统属于中大型项目,因此我们使用基于Struts-Spring—Hibernate框架的分层架构设计方案.

(2)架构分层

毕业论文管理系统项目架构设计中,我们使用分层模式。

具体地说,我们将毕业论文管理系统应用在职责上分成3层:

表示层(PresentationLayer)、持久层(PersistenceLayer)和业务层(BusinessLayser)。

每个层在功能上都应该是十分明确的,而不应该与其他层混合。

每个层要相互独立,通过一个通信接口而相互联系。

(3)模式和框架使用:

在分层设计基础上,我们将使用设计模式和框架,这些是可以重用的资产。

1)MVC模式

MVC模式就是一种很常见的设计模式.所谓的MVC模式,即模型—视图—控制器(model-view——controller)模式。

其结构图如下:

 

图4—1MVC架构图

1、Model端

在MVC中,模型是执行某些任务的代码,而这部分代码并没有任何逻辑决定用户端的表示方法.Model只有纯粹的功能性接口,也就是一系列的公共方法,通过这些公共方法,便可以取得模型端的所有功能。

2、View端

在MVC模式里,一个Model可以有几个View端,而实际上多个View端是使用MVC的原始动机。

使用MVC模式可以允许多于一个的View端存在,并可以在需要的时候动态注册所需要的View.

3、Controller端

MVC模式的视图端是与MVC的控制器结合使用的。

当用户端与相应的视图发生交互时,用户可以通过视窗更新模型的状态,而这种更新是通过控制器端进行的.控制器端通过调用模型端的方法更改其状态值.与此同时,控制器端会通知所有注册了的视图刷新用户界面.

那么,使用MVC模式有哪些优点呢?

MVC通过以下三种方式消除与用户接口和面向对象的设计有关的绝大部分困难:

1、控制器通过一个状态机跟踪和处理面向操作的用户事件。

这允许控制器在必要时创建和破坏来自模型的对象,并且将面向操作的拓扑结构与面向对象的设计隔离开来。

这个隔离有助于防止面向对象的设计走向歧途.

2、MVC将用户接口与面向对象的模型分开。

这允许同样的模型不用修改就可使用许多不同的界面显示方式。

除此之外,如果模型更新由控制器完成,那么界面就可以跨应用再使用。

3、MVC允许应用的用户接口进行大的变化而不影响模型。

每个用户接口的变化将只需要对控制器进行修改,但是控制器包含很少的实际行为,它是很容易修改的。

面向对象的设计人员在将一个可视化接口添加到一个面向对象的设计中时必须非常小心,因为可视化接口的面向操作的拓扑结构可以大大增加设计的复杂性。

MVC设计允许一个开发者将一个好的面向对象的设计与用户接口隔离开来,允许在同样的模型中容易地使用多个接口,并且允许在实现阶段对接口做大的修改而不需要对相应的模型进行修改

2)框架

根据项目特点,我们使用三种开源框架:

表示层用Struts;

业务层我们用Spring;

而持久层则用Hibernate。

如图1-1所示。

图1—1Struts-Spring—Hibernate架构

1表示层

一般来讲,一个典型的Web应用的前端应该是表示层。

这里可以使用Struts框架。

下面是Struts所负责的:

•管理用户的请求,做出相应的响应

•提供一个流程控制器,委派调用业务逻辑和其他上层处理

•处理异常

•为显示提供一个数据模型

•用户界面的验证

以下内容,不该在Struts表示层的编码中经常出现,与表示层无关的。

•与数据库直接通信

•与应用程序相关联的业务逻辑及校验

•事务处理

在表示层引入这些代码,则会带来高耦合和难以维护的后果。

2持久层

典型的Web应用的后端是持久层.开发者总是低估构建他们自己的持久层框架的挑战性。

系统内部的持久层不但需要大量调试时间,而且还经常因为缺少功能使之变得难以控制。

这是持久层的通病。

幸运的是,有几个对象/关系映射(Object/RelationMapping,ORM)开源框架很好地解决了这类问题,尤其是Hibernate。

Hibernate为Java提供了持久化机制和查询服务,它还给已经熟悉SQL和JDBCAPI的Java开发者创造了一个学习桥梁,使他们学习起来很方便.Hibernate的持久对象是基于POJO(PlainOldJavaObject)和Java集合(collections)的。

此外,使用Hibernate并不妨碍你正在使用的IDE(IntegratedDevelopmentEnviroment)。

下面是Hibernate所负责的:

•如何查询对象的相关信息.

Hibernate是通过一个面向对象的查询语言(HQL)或者正则表达的API来完成查询的。

HQL非常类似于SQL,只是把SQL里的table和columns用Object和它的fields代替.HQL语言容易理解且文档也做得很好。

HQL是一种面向对象查询的自然语言,很容易就能学会它。

•如何存储、更新、删除数据库记录。

•如Hibernate这类的高级ORM框架支持大部分主流数据库,并且支持父表/子表(Parent/child)关系、事务处理、继承和多态。

3业务层

一个典型Web应用的中间部分是业务层或者服务层。

从编码的视角来看,这层是最容易被忽视的一层。

我们往往在用户界面层或持久层周围看到这些业务处理的代码,这其实是不正确的。

因为它会造成程序代码的高耦合,这样一来,随着时间推移,这些代码将很难维护。

幸好,针对这一问题有好几种框架(Framework)存在.最受欢迎的两个框架是Spring和PicoContainer.这些也被称为轻量级容器(microcontainer),它们能让你很好地把对象搭配起来。

这两个框架都着手于“依赖注入”(dependencyinjection)(还有我们知道的‘控制反转'

InversionofControl=IoC)这样的简单概念。

这里我们将关注于Spring的依赖注入和面向方面编程。

另外,Spring把程序中所涉及到的包含业务逻辑和数据存取对象(DataAccessObject)的Objects-—例如transactionmanagementhandler(事务管理控制)、ObjectFactoris(对象工厂)、serviceobjects(服务组件)——都通过XML来配置联系起来。

下面是业务层所负责的:

•处理应用程序的业务逻辑和业务校验

•管理事务

•提供与其他层相互作用的接口

•管理业务层级别的对象的依赖

•在表示层和持久层之间增加了一个灵活的机制,使得他们不直接联系在一起

•通过揭示从表示层到业务层之间的上下文(Context)来得到业务逻辑(businessservices)

•管理程序的执行(从业务层到持久层)

2.UML视图

(1)Use-caseDiagram:

如图所示.

(2)class—Diagram:

2.4结构

1.一般用户浏览的内容管理模块:

首页显示及其他页面

2.系统管理模块:

a)登录

b)信息统计

c)确认供选课题(课题审核)

d)查看导师工作日志

e)权限管理

f)模块设置

3.课题管理:

a)课题上传

b)课题更改

c)课题删除

d)课题统计

4.选题管理:

a)课题选择

b)选课记录更改

5。

过程控制:

a)阶段管理

b)过程评审

2.5功能需求与程序的关系

各项功能需求的实现同各块程序的分配关系如下所示:

程序1(Action)

程序2(BusinessService)

程序3(DAO)

系统管理

权限管理模块

1管理员管理

AdminManageAction

IAdminManageService

IAdminManageDAO/

AdminManageDAO

2.导师管理

TeacherAction

ITeacherService

ITeacherDAO/

TeacherDAO

3学生管理

StudentAction

IStudentService

IStudentDAO/

StudentDAO

4权限控制

PermissionControlAction

IPermissionControlService

IPermissionControlDAO/

PermissionControlDAO

模块开放关闭管理

1模块开放管理

ModuleManageAction

IModuleManageService

IModuleManageDAO/

ModuleManageDAO

查看导师工作日志

1查看导师工作日志

TeacherLogAction

ITeacherLogService

ITeacherLogDAO/

TeacherLogDAO

课程信息统计

TopicAction

ITopicService

ITopicDAO/

TopicDAO

选课信息统计

TopicSelectAction

ITopicSelectService

ITopicSelectDAO/

TopicSelectDAO

课题管理模块

……

课题管理

ITopicServiceImpl/ITopiicService

TopicDAO/ITopiicDAO

选题管理模块

选题管理

ITopicSelectServiceImpl/ITopicSelectService

ITopicSelectDAO/TopicSelectDAO

过程控制

一般用户浏览

2.6人工处理过程

2.7尚未解决的问题

3接口设计

3。

1用户接口

用户接口以基于浏览器的图形用户界面(GraphicUserInterface,GUI)的方式提供,具体见页面导航图(静态页面设计)。

3.2外部接口

本系统同与已有的工作室管理系统之间有数据交换.

3内部接口

一.系统管理

BusinessService接口

DAO接口

IAdminManageDAO

ITeacherManageService

ITeacherManageDAO

IStudentManageService

IStudentManageDAO

IPermissionControlDAO

接口描述

1.IAdminManageService接口类提供以下方法:

(1)publicStringaddAdmin(Groupadmin,Teacherteacher);

目标:

添加管理员

参数类型说明

adminclass权限组管理员对象

teacherclass老师对象

主要流程描述:

超级管理员提交添加请求,在Action中调用该方法,传入权限组类中管理员组及要添加的老师对象,添加管理员记录

(2)publicListshow(Map〈Stringactor,Stringactor_id〉);

超级管理员查看管理员信息

actorString角色

actor_idString角色编号

用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IAdminManageDAO)获取相关选课记录。

(3)publicListshow_all();

超级管理员查看所有管理员记录

teacherclassTeacher类的对象

用户提交请求,在Action中调用该方法,调用IAdminManageDAO执行。

(4)publicvoidupdate(Teachetteacher);

更改记录

主要流程描述:

用户提交请求,在Action中调用该方法,传入Tecaher类的一个对象,调用IAdminManageDAO执行更新。

(5)publicvoiddelete(Teachetteacher);

删除记录

用户提交请求,在Action中调用该方法,传入Teacher类的一个对象,调用IAdminManageDAO执行删除。

2.ITeacherManageService接口类提供以下方法:

(1)publicStringaddTeacher(Groupteach,Teacherteacher);

添加导师

teachclass权限组管理员对象

超级管理员提交添加请求,在Action中调用该方法,传入权限组类中导师组及要添加的老师对象,添加导师记录

(2)publicListshow(Map<

Stringactor,Stringactor_id〉);

超级管理员查看导师信息

用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用ITeacherManageDAO)获取相关选课记录。

超级管理员查看所有导师记录

用户提交请求,在Action中调用该方法,调用TeacherManageDAO执行。

用户提交请求,在Action中调用该方法,传入Teacher类的一个对象,调用ITeacherManageDAO执行更新。

目标:

用户提交请求,在Action中调用该方法,传入Teacher类的一个对象,调用ITeacherManageDAO执行删除。

3.IStudentManageService接口类提供以下方法:

(1)publicStringaddStudent(Groupstudy,Teacherstudent);

添加学生

studyclass权限组管理员对象

studentclass老师对象

超级管理员提交添加请求,在Action中调用该方法,传入权限组类中学生组及要添加的学生对象,添加学生记录

Stringactor,Stringactor_id〉);

超级管理员查看学生信息

用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IStudentManageDAO)获取相关选课记录。

超级管理员查看所有学生记录

studentclassStudent类的对象

用户提交请求,在Action中调用该方法,调用StudentManageDAO执行。

(4)publicvoidupdate(Studentstudent);

用户提交请求,在Action中调用该方法,传入Student类的一个对象,调用IStudentManageDAO执行更新。

(5)publicvoiddelete(Studentstudent);

用户提交请求,在Action中调用该方法,传入Student类的一个对象,调用IStudentManageDAO执行删除。

4、IPermissionControlService接口类提供以下方法:

(1)publicStringaddPermission(Permissionpermission);

permissionclass权限对象

超级管理员提交添加请求,在Action中调用该方法,传入权限类对象,添加权限记录

(2)publicListshow(Map〈Stringpermission,Stringpermission_id>

);

permissionString权限

permission_idString权限编号

用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IPermissionControlDAO)获取相关选课记录。

超级管理员查看所有权限记录

permissionclassPermission类的对象

用户提交请求,在Action中调用该方法,调用PermissionControlDAO执行.

(4)publicvoidupdate(Permissionpermission);

用户提交请求,在Action中调用该方法,传入Permission类的一个对象,调用IPermissionControlDAO执行更新。

(5)publicvoiddelete(Permissionpermission);

用户提交请求,在Action中调用该方法,传入Permission类的一个对象,调用IPermissionControlDAO执行删除.

(6)publicStringaddGroup(Groupgroup);

添加权限组

groupclass权限组对象

超级管理员提交添加请求,在Action中调用该方法,传入权限类对象,添加权限记录

(7)publicListshow(Map〈Stringgroup,Stringgroup_id〉);

groupString权限组

group_idString权限组编号

用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IGroupControlDAO)获取相关选课记录。

(8)publicListshow_all();

groupclassGroup类的对象

用户提交请求,在Action中调用该方法,调用GroupControlDAO执行.

(9)publicvoidupdate(Groupgroup);

用户提交请求,在Action中调用该方法,传入Group类的一个对象,调用IPermissionControlDAO执行更新。

(10)publicvoiddelete(Groupgroup);

用户提交请求,在Action中调用该方法,传入Group类的一个对象,调用IPermissionControlDAO执行删除.

(11)publicStringaddPermissionColumn(PermissionColumnpermissioncolumn);

permissio

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1