目录
摘 要 I
ABSTRACT II
1 引言 1
1.1项目开发的背景 1
1.2项目开发的目的 1
1.3国内外研究现状 2
1.4本课题研究内容 2
1.5本文结构安排 3
2 开发前分析 4
2.1可行性分析 4
2.1.1技术可行性 4
2.1.2经济可行性 4
2.1.3社会可行性 4
2.2总体设计原则 5
2.3开发技术介绍 5
2.3.1 B/S模型 5
2.3.2 JSP技术 6
2.3.3 SSH框架 7
2.3.4 数据库简介 7
3 系统分析 9
3.1系统需求分析 9
3.2系统功能需求 9
3.3业务流程分析 10
3.4数据流图 11
3.5数据字典 13
3.6系统性能需求 14
3.7系统数据需求 14
3.8系统运行需求 14
4 系统设计 15
4.1概要设计 15
4.2详细设计 16
4.2.1后台管理员模块设计 16
4.2.2前台用户模块设计 17
4.3系统数据库设计 18
4.3.1概念结构设计 18
4.3.2逻辑结构设计 21
4.3.3数据库表设计 22
4.4系统开发工具与开发模式的选择 23
4.4.1系统开发工具 23
4.4.2系统设计模式 24
5 系统实现 25
5.1用户模块 25
5.1.1登录及注册管理模块 25
5.1.2首界面 26
5.1.3用户注册界面 27
5.1.4公告界面 27
5.1.5科室预约界面 28
5.1.6留言界面 30
5.2管理员模块 30
5.2.1登录界面 30
5.2.2科室管理界面 31
5.2.3添加专家界面 31
6 性能测试与分析 33
6.1测试的重要性 33
6.2测试实例的研究与选择 33
6.3测试环境与测试条件 34
6.4实例测试 34
6.5系统评价 35
6.6测试结果 35
总 结 36
致 谢 37
参 考 文 献 38
系统设计是一个把软件需求转换成用软件系统表示的过程[11]。通过对目标系统的分析和研究,做出了对医院预约挂号平台的总体规划,这是全面开发系统的重要基础。在对医院预约挂号平台全面分析调查的基础上,制定出医院系统的总体规划。系统设计包括系统总体设计、系统详细设计、系统数据库设计、系统开发工具、开发技术和开发模式等。
4.1概要设计
概要设计的主要任务是把需求分析得到的DFD转换为软件结构和数据结构。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。
系统的概要设计中最重要的就是系统的模块化。为了降低软件系统的复杂性,使系统容易修改,提高可读性、可维护性可将系统划分为多个小的子模块。但模块的划分应尽量保持其独立性,而不能是任意的。每个模块只完成系统要求的独立的子功能,并且要求与其他模块关联最小而且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计出优质高效的软件结构打下基础。
下面采用结构化设计(Structure Design,简称SD),以需求分析阶段产生的数据流图DFD为基础,按一定的步骤映射成软件结构。
系统的结构图,如图4.1所示:
图4.1 系统结构图
(1)用户注册:可以注册用户类型的账号。
(2)删除用户:管理人员可以删除任何一个用户账号。
(3)修改信息:注册的用户可以修改信息。
(4)科室管理:实现对医院科室的管理,包括科室的添加、编辑和删除。
(5)医师管理:实现对医院医师的管理,包括医师的添加、修改和删除等等。
(6)留 言:用户可以在留言板上进行交流互动。
(7)科室查询:用户可以查询现有的医院科室。
(8)医师查询:用户根据已经选择的科室信息可以查询该科室下的医师信息。
(9)医师预约:用户根据自己的实际情况,选择符合自己需要的医师,选择合适的就医时间。
4.2详细设计
4.2.1后台管理员模块设计
管理员可以管理用户信息,如删除账号,可以对医院科室进行添加、修改、删除等操作、也可以对科室下属医师进行添加、删除和修改等操作,另外还可以进行留言管理和公告管理,其功能结构图如图4.2所示:其操作流程图如图4.3所示:
图4.2 管理员模块结构图
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
String path = request.getContextPath();
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title></title>
<meta http-equiv="pragma" content="no-cache"/>
<meta http-equiv="cache-control" content="no-cache"/>
<meta http-equiv="expires" content="0"/>
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3"/>
<meta http-equiv="description" content="This is my page"/>
<link href="css/Common.css" rel="stylesheet" type="text/css" />
<link href="css/sitegeneric08.css" rel="stylesheet" type="text/css" />
<script language="JavaScript" src="<%=path %>/js/public.js" type="text/javascript"></script>
<script language="JavaScript" type="text/javascript">
</script>
</head>
<body>
<!-- head如果图片高度不合适。请修改Common.ces里面的".Header .HeaderTop"的高度。和".Header"的高度-->
<jsp:include flush="true" page="/qiantai/inc/incTop.jsp"></jsp:include>
<!-- head-->
<!--body-->
<div align="center" class="Wrapper">
<div id="MainCenter" align="center" class="MainCenter">
<div id="navigation" class="naivgation">
<!-- 登录-->
<div class="SquarelyGreenContainer">
<div class="top">
<div class="bgbtop-center">
<span><a href="">用户登陆</a></span>
<div class="WinRight"></div>
</div>
</div>
<div class="Slot">
<jsp:include flush="true" page="/qiantai/userlogin/userlogin.jsp"></jsp:include>
</div>
</div>
<div class="SquarelyGreenContainer">
<div class="top">
<div class="bgbtop-center">
<span><a href="">网站公告</a></span>
<div class="WinRight"></div>
</div>
</div>
<div class="Slot">
<s:action name="gonggaoQian5" executeResult="true"></s:action>
</div>
</div>
<!-- 公告-->
<!-- 登录-->
<div class="SquarelyGreenContainer">
<div class="top">
<div class="bgbtop-center">
<span><a href="">日历表</a></span>
<div class="WinRight"></div>
</div>
</div>
<div class="Slot">
<jsp:include flush="true" page="/qiantai/rili/rili.jsp"></jsp:include>
</div>
</div>
</div>
<div id="content" class="Sub">
<div class="NewContainer770">
<div class="BoxHeader">
<div class="BoxHeader-center MarginTop10">系统介绍</div>
</div>
<div class="Slot">
<img src="<%=path %>/img/1111.jpg"/>
</div>
</div>
</div>
</div>
</div>
<!--body-->
<!--foot -->
<div align="center" class="Wrapper">
<div id="footer" align="center" class="Footer">
<jsp:include flush="true" page="/qiantai/inc/incFoot.jsp"></jsp:include>
</div>
</div>
<!--foot -->
</body>
</html>