软件工程毕业论文--项目任务管理系统
更新时间:2024-07-01 00:26:01 阅读量: 综合文库 文档下载
- 软件工程毕业论文选题推荐度:
- 相关推荐
本科毕业论文(设计)
题 目: 项目任务管理系统 ——架构设计 院 系: 计算机科学系 专 业: 计算机科学与技术 姓 名: 学 号: 指导教师: 教师职称:
填写日期:2008 年 11 月 20 日
前 言
? 调研资料的准备及背景:
项目管理中比较关键的就是项目的任务管理,包括项目任务的分配、执行监督和执行结果的审核。通常情况下,都是项目经理通过员工的工作报告来分析和审核,这种手工方式既占用项目经理的时间,也难以随时把握每个人的任务完成进度情况。因此,如果建立一套软件系统来随时获取信息,则将极大提高管理效率。 本管理系统就是针对这个问题而开发的。其中使用技术是JSP和数据库技术的联合开发,是比较普遍和基本的编程方法。
摘 要
本系统是针对社区医院管理工作、研究、设计并开发的卫生治疗管理系统,采用Oracle
10G数据库和Visual Studio 2005---C#作为开发工具。在开发的过程中首先分析了其主要的业务流程和信息交流交互的内容,然后又结合了学校对毕业设计环节的管理标准和要求。经过系统的功能设计和数据库设计的等过程,最终实现了系统全部要求的功能。
卫生治疗管理系统主要包含以下几个模块:系统权限的设定、原始数据录入、数据的汇总及查询等。从而,实现对进货、销售、病人、看病、治疗及员工信息等实现全面、动态、及时的管理;实现社区医院的系统化、规范化。
本论文采用软件工程的思想对系统的进行需求分析、总体设计、详细设计、系统实现、系统测试和数据库设计这六个环节对系统的开发过程进行了详细的介绍,并对该系统的主要特点以及采用的主要系统开发工具进行了简单的介绍。
本系统采用快速原型的模型进行开发与设计。
【关键词:】 Oracle 10G数据库、C#、规范化、软件工程、SQL
- 1 -
Abstract
This health and therapeutic management system is specially designed and developed for community. The system runs on Oracle 10g database. The model and graphics interface is developed via Microsoft Visual Studio 2005 - C#. First, we have analyzed major business process and information communication content of the system, and then combined with the management criteria and the thesis requirement from the Guiyang University. Finally, the system design requirement is accomplished through system’s function and database design.
The health and therapeutic management system is consists of the following major models: Patient, Patient Medical History, Medicine, Disease and Administrative Profile etc. The functions are achieved through the management of whole process of: disease diagnosis, patient history query, medicine stock management (purchasing and selling), and administrative management, data entry and system privilege setting etc in thorough, active and timely manner. Varieties of report has been developed using the data aggregate schema which greatly facilities a complex demanding query.
The system is designed based on the concept of systematic, standard and modeler, which provides flexibility of extension in functionality in future.
The system uses rapid prototype model of development and design.
- 2 -
Key Words: Oracle 10g database, C#, Standardization, Software Engineering, SQL
目 录
前言........................................................................................................................................1
摘要 ......................................................................................................................................2
Abstract…………………………………………...........................................……….…..3 第
1章 概述......(说明项目目的、意义、背景和相关的技术)......................................6
1.1 C#和数据库系统设计概述 ...................................................................................6 1.2 Oracle数据库......................................................................................................6 1.3 Visual studio.NET概述....................................................................................7
第2章 软件项目计划..............................................................................................8
2.1 问题定义................................................................................................................8 2.2 可行性分析............................................................................................................8
2.2.1 技术可行性分析..........................................................................................8
2.2.2 操作可行性分析........................................................................................8
第3章 需求分析
....................................................................................................9
需求描述(描述要解决的问题)...
系统的业务流程分析...(可以不要,画系统数据流程图)..... 需求分析过程
- 3 -
(1) DFD图 (2) 数据字典 (3) 加工说明
3.1 系统需求 ............................................................................................................9 3.2 功能需求 ............................................................................................................9 3.3 性能需求................................................................................................................11 3.4 系统的业务流程分析............................................................................................11
第4章 系统概要设计 ...................................................................................................14
4.1 系统概要设计
...................................................................................................14
4.1.1 设计思想.......................................................................................................14 4.1.2 设计原则.......................................................................................................14 4.1.3 系统设计流程...............................................................................................15 4.1.4 系统模块结构设计.......................................................................................16 4.2 详细设计 ...........................................................................................................18
4.2.1
系统层次模块图...........................................................................................18
系统模块说明
4.2.2 UML 系统建模.............................................................................................19
第5章 数据库设计
.........................................................................................22
5.1 E-R 模型............................................................................................................22 5.2 数据库表设计.....................................................................................................23 5.3 数据库视图设计
......................................................................................... 26
第6章 程序界面说明...........................................................................................28
6.1 总体布局..........................................................................................................28 6.2 用户登陆模块..................................................................................................28 6.3 进货药品模块..................................................................................................29 6.4 查询药品模块..................................................................................................30 6.5 其它程序界面设计..........................................................................................31
第7章 系统测试运行 .........................................................................................32
7.1 模块测试 .........................................................................................................32 7.2 整体测试 .........................................................................................................32
- 4 -
7.3 软件测试的步骤..............................................................................................33 7.4 测试用例..........................................................................................................33
结束语
.........................................................................................................................34
致谢......................................................................................................................................35
参考文献...........................................................................................................................36
第1章 绪 论
1.1 C#和数据库系统设计概述
数据库应用系统开发涉及到后台数据库技术和前台的开发语言与数据库访问技术。本系统的数据库选择Oracle Database 10g , 前台开发选择当前最为流行的开发工具Visual Studio.NET中最新、最为经典的C#语言。
数据库技术是现代信息科学的重要组成部分,它已经成为了计算机信息系统和应用系统的重要技术支持。数据库技术就是指如何科学地存储数据、高效地处理数据。 一般来说,数据库系统由3个部分组成:数据库、数据库管理系统(DBMS)和数据库应用程序。数据库是按一定的结构组织在一起的相关数据的集合;数据库管理系统是负责组织和管理数据信息的程序;数据库应用程序是数据库的前端程序,是用于浏览、修改数据的应用程序。根据数据库对数据组织方式的不同,数据库管理系统分为基于文件的管理系统、网状数据库管理系统、层状数据库管理系统和关系数据库管理系统。其中,关系数据库管理系统目前被广泛的应用。而Oracle数据库是在数据库领域一直处于领先地位的一种关系型数据库管理系统。
- 5 -
1.2 Oracle数据库
Oracle 不断推出分布式数据库、客户/服务器结构、锁定模式以及对称多处理机的支持等技术。Oracle 数据库成为世界上使用最广泛的关系数据库系统之一。 Oracle 数据库产品具有以下优良特性:
(1) 兼容性:Oracle 产品采用标准SQL,并经过美国国家标准技术所测(NIST)
试。与IBM SQL/DS,DB2,INGRES,IDMS/R等兼容。
(2) 可移植性:Oracle的产品可运行于很宽范围的硬件与操作系统平台上。可以
安装在70中以上不同的大、中、小型机上;可在VMS,DOS,UNIX,Windows等多种操作系统下工作。
(3) 可联结性:能与多种通讯网络相连,支持多种协议(TCP/IP,DECnet,LU6.2) (4) 高生产率:提供了多种开发工具,能极大地方便用户进一步开发。
(5) 开放性:Oracle良好的兼容性、可移植性、可连接性和高生产率,使Oracle
RDBMS具有良好的开放性。 Oracle 10g 可以满足如下要求:
企业IT不断承受着使用越来越少的资源做好越来越多事情的压力。变化是持续的,公司需要快速的适应这些变化以保持竞争力。同时,对于可用性和性能的需求在不断增长,而公司的财政预算在紧缩,为了应付计算需求的不可预测性和即时性,公司一般扩大服务器规模来适应高峰负载,并为IT组织配备人员来处理即时请求。为了解决这些问题,出现了一种新型的计算模型,即网格计算模型。而Oracle 10g就是按网格计算模型。网格计算的核心思想是计算应当和公用设施一样可靠、深入和透明。用户的数据或者应用程序在哪里,或者什么计算机处理用户发出的请求变得无关紧要。用户将能够请求信息或计算,然后发布它——按需发布。
1.3 Visual studio.NET概述
理解Visual studio.NET Framework 最简单的方式就是把它看作是执行代码的环境。VS.NET管理代码的执行,包括启动代码、给它赋予相应的权限、为它分配内存以存储其数据,帮助释放不再需要的内存和资源等。除了执行这些任务外,VS.NET还要使用一个非常复杂的类库——VS.NET基类,以便在Windows上执行大量的任务。对这些任务,VS.NET承担了管理代码的执行和为代码提供服务的双重角色。
从技术层面具体来说,VS.NET Framework 主要包括两个内核,即通用语言运行库CLR(Common Language Runtime )和VS.NET Framework基本类库,他们为VS.NET平台的实现提供了底层技术支持。VS.NET的编译过程也与以前版本的语言有所不同。
(1) 通用语言运行库(CLR)
CLR是建立在操作系统最底层的服务,是VS.NET平台的执行引擎。因为有了通用语言运行库,VS.NET还为C++,C#,Visual Basic和Jscript提供了一个通用的开发环境。也就是说C++,C#,Visual Basic和Jscript的编译器显露出运行库的功能接口。这些接口能
- 6 -
够让用户编写出这个受控的执行环境下运行的代码(在这个环境下运行的代码被称为受控代码)。这个通用语言运行库自动处理诸如异常处理、安全性、版本控制、跨语言集成、组件互动、调试和内存管理方面的细节,比如说创建对象和管理对象的引用。
(2) VS.NET Framework基本类库
在通用语言运行库的上面是包含了一套与其紧密集成在一起的可被任何语言运用的基本类库,其目的是使得程序员更容易地建立应用程序和网络服务。在此之上的是许多应用程序模板,这些模板为开发网络应用和服务提供高级的组件与服务。从技术上讲,VS.NET Framework的基本类库是Microsoft已编写好的一个丰富的代码类集合,它可以完成以前要通过Windows API实现的绝大多数任务。VS.NET基本类库的最大优点就是非常容易,而且都是自我描述性的。例如要打开一个文件,就可以调用File类的Open()方法。Visual Basic和Java的开发人员非常熟悉这种简洁的自我描述的类,而相比之下VS.NET基本类库非常丰富,很多类库包含对ADO.NET,XML、SQL、安全、多线程等等功能的支持。这个基本类库还能够让用户访问诸如联网、线程、图形和加密之类的系统功能服务。VS.NET基本类库就是把Windows API的丰富性和Visual Basic,Java 的易用性结合起来。
(3) 编译和运行VS.NET
VS.NET中的可执行文件和dll文件与以前的版本不同,编译好的代码不包含汇编语言指令,而是包含Microsoft Intermediate Language(MSIL或IL),这种语言独立于机器、操作系统和CPU。中间语言和Java代码有一些相似之处,它是一种相当低的语言可以快速地转换成内部机器码(JIT编译)。JIT编译器(just-in-time compiler)是VS.NET Framework的重要组成部分。VS.NET的编译过程是代码到中间语言代码(IL)到机器码(JIT编译器)。
第
2章 软件项目计划
2.1问题定义
问题定义是计划时期的第一个阶段,其目的是要弄清用户需要计算机解决的问题根本
所在,以及项目所需要的资源和经费。我们通过去社区医院调查医院的工作流程,并与工作人员进行讨论和沟通。编写一个系统目标与范围的说明书如下。
医院的工作人员希望在医院显眼的地方设置几块显示器来显示医院简介,温馨提示,医疗常识,常见疾病信息,方便社会人们查询医院的相关信息,并给医院留下意见。实现方便的管理进货药品信息、销售药品信息、
库存信息、项目费用、员工信息、病人信息,常见疾病信息、优惠制定。温馨提示、医疗常识等管理信息能够在同一种平台上管理与操作
2.2 可行性分析 2.2.1 技术可行性分析
在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的医院对员工的素质要求比较高,从管理层到
- 7 -
下面护士人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。
2.2.2 操作可行性分析
本系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个卫生治疗管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。
由于我们是在模拟现实的实际需要而开发的系统,作为我们的毕业设计课题。因此在经济可行性研究不给予考虑。
由此,该系统的操作是可行的,能满足社区医院的需求。
综合以上几个方面,该系统具有很高的开发可行性,无论是从技术上还是操作上。 可行性分析是为了弄清所定义的项目是不是可能实现和值得进行。这样可以大大简化了系统分析和系统设计的过程。减少风险。
第3章 需求分析
3.1 系统介绍
项目任务管理系统主要为了解决企业项目管理过程中的工作任务管理问题。在项目管理过程中,每个参与项目的人员都要承担一定的工作任务,而这些任务又是与项目关联的,只有这些任务都圆满完成后,一个项目才算最终完成,因此项目的任务管理过程是非常关键的。
3.2 功能需求
对于企业来说,一套项目管理体系主要包含项目的参与者和工作任务,对工作任务的监督是项目经理日常工作的一部分。对于项目参与者,则需要随时报告自己的任务进展情况,并及时告知项目经理。
在工作任务上,则还有不同优先级的控制,每个工作任务的轻重缓急都有所不同,对于特别紧迫的任务来说,则要求负责的员工必须尽快完成。
- 8 -
由于不同项目形成不同的项目小组,因此项目任务管理过程中还要有员工任务分配的过程,这样才能随时知道每个项目中的任务到底是谁来完成的,以及完成的情况。
工程项目在人类历史上出现得很早,从古埃及的金字塔、中国的古长城到现代的三峡工程、南水北调工程、工程项目始终贯穿于人类社会的发展进程中。在对工程项目管理的基本方法也在逐渐走向成熟,其应用也越来越灵活广泛。目前,该方法已成为工程项目管理过程中一种必不可少的基本方法。
简单来说,WBS就是将工程项目的各项目内容按其相关关系逐层进行分解,直到得到工作内容单一、便于组织管理的单项工作为止,再把各单项工作在整个项目中的地位、相对关系用树形结构图或锯齿列表的形式直观表示出来。其主要目的是使项目各参与方从整体上了解工程项目的各项工作(或任务),便于进行整体的协调管理或从整体上了解自己承担的工作与全局的关系。在实际应用中,树形结构图以其直观易懂的特点应用更为广泛。本文主要讨论树形结构图的应用。
在应用此方法的过程中,由于工程项目的单一性决定了项目结构分解没有普遍适用的方法,但对任何项目分解都要注意以下几个方面:首先,应在各个层次上保持项目内容的完整性,不能遗漏任何必要的组成部分,一个项目单元只能从属于某一个上层单元,不能交叉从属,相同层次的项目单元应有相同的性质;其次,分解出的项目结构应有一定的弹性,应能为项目范围的扩展做好准备;最后是确定分解详细程度。对一个项目进行分解,分解过粗可能难以体现计划内容,分解过细则会增加工作量。在此基础上以项目目标体系为指导,以项目技术、管理系统说明为依据,由上而下、由粗到细进行分解。
在应用WBS法的时候,不同的使用者可以从不同的角度对某工作(或任务)进行分解。在项目管理的过程中,可对项目管理工作利用WBS法进行工作分解,把各项工作划分为更细化的工作包,使各项工作落实到人,准确划分各项目管理者之间的管理界限,方便责任的分担,人员的分配落实,做到事事有人负责。
WBS图把项目实施中的各项工作(任务)分解开来,可以使项目的各个工作单元一目了然,使项目实施过程中涉及的各项工作明确、清晰、透明。使项目管理者、实施者能准确把握整个项目,更加方便地观察、了解和控制整个项目以及该项目的各个工作单元。同时通过以上结构分解也能对每个项目单元和项目参加单位之间的界限准确划分,能方便责任的分解,人员的分配落实以及资源的协调。
由上可见,WBS在应用于工程项目管理的过程中,可以从不同的角度对工程项目管理
- 9 -
的工作(任务)进行分解。通过WBS图,可以清晰地掌握项目实施过程中项目的全局和各项细节工作。通过WBS能够明确各项工作(任务)、各管理部门,以及各单位之间的工作界限,明确工作责任,同时对于人员、资源的合理调配也有重要意义。WBS能够使管理者更有效地计划、组织和控制项目整体的实施。
因此,在对工程项目进行管理的过程中要重视合理灵活地运用WBS。这对于项目实施过程中的进度控制、经费控制等各项工作都有重要意义,是项目计划和控制的基础。
为了满足项目的工作任务分解和管理的基本需求,项目任务管理系统的基本功能要求如下。
(1)项目管理:可以维护项目信息。
(2)人员管理:可以维护公司参与项目的人员信息。 (3)任务管理:可以分配任务并跟踪任务进展情况。 (4)系统维护:可以维护优先级、权限、项目状态等信息。 (5)查询功能:可以根据条件查询任务情况。
3.3 软硬件环境需求
根据系统的基本功能需求,以及客户的信息系统环境,计划采用浏览器/服务器模式来构建管理系统。同时,根据客气对技术的具体建议,计划采用J2EE技术来开发。
由于本系统不涉及复杂的数据分析和处理,为了节约开发成本和降低开发难度,经过与客户协商,计划采用JSP模型1结构来开发,具体的软硬件环境要求如下。
(1)硬件环境:采用普通办公用个人计算机作为服务器即可。 (2)操作系统:可以采用Windows XP以上系统。 (3)数据库系统:采用SQL Server 2005即可。 (4)Web服务器:采用Tomcat 5以上系统。
(5)Java运行环境:采用JRE 1.5以上中文版本。 (6)客户端:采用浏览器工具即可。
第4章 系统设计
系统概述
为了满足客户需求中提出的对项目任务管理系统的基本要求,在系统设计上,将实现项目、人员、任务三大核心对象的管理。
- 10 -
4.1 总体结构设计 按照需求中提出的功能要求,可以将软件系统分解为多个子系统,同时,根据每个子系统的功能不同,分别完成需求分析中的不同要求。总体功能结构如图所示 项目任务管理系统项目经理角色项目信息任务信息员工信息状态信息级别信息项目成员角色任务查询执行状态系统总体结构 4.2 子系统的结构与功能
系统中的各个子系统要能够分别满足功能的要求,并按照工作角色的权
限分别提供给项目经理和项目小组成员使用,这样确保系统数据的安全性,避免数据被篡改或者被混用。以下为各个子系统的功能说明。
(1)项目信息:完成项目信息的增加、删除和修改处理,并可以指定项目负责人。
(2)任务信息:完成任务信息的增加、删除和修改处理,并可以指定任务负责人,任务优先级。
(3)员工信息:完成员工信息的增加、删除和修改处理并可以指定员工身份(项目经理或成员)。
(4)状态信息:完成任务的状态信息的增加、删除和修改处理,主要包
- 11 -
括开工、搁置、完成、进行中。
(5)级别信息:完成任务优先级别的管理,包括低、中高等。 下图描述了系统总体执行的业务分解流程,说明了系统总体执行的过程的功能调度系。
开始登录身份判定管理员成员管理员功能成员功能结束系统业务流程
1、 项目信息管理
项目信息管理中实现项目的信息录入和编辑,管理员负责项目信息录入,一般职员只能使用项目信息。该模块的流程图如下图所示,
项目信息中的负责人为项目经理,可以是员工信息表中的任何人,不必是系统管理权限的员工。
- 12 -
管理员进入项目信息管理程序选择项目信息管理功能列出现存项目清单选择一个项目进行编辑进入编辑状态选择操作方式直接更新项目信息选择添加功能增加新项目项目信息处理流程
2、 任务信息管理
任务信息管理中,要把任务信息录入到数据库,因此也是由项目管理人员负责的,在录入过程中,还要确定任务的执行者,优先级等信息。下图是任务信息处理流程。
- 13 -
管理员选择添加任务录入任务信息验证数据选择插入或取消操作插入保存数据取消放弃操作任务信息处理流程
在本处理进程中,项目及优先级、负责人信息来自其他信息表,如果其他信息表没有录入数据,则这里不允许录入,确保只有管理员才能设置这些数据。 3、 员工信息管理
员工信息管理用来录入员工信息,其中包括账户和密码,员工的级别是系统设计中预先设计好的,也就是在程序中设计好的,不能随意修改,即使管理员也不能修改。下图为员工信息管理流程。
- 14 -
管理员选择系统管理选择员工信息管理选择编辑,编辑信息选择添加新员工,新增员工信息选择添加,则增加信息选择更新,则修改信息员工信息处理流程
4、状态信息管理
状态信息管理用来维护任务的状态,由系统管理员来完成该操作。状态信息的维护要保证完整性,就是状态的定义不能随意更改,而是根据需要进行调整,并确保小组成员对状态含义的理解是一致的。下图是状态信息处理流程。
- 15 -
管理员选择系统管理选择状态信息管理选择编辑、编辑信息选择添加新状态,新增状态信息选择更新,则修改信息选择添加则增加信息状态信息处理流程
5、级别信息管理
级别信息管理用来确定任务优先级别,任务负责人根据优先级别来选择先完成哪个任务,决定自己的工作次序。管理员确定任务优先级的时候要考虑任务的实际工作量。下图为级别信息管理流程。
- 16 -
管理员选择系统管理选择优先级信息管理选择编辑,编辑信息选择添加新优先级,新增优先级信息选择更新,则修改信息选择添加,则增加信息优先级处理流程
4.3
开发环境的配置
由于采用了J2EE模型1的方式,因此只要安装好需求分析中提出的软件硬件环境要求就可以了,另外,为了方便开发,还要安装一套开发工具,推荐使用Eclipse或者MyEclipse,其中提供了方便的编程界面。
本系统没有附加其他的插件或者API,当安装好这些软件后,就可以进行开发了。其中要注意的就是版本的一致性问题,强烈建议采用最新版本的开发工具。
第5章 数据库设计
数据库设计是指在现有数据库管理系统上建立数据库的过程.其设计内容包括数据库
- 17 -
的逻辑设计和数据库的物理设计。
根据卫生治疗管理系统的一般要求及其需求分析,通过对整个系统功能。运行过程和业务流程的分析,可以确定数据的E-R模型和实体表。
5.1 E-R 模型
由于篇幅的限制,在各个实体表中的属性就不在画出来,各实体属性参照数据库表设计。
E-R模型如下图 图5-1示:
病人NNM医师N进货M进货药品看病1发工资N薪水病历表1M销售N销售药品项目费用N收费M药品费用
图 5-1 数据库 E-R 模型
5.2 数据库表设计
1.医师表Doctor:
字段名 字段类型 长度 主/外键 - 18 -
字段值约束 对应中文名 字段说明
DoctorID Sex Age Education Title CellPhone Homephone Note addDate Number Varchar2 Varchar2 Varchar2 Varchar2 Varchar2 Varchar2 Varchar2 date 8 10 2 4 40 20 20 12 12 200 8 p Not null Not null Not null 医师号 姓名 性别 年龄 教育 职称 部门 手机电话 家庭电话 备注 报到日期 DoctorName Varchar2 Department Varchar2 2. 病人表 Patient:
字段名 PatientID SocialID PatientName PatientOtherName Sex Age BirthDay Job Marriage Address District City County Province CellPhone HomePhone FirstVisitDate Reference Note DoctorID 字段类型 number varchar2 varchar2 varchar2 varchar2 varchar2 date varchar2 varchar2 varchar2 varchar2 varchar2 varchar2 varchar2 varchar2 varchar2 date varchar2 varchar2 number 长度 8 20 10 10 2 4 8 20 4 140 140 10 10 10 12 12 8 20 140 8 主/外键 P F 字段值约束 Not null Not null Not null 对应中文名 病人号 社会号 姓名 别名 性别 年龄 出生年月 工作 婚否 地址 区 市 县 省 手机电话 家庭电话 初诊日期 参考 备注 登记员工 字段说
3. 病历表 PatientHis:
字段名 PatientHisID PatientName 字段类型 number varchar2 长度 8 10 主/外键 P - 19 -
字段值约束 Not null 对应中文名 病历号 病历名称 字段说
VisitDate RevisitDate Diagnosis Treatment Review Medicine MedcineCost Item ItemCost PatientID DoctorID DiseaseID MedicineID ItemID Note Date Date varchar2 varchar2 varchar2 varchar2 Number varchar2 Number Number Number Number Number Number varchar2 8 8 8 200 80 80 80 8,2 80 8,2 8 8 8 8 8 200 F F F F F 初诊日期 复诊日期 出院日期 诊断结果 治疗方法 复诊结果 药方 药品费用 项目说明 项目费用 病人号 医师号 疾病号 药品号 项目号 备注 DischargeDate Date 4. 疾病表 disease:
字段名 DiseaseID 字段类型 number 长度 8 20 10 200 主/外键 P 字段值约束 Not null 对应中文名 疾病号 疾病名称 疾病类型 备注 字段说明 DiseaseName varchar2 DiseaseType varchar2 Note varchar2 5. 杂费表 Item:
字段名 ItemID ItemName ItemType ItemPrice Note 字段类型 number varchar2 varchar2 Number varchar2 长度 8 20 10 8,2 200 主/外键 P 字段值约束 Not null 对应中文名 项目号 杂费名称 杂费类型 费用 备注 字段说明 6. 医院简介 HospitalProfile:
字段名 ProfileID 字段类型 number 长度 8 20 20 200 主/外键 P 字段值约束 Not null 对应中文名 简介号 简介名称 简介类型 简介内容 字段说明 ProfileName varchar2 ProfileType varchar2 ProfileNote varchar2 7. 药品表 medicine:
字段名 MedicineID MedicineName 字段类型 number 长度 8 主/外键 P - 20 -
字段值约束 Not null 对应中文药品编号 药品名 字段说明 varchar2 20
MedicineType UnitPrice Quantity Factory ExpiredDate Contact Note createDate updateDate receivePerson varchar2 20 number number 8,2 4 8 8 药品类型 单价 数量 厂商名称 生产日期 过期日期 联系方式 备注 添加日期 更新日期 进货员 第一次进货 varchar2 80 date ProductionDate date varchar2 40 varchar2 200 date date 8 8 varchar2 8 8. 帐号信息表 meneger:
字段名 userID username userPassword role note opdate doctorid distribute 字段类型 number varchar2 varchar2 varchar2 varchar2 date number varchar2 长度 10 12 20 15 100 8 8 15 主/外键 P F 字段值约束 对应中文名 管理号 用户名 用户密码 角色 备注 操作日期 医师号 权限 字段说明 操作员工 9. 药品销售表(DrugSale)
字段名 DrugSaleID medicineID 字段类型 number number 长度 8 8 20 8,2 4 8 8 40 主/外键 P F F 字段值约束 Not null 对应中文名 销售编号 药品号 药品名 销售单价 销售数量 销售日期 医师号 备注 字段说明 销售员工 medicineName varchar2 SaleQuantity number SalePrice SaleDate DoctorID note number date number varchar2
10. 工资表salary:
字段名 salaryID doctorID 字段类型 number number 长度 10 8 主/外键 P F - 21 -
字段值约束 Not null 对应中文名 工资编号 医师号 字段说明
sal month note number varchar2 varchar2 10,2 8 50 薪水 月份 备注 11. 优惠查询OffersFor:
字段名 OffersID drugsaleID ItemID ItemOffers note 字段类型 number number number number varchar2 长度 8 8 8 8,2 8,2 200 主/外键 P F F 字段值约束 Not null 对应中文名 优惠编号 销售编号 杂费编号 药品优惠 杂费优惠 备注 字段说明 medicineOffers number 12. 医疗常识表MedicalKnowledge:
字段名 KnowledgeID 字段类型 number 长度 8 30 500 8 主/外键 P 字段值约束 Not null 对应中文名 常识号 常识标题 常识内容 更新日期 字段说明 KnowledgeName varchar2 KnowledgeNote varchar2 KnowledgeDate date 13. 温馨提示表PleaseContact:
字段名 PleaseContactID PleaseContactNam 字段类型 number varchar2 长度 8 30 500 主/外键 P 字段值约束 Not null 对应中文名 提示号 提示标题 提示内容 字段说明 PleaseContactNote varchar2
5.3 数据库视图设计
1.创建进货费用视图addMedicine_view,其代码如下 create or replace view addMedicine_view as
select medicine.medicineID as 药品号,medicine.medicineName as 药品名, medicine.quantity as 数量,medicine.unitprice as 单价, medicine.quantity*medicine.unitprice as 总价 from medicine;
2.创建销售费用视图SaleMedicineCost_view,其代码如下 create or replace view SaleMedicineCost_view as
- 22 -
select drugsale.drugsaleID as 销售编号,drugsale.medicineID as 药品号, drugsale.medicineName as 药品名, drugsale.salequantity as 销售数量, drugsale.saleprice as 单价,drugsale.saledate as 销售日期, drugsale.salequantity*drugsale.saleprice as 总价, doctor.doctorName as 销售员 from drugsale,doctor
where drugsale.doctorid=doctor.doctorid;
3.创建库存信息视图v_Inventory, 其代码如下 create or replace view v_Inventory as
select medicine.medicineID as 药品号 ,medicine.medicineName as 药品名 ,medicine.unitprice as 进货单价 ,drugsale.saleprice as 销售单价 ,sum(medicine.quantity) as 进货总数量 ,sum(drugsale.salequantity) as 销售总数量
,sum(medicine.quantity)-sum(drugsale.salequantity) as from medicine, drugsale
where medicine.medicineID=drugsale.medicineID group by medicine.medicineID ,medicine.medicineName ,medicine.unitprice ,drugsale.saleprice;
- 23 -
库存数量
第6章 程序界面说明
6.1 总体布局
系统主控制平台采用简单、直观的布局,通过菜单实现对系统各个模块的调用和对各
个窗体的显示。
其主控制平台界面如下 图6-1、图6-2所示:
图 6-1 主窗体界面1
图 6-2 主窗体界面2
6.2 用户登陆模块
1.用户登陆模块的IPO图
输入:用户名和密码。
处理:
(1) 用户登陆窗体启动。 (2) 输入用户名和密码。
- 24 -
(3) 如果用户名和密码都为空,则直接进入主窗体界面2。
(4) 以输入的用户名和密码为关键字,检索系统管理表(meneger)的用户名和密
码字段。
(5) 通过检索结果判断该用户是否存在,如果用户名和密码不存在,则处理终止,
并进行错误信息提示。
(6) 如果用户名和密码存在且相等,则将该用户编号、用户名、角色和权限保存在
全局变量中。
(7) 进入主窗体界面1. 2.用户登入模块的界面设计
图 6-3 用户登陆模块窗体界面
6.3 进货药品模块
1.进货模块的IPO图
(1)进货药品窗体启动。 (2)系统在数据库的medicine表中检索数据,并把数据的结果显示到窗体的DataGrid
控件内。 (3)根据用户选择操作,有添加信息、更新信息和删除信息操作。
(4)取得用户输入的信息。检查输入内容是否为空,若为空,则提示用户再次输入。 (5)添加药品信息:
? 输入界面上的各项信息。
? 检查用户输入信息是否完整,若不完整,则给出错误信息提示,处理结束。 ? 若输入完整,则以药品号关键字,检查药品编号是否存在改记录。 ? 若记录已经存在,则进行错误信息提示,添加处理终止。
? 若记录不存在,则根据数据库中对应字段的定义,检验输入值是否合法,若输
入有错误则进行错误信息提示,添加处理终止。
- 25 -
? 若输入正确,则执行SQL语句,向medicine表中插入一条新记录,同时将结
果显示在DataGrid控件内。
? 提示用户添加成功,并把添加信息显示在DataGrid控件内。
(6)更新操作:
? 在DataGrid控件内选择要修改的药品信息,并输入更新信息在对应的文本框内 ? 用输入的修改内容,更具数据库中对应字段的定义,检验输入是否合法,若输
入有错误则进行错误信息提示,更新处理终止。
? 若输入正确,则执行SQL语句,更新进货药品表medicine表中的药品编号对
应的记录。
? 提示用户更新操作成功,并把更新信息显示在DataGrid控件内。
(7) 删除操作:
? 用户在DataGrid控件中选择要删除的记录,然后把要删除的药品编号输入对应
的文本框内。点击按钮删除,系统提示用户“确定要删除这条记录吗?”。用户确认,执行SQL语句,删除medicine表中药品编号对应的记录。若该药品信息已经与其他表相关联,则提示用户不能删除。 ? 提示用户删除成功信息,并在DataGrid控件内显示其它的药品信息再次验证成
功删除了没有。 2.进货药品模块的界面设计
图 6-4 进货药品模块窗体界面
- 26 -
6.4 查询进货药品模块
1.查询进货药品模块的IPO图
输入药品号、药品名。
处理:
(1)进货药品查询模块窗体启动。
(2)根据用户的输入查询条件(药品号、药品名),系统提示用户选择是模糊查询还是
指定查询。在 数据库medicine表中检索满足条件的数据,更新DataGrid控件内的数据显示。 输出:显示查询结果到窗体的DataGrid控件内。
2.查询进货药品模块界面
图 6-5 查询进货药品模块窗体界面
6.5 其它程序界面设计
其它的程序模块界面的设计与实现,与进货药品模块和查询药品模块类似。在此就不再陈述,具体的参照毕业设计的界面设计。 代码可参照毕业设计的源代码。
- 27 -
第7章 系统测试运行
系统测试是将软件系统与硬件、外设和网格等其他因素结合在一起,进行信息系统的各种组装测试和确认测试,其目的是通过于系统的需求相比较,发现所开发的系统与用户需求不符或矛盾的地方。常见的系统测试主要有恢复测试、安全性测试、强度测试、性能测试、可靠性测试和安全性测试。
完成对流程的编码后最重要的事情就是对系统的测试工作了,测试在系统设计阶段有两个时期,通常在编写每个模块后做单元测试,另一个时期是对系统的综合测试。
7.1 模块测试
在模块测试时我们主要从以下几个方面考虑:
1. 模块接口;
2. 局部数据结构; 3. 重要执行通道; 4. 出错处理通道;
5. 影响上述方面的边界条件。
测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。
7.2 整体测试
总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。
在测试过程中使用到调试技术:
1. 采用debug调试语句,跟踪数据; 2. 嵌入打印语句,输出中间结果;
3. 利用Visual Studio 2005中调试工具,从调试窗口观测变量的变化; 4. 设置断点,观察程序在断点附近的状况。 评估运行的可靠性问题: 1. 结果正确; 2. 运行速度; 3. 空间利用率; 4. 算法的可行性。
- 28 -
7.3软件测试的步骤
测试过程必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由许多模块组成。因此,大型软件系统的测试基本上由下述4个步骤组成,单元测试、集成测试、确认测试和系统测试。
如图 7-1所示:
模块1设计信息软件需求集成的软件其他系统元素确认的软件系统测试单元测试单元测试已测模块1已测模块n集成测试确认测试模块n交付软件
图7-1 测试步骤
7.4测试用例
设计测试用例和纠错,是搞好软件测试的两项关键技术。选择测试用例的目标,是用尽可能少的测试数据,达到尽可能大的程序覆盖面,发现尽可能多的软件错误和问题。单元测试应该以结构测试为主,其余测试一般以功能(黑盒)测试为主。发现程序错误,应进行定位与纠正。定位事一个分析与推理的过程,应提倡周密的思考。
根据用户的需求、系统软件分析与设计和实际开发过程中遇到的问题,编写测试用例文档说明,具体做法可参照模块测试、整体测试和软件测试的步骤。由于篇幅的限制,在此就不再陈述。
- 29 -
结束语
在做毕业设计过程中,我碰上了许多问题。开始设计时候,没有养成边设计边写文档的习惯,在后来的设计其它模块和调试中带来很多的不便,功能模块之间的联系,记得模糊,使我要从新需求分析、设计、调试;降低项目开发的效率。对C#语言的不熟悉,导致花费大量时间去熟悉语言环境。代码设计过程中,没有进行优化,这样就增加了编程的工作量和代码的可读性不高。软件工程的一套方案为软件项目开发与设计带来便捷,开始时候没有好好的利用它。
在做毕业设计过程中,使我认识到开发一项好的软件不是由一个人就能完成的任务。一个团队的小组,一个勤奋的小组非常重要,小组协作与沟通是解决问题的好办法,所以小组中的每个成员的能力与协作能力也是致关重要的。同时,不仅是团队内部的交流,更多需要协调好团队之间的交流。
在做毕业设计过程中我了解了,在开发一个项目时一定要先做好规划,按照软件的开发过程,详细地写好每一个必要的文档。一般的规则是,写文档需要团队协作,这样就允许开发人员和文档编写者利用彼此的长处,取长补短。例如,如果预期读者是系统设计师,开发人员需要提供技术细节,然后文档编写者按照正确语法组织和编辑内容。软件文档的最主要目标是传达一个系统的技术要素和使用方法。第二个目标是提供软件开发过程中的需求,决策,行为,角色和责任的书面记录。只有实现了这两个目标,软件文档才真正提供了有意义的信息。软件的概念就是:程序+文档,程序就是文档,文档集成在程序中。它要求在选择开发环境时不仅要考虑环境对设计、开发的完美支持,而且要考虑对维护、文档的支持;它要求软件人员在设计、开发过程中要考虑维护问题、文档问题;它要求程序与文档存储在同一位置、同一系统中;它要求使用相同工具进行程序与文档的书写、检索;它要求在编写和维护程序的同时形成文档,在书写文档时编写、维护程序。程序与文档合一的概念不仅存在于系统的设计、开发阶段而且存在于系统的维护阶段,它贯穿软件的生命周期。
- 30 -
致 谢
经过几个月的努力,我终于完成了卫生治疗管理系统的设计,同时,也让我学到了在课堂上学不到的体验。就是在完整的做完一个软件项目,从中学到了软件开发的一些经验,比如数据库与前台数据库的连接技巧,充分的利用数据库的视图、序列、存储过程和函数等,这样就会减轻你前台的需求分析、设计、编程的工作量。并使你的软件项目的清晰明了,功能明确。
软件设计是一个精细漫长的过程。在整个过程中,都需要周密的计划和安排,每一步骤,都需要按照软件工程标准来完成。在设计中,我始终坚持理论指导实践原则,并通过实践来加强理论的学习,通过实习锻炼,我熟悉了软件的一般过程,加强了对实际问题的处理能力。实践证明,在高科技突飞猛进的时代,光靠课堂所学的知识是远远不够的,必须依靠实践去不断的深化认识,尤其是计算机科学,操作性和实践性很强,只有加强实际的动手能力,才能更好的掌握这一现代化工具。
这次的毕业论文设计实习,无论是从技术上还是对环境的适应能力上讲,对我今后步入社会都打下了一个良好的基础。在实习过程中,我也遇到了一些困难,主要表现了技术和经验的欠缺,但通过努力,终于一一克服了。
在整个期间,曾得到了李力老师和王祥顺老师以及同组同学的大力支持和帮助,在此表示衷心的感谢!
- 31 -
参考文献
[1]. 内格尔 等《C#高级编程》(第四版)清华大学出版社 2006 [2]. 李兰友 、杨晓光编著《Visual C#.NET 程序设计》清华大学出版社 [3]. 史济民、顾春华《软件工程─原理、方法与应用》高等教育出版社 [4]. 何玉洁《数据库原理与应用》机械工业出版社
[5]. 《数据库访问技术─ADO.NET 程序设计》高等教育出版社 [6]. 吕国英《算法设计与分析》 清华大学出版社
[7]. 闪四请、杨强编著《Oracle Database 10g 基础教程》清华大学出版社
[8]. 张奇、李律松、卫建伟等编著《Visual C# 数据库项目案例导航》清华大学出版社 [9].陈明编著《实用软件工程基础》清华大学出版社
[10]. Oracle 10g –入门与实践。林慧, 余潜, 龚涛, 张兴明 编著。中国铁道出版社。 [11]. Oracle Database 10g 基础教程。闪四清, 扬强 编著。清华大学出版社。
- 32 -
正在阅读:
软件工程毕业论文--项目任务管理系统07-01
the real truth about lies-练习、语法讲解08-25
金融工程课后答案04-26
一年级美术大眼睛教案03-08
曼昆微观经济学原理版后习题答案03-18
2019-感恩的心 - 感恩作文-推荐word版(3页)01-13
(六)项目部与各班组目标责任书 Microsoft Word 文档06-13
中国文化概论-孔子孝道思想极其当代意义07-02
焊装车间工程08-19
2015生命安全教育考试题及答案12-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 软件工程
- 毕业论文
- 管理系统
- 任务
- 项目
- 基于DPSIR模型的绿色技术创新影响因素研究
- 华德福父母如何与学校一起帮助孩子
- 2010年政法干警考试《民法学》全真模拟试题(2)
- 《学会感恩》德育实践活动课教案
- 培训的目的和目标
- 最新调度室管理制度汇总
- 医院感染管理质量考核评价标准
- 2013年中考压轴题复习(四)--相似篇(教师版)
- 影响青年就业难的因素分析
- 8.郑州轨道交通工程监控量测管理办法2012.4.1 - 图文
- 新西兰行程单
- 线性代数_北京邮电大学出版社(戴斌祥_主编)习题答案(3、4、5)
- 对自动驾驶系统与列车牵引复杂优化的协同设计
- 347应用心理硕士考试大纲解析
- MOS测试原理 - 图文
- 天津市市政施工企业名录496家
- 电工证 考试最新题库
- 港站课程设计任务书
- 北邮导师联系方式
- 中级经济基础精讲班作业卷(全集)