基于Android的医院挂号系统毕业论文范文.doc_第1页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1. 绪论1.1. 研究背景随着全世界人类不断进步,科技文化飞速发展,人们的生活质量也大大提升了,相比于以前的社会,如今的人们正享受着有完整的教育、医疗、司法等体系的现代社会。而其中最重要的一个方面就是人们的医疗保障更加完善。如果说旧社会看病难、看病贵,很多人生了病由于得不到及时治疗而造成不可挽回的后果,甚至危及生命,如今的社会便是大大加强了医疗事业的发展。尽管如今仍有数不清的疑难杂症等待人类去攻克,但是我们同样也作出了数不清的研究成果去攻克疾病,为人类造福。如今,国内发展城镇、乡村医疗中心计划,让全国医疗机构迅速扩张。就我个人体验来看,以前回到老家想要看病还要去城里面大医院,现在家门口就有医疗中心,完整的医疗设备让我们老百姓不需要花费太大的代价就能完成就医。而在国外,医疗事业更加发展的例子也比比皆是。而医疗事业更加发展也同样带来一系列问题,其中最严峻的要数就医人数愈加庞大,医疗机构的流程缓慢,挂号排队消耗大量精力。这些问题的产生的原因主要是,随着医疗事业发展,人们生活水平不断提高,就医人数越来越多,但是患者得到的就医信息并没有跟上医疗事业发展的速度。老百信并不清楚看什么病到什么医院好,附近有什么医院口碑不错,哪个医师对某项病情颇有研究心得。这一系列的就医信息无法及时获得导致病人在看病过程中“瞎打误撞”,浪费很多精力。更有甚者“病急乱投医”“司马当活马医”,这些都是现今社会医疗事业存在的严重问题。然而这些问题也是有解决的办法的。随着科技文化迅速发展,数字化信息时代已经降临并且正在飞速发展着。未来的中国乃至全世界都讲进入一个依靠网络信息交流的群体,人们可以用科技信息的手段来弥补上述医疗事业中存在的问题。如今国内医疗机械、设备、技术不断更新,已经出现类似网上就医信息、网上预约挂号、自动挂号终端等服务体系来更好地缓解人们就医的压力。然而这些还是远远不够的。在国内,随着电信、联通、移动公司的发展,3G、4G网络迅速发展,如今的人们是人手一部手机,而移动网络也是几乎覆盖了全国各地。再这样一个移动终端十分普及的时代,试想如果我们能将就医信息、预约挂号等功能在移动终端上实现,无意能大大缓解人们的就医现状。患者再也不用花费巨大精力去了解就医信息,同样也减省精力去排队挂号,真正做到看病简单的目的。基于这样的思考,本课题选择了在移动终端中比较年轻的,具有活力的,飞速发展并且潜力无限的Android移动平台来完成这样一套“基于Android的医院挂号系统的设计与实现”。期望这套系统能从解决人们就医繁琐的目的出发,更好地服务于患者与医院,让老百姓看病更加简单。1.2. 研究现状目前社会上主流挂号渠道主要有电话预约、短信预约、互联网预约、移动网络预约等方式。国内常用的预约方式便是电话预约和互联网预约,这些方式都有极大不便之处,比如这些系统的开发出发点都是医院,都是为了更好地服务于医院才设计出来的,无法从根本上解决患者挂号难、挂号烦的问题。另一方面,这些就医系统表面上看起来实现了医师患者信息交互,但实际仍然在就医咨询,双向交流上有极大不便之处。1.3. 本课题研究意义从社会角度考虑,本课题旨在构建一个基于Android的医院挂号系统,解决社会上医院挂号难,挂号烦的问题。本课题的研究符合我国社会发展现状,老百姓正处在一个需要完善的社会体系的阶段,医院挂号系统正好缓解就医压力,促进社会体系完善,加强社会和谐。从老百姓实际问题角度考虑,本课题旨在帮助患者更好地就医。如果以前的病人需要到医院排几个小时甚至一天的队去挂号看病还没有很好的效果,那么这套系统可以完美解决这个问题,让患者可以足不出户就可以完成预约挂号,并且挂的绝对是大家口碑甚好的医师,让你一次性解决看病问题。1.4. 本课题的主要工作Android操作系统基于Linux内核,具有良好的开源性以及封装性,可以完美完成本课题的设计研究。本课题利用Android应用技术,实现医院挂号系统,完成以下研究:1. 提出本课题的演究背景及演就意义。2. 对挂号系统进行需求分析,完成初步方案选择。3. 进行初步设计及详细设计,进行MySQL数据库设计。4. 从Android客户端及web客户端及服务器入手,利用集成开发环境及工具进行软件开发。5. 研究HttpClient协议接口,实现客户端与服务器的交互。6. 构建模拟器与测试环境,进行软件测试及压力测试。7. 完善系统与论文。1.5. 本课题创新点1. 系统采用实名认证,防止恶意挂号及黄牛贩号。2. 系统采用患者、医师、管理员三项交互,真正实现信息同步,就医及时。3. 在客户端与服务器端使用JSON封装数据,在数据传输上降低了资源开销。同时也加强数据安全性以及传输效率。1.6. 本章小结通过对本课题研究背景、研究现状、研究意义等的总体概述,提出被课题大致的研究方向及工作内容,阐述了本课题为什么要研究、研究的结果是什么。通过系统地规划,构建出一个基于Android的医院挂号系统的雏形。2. 可行性研究2.1. 社会现状可行本课题旨在构建基于Android的医院预约挂号系统,可以随时随地在移动终端完成预约挂号的目的,符合社会及老百姓需求需要。设计目的确实可行。2.2. 技术支持可行本课题采用Android技术及相关集成开发环境和工具完成系统的开发。Android平台虽然是一个比较年轻的移动终端,短时却非常具有活力,发展迅速势不可挡并且也将继续发展下去。Android平台开发相关技术无疑是比较成熟的,完全可以满足本系统的研究需求,并且利用Android平台开发出来的系统在社会上同样具有很好的市场。利用Android技术开发确实可行。2.3. 本章小结本章通过社会可行性及技术可行性两个方面对本次课题研究的可行性给出了说明,明确了基于Android的医院预约挂号系统确实可行。3. 相关技术及工具介绍3.1. Android平台介绍Android平台具有良好的可操作性和移植性,利用C语言和JAVA语言开发,兼容性良好。Android平台基于Linux内核,开放源码,因此平台无关性让这个年轻的系统具有很好的发展势头,Android开发人员也与日俱增。这让它的技术也愈加成熟。本课题采用Android的JAVA 语言开发,JAVA语言的特点是接口复用性好,方便程序间的调用。面向对象的开发特点也让JAVA语言在应用开发中占据很大的竞争优势。Android的最大的优势便是其开源性导致及其广大的用户市场及受众群体,俗话说的好“三个臭皮匠,赛过诸葛亮”,越来越多的优秀软件工程师投入Android平台开发之中,让这个移动终端中年轻的成员越来越强大。Android的特点除了这些还有类似具有免费的开发服务环境、界面丰富、系统可裁剪、应用程序框架支持组件重用集成和继承、具有自主研发的虚拟机且占用的内存和资源比较少、性能稳定优越、自带有3D和自定义2D图形库、数据存储方式灵活的SQLite、支持蓝牙等无线通信、3G接入和公共网络WIFI接入、支持罗盘技术、照相机和地理信息系统定位等、拥有强大的模拟器和调试工具、附加上内存检测后可以达到稳步进行应用程序开发。Android平台具有良好的平台开放性,能够为用户提供广泛的应用和服务于Google应用实现无缝结合。3.2. Android平台的架构Android 是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序 移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。这里介绍Android的系统架构android系统架构图android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和linux核心层。3.2.1. 应用程序Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。3.2.2. 应用程序框架开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简化了组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。同样,该应用程序重用机制也使用户可以方便的替换程序组件。隐藏在每个应用后面的是一系列的服务和系统, 其中包括:l 丰富而又可扩展的视图(Views),可以用来构建应用程序, 它包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons), 甚至可嵌入的web浏览器。l 内容提供器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库), 或者共享它们自己的数据l 资源管理器(Resource Manager)提供 非代码资源的访问,如本地字符串,图形,和布局文件( layout files )。l 通知管理器 (Notification Manager) 使得应用程序可以在状态栏中显示自定义的提示信息。l 活动管理器( Activity Manager) 用来管理应用程序生命周期并提供常用的导航回退功能。3.2.3. 系统运行库1)程序库Android 包含一些C/C+库,这些库能被Android系统中不同的组件使用。它们通过 Android 应用程序框架为开发者提供服务。以下是一些核心库:l 系统 C 库 - 一个从 BSD 继承来的标准 C 系统函数库( libc ), 它是专门为基于 embedded linux 的设备定制的。l 媒体库 - 基于 PacketVideo OpenCORE;该库支持多种常用的音频、视频格式回放和录制,同时支持静态图像文件。编码格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG 。l Surface Manager - 对显示子系统的管理,并且为多个应用程序提 供了2D和3D图层的无缝融合。l LibWebCore - 一个最新的web浏览器引擎用,支持Android浏览器和一个可嵌入的web视图。l SGL - 底层的2D图形引擎l 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件 3D加速(如果可用)或者使用高度优化的3D软加速。l FreeType -位图(bitmap)和矢量(vector)字体显示。l SQLite - 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。2)Android 运行库Android 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik被设计成一个设备可以同时高效地运行多个虚拟系统。 Dalvik虚拟机执行(.dex)的Dalvik可执行文件,该格式文件针对小内存使用做了优化。同时虚拟机是基于寄存器的,所有的类都经由JAVA编译器编译,然后通过SDK中 的 dx 工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于linux内核的一些功能,比如线程机制和底层内存管理机制。3.2.4. Linux 内核Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理, 网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件栈之间的抽象层。3.3. 基于TCP/IP的客户端与服务器通信原理Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信。Http 是“请求响应”方式,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据。Socket 通信则是在双方建立起连接后就可以直接进行数据的传输,在连接时可实现信息的主动推送,而不需要每次由客户端想服务器发送请求。本课题研究主要使用HTTP通信。在Android开发中,Android SDK附带了Apache的HttpClient,它是一个完善的客户端。它提供了对HTTP协议的全面支持,可以使用HttpClient的对象来执行HTTP GET和HTTP POST调用。HTTP工作原理:1.客户端(一般是指浏览器,这里是指自己写的程序)与服务器建立连接2.建立连接后,客户端向服务器发送请求3.服务器接收到请求后,向客户端发送响应信息4.客户端与服务器断开连接HttpClient的一般使用步骤:1.使用DefaultHttpClient类实例化HttpClient对象2.创建HttpGet或HttpPost对象,将要请求的URL通过构造方法传入HttpGet或HttpPost对象。3.调用execute方法发送HTTP GET或HTTP POST请求,并返回HttpResponse对象。4.通过HttpResponse接口的getEntity方法返回响应信息,并进行相应的处理。5.最后记得要在AndroidManifest.xml文件添加网络权限3.4. Android的构成和工作机制Android组件功能不同,各自完成自己的任务。Android组件包括了Activity、Service、Broadcast Receiver和Content Provider.四个组件各自完成各自的功能,通过Intent在不同组件之间完成导航、跳跃。菜单下拉框、对话框等可由VIEW类进行可视化开发。3.4.1. ActivityActivity是Android最基本的模块,用来完成最基本的可视化界面功能,每一个Activity都完成一个对应的界面,也有一个自己对应的生命周期,可以根据需要自由地创建与销毁。Activity有三种基本状态:l Active状态,处于屏幕前景,就是当前task的栈顶Activity正处于Active状态,同一时刻只能有一个Activity处于Active状态。l Paused状态,处于背景画面状态,将失去了焦点,但依然是活动状态。l Stopped状态,不可见,但始终保持所有的状态和内存信息。3.4.2. ServiceService通过后台运行来完成一系列功能需求,它与Activity颇有相似之处,如果说它们的区别的话,那么就是它们一个在明,一个在暗,各司其职、共同配合完成系统功能。3.4.3. Broadcast Receiver使用Broadcast Receiver接受和处理广播通知,部分的相应程序进行广播时会采用Broadcast Receiver进行多播。当电量低时,都会产生广播通知receiver。当用户数据下载完成后会通知其他应用程序。所有的receiver否继承与Broadcast Receiver这个父类。而且可以通过他们启动和提醒用户NotificationManager发送过来的Notififications。应用程序发送了多个消息,并相应会有关键消息。当多个重要要求相应的消息发送过来,通过Intent查看可以启动多个Broadcast Receiver对Intent进行监听。3.4.4. ContentProviderContentProvider支持SQLite,并且可以对资料文件进行封装压缩。作为第三方数据服务提供器,他具有标准的数据访问接口。通过它可以起到在应用程序共享数据的作用。3.4.5. ViewView在Android中起到视图作用,任何可视化视图组件都要集成View类来完成组件加载。3.4.6. Intent负责调配前面四种组件,使他们相互协同工作,主要作为一个中介传递作用,为组件提供信息,实现各部件紧凑有序工作。通过Intent,使信息不断传递。3.4.7. MVC模式MVC (Model-View-Controller):M是指逻辑模型,V是指视图模型,C则是控制器。一个逻辑模型可以对于多种视图模型,比如一批统计数据你可以分别用柱状图、饼图来表示。一种视图模型也可以对于多种逻辑模型。使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式,而C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新,这与设计模式中的观察者模式是完全一样。 MVC好处:从用户的角度出发,用户可以根据自己的需求,选择自己合适的浏览数据的方式。从开发者的角度,MVC把应用程序的逻辑层与界面是完全分开的,最大的好处是:界面设计人员可以直接参与到界面开发,程序员就可以把精力放在逻辑层上。而不是像以前那样,设计人员把所有的材料交给开发人员,由开发人员来实现界面。在Eclipes工具中开发Android采用了更加简单的方法,设计人员在DroidDraw中设计界面,以XML方式保存,在Eclipes中直接打开就可以看到设计人员设计的界面。 Android中界面部分也采用了当前比较流行的MVC框架,在Android中:1)视图层(View):一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如何你对Android了解的比较的多了话,就一定可以想到在Android中也可以使用JavaScript+HTML等的方式作为View层,当然这里需要进行Java和JavaScript之间的通信,幸运的是,Android提供了它们之间非常方便的通信实现。2)控制层(Controller):Androi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论