ImageVerifierCode 换一换
格式:DOCX , 页数:73 ,大小:195.42KB ,
资源ID:17081505      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17081505.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业论文管理系统项目概要设计说明书Word下载.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

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

1、1系统整体方案(1)毕业论文管理系统主要特性我们从以下五个方面确定目标系统特性如下:用户界面的复杂度:数据的静态显示/可定制视图(customizable view)用户界面的部署约束:基于独立的桌面电脑或专用工作站的浏览器用户的数量和类型:组织内的日常使用者,总共几百人系统接口类型:通过HTTP协议提供服务,未来可以使用SOAP的SOA技术性能:主要是独立的数据更新,有少量并发处理从上述特性我们可以判断毕业论文管理系统属于中大型项目,因此我们使用基于Struts-SpringHibernate框架的分层架构设计方案.(2)架构分层毕业论文管理系统项目架构设计中,我们使用分层模式。具体地说,我

2、们将毕业论文管理系统应用在职责上分成3层:表示层(Presentation Layer)、持久层(Persistence Layer)和业务层(Business Layser)。每个层在功能上都应该是十分明确的,而不应该与其他层混合。每个层要相互独立,通过一个通信接口而相互联系。(3)模式和框架使用:在分层设计基础上,我们将使用设计模式和框架,这些是可以重用的资产。1)MVC模式MVC模式就是一种很常见的设计模式.所谓的MVC模式,即模型视图控制器(model-viewcontroller)模式。其结构图如下:图41 MVC架构图1、Model端在MVC中,模型是执行某些任务的代码,而这部分代

3、码并没有任何逻辑决定用户端的表示方法.Model只有纯粹的功能性接口,也就是一系列的公共方法,通过这些公共方法,便可以取得模型端的所有功能。2、View端在MVC模式里,一个Model可以有几个View端,而实际上多个View端是使用MVC的原始动机。使用MVC模式可以允许多于一个的View端存在,并可以在需要的时候动态注册所需要的View.3、Controller端MVC模式的视图端是与MVC的控制器结合使用的。当用户端与相应的视图发生交互时,用户可以通过视窗更新模型的状态,而这种更新是通过控制器端进行的.控制器端通过调用模型端的方法更改其状态值.与此同时,控制器端会通知所有注册了的视图刷新

4、用户界面.那么,使用MVC模式有哪些优点呢?MVC通过以下三种方式消除与用户接口和面向对象的设计有关的绝大部分困难:1、控制器通过一个状态机跟踪和处理面向操作的用户事件。这允许控制器在必要时创建和破坏来自模型的对象,并且将面向操作的拓扑结构与面向对象的设计隔离开来。这个隔离有助于防止面向对象的设计走向歧途.2、MVC将用户接口与面向对象的模型分开。这允许同样的模型不用修改就可使用许多不同的界面显示方式。除此之外,如果模型更新由控制器完成,那么界面就可以跨应用再使用。3、MVC允许应用的用户接口进行大的变化而不影响模型。每个用户接口的变化将只需要对控制器进行修改,但是控制器包含很少的实际行为,它

5、是很容易修改的。 面向对象的设计人员在将一个可视化接口添加到一个面向对象的设计中时必须非常小心,因为可视化接口的面向操作的拓扑结构可以大大增加设计的复杂性。MVC设计允许一个开发者将一个好的面向对象的设计与用户接口隔离开来,允许在同样的模型中容易地使用多个接口,并且允许在实现阶段对接口做大的修改而不需要对相应的模型进行修改2)框架根据项目特点,我们使用三种开源框架:表示层用Struts;业务层我们用Spring;而持久层则用Hibernate。如图1-1所示。图11 Struts-SpringHibernate架构1 表示层 一般来讲,一个典型的Web应用的前端应该是表示层。这里可以使用Str

6、uts框架。下面是Struts所负责的: 管理用户的请求,做出相应的响应 提供一个流程控制器,委派调用业务逻辑和其他上层处理 处理异常 为显示提供一个数据模型 用户界面的验证以下内容,不该在Struts表示层的编码中经常出现,与表示层无关的。 与数据库直接通信 与应用程序相关联的业务逻辑及校验 事务处理 在表示层引入这些代码,则会带来高耦合和难以维护的后果。2 持久层典型的Web应用的后端是持久层.开发者总是低估构建他们自己的持久层框架的挑战性。系统内部的持久层不但需要大量调试时间,而且还经常因为缺少功能使之变得难以控制。这是持久层的通病。幸运的是,有几个对象/关系映射(Object/Rela

7、tion Mapping,ORM)开源框架很好地解决了这类问题,尤其是Hibernate。Hibernate为Java提供了持久化机制和查询服务,它还给已经熟悉SQL和JDBC API的Java开发者创造了一个学习桥梁,使他们学习起来很方便.Hibernate的持久对象是基于POJO(Plain Old Java Object)和Java集合(collections)的。此外,使用Hibernate并不妨碍你正在使用的IDE(Integrated Development Enviroment)。下面是Hibernate所负责的: 如何查询对象的相关信息. Hibernate是通过一个面向对象的

8、查询语言(HQL)或者正则表达的API来完成查询的。HQL非常类似于SQL,只是把SQL里的table和columns用Object和它的fields代替.HQL语言容易理解且文档也做得很好。HQL是一种面向对象查询的自然语言,很容易就能学会它。 如何存储、更新、删除数据库记录。 如Hibernate这类的高级ORM框架支持大部分主流数据库,并且支持父表/子表(Parent/child)关系、事务处理、继承和多态。3 业务层一个典型Web应用的中间部分是业务层或者服务层。从编码的视角来看,这层是最容易被忽视的一层。我们往往在用户界面层或持久层周围看到这些业务处理的代码,这其实是不正确的。因为它

9、会造成程序代码的高耦合,这样一来,随着时间推移,这些代码将很难维护。幸好,针对这一问题有好几种框架(Framework)存在.最受欢迎的两个框架是Spring和PicoContainer.这些也被称为轻量级容器(micro container),它们能让你很好地把对象搭配起来。这两个框架都着手于“依赖注入”(dependency injection)(还有我们知道的控制反转Inversion of Control=IoC)这样的简单概念。这里我们将关注于Spring的依赖注入和面向方面编程。另外,Spring把程序中所涉及到的包含业务逻辑和数据存取对象(DataAccess Object)的O

10、bjects-例如transaction management handler(事务管理控制)、Object Factoris(对象工厂)、service objects(服务组件)都通过XML来配置联系起来。下面是业务层所负责的: 处理应用程序的业务逻辑和业务校验 管理事务 提供与其他层相互作用的接口 管理业务层级别的对象的依赖 在表示层和持久层之间增加了一个灵活的机制,使得他们不直接联系在一起 通过揭示从表示层到业务层之间的上下文(Context)来得到业务逻辑(business services) 管理程序的执行(从业务层到持久层)2 UML视图(1)Use-case Diagram:如

11、图所示.(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(Business Service)程序3(DAO)系统管理权限管理模块1管理员管理AdminManageActionIAdminMan

12、ageServiceIAdminManageDAO/AdminManageDAO2.导师管理TeacherActionITeacherServiceITeacherDAO/TeacherDAO3学生管理StudentActionIStudentServiceIStudentDAO/StudentDAO4权限控制PermissionControlActionIPermissionControlServiceIPermissionControlDAO/PermissionControlDAO模块开放关闭管理1模块开放管理ModuleManageActionIModuleManageServiceI

13、ModuleManageDAO/ModuleManageDAO查看导师工作日志1查看导师工作日志TeacherLogActionITeacherLogServiceITeacherLogDAO/TeacherLogDAO课程信息统计TopicActionITopicServiceITopicDAO/TopicDAO选课信息统计TopicSelectActionITopicSelectServiceITopicSelectDAO/TopicSelectDAO课题管理模块课题管理ITopicServiceImpl/ITopiicServiceTopicDAO/ITopiicDAO选题管理模块选题管

14、理ITopicSelectServiceImpl/ITopicSelectServiceITopicSelectDAO/TopicSelectDAO过程控制一般用户浏览2.6人工处理过程2.7尚未解决的问题3接口设计3。1用户接口用户接口以基于浏览器的图形用户界面(Graphic User Interface, GUI)的方式提供,具体见页面导航图(静态页面设计)。3.2外部接口本系统同与已有的工作室管理系统之间有数据交换.3内部接口一系统管理 Business Service接口DAO接口IAdminManageDAOITeacherManageServiceITeacherManageDA

15、OIStudentManageServiceIStudentManageDAOIPermissionControlDAO接口描述1IAdminManageService接口类提供以下方法:(1)public String addAdmin(Group admin,Teacher teacher );目标:添加管理员参数 类型 说明admin class 权限组管理员对象teacher class 老师对象主要流程描述: 超级管理员提交添加请求,在Action中调用该方法,传入权限组类中管理员组及要添加的老师对象,添加管理员记录 (2)public List show (MapString ac

16、tor, String actor_id);超级管理员查看管理员信息actor String 角色actor_id String 角色编号用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IAdminManageDAO)获取相关选课记录。(3)public List show_all ();超级管理员查看所有管理员记录teacher class Teacher类的对象用户提交请求,在Action中调用该方法,调用IAdminManageDAO执行。(4)public void update (Teachet teacher);更改记录主要流程描述:用户提交请求,在Ac

17、tion中调用该方法,传入Tecaher类的一个对象,调用IAdminManageDAO执行更新。(5)public void delete(Teachet teacher);删除记录用户提交请求,在Action中调用该方法,传入Teacher类的一个对象,调用IAdminManageDAO执行删除。2ITeacherManageService接口类提供以下方法:(1)public String addTeacher (Group teach,Teacher teacher );添加导师teach class 权限组管理员对象 超级管理员提交添加请求,在Action中调用该方法,传入权限组类中

18、导师组及要添加的老师对象,添加导师记录 (2)public List show (Map);permission String 权限permission _id String 权限编号用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IPermissionControlDAO)获取相关选课记录。超级管理员查看所有权限记录permission class Permission类的对象用户提交请求,在Action中调用该方法,调用PermissionControlDAO执行.(4)public void update (Permission permission);用户提

19、交请求,在Action中调用该方法,传入Permission类的一个对象,调用IPermissionControlDAO执行更新。(5)public void delete(Permission permission);用户提交请求,在Action中调用该方法,传入Permission类的一个对象,调用IPermissionControlDAO执行删除.(6)public String addGroup(Group group);添加权限组group class 权限组对象 超级管理员提交添加请求,在Action中调用该方法,传入权限类对象,添加权限记录 (7)public List show

20、 (MapString group, String group _id);group String 权限组group _id String 权限组编号用户提交请求,在Action中调用该方法,传入一个Map,到数据库查找(调用IGroup ControlDAO)获取相关选课记录。(8)public List show_all ();group class G roup类的对象用户提交请求,在Action中调用该方法,调用Group ControlDAO执行.(9)public void update (G roup group);用户提交请求,在Action中调用该方法,传入G roup类的一个对象,调用IPermissionControlDAO执行更新。(10)public void delete(Group group);用户提交请求,在Action中调用该方法,传入G roup类的一个对象,调用IPermissionControlDAO执行删除.(11)public String add PermissionColumn (PermissionColumn permissioncolumn);permissio

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

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