ImageVerifierCode 换一换
格式:DOCX , 页数:54 ,大小:2.36MB ,
资源ID:122005      下载积分:5 金币
已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
下载须知

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

版权提示 | 免责声明

本文(病床呼叫管理系统的设计与实现.docx)为本站会员(peixunshi0)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(发送邮件至doc331@126.com或直接QQ联系客服),我们立即给予删除!

病床呼叫管理系统的设计与实现.docx

1、学 号 密 级 病床呼叫管理系统的设计与实现 Design and Implementation of Hospital Intercom System学生姓名:所在学院:所在专业:指导教师:职称:所在单位:论文提交日期:论文答辩日期:学位授予单位:轩友会车友综合信息管理系统摘要在如今的各大医院中,特别是住院部的病房,都面临着医护人员人手不足的问题。医院无法为每一位病人安排一位医生,而病人的需要却是不定时的,这样很有可能延误病人的病情,出现医疗事故。病床呼叫管理系统就是为了缓解这种情况而出现的。本系统可以按照病人的病情紧急情况对病人的呼叫信息进行排列,通过动态优先级算法的分配,对病情比较严重的

2、病人进行优先救治。首先,在论文中对现有的病房呼叫系统及其发展进行了描述,对其功能进行了分析、理解,为本系统做了充分的准备。而后,在此基础上,对本系统进行了需求分析,增加和完善了系统的功能,并且对系统实现所使用到的环境,技术和工具进行了说明。在需求分析的工作完成之后,对系统进行了总体设计,同时开发了本系统的数据库。本系统共分为两个客户端,分别为护士站端和病人端。一个护士站端应对应多个病人端,病人端可向护士站端发出呼叫请求,由护士站端派出护士进行处理,经过双方的三次确认完成整个的呼叫过程。最后,在系统的实现中,做到了集呼叫护士、替换护士、调派护士、统计工作量、视频通话为一体的病床呼叫管理系统。在系

3、统中,使用了Visio建模工具建立系统功能分解图、活动图和流程图等,使用Visual Studio 2005软件,通过C#语言完成了系统的界面设计。在.NET平台下,使用C/S结构完成了本系统。在最后经过了测试,证明本系统达到了系统设计时所提出的要求。关键词:C#编程;Socket通信;病房呼叫管理;动态优先级I病床呼叫管理系统ABSTRACTThe lack of medical personnel has long been a problem in most hospitals, especially in wards. All patients can not get a one-on

4、one care from the doctors while their needs are of variable interval, which, may lead to delay treatment or even malpractice. Hospital intercom system is designed to ease this situation. The system is able to arrange calls from the patients by the severity of the illness with an algorithm of dynami

5、c priority, giving priority to the severe case.This dissertation gives a description and analysis to the existing hospital intercom system, to help better preparement for this dissertation. After that, requirement analysis and illustration are made to help consummates function and explain the softwa

6、re environment, technique and tools needed. Moreover, system design is made and database is added to it. The system includes the terminal of nurse station and the terminal of patient, a one-to-many dependency. Patients place calls to the nurse station and nurses are sent in return. The calling proce

7、ss is finished by three times of handshake protocol. Finally, the hospital intercom system is achieved with functions of calling, dispatching and replacing nurses, workload account and video calls.In this system, Visio is used to build system functional decomposition diagram, activity diagram and fl

8、owchart. Interface design is made by Visual Studio 2005 in C#. System designment is finished on .NET platform with a structure of Client/Server. The expected requirements are meet and confirmed by the final examination. Key words: C# Programming; Socket; Hospital Intercom System; Dynamic Priority目录第

9、1章 绪论11.1课题背景及目的11.1.1 课题背景11.1.2 课题目的及意义11.2 病床呼叫管理系统的现状与发展21.2.1 现有病床呼叫管理系统21.2.2 病床呼叫系统的发展31.3内容和作者的主要工作31.3.1 论文主要内容31.3.2 作者的主要工作41.4论文的组织结构4第2章 系统需求分析52.1系统开发平台和语言52.1.1 系统的开发平台52.1.2 系统的开发语言62.1.2 数据库连接简介62.2 系统需求分析72.2.1 系统的目标72.2.2 系统的总体任务82.2.3 系统功能需求82.2.4 系统用例分析102.3 本章小结12第3章 系统的详细设计133

10、1总体设计133.1.1 系统的设计准则133.1.2 系统开发模式133.1.3 系统流程分析143.1.4 系统功能模块分析163.2 系统体系结构173.3 数据库设计183.4 本章小结21第4章 系统设计与实现224.1 系统实现和运行环境224.2 病人端的实现224.2.1 选择病人信息功能设计224.2.2病人端功能设计244.3护士站端的实现274.3.1护士站登陆功能设计274.3.2护士站功能设计284.3.3替换、调换护士功能设计304.3.4工作量统计功能设计314.4 动态优先级算法设计324.5 系统测试334.4.1 测试环境334.4.2 病人端功能测试33

11、4.4.3 应答功能测试344.4.4替换及调派护士功能测试344.4.5优先级功能测试344.4.6测试总结354.6 本章小结35结论36参考文献37攻读学士学位期间发表的论文和取得的科研成果39致谢40V第1章 绪论第1章 绪论1.1课题背景及目的1.1.1 课题背景在当今的各大医院中,全都面临着一个同样的问题:医院的病人数相对于医生数来说要多很多,医院无法为每一位病人安排一位医生,因此,无法使病人身边每时每刻都有医生陪伴。但是病人的需要是不定时的,当他们需要帮助时只能走出病房寻找医生,这样就极大地拖延了病人的诊治时间,妨碍了对病人的诊治,造成了对病人的延误。病人对医生的需求是极为急迫的

12、因此需要保证医生的应答是及时和有效的。在这种前提下,为了保证病人的呼叫信息能够被及时看到并进行处理,同时还需保证病重的病人能够优先得到处理,缓解医院、医生及护士的工作压力,合理分配医生、护士的位置,开发出带有优先级系统的病床呼叫管理系统势在必行。病房呼叫系统是在医院的病房和养老院等一些地方进行使用的设备工具,它是用来联系、沟通医护人员和病人、老人等需要寻求帮助的人员的一种专用的呼叫系统,它是提高医院医疗护理水平的必需的标准之一。病房呼叫系统的质量好与坏直接关系到呼叫人员的生命安全,因此它历来受到各大医院与养老院的普遍重视和关注。它的功能要求有及时、准确可靠、简便可行和利于推广1。1.1.2

13、课题目的及意义本课题的目的是建立一套集病人端和护士站端为一体,通过病人端可以呼叫护士,通过护士站端浏览病人的呼叫信息的系统。以各科室下的病区为基本单位,各病区的护士站可以一览本病区的呼叫信息,正在处理病人的护士信息,空闲护士信息,并包括各护士的工作量。通过动态优先级的设定可以实时动态监控病人的呼叫等级,保证病重的病人可以优先得到救治(在护士人数不足而呼叫量较大的情况下),并且可以为病人配备专属护士,指定专属护士为该病人进行服务,最终可以满足病人需求,使护士的工作量较为平均,从而缓解医院和医护人员的压力。课题目标开发一套标准化、规范化的病床呼叫系统,可以为病人和医生间建立一个呼叫的平台,以确保病

14、人的呼叫信息能够得到及时的处理。课题的意义如下:1、便于护士查看呼叫信息通过病人呼叫表的信息,护士可以一览所有正在呼叫的病人,保证病人的呼叫不会被延误。护士站端还可以查看所有进行过的的呼叫信息,通过呼叫时间,次数等进行分析,并对病人的下一步治疗进行规划。2、保证病人的呼叫得到应答在呼叫与应答方面,本系统采用三次应答方式,保证每一位病人的呼叫都会得到回应。接收到病人呼叫,护士站派出护士,则将此呼叫信息转移到处理表中,完成处理,则在病人端点击解决,将此呼叫信息转移至处理完成的表中。以此来保证病人的每一次呼叫都会得到应答,不会出现病人呼叫被遗忘从而延误病情的情况。3、平均每位护士的工作量本课题在处理

15、完成的表中加入了护士工作量的统计,以此显示每位护士在一天中的工作量,处理了几位病人,并记录时间,以此倒序排列空闲护士表,将工作量最小的护士排在第一位,由此可以避免不同的护士工作量悬殊过大,保证工作量较为平均。4、实时动态调配护士在本病区呼叫较少,空闲护士较多时,护士站可以暂时将本病区的护士调配至其他呼叫较多的病区,处理呼叫的病人,使其他病区的病人可以及时得到救治。1.2 病床呼叫管理系统的现状与发展1.2.1 现有病床呼叫管理系统现有病房呼叫系统大多采用有线设备,采集信息,并且在护士站中集中显示,大体设计分为以单片机为核心的病房呼叫系统和以PLC(可编程序控制器)为核心部件的病房呼叫系统两种。

16、由PLC支持的病床呼叫系统,一般由主、从机两部分组成,从机即是病人端呼叫按钮,主机包括上述提到的PLC和指示灯报警系统。在病房中,每个病床都需配备一个从端呼叫源,当病人有呼叫请求时,按下呼叫按钮,主机端的护士站PLC为循环扫描方式,通过系统程序的控制,PLC正序读入各个病人端的呼叫信息,并且不断地进行扫描,当有病人发出呼叫请求时,通过硬件设备,点亮报警指示灯。由单片机为核心部件的病床呼叫系统的工作流程与上述系统相类似,在此不再详细叙述。此方法可支持数据通信以及语音通信,相比之下成本较低,并且时效性及可靠性也较高。1.2.2 病床呼叫系统的发展病房呼叫系统是医院住院部门的必备设备,是日常护理和救

17、急时的必要工具。但传统的老式有线呼叫系统由于需要为每位病人床头牵线,在医院病房完工后需要二次施工,维护困难,从而产生了很高的成本,并且浪费人力物力,一旦设备老化失灵会丧失此病人的抢救良机。基于种种原因,在老式的有线呼叫系统的基础上开发出无线呼叫系统。相比于传统有线呼叫系统而言,无线呼叫系统不必为施工浪费人力物力资源,继承了原有的功能并且使之更加完善,通过无线电接收信号,简单方便,有其自身的优势。但是无线电信号可靠性较差,并且有可能会干扰医院里其他医疗设备的正常工作,因此二者各有利弊。如今的新型病床呼叫系统大多都是基于ZigBee技术来完成的,病人在病房之中可以利用特制的手持设备进行呼叫护士的操

18、作,本病房的护士站会及时收到呼叫信息,与此同时,在独立于此护士站之外的本病房护士的相对应的手持设备也同样会接收到该病人发出的呼叫信息,此种类型的病床呼叫系统全部都是采用无线传输方式进行通讯2,有利于构建病人与护士及护士站方面的及时联系,但同样存在上述问题。通过对以上二者的比较,病床呼叫管理系统需有以下特性:(1)病人端与护士站端之间的连接方式要自由化,避免大动土木,浪费不必要的人力与物力。(2)功能齐全,满足病人随时可能需要呼叫的特点,避免延误病情。(3)操作应简单易懂,使各类病人都能即学即会,界面应简单通俗明了。1.3内容和作者的主要工作1.3.1 论文主要内容在此论文中,首先研究了现有病房

19、呼叫系统的功能、特点及其发展方向,进而通过对现有系统的了解,明确了课题项目需要的功能以及需要解决的问题;在此之后对项目做了需求分析以及详细设计,对病人端和护士站端两个模块的所有功能进行汇总,并对功能进行完善,修改;在此基础上,选择开发语言,开发平台,数据库等进行学习,并对功能进行实现;在完成了所有预先设计的功能之后,对本系统进行黑盒测试。此论文章中包含了背景目的,需求分析,详细设计,代码实现,以及后期测试等部分的内容。1.3.2 作者的主要工作(1)对病人端的设计可实现病人通过选择数据库中自己的个人信息,登陆自己的病人端界面。在此界面中可以进行呼叫。(2)对护士站端的设计可实现护士站端在收到呼

20、叫信息后,可以分配当前的空闲护士,对呼叫的病人进行处理。(3)病人端在解决完成后,可以按解决按钮完成此次呼叫,则护士端显示解决完毕,呼叫信息从处理表中移除。(4)护士站端可以用空闲护士代替正在工作的护士,也可以将空闲护士调派到其他病区进行工作。(5)护士站端可以查看每位护士的工作量。(6)病人端可以进行视频呼叫,当护士站端同意后,二者可以进行视频通话。(7)设计并实现了动态优先级算法,使病人的优先级随呼叫时间的增加而增加,从而动态地反映了病人的紧急程度,方便护士站根据具体情况做出人员的安排。1.4论文的组织结构全文分为4章,内容如下所示:第1章介绍了病床呼叫管理系统的研究背景,研究目的及其意义

21、以及现有病床呼叫管理系统的实现方法,发展过程。写明了作者的主要工作内容,以及论文的结构组织层次。第2章详细介绍了课题的开发平台和开发语言,对病床呼叫管理系统进行了需求分析。第3章对病床呼叫管理系统的功能进行了完善和补充,设计了数据库,并进行了详细设计。第4章对病床呼叫管理系统的所有功能进行实现,并做出形式化的描述,完成了后期的测试。45第2章 系统需求分析第2章 系统需求分析系统的需求分析对系统的开发是非常重要的,是系统开发的起点。系统的需求分析是系统概要设计、详细设计、系统实现、系统测试的基础。本章确定了系统的需求,明确了哪些功能是系统需要的,哪些功能是不需要的。在明确地分析出这些需求之后

22、又通过查阅相关的资料,分析这些功能在现实条件下是否能够实现,以及需要哪些技术、通过什么语言才能够实现相应的功能。2.1系统开发平台和语言2.1.1 系统的开发平台本小节中先对Microsoft Visual Studio 2005进行简单的介绍,然后再对.NET Framework进行介绍。1、Microsoft Visual Studio 2005开发环境 Microsoft Visual Studio 2005是目前的一种非常流行的软件开发环境,它具有很多强大的实用功能。适合专业开发人员以及小型的开发团队,能够帮助其开发出丰富且高性能用户体验的分布式系统。Visual Studio 20

23、05为开发者提供了数据库功能、高级开发工具和创新功能,使开发者能够更方便快速地创建在其他各种平台之上都能够轻松地应用的最先进的应用程序。Visual Studio 2005还包括了许多增强的功能,并且对所有类型的数据语言的开发和处理拥有更多的增强功能,并且大量改进了Web开发工具。Visual Studio 2005能够非常好的提供给开发人员所有相关的工具和框架支持,帮助其创建非常完美、便捷的Web应用程序。2、.NET Framework .NET Framework是应用于.NET平台的一种编程所使用的模型,其中的关键组件是公共语言运行库(CLR,Common Language Runti

24、me)和.NET Framework的类库(包括ADO.NET、ASP.NET 和Windows窗体),它提供了托管执行环境、简化的开发内容和部署以及同其他各种编程语言的集成等功能,它是是用于支持生成和运行下一代的应用程序和XML Web services的内部的Windows组件。.NET Framework旨在实现下列目标:能够提供一种标准一致化的面向对象的编程环境,并且不论对象的代码是在本地存储以及执行,还是只在本地执行但是是在Internet上分布的,或者是在远程执行的;能够提供一个可以将软件部署与版本控制保持冲突最小化的代码的执行环境;能够提供一个可提高代码(包括由未知的或不完全受信

25、任的第三方创建的代码)执行安全性的代码执行环境;能够提供一个可消除脚本环境或解释环境的性能问题的代码执行环境;能够使开发人员的使用经验在面对一些类型基本不相同的应用程序(例如基于 Windows的应用程序和基于Web的应用程序)时可以保持一致;能够严格按照工业标准去生成所有的通信,以此可以确保基于.NET Framework 的代码可以与任何其他的代码进行集成操作。2.1.2 系统的开发语言C#语言是微软公司发布的一种可以运行于.NET Framework之上,同时也是面向对象的一种高级程序设计语言,并且它也是微软公司的研究员Anders Hejlsberg的研究成果。C#与Java从某种程度

26、上非常相似。但是C#与Java也有着明显的不同3。目前C#常被应用的领域有:(1) Web应用程序,是可以通过任何Web浏览器查看的Web页。Active Server Pages.NET (ASP.NET)系统就是.Net Framework所拥有的可以动态生成Web内容,允许个性化、实现安全性等功能的强大系统。而ASP.NET应用程序我们可以通过Web Forms使用C# 创建。(2) Web服务,这是一种新方式来创建各种分布式应用程序,使用Web服务可以通过Internet虚拟交换数据。不管Web服务运用在什么系统上,也不管使用什么语言来创建Web服务,都是一样简单的语法。(3) Win

27、dows应用程序,使用.NET Framework的Windows Forms模块可以生成如Microsoft Office,有广大用户熟悉的Windows外观和操作方式的应用程序。Windows Form模块是一个控件库,在建立Windows用户界面(UI)时,其中的控件(例如按钮、工具栏、菜单等)可以直接运用。2.1.2 数据库连接简介本系统通过ADO.NET进行与数据库的连接。ADO.NET有两个核心组件:DataSet和.NET Framework数据提供程序,后者是一组包括Connection、Command、DataReader 和DataAdapter 4个对象在内的组件其中Da

28、taSet对象是ADO.NET断开结构所使用的核心组件,它的实现可以独立于任何数据源的数据访问,其工作模式类似于ODBC连接数据库的方法。Connection对象是本系统主要使用的连接方法,其提供了与数据源的连接,是本系统操作数据库的基础,同时还表示了应用程序和数据源之间进行的惟一会话。Command对象可以访问用于返回、修改数据,运行存储过程包括发送和检索参数信息的数据库命令,并且可以实现对数据源的操作,比如查询、插入、修改和删除等一些功能。DataReader对象从数据源中读取只进且只读的数据流。DataAdapter对象是DataSet对象和数据源之间进行关联的重要工具,它用数据源填充D

29、ataSet并重新解析更新。设计 ADO.NET组件的目的是为了从“数据操作”中分解出“数据访问”的内容。2.2 系统需求分析基于医院的特殊性,病床呼叫管理系统有其特殊的需求。相比于其他系统,在此系统中,可靠性的要求要强于其他要求。因此在保证系统功能完整性的同时,必须要确保系统的可靠性。并且在界面的设计上,应保证简洁、明了和友好的特点,尤其是病人端的界面,要保证所有使用此系统的病人都能快速熟练使用。护士站端的功能则应尽量齐全,以应对各种各样的突发情况。2.2.1 系统的目标病床呼叫管理系统,主要是为了方便病人的呼叫,以及按照呼叫情况分配护士。系统目标主要有:完成从病人呼叫开始,到护士应答,病人

30、反馈的整个全流程,在其中穿插进其他功能比如调换护士等。具体目标如下:1、易用性本系统应考虑病人的软件操作水平,为病人端提供最为简单的人机交互界面,减少病人的操作和按键数量,在紧急情况下避免病人按错按钮,耽误呼叫时机,延误病情。使病人能够简单快速地完成呼叫操作,及时处理病情。2、功能完整性从护士站端方面,应充分考虑各种情况发生时应如何应对。比如同时多个病人呼叫,或工作中的护士有急事急需完成等。在设计时应充分考虑如何在满足病人需求的前提下,协调安排、调配护士。3、可靠性鉴于医院的特殊性,在基本功能完成的基础上,应保证病人的每次呼叫都一定能得到回应。在呼叫发出后,需要在病人端和护士站之间加入多次的应

31、答来确保护士响应了每一位病人的呼叫以及病人的问题得到了解决。2.2.2 系统的总体任务本病床呼叫系统是为了满足医院病房的需求而开发的,除了基本的呼叫功能外,还应充分考虑护士站的其他需要及功能。经过调研护士站以及病人的需求,总结为以下几个方面:(1)病人端呼叫功能。病人在需要帮助时,可以点击病人端的呼叫按钮,向护士站发出呼叫请求。(2)护士站应答功能。护士站在接到病人的呼叫后,应立即作出应当,派出相应护士解决病人的问题。(3)病人应答功能。当病人的问题解决完成后,可以点击解决按钮,向护士作出回应,表示自己的呼叫已得到解决。(4)替换护士功能。当正在工作的护士因某些原因需要外出时,可找当前的空闲护

32、士替换自己,继续为病人完成服务。(5)调配护士功能。当本科室呼叫较少而其他科室呼叫过多时,可以将本科室的护士暂时调配到其他科室,协助其他科室响应病人的呼叫。(6)查看工作量功能。护士站可以查看当天所有护士的工作量,包括处理了哪些病人的呼叫,起止时间等。(7)专属护士指定功能。可为特殊病人安排专属护士,当此病人呼叫时,由其专属护士优先为其服务。2.2.3 系统功能需求本系统的目的是为了满足病人及护士站的需求,因此在开发时了解病人及护士站对系统的需求是十分关键的步骤。通过对病人和护士站需求的实地考察并了解了其他病床呼叫系统所包含的有用内容,本系统对医院所需要的需求进行了整合,设计并增加了许多新的功

33、能,从而完成了本系统的具体需求内容。本系统中病人的功能如图2.1病人功能分解图所示:图2.1 病人功能分解图本系统中护士站的功能如图2.2护士站功能分解图所示。图2.2 护士站功能分解图通过对功能的分析,将病人与护士站的各个功能需求罗列,并对每个功能进行相应的细化和描述。病人功能分析如表2.1病人功能分析表所示。表2.1 病人功能分析表功能名称描述选择个人信息病人在选择病人信息表中,选择自己的个人信息,并以此进入自己的病人端界面。呼叫护士病人在有需要时可以呼叫护士站,寻求帮助。视频通话在呼叫护士站之后,病人如果有需要,可以点击视频通话,跟护士站取得联系,说出自己的需求。问题已解决在护士处理完成

34、后,点击解决按钮,呼叫信息从处理表中删除,进入已解决表中。护士站功能分析如表2.2护士站功能分析表所示。表2.2 护士站功能分析表功能名称描述选择病区护士站可选择自己所属的科室及其下属病区。为医院各个科室中的各个病区都配备护士站。处理呼叫信息当有病人发出呼叫请求时,护士站安排空闲护士做出回应,将呼叫信息转移至处理表。替换护士可派本病区空闲护士替换正在工作的护士。调派护士可将本病区的空闲护士调派到其他科室进行工作。接听视频通话当病人发出呼叫并有视频通话的请求时,可接听视频通话。查看工作量可查看当前护士的工作总量,处理的病人,起止时间。2.2.4 系统用例分析1、确定系统行动者行动者直接参与系统操

35、作,图形是个人图形。行动者分为人行动者和外部系统行动者,其中区别在于,前者直接与系统交互,后者是直接与系统的外部进行交互。二者共同点都是与系统进行交互。每个行动者都能够运行多个用例,而每个用例可以由多个行动者来运行。2、构建用例模型从上面的分析中可以看出,本系统的系统行动者应是由病人和护士站两部分组成的,其中病人和护士站的用例各不相同。病人的主要用例仅为呼叫的过程部分,扩展内容仅包括视频通话的内容,而护士站的用例扩充内容较多,包括了护士站内对护士的一系列分配机制,同时也包含了视频通话的内容。下面就分别从这两部分来确定系统的用例模型。图为2.3为病人的用例图,包括了病人与系统进行的交互,主要包括

36、选择个人信息、呼叫护士、视频通话和问题已解决用例。图2.3 病人用例图图为2.4为护士站的用例图,在此图中主要体现出了护士站作为系统主要使用者和本系统地主导者与系统进行交互过程的全部信息内容。护士站作为系统的主要使用者,其内容主要包括选择病区、处理呼叫信息、替换护士、调派护士、接听视频通话和查看工作量用例。 护士站的功能不仅需要响应病人的呼叫,完成呼叫的一整个流程,同时还需为护士提供方便,完成护士的合理分配等工作。图2.4 护士站用例图2.3 本章小结本章首先对系统开发所使用的平台、语言进行了介绍,而后通过对系统各角色的功能分析,大致确定出了病人,护士站两者的基本功能,并通过功能分解图和用例图

37、详细分析了两者各自的需求与相互之间的联系。此章的工作为后续的系统的总体设计等工作奠定了一定的基础。第3章 系统的详细设计第3章 系统的详细设计上一章对病人及护士站的基本功能做了详尽的需求分析。在此基础上。本章将对系统进行详细设计,包括开发模式的选定,模块设计及数据库设计等。3.1总体设计3.1.1 系统的设计准则系统在进行总体设计时依据的基本准则是本着易用性原则,完整性原则与规范化原则来进行的。鉴于病人端与护士站端的适用人群不同,则两者所侧重的方向也应有所不同。3.1.2 系统开发模式目前在应用开发领域中,管理软件的开发平台结构主要有B/S(浏览器/服务器)模式和C/S (客户机/服务器)模式

38、在此对这两种开发模式的特点进行分析探讨。1、Client/Server模式Client/Server结构,是一种被大家所熟知的软件系统体系结构。C/S模式主要由三部分组成,其组成内容分别是:服务器管理程序(Server端)、中间件和客户应用程序(Client端),除中间件起到连接作用外,主要部分是Client端和Serve端两部分。服务器管理程序主要负责对系统资源的最优化管理工作。中间件起到了中间的纽带作用,主要为服务器管理程序和客户应用程序提供联接,协助它们完成各种查询、通讯等功能。客户应用程序,其功能是针对客户端来讲的,是客户对服务器访问的交互部件。C/S模式是两层结构的系统,分别为:客

39、户机和服务器。工作原理如下:客户机用来显示用户界面,可以让用户输入数据,并检验其数据的有效性,同时向后端的服务器发出信息,等待服务器回应后,接受并返回服务器端的响应数据、信息、结果等。它通过将任务合理分配到Client端和Server端,降低了系统的通讯开销。由于C/S模式包括客户端和服务器端,将任务进行了分配,而且每个客户端都拥有一整套完整的应用程序,当系统出错或者出现异常时都能提供提示或者帮助措施。另外,由于客户端拥有完整的应用程序,所以客户端和服务器端的交互性特别地强。再次,C/S模式提供了更加安全可靠的存取模式,其安全性可以得到很好的保证,这都归功于C/S模式采用了适用于局域网、更加安

40、全、较好的网络协议。再加之C/S模式只包括了客户端和服务器端之间的通信量,所以它大大降低了网络通信量,通过C/S模式处理大量信息就显得游刃有余了。2、Browser/Server模式Browser/Server结构是在Client/Server结构的基础上发展起来的一种结构,它采用了总共三层的分布结构,分别是:浏览器、Web服务器和数据库服务器。它是以Web技术为基础,并对C/S结构进行了一定的变化和改进而产生的。这种结构的核心是Web服务器,它的作用是负责接收浏览器的Web页请求和数据请求,并且要处理Web页请求,同时将数据请求通过数据库接口程序转换成数据库服务器能够接受的形式,在此后送到数

41、据库服务器中,数据库服务器需要执行相应的数据库操作,并要将结果通过数据库接口程序的转换送回Web服务器,Web服务器将结果处理成浏览器能够接受到的形式后,送回发出请求的浏览器,并显示出结果。Browser/Server模式有如下优点:B/S是建立在广域网的基础之上的,它大大简化了客户端,不必要在每台客户机器上都安装客户端,这节省了很大一部分磁盘空间和内存。另外它的安装过程和简单、方便,一般只要有操作系统和浏览器就行。Client/Server模式有如下优点:C/S模式可以充分发挥客户端PC方的处理能力,其中很多工作可以在客户端进行处理之后再提交给服务器。这样它所对应的优点就是客户端的响应速度快

42、并且其操作界面形式多种多样,还可以充分满足客户自身的个性化要求。在经过了综合考虑B/S结构与C/S结构的优点与缺点后,本系统决定采用C/S结构完成。在基本功能方面二者区别不大,但由于要添加视频通话功能,通过Socket通信,实现视频呼叫,而在此方面C/S结构的技术比较成熟,因此选择C/S结构。3.1.3 系统流程分析在第二章的需求分析中,已将病人与护士站的基本功能分析完毕。本系统中的主要角色只有病人和护士站,因此在本节中对这二者的工作流程进行分析。1、病人呼叫流程在病人端仅有此一个流程,步骤如下:(1)登陆病人端界面,选择自己的个人信息。由于在医院中,病人的住院是需要办理手续的,因此本程序不

43、加入注册功能,只能在已有病人信息中选择自己。(2)病人登陆后,可点击呼叫按钮,呼叫护士站,(3)问题解决后,可点击解决按钮,向护士站反馈信息。该流程如图3.1病人流程图所示。图3.1 病人活动图2、护士站流程护士站在选择所属的科室及病区后,可实时监控病人的呼叫信息,并对此作出回应。护士站流程如下:(1)选择所属的科室及病区,进入主界面。(2)当有病人呼叫时,呼叫表显示此信息,从空闲护士表中选择护士进行应答,此护士信息与呼叫信息进入处理表。(3)应答过程中若有需要,可选择空闲护士替换当前护士。(4)在病人点击解决按钮后,自动将病人的呼叫信息从处理表中移除,此呼叫信息转入完成表中。(5)通过查看完

44、成表查看每位护士一天的工作量。该流程如图3.2护士站流程图所示。图3.2 护士站流程图3.1.4 系统功能模块分析通过需求分析以及流程的分析,拟将本系统病人端及护士站端两个部分分为以下6个模块,每个模块的功能都有相互的联系,通过各个模块间的相互通信,来保证一个呼叫功能的完成。1、病人端登陆模块病人端的登陆模块直接在表中选取自己的个人信息,括病人的病例ID,名称,科室,病区,房间,以及优先级。在选择完毕后,进入病人端界面。2、护士站端登录模块护士站端的登陆模块仅需选择科室与病区即可。每个病区有下属的病房,同一病区内的所有病房均在同一护士站内。3、病人呼叫模块病人在登录后可以进行呼叫功能。在呼叫后

45、护士站的呼叫信息表中会显示该病人的信息,包括病例ID、名称、优先级、专属护士、科室、病区、房间以及时间。4、视频通话模块病人在呼叫的同时可以选择视频通话功能,向护士站发出视频通话请求。护士站可以选择发出呼叫请求的病人,接受其视频通话的请求。此模块通过Socket编程实现,在系统设计与实现中进行详细说明。5、查看工作量模块在此模块中包含两个表的内容。第一个是护士工作量表,仅显示护士ID、护士名称以及处理次数。在第二个表中,具体显示所选中护士的所处理的病人名称和起止时间。在空闲护士信息表中,以此表的数据按工作量由小到大来为护士排序,从而尽量做到平均每位护士的工作量。6、清除模块此模块可以删除所有

46、处理结果的记录以及工作量统计信息,适合在每次换班时使用,避免信息冗余,混杂在一起。3.2 系统体系结构本系统分为三层结构,具体如下:1、表现层设计从上述的分析可知,本系统为了完成病人的呼叫,而后护士站进行应答,再由病人点击解决的整个流程,共需要两个界面来完成。本系统的表现层设计由Visual Studio 2005来完成,通过控件的使用和对控件的代码编写,来完成主界面。2、业务层设计系统的业务层位于表现层和数据层之间,其内容主要是业务的实现,在此三层中,应实现相互间松耦合,这样可以使程序有可扩展性,为后续增加功能及内容做准备。在业务层的设计中,为系统提供一个单独的层次来满足核心业务逻辑,在此层次中封装与系统关联的应用模型,从而能够把用户表示层和数据层的代码分开,业务层的目的是为了提供应用程序和数据服务之间的联系,从而可以执行业务处理并且封装应用模式来呈现给表现层的应用程序。3、数据层设计在数据层中,本系统采用对象关系映射策略设计开发,以此来进行与数据库的连接,从

宁ICP备18001539号-1