毕业论文管理系统项目概要设计说明书

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

毕业论文管理系统

概要设计说明书

1引言

1.1编写目的

此文档对毕业论文管理系统概要设计进行说明。

预期的读者有 (甲方)的需求提供者、项目负责人、相关技术人员等,江西师范大学软件学院软件工作室Java项目小组(乙方)的项目组成员,包括项目经理、客户经理、分析设计开发测试等人员。

1.2背景

毕业论文管理系统是基于互联网的应用软件。鉴于以往学生毕业论文采用人工管理方式,工作量大且效率地下,而且毕业生毕业时大多离校,给导师指导学生毕业设计,学生提交论文等工作带来诸多不便。希望开发一个系统来对课题,以及毕业论文选题进行规范化管理,从而方便导师对学生的论文写作进行指导和控制,方便学院管理毕业生论文。利用计算机来管理毕业论文设计管理活动实现制度化,规范化,管理化。

1.3定义

1.4参考资料

毕业论文管理系统需求规格说明书

毕业论文管理系统详细设计说明书

2总体设计

2.1需求规定

毕业论文管理系统按模块可以分成四部分,一是管理员系统管理模块, 二是选题管理,三是导师的课题管理,四是毕业设计过程控制管理,而它们各自又有具体的小模块组成。具体需求见毕业论文管理系统需求规格说明书。

2.2运行环境

操作系统:Win2003/XP, Linux

WEB服务器:Tomcat 5.5以上

数据库服务器:MySQL5.0以上,能够处理数据并发访问,访问回馈时间短。

2.3基本设计概念

1.系统整体方案

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

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

用户界面的复杂度:数据的静态显示/可定制视图(customizable view)

用户界面的部署约束:基于独立的桌面电脑或专用工作站的浏览器

用户的数量和类型:组织内的日常使用者,总共几百人

系统接口类型:通过HTTP协议提供服务,未来可以使用SOAP的SOA技术

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

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

(2)架构分层

毕业论文管理系统项目架构设计中,我们使用分层模式。具体地说,我们将毕业论文管理系统应用在职责上分成3层:表示层(Presentation Layer)、持久层(Persistence Layer)和业务层(Business Layser)。每个层在功能上都应该是十分明确的,而不应该与其他层混合。每个层要相互独立,通过一个通信接口而相互联系。

(3)模式和框架使用:

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

1)MVC模式

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

View

Model Contr

图4-1 MVC架构图

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-1 Struts-Spring-Hibernate架构

1 表示层

一般来讲,一个典型的Web应用的前端应该是表示层。这里可以使用Struts框架。

下面是Struts所负责的:

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

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

处理异常

为显示提供一个数据模型

用户界面的验证

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

与数据库直接通信

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

事务处理

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

2 持久层

典型的Web应用的后端是持久层。开发者总是低估构建他们自己的持久层框架的挑战性。系统内部的持久层不但需要大量调试时间,而且还经常因为缺少功能使之变得难以控制。

相关文档
最新文档