




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
医院病床管理系统设计方案1 绪 论1.1 论文的研究背景及意义随着计算机的日益普及和网络的发展,数据库的应用范围越来越广,数据库应用的功能也越来越强,因此编写管理信息系统应用程序也显得尤为重要,在强调管理,强调信息的现代社会中它变得越来越普及。医院就医排队是大家都非常熟悉的现象,它以这样或那样的形式出现在我们面前,例如,患者到门诊就诊、到收费处划价、到药房取药、到注射室打针、等待住院等,往往需要排队等待接受某种服务。本系统开发的目的一方面从提高医院工作的效率出发,缩减过去病人挂号及挂号过后进行盲目等待医院安排手术而浪费时间,另一方面从提高医院病床利用率及减少浪费医院人力资源的角度出发,通过设计一个切实可行的软件系统用于解决医院对已挂号病人管理中信息处理总量大、内容繁多、手段落后的现状,即利用成熟的计算机系统来实现医院管理工作的自动化。本系统根据医院管理的一些实际情况而编制的一套自动化的排队系统之病床管理子系统。 该设计方案是以一医院眼科病床的实例来分析,并根据该实例得出有效地模型,并得出挂号病人的住院时间以及手术时间。该模型实现的功能具体如下:住院信息管理:工作人员能够添加、删除住院病人,并能够查询待住院病人可以住院的大致时间。手术信息管理:能够添加及删除已安排住院病人的手术时间,并能够查询未被安排手术病人的大致手术时间。1.2 研究思路和工作计划正如研究任何其它软件项目一样,我做的毕业设计也经历了从选题,调研,熟悉开发环境,实验关键技术,查找类似的相关系统的资料;系统概要设计,数据库结构设计,功能模块开发,功能模块测试,系统调试和系统试运行和修改。下面的流程图反映了我们的基本的思路和过程。图1-1开发系统流程图在各阶段的时间安排上,选题和调研用了两到三周的时间;实验关键技术,查找类似的相关系统的资料用了两周时间;系统概要设计用了一周的时间;数据库结构设计用了一周时间;功能模块开发和功能模块测试用了四周的时间;最后,系统调试和运行及修改用了约三周的时间。初略总计,完成全部工作大约用了3个半月的时间。 本文采用结构化的设计思想对医院病床管理系统进行分析设计,对系统的管理需求和计算机办公的需求进行详细分析、设计完成医院病床管理系统的基本功能。主要完成包括后台数据库的建立和维护以及前台应用程序两个方面的开发。本文,设计并实现了医院病床管理系统。共六章,各章组织及内容如下:第一章:概述了本文研究的背景,分析了研究的意义和必要性,介绍目前本课题的研究现状,讨论分析了目前研究现状存在的问题及本人在本系统中所担任的工作,提出了本文的结构层次。第二章:详细介绍了与本文有关的背景知识,包括系统开发方法和开发工具的比较,通过这些比较选定了系统的设计工具以及设计方案。第三章:对系统需求作了详细的分析,其中包括系统的各子系统功能模块的划分,系统主要类图、用例图的建立以及系统整体功能模块设计、子系统及其模块的设计。第四章:是病床管理系统数据库及其结构的设计,介绍了不同数据库基本的相关知识、数据库的具体设计与实现,并列出了各数据库表的结构。第五章:是病床管理系统及实现,介绍了主要功能模块的界面设计实现,并描述了系统实现的相关情况。第六章:是对全文的工作进行了总结。 2 相关技术和手段2.1 系统分析与设计的相关技术系统的开发是一个复杂的系统工程,它涉及计算机处理技术、系统理论、组织结构、管理功能、管理知识等各方面的问题。然而,至今没有一种统一完备的开发方法。但是,每一种开发方法都要遵循相应的开发策略。任何一种开发策略都要明确以下问题: 系统要解决的问题:如采取何种方式解决组织管理和信息处理方面的问题,对企业提出的新的管理需求该如何满足等。 系统可行性研究:确定系统所要实现的目标。用过对企业状况的初步调研得出现状分析的结果,然后提出可行性方案并进行论证。系统可行性的研究包括目标和方案可行性、技术的可行性、经济方面的可行性和社会影响方面的考虑。 系统开发的原则:再系统开发过程中,要遵循领导参与、优化创新、实用高效、处理规范化的原则。 系统开发前的准备工作:做好开发人员的组织准备和企业基础准备工作。 系统开发方法的选择和开发计划的制定:针对已经确定的开发策略选定相应的开发方法,是结构化系统分析和设计方法,还是选择原型法或面向对象的方法。开发计划的制定是要明确系统开发的工作计划、投资计划、工程进度计划和资源利用计划。管理信息系统开发方法主要有:结构化生命周期开发方法、原型法、面向对象的开发方法等。I. 结构化生命周期开发方法目前较为流行的MIS开发方法是结构化生命周期开发方法,其基本思想是:用系统的思想和系统工程的方法,按用户至上的原则,结构化、模块化地自上而下对生命周期进行分析与设计。用结构化生命周期开发方法开发一个系统,将整个开发过程划分为5个依次连接的阶段: 系统规划阶段:主要任务是明确系统开发的请求,并进行初步的调查,通过可行性研究确定下一阶段的实施。系统规划方法有战略目标集转化法(SST,Strategy Set Transformation)、关键成功因素法(CSF,Critical Success Factors)和企业规划法(BSP,Business Planning). 系统分析阶段:主要任务是对组织结构与功能进行分析,理清企业业务流程和数据处理流程,并且将企业业务流程与数据流程抽象化,通过对功能数据的分析,提出新系统的逻辑方案。 系统设计阶段:主要任务是确定系统的总体设计方案、划分子系统功能、确定共享数据的组织,然后进行详细设计,如处理模块的设计、数据库系统的设计、输入输出界面的设计和编码的设计等。 系统实施阶段:主要任务是讨论确定设计方案、对系统模块进行测试、进行系统运行所需数据的准备、对相关人员进行培训等。 系统运行阶段:主要任务是进行系统的日常运行管理,评价系统的运行效率,对运行费用和效果进行监理审计,如出现问题则对系统进行修改、调整。这五个阶段共同构成了系统开发的生命周期,结构化生命周期开发方法严格区分了开发阶段,非常重视文档工作,对于开发过程中出现的问题可以得到及时的纠正,避免了出现混乱状态。但是,该方法不可避免的出现开发周期长、系统预算超支的情况,而且再开发过程中用户的需求一旦发生变法,系统将很难做出调整。II. 原型法原型法在系统开发过程中也得到不少应用。原型法的基本思想是系统开发人员凭借自己对用户需求的理解,通过强有力的软件环境支持,构造出一个实在的系统原形,然后与用户协商,反复修改原形直至用户满意。原型法的应用使人们对需求有了渐进的认识,从而使系统开发更有针对性。另外,原型法的应用充分利用了最新的软件工具,使系统开发效率大为提高。III. 面向对象系统开发方法面向对象(OO,Object Oriented)的系统开发方法,是近年来受到关注的一种系统开发方法。面向对象的系统开发方法的基本思想是将客观世界抽象地堪称是若干个相互联系的对象,然后根据对象和方法的特性研制出一套软件工具使之能够映射为计算机软件系统结构模型和进程,从而实现信息系统的开发。在本系统的开发中采用了结构化生命周期开发方法。2.2 开发工具介绍与选择C#简介:在过去的二十年里,C和C+已经成为在商业软件的开发领域中使用最广泛的语言。它们为程序员提供了十分灵活的操作,不过同时也牺牲了一定的效率。与诸如Microsoft Visual Basic 等语言相比,同等级别的C/C+应用程序往往需要更长时间来开发。由于C/C+语言的复杂性,许多程序员都试图寻找一种新的语言,希望能在功能与效率之间找到一个更为理想的权衡点。目前有些语言,以牺牲灵活性的代价来提高效率。可是这些灵活性正是C/C+程序员所需要的。这些解决方案对编程人员的限制过多(如屏蔽一些底层代码控制的机制),其所提供的功能难以令人满意。这些语言无法方便地同早先的系统交互,也无法很好地和当前的网络编程相结合。 对于C/C+用户来说,最理想的解决方案无疑是在快速开发的同时又可以调用底层平台的所有功能。他们想要一种和最新的网络标准保持同步并且能和已有的应用程序良好整合的环境。另外,一些C/C+开发人员还需要在必要的时候进行一些底层的编程。微软推出C#: C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft.NET平台的应用程序,Microsoft.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。效率与安全性。 新兴的网络经济迫使商务企业必须更加迅速的应对竞争的威胁。开发者必须不断缩短开发周期,不断推出应用程序的新版本,而不仅仅是开发一个“标志性”的版本。C#在设计时就考虑了这些问题。它使开发者用更少的代码做更多的事,同时也不易出错。支持现有的网络编程新标准 新的应用程序开发模型意味着越来越多地解决方案依赖于新出现的网络标准,例如HTML,XML,SOAP等。现存的开发工具往往都是早于Internet出现的,或者是在我们所熟知的网络还处于孕育期时出现的。所以,它们一般无法很好地支持最新的网络技术。 C#程序员可以在Microsoft .NET平台上事半功倍的构建应用程序的扩展框架。C#包含了内置的特性,使任何组件可以轻松转化为XML网络服务,通过Internet被任何操作系统上运行的任何程序调用。 更突出的是,XML网络服务框架可以使现有的XML网络服务对程序员来说就和C#对象一样。这样,程序员就可以方便地使用他们已有的面向对象的编程技巧来开发利用现有的XML网络服务。 还有一些精细的特性,使得C#成为一流的网络编程工具。例如,XML正逐渐成为在网络上传输结构化数据的标准。这种数据集合往往非常小。为提高性能,C#允许把XML数据直接映射到struct数据类型,而不是class。这样对处理少量的数据非常有效。消除大量程序错误: 即使是专家级的C+程序员也常会犯一些最简单的小错误比如忘了初始化变量,但往往就是这些小错误带来了难以预料的问题,有些甚至需要很长时间来寻找和解决。一旦一个程序作为产品来使用,就算最简单的错误纠正起来也可能要付出极其昂贵的代价。C#的现代化设计能够消除很多常见的C+编程错误。 例如: 收减轻了程序员内存管理的负担。 C#中变量由环境自动初始化。 变量类型是安全的。这样,程序员编写与维护那些解决复杂商业问题的程序就更方便了。对版本的更新提供内在的支持降低了开发成本: 更新软件组件是一项很容易出错的工作,因为代码的修改可能无意间改变原有程序的语义。为协助开发者进行这项工作,C#为版本的更新提供内在的支持。例如,方法重载必须显式声明。这样可以防止编码错误,保证版本更新的灵活性。还有一个相关的特性就是对接口和接口继承的内在支持。这些特性使得C#可以开发复杂的框架并且随着时间不断发展更新它。总体来说,这些特性使得开发程序项目的后续版本的过程更加健壮,从而减少后续版本的开发成本。商业过程和软件实现的更好对应 企业的商业计划要付诸现实,必须在抽象的商业过程和实际的软件实现之间建立紧密地对应。不过大多数语言都很难做到这点。例如,如今的程序员们一般使用代码注释来注明哪个类对应于某个抽象的商业对象。 C#语言允许类型定义的,扩展的元数据。这些元数据可以应用于任何对象。项目构建者可以定义领域特有的属性并把他们应用于任何语言元素-类,接口等等。然后,开发人员可以编程检查每个元素的属性。这样,很多工作都变得方便多了,比如编写一个小工具来自动检查每个类或接口是否被正确定义为某个抽象商业对象的一部分,或者只是创建一份基于对象的领域特有属性的报表。定制的元数据和程序代码之间的紧密对应有助于加强程序的预期行为和实际实现的之间的对应关系。扩展交互性: 作为一种自动管理的,类型安全的环境,C#适合于大多数企业应用程序。但实际的经验表明有些应用程序仍然需要一些底层的代码,要么是因为基于性能的考虑,要么是因为要与现有的应用程序接口兼容。这些情况可能会迫使开发者使用C+, 即使他们本身宁愿使用更高效的开发环境。C#采用以下对策来解决这一问题: 内置对组建对象模型(COM)和基于Windows的API的支持。 允许有限制地使用纯指针(Native Pointer)。 在C#中,每个对象都自动生成为一个COM对象。开发者不再需要显式的实现IUnknown和其他COM接口这些功能都是内置的类似的,C#可以调用现有的COM对象,无论是由什么语言编写的。 C#包含了一个特殊的功能,使程序可以调用任何纯API。在一段特别标记的代码中,开发者可以使用指针和传统C/C+特性,如手工的内存管理和指针运算。这是其相对于其它环境的极大优势。这意味着C#程序员可以在原有的C/C+代码的基础上编写程序,而不是彻底放弃那些代码。无论是支持COM还是纯API的调用,都是为了使开发者在C#环境中直接拥有必要的强大功能。结论: C#是一种现代的面向对象语言。它使程序员快速便捷地创建基于Microsoft .NET平台的解决方案。这种框架使C#组件可以方便地转化为XML网络服务,从而使任何平台的应用程序都可以通过Internet调用它。 C#增强了开发者的效率,同时也致力于消除编程中可能导致严重结果的错误。C#使C/C+程序员可以快速进行网络开发,同时也保持了开发者所需要的强大性和灵活性。 2.3 数据库技术介绍与选择数据库系统是指在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统、应用系统、数据库管理员和用户构成。应当指出的是,数据库的建立、使用和维护等工作只靠一个DBMS远远不够,还要有专门的人员来完成,这些人被称为数据库管理员。在一般不引起混淆的情况下常常把数据库系统简称为数据库。数据库技术是应数据管理任务的需要而产生的。在应用需求的推动下,在计算机硬件,软件发展的基础上,数据管理技术经历了人工管理、文件系统、数据库系统三个阶段。与人工管理和文件系统相比,数据库系统的特点主要有以下几个主面:数据的结构化;数据的共享性高、冗余度低、易扩充5;数据独立性高;数据由DBMS统一管理和控制。目前,数据库己经成为现代信息系统的不可分离的重要组成部分。20世纪80年代后不但在大型机上,在多数微机上也配置了DBMS,使数据库技术得到了更加广泛的应用和普及,是计算机领域中发展最快的技术之一。从60年代末开始,数据库技术经历了层次数据库、网状数据库和关系数据库三个阶段。而进入数据库管理系统(DBMS)阶段至今,数据库技术的研究也不断取得进展。80年代,关系数据库成为发展的主流,几乎所有新推出的DBMS产品都是关系型的,关系数据库在计算机数据库管理的发展史上是一个重要的里程碑,这种数据库结构化、最低冗余度、较高的程序与数据独立性、易于扩充、易于编制应用程序等优点,目前较大的信息系统都是建立在关系数据库设计之上的。数据库中数据的规模和复杂性正随着各种新的应用系统的使用,变得越来越难管理。Internet上的数据洪流、非结构化数据类型的增加、高级数据分析工具及报表工具的业务需求,让数据出现不可抑制的增长。支撑业务系统的后台计算机系统及数据库的管理,比以往任何时候都变得严峻。对于新型信息化的企业和单位来说,确保市场响应时间、提高服务水平、高效访问数据是必然的选择,而非可有可无的。在数据库管理工具的选择上,我们应主要考虑以下几点: 易用性; 界面友好性; 功能是否满足您的要求; 产品的服务支持; 多种工具的集中管理及上下文之间的调用。目前市场上数据库的主流厂商及产品有 Microsoft Office Access、Microsoft SQL Server2005、IBM DB2、ORACLE 10g、MySQL、Sybase。本系统使用的数据库是SQL Server 2000。SQL Server 2000 简介SQL Server 2000是美国微软公司的一个产品,它继承了数据库软件设计和引攀方面的优势,已经成为新一代网络应用程序的最佳数据库和分析解决方案之一。SQL 的全称是Structured Query Language,即结构化查询语言。SQL语句可以从关系数据库中获得数据,也可以建立数据库、增加数据、修改数据。1986年ANSI采用SQL语言作为关系数据库系统的标准语言,后被国际化标准组织(ISO)采纳为国际标准。SQL语言使用方便、功能丰富、简洁易学,是操作数据库的工业标准语言,得到广泛地应用。 2.4 UML在面向对象设计与分析的运用1、 UML简介UML(Unified Modeling Language),统一建模语言6。它不是系统设计的方法,而是系统建模的标准。它是软件界第一个统一的可视化的建模语言,已成为国际软件广泛承认的标准,应用领域很广泛,可用于商业建模(Business Modeling)、软件开发建模的各个阶段,也可用于其它类型的系统。它是一个通用的建模语言,具有创建系统的静态结构和动态行为等多种结构模型的能力,具有可扩展性和通用性,适合于多种、多变结构的建模。2、 UML的特点 统一标准。 面向对象。 可视化、表示能力强。 独立于过程。 易掌握。3、 UML的组成包括了一些可以相互组合图表的图形元素。 类图: 一个类(class)是一类或一组具有类似属性和共同行为的事物。 对象图: 对象(object)是一个类的实例,是具有具体属性值和行为的一个具体事物。 用例图: 用例(use case)是从用户的观点对系统行为的一个描述。 状态图: 用来描述一个特定对象的所有可能的状态及其引起状态转移的事件,一个状态图包括一系列的状态,以及状态之间的改变。 顺序图: 类图和对象图标大的是系统的静态结构。在一个运行的系统中,对象之间要发生交互,并且这些交互要经历一定的时间。UML顺序图所表达的正式这种基于时间的动态交互。 活动图:用例和对象的行为中的各个活动之间通常具有时间顺序。 协作图:系统的工作目标是由系统中各组成元素相互协作完成的。 构件图:构件图和部署图和整个计算机系统密切相关。 部署图:UML部署图显示了基于计算机系统的物理体系结构。绘制UML所需要的工具:Rational Rose、StarUML或Microsoft Visio 2003/2007。本系统使用的是Microsoft Visio 20033 系统分析3.1 可行性分析1、 开发系统的必要性随着网络的普及和流行,通过互联网络进行活动不仅方便快速,而且经济实惠,从这一点足可以说明开发系统的必要性。2、 开发系统的经济可行性经济费用方面主要包括:购置并安装软硬件及有关设备的费用;系统开发费用;系统安装、运行和维护费用;人员培训费用。这几项加起来与本系统所带来的经济效益和社会效益比起来,可以说是微不足道。i. 开发系统的技术可行性通过对医院工作流程各个环节的分析,确定出了系统的管理结构。利用现有的开发工具和开发技术完全可以在规定的时间,规定的资金范围内实现系统的全部功能。ii. 组织管理上的可行性系统会使医院的管理更加科学化,也会更方便、高效,更人性化。同时也可以优化组织结构,提高医院的竞争力。iii. 社会条件上的可行性网络的普及,网络也越来越受到人们的喜爱,这也为系统实现后的运行提供了一个大的环境。3.2 需求分析 医院病床管理系统是一个典型的数据库开发应用程序,主要由病床管理、手术管理、账号管理等模块组成。该系统的主要功能如图所示: 图3-1 系统功能模块图3.2.1 软件各子系统功能要求及需求描述 在本系统中采用模块化、开放化的设计理念,这种方式不仅系统的解决了医院效率不够理想的情况,更是为医院节约了人力及财务资源。系统主要由以下几部分构成:1、 病床管理本模块主要由以下三个子模块组成: 待入院病人管理:待入院病人主要是已经挂号,但是由于病床不足等 原因而未住院的病人,该模块主要包括添加、查找、修改、删除待入院病人及其基本信息。另外为刚挂号病人提供查询住院的大致时间。 病床安排:添加住院病人、查看住院病人信息、删除住院病人信息。 拟出院病人管理:由于还未出院,所以只是计划出院,该模块主要是 提供查询功能,查询该人大致可以出院的时间。2、 手术管理本模块主要包括添加手术安排、修改手术安排以及查询手术时间。3、 账号管理本模块主要包括查看账号信息、修改账号密码以及注销账号。3.2.2 系统主要用例图1、 用例图简介:用例图(Use Case Diagram)显示多个外部参与者以及他们与系统提供的用例之间的连接。用例是系统中的一个可以描述参与者与系统之间交互作用的功能单元。用例图仅描述系统参与者从外部观察到的系统功能,并不描述这些功能在系统内部的具体实现。用例除了与执行者有联系外,用例之间也存在一定的联系,用例之间通常有关联、包含、扩展及泛化等关系,包含和扩展是构造型元素,用表示,图形表示为一虚线箭头。本质上是一种使用关系,当一个用例包含另一个用例时,这两个用例之间就构成了使用关系。本系统所采用的工具:Microsoft Visio 2003 。2、 系统总体用例图系统的总用例图如下图所示: 图3-2 系统的总用例图3、 用例描述在建立用例图后,为了使每个用例更加清楚,可以对用例进行描述。描述时我们根据其事件流进行,用例的事件流是对完成用例行为所需要的事件的描述。事件流描述了系统应该做什么,而不是描述系统怎么做。通常情况下,事件流的建立是在细化用例阶段进行。开始只对用例的基本流所需要的操作步骤进行简单描述。随着分析的进行,可以添加更多的详细信息。最后,将例外添加到用例的描述中。下面我们对招生系统中部分主要的用例进行用例描述。1) 对医院病床管理系统待入院病人用例描述如表3-1所示:表3-1 待入院病人管理用例的描述用例名称待入院病人管理用例标识符用例描述参与者前置条件基本操作流程可选操作流程UC0001用户浏览住院病人信息一般用户进入病床管理系统首页1、 单击想要浏览的信息的标题2、 系统将显示该信息的详细内容3、 添加、删除、修改待入院院病人资料4、 查询住院的大致时间2) 对医院病床管理系统病床按排用例描述如表3-2所示:表3-2 病床安排用例的描述用例名称病床安排用例标识符用例描述参与者前置条件基本操作流程可选操作流程UC0002用户浏览待入院病人信息一般用户进入病床管理系统首页1、 单击想要浏览的信息的标题2、 系统将显示该信息的详细内容3、 添加、删除、修改住院病人资料3) 对医院病床管理系统待出院病人用例描述如表3-3所示:表3-3 拟出院病人管理用例的描述用例名称待出院病人管理用例标识符用例描述参与者前置条件基本操作流程可选操作流程UC0003用户浏览住院病人信息一般用户进入病床管理系统首页选择病人的患病类型、住院时间,可以查询出院的大致时间。4) 对医院病床管理系统手术管理用例描述如表3-4所示:表3-4 手术管理用例的描述用例名称手术管理用例标识符用例描述参与者前置条件基本操作流程可选操作流程UC0004用户浏览手术管理信息一般用户进入病床管理系统首页1、 单击想要浏览的信息的标题2、 系统将显示该信息的详细内容3、 添加、删除、修改手术信息5) 对医院病床管理系统账号管理用例描述如表3-5所示:表3-5 账号管理用例的描述用例名称账号管理用例标识符用例描述参与者前置条件基本操作流程可选操作流程UC0005用户浏览账号管理信息一般用户进入病床管理系统首页1、 单击想要浏览的信息的标题2、 系统将显示该信息的详细内容3、 添加、删除、修改手术信息3.2.3 定义系统中的对象和类在定义系统需求后,下一步就是确定系统中存在的对象。系统对象的识别可以通过寻找系统域描述和需求描述中的名词来进行。在医院病床管理系统中可以确定的对象包括管理员(Admin)、病人(patient)、病床(illbed)、疾病类型(illtype)、待入院信息类(drybrgl)以及手术信息类(operationmanager)。在系统中我们采用了简单的三层结构,即将整个系统划分为表示层、业务逻辑层、数据访问层。数据访问层DAL:用于实现与数据库的交互和访问,从数据库获取数据或保存数据到数据库的部分。业务逻辑层BLL:承上启下,用于对上下交互的数据进行逻辑处理,实现业务目标。表示层Web:主要实现和用户的交互,接收用户请求或返回用户请求的数据结果的展现,而具体的数据处理则交给业务逻辑层和数据访问层去处理。在分析设计过程中,我们发现各层之间在很多情况下有一些共同的东西可以复用,在这是我们把各层一些都用的东西抽象出来。首先为了便于在多个层中传递,我们将数据对象实体和方法分离称为Model。首先我们来描述业务实体Model中的实体类,实体类主要包括了以下几种:1. 类Admin描述了系统中管理员的基本信息,包括username(账号)及pwd(密码)等属性,类图如图3-3所示:图3-3 Admin类图2. 类drybrgl描述了系统中待入院病人的基本信息,包括patient(姓名)、sex(性别)、age(年龄)、registerTime(挂号时间)、illtype(患病类型)等属性,类图如图3-4所示:图3-4 drybrgl类图3. 类illbed描述了系统中病床的基本信息,包括bedTotaNum(病床总数量)以及usedbed(已使用病床数量)等属性,类图如图3-5所示: 图3-5 illbed类图4. 类iller描述了系统中病人的基本信息,包括patientName(病人姓名)、sex(性别)、age(年龄)、illtype(患病类型)、inOrNotHospital(是否住院)、zhuyuangTime(住院时间)、chuyuanTime(出院时间)等属性,类图如图3-6所示:图3-6 iller类图5. 类illtype描述系统中疾病类型,包括illtype(患病类型)和illName(疾病名称)属性,类图如图3-7所示:图3-7 illtype类图6. 类operationmanager描述系统中手术时间信息,包括zhuyuanAnPaiId(住院安排)和operatorTime(手术时间)属性,类图如图3-8所示:图3-8 operationmanager类图 主要的实体类描述完成后,下面我们来看一下DAL(数据访问层)中的操作类,这一层的操作类的特点完成的基本上都是对实体类添加、删除、修改和查询的操作,系统中操作类主要包含AdminSQL(管理员操作类),illerInfoSQL(病人信息操作类),illTypeSQL(疾病类型类)等,下面分别对主要的操作类进行描述。1. AdminSQL类,主要完成对登陆账号的操作,包含的方法有:Exists(in username:string):bool 判断账号是否存在;Add_AdminInfo(in AdminInfo admin):int 添加管理员账号Update_AdminInfo(in AdminInfo admin):int 修改管理员信息 类图如图3-9所示: 图3-9 AdminSQL类2. illerInfoSQL类,主要完成对病人信息的操作,包含的方法有:Add(in illerInfo iller):int 添加病人操作Delete(in id:int):int 删除病人操作 类图如图3-10所示: 图3-10 illerInfoSQL类3. illTypeSQL类,主要完成对疾病种类的操作,包含的方法有:Exists(in illtype:string):int 判断是否是处在的疾病类型Add(in illtype type):int 添加疾病种类Update(in illtype type):int 修改疾病类型Delete(in illtype:string):int 删除疾病类型类图如图3-11所示 图3-11 illTypeSQl类3.2.4 系统模块的主要活动图设计根据需求本系统将主要实现以下各功能模块。 1) 病床管理: 待入院病人管理 病床安排 拟出院病人管理此模块的活动图如下:图3-12 病床管理模块活动图 图3-13 待入院病人管理模块活动图 图3-14 病床安排模块活动图 图3-15 拟出院病人管理模块活动图2) 手术管理:本模块主要包括添加手术安排、修改手术安排以及查询手术时间。该模块的活动图如下图所示: 图3-16 手术管理模块活动图 3) 账号管理:本模块主要包括查看账号信息、修改账号密码以及注销账号。该模块的活动图如下图所示: 图3-17 账号管理模块活动图3.3系统运行环境软件环境: 服务器: 操作系统 Windows 2000/XP/2003 Server,IIS5.0以上,.NET 2.0框架,数据库系统 MS SQL Server 2000客户端: 操作系统 Windows 2000/Xp硬件环境:服务器: CPU P4 2.0G以上,推荐 P4 3.0G以上;硬盘 80G以上剩余空间,推荐 250G以上剩余空间;内存 1G以上推荐 2G以上; 客户端:CPU P4 500M以上,推荐 P4 2.0G以上;硬盘 80G以上剩余空间,推荐 200G以上剩余空间;内存512M,推荐1G以上。4 数据库设计数据库设计:是指对于一个特定的应用环境,构造最优的数据库模式,建立数据库以及应用系统,满足各种用户的应用需求,包括信息需求和处理需求。研制数据库及其应用系统的技术,是数据库应用领域中主要的研究课题。对于一个信息管理系统来说,数据库是核心和基础,它把信息系统中大量的数据按一定的模型组织起来,提供存储、维护和检索数据的功能,使用户可以方便及时准确的从数据库中获得所需的信息。一个信息系统的各个部门能否紧密的结合在一起以及如何结合,关键在于数据库。因此只有对数据库进行合理的逻辑设计和有效的物理设计才能开发出完善高效的信息系统。数据库的设计是整个系统成功的关键,而数据模型的选择又是建立数据的关键。数据模型主要有层次模型、网状模型和关系模型。关系模型由于理论性强,关系数据库语言使用的方便性等原因成为目前数据模型的主流。它用二维表结构表示实体集,关键码表示实体间的联系。本系统采用关系型模型建立了如用户属性与相应用户等一系列二维关系,利用关键码再将这些关系联系起来,构成一个信息整体。数据结构与数据模型那紧密相关,它是数据库设计的关键。本系统数据结构是对售电管理过程的抽象描述。管理系统功能的实现是对相关数据表格进行处理的一个过程,是在DBMS(Database Management System,数据库管理系统)的基础上的一系列表间操作。数据表Table的设计就是利用计算机完成一套适合于实际情况的表单,通过表单能够清楚地描述出数据的流向和处理的结果。表单的原型要求适于计算机的处理方式,并满足数据库设计的3NF范式,保证数据的完整性和一致性。本系统中,数据库的设计目标是合理的存储,提高存储效率,减少数据冗余,保证数据的完整和一致,数据库结构设计的好坏对应用系统的效率及实现的效果产生影响。为了设计出合理的数据结构,设计数据库系统的应该首先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求进行分析、归纳、总结,最后才进行数据库的概念和逻辑结构设计。总体来说,数据库设计一般包括如下几个步骤: 数据库需求分析。 数据库概念结构设计。 数据库逻辑结构设计。4.1 数据库需求分析用户的具体需求主要体现在数据的存储,查询和更新上。要了解用户需求把什么数据存储起来,哪些数据需要经常查、更新和删除,收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。通过上述系统功能分析,针对一般工作流引擎的需求,总结出如下的需求信息 需要存储病人信息。 需要存储患病种类。 需要存储病床信息。 需要给系统设定用户。经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计如下所示的数据项和数据结构: 管理员信息表:包括的数据项:用户名,密码 病人信息表:包括的数据项:姓名,性别,年龄,患病类型,是否住院,住院时间,出院时间。 病床信息表:包含的数据项:病床总数,已使用数量4.2 数据库概念结构设计 得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互的作用形成数据的流动1Jay Hilyard&StepbenTeilbet(著)苏金国,王宁飞.C#经典案例. M.北京.中国电力出版社. 20072 许家珆,软件工程方法与实践M.北京.电子工业出版社.20073 李律松,马传宝,李婷.Visual C#+SQL Server数据库开发与实例. M.北京.清华大学出版社. 20064 张立等C# 2.0完全自学手册. M.北京.机械工业出版社. 20075 牛丽平,郭新志,宋强,杨继萍.UML面向对象设计与分析M.北京.清华大学出版社. 20076 汪孝宜,胡海璐,米海生.信息系统开发实例精粹.M.北京.电子工业出版社.20067 王晟.Visual C#.net 数据库开发经典案例解析.M.北京.清华大学出版社.20058 孙维煜,刘杰.胡方霞,陈发吉.C#案例开发. M.北京.中国水利水电出版社. 20059 陈志泊,李冬梅,王春玲.数据库原理及应用教程.M.北京.人民邮电出版社.200710 邹建峰,周山峰,项细威.C#企业级开发案例精解M.北京:人民邮电出版社.,200611 (美)Anany Levitin(著)潘彦译.算法设计与分析基础M.北京:清华大学出版社,200612 (美)Donis Marchall(著).许华杰,刘光惠(译).Visual C# 2005 技术内幕M.北京:清华大学出版社,200713王石编.精通Visual C# 2005(语言基础、数据库系统开发)web开发M. 北京:人民邮电出版社.,200714 (美)Setwen John Metske(著).颜炯(译).C# 设计模式 M.北京:中国电力出版社200515 Jay Hilyard&Stepben、Teilbet(著)苏金国,王宁飞.C#经典案例M.北京:中国电力出版社,200716(美)Jason Price&Mike Gunderloy(著).窦芳,王健(译). Visual C#.NET 从入门到精通M.北京:电子工业出版社, 200317孙维煜,刘杰.胡方霞,陈发吉.C#案例开发.M.北京:中国水利水电出版社,200518丁恩生,胡海璐等.网络系统开发实例精粹(ASP.NET版).M. 北京.电子工业出版社.2006。 本实例根据上面的设计规划出实体有:管理员信息实体,病人信息实体,病床信息实体。 1) 管理员信息实体的E-R图如图4-1所示: 图4-1 管理员信息实体的E-R图2) 病人信息实体的E-R图如图4-2所示: 图4-2 病人信息实体的E-R图3) 病床信息实体的E-R图如图4-3所示:图4-3 病床信息实体的E-R图 4.3 数据库逻辑结构设计概念结构是独立于任何一种数据模型的信息结构,逻辑结构设计的任务是把概念结构转换为选用的DBMS所支持的数据模型相符合的过程,也就是数据库表结构设计 。4.3.1 数据库表结构设计如下所示:1) 管理员表如表4-1所示:表4-1 管理员表字段名字段类型可为空字段说明idIntNot Null自动生成idusernameNvarchar(50)Not Null用户名pwdNvarchar(50)Not Null密码2) 病人信息表如表4-2所示:表4-2 病人信息表字段名字段类型可为空字段说明IdIntNot Null自动生成idPatientNameNvarchar(50)Null病人姓名SexNvarchar(50)Null性别AgeIntNull年龄IlltypeNvarchar(50)Not Null患病类型InOrNotHuspitalBoolNot Null是否住院ZhuyuanTimeDateTimeNot Null住院时间ChuYuanTimeDateTimeNull出院时间3) 挂号信息表如表4-3所示:表4-3 挂号信息表字段名字段类型可为空字段说明IdIntNot Null自动生成idPatientNameNvarchar(50)Not Null病人名称RegisterTimeDateTimeNot Null挂号时间IlltypeNvarchar(50)Not Null患病类型sexNvarchar(50)Null性别AgeIntNull年龄 4) 手术安排信息表如表4-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 综合能源空调采购方案(3篇)
- 小区社区活动方案(3篇)
- 商铺流水促销方案(3篇)
- 商业酒窖方案么(3篇)
- 公益用品分配方案(3篇)
- 菜地管理实施方案(3篇)
- 广场喷泉设计安装方案(3篇)
- 平安小卫士课件
- 广东省广州市广雅中学2026届高三化学第一学期期末综合测试试题含解析
- 干细胞化妆品课件
- 砼回弹强度自动计算表
- 教师课堂管理方法和技巧课件
- 预防老年人保健品骗局
- 安全生产培训(完整版)课件
- 钢结构长廊施工方案
- 信保业务自查问题统计表
- 年产3万吨环保型铝箔容器系列产品生产线项目环境影响报告
- 安庆汇辰药业有限公司高端原料药、医药中间体建设项目环境影响报告书
- 关于术中知晓预防和脑功能监测专家共识
- 河道修防工高级工试题
- GB/T 4458.3-2013机械制图轴测图
评论
0/150
提交评论