基于web的社区服务系统的设计与实现_第1页
基于web的社区服务系统的设计与实现_第2页
基于web的社区服务系统的设计与实现_第3页
基于web的社区服务系统的设计与实现_第4页
基于web的社区服务系统的设计与实现_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

电 子 科 技 大 学毕 业 设 计(论 文)论文题目: 基于Web的社区服务系统的设计与实现学习中心(或办学单位):四川科技职工大学学习中心指导老师: 李德军 职 称: 讲师学生姓名: 王 杰 学 号: v专 业: 计算机科学与技术 电子科技大学继续教育学院制网络教育学院2011年 月 日电 子 科 技 大 摘要摘 要随着社会的发展和生活水平的提高,医疗服务逐渐不断完善,并且朝着网络化、高效率化、系统化发展,使得医疗信息通过互联网快速传播,使病人与医生之间的沟通距离发生了革命性的变革,社区医疗管理必须做出不断的调整,使得社区医疗服务不能再墨守成规而是不断改善前进,在开发系统前,具体分析系统的性能需求、环境需求、功能需求,满足后阶段系统开发工作所需要的信息。本文对按照软件开发的各个步骤进行具体介绍,其中着重介绍了软件需求分析、概要设计、详细设计中数据库的设计、实现与调试等。首先,在“前言”中对社区服务在现代网络系统中所处的地位进行简要的介绍,使读者对本课题有一个大致的了解;然后,按进行开发过程顺序的描述,其中包括部分主要图表以方便读者的阅读和理解;最后,对整个开发过程进行了总结。关键词:构件化;社区服务;ASP;IIAbstractAbstractWith the social development and improvement of living standards, Medical services continue to improve gradually, and toward network-based, high efficiency, systematic development, making the rapid dissemination of medical information through the Internet, so that communication between patients and doctors a revolutionary change in the distance, community health management must make constant adjustment, making the community health service can no longer rigid but constantly improving forward, we must develop systems before the detailed analysis of system performance requirements, environmental requirements, functional requirements, the latter stage of system development to meet the information needed. In this paper, the various steps in accordance with software development for specific description, which focuses on the software requirements analysis, outline design, detailed design, database design, implementation and commissioning. First, in the Preface in the community service in a modern network system in which the status of a brief introduction, the reader of this issue have a general understanding; then, according to the description of the order of the development process, including some of the main chart to convenience of the reader to read and understand; Finally, a summary of the entire development process.Key words: component; community service; ASP;III目录IV电子科技大学毕业论文(设计) 基于Web的社区服务系统的设计与实现第一章 概述第一节 研究背景随着生活水平的迅速发展,医疗服务逐渐不断完善,并且朝着网络化、高效率化、系统化发展,使得医疗信息通过互联网快速传播,使病人与医生之间的沟通距离发生了革命性的变革,社区医疗管理必须做出不断的调整,使得社区医疗服务不能再墨守成规而是不断改善前进,我们必须在开发系统前,具体分析系统的性能需求、环境需求、功能需求,满足后阶段系统开发工作所需要的信息。该系统的开发主要适用于社区医疗服务机构,它主要满足一般医疗服务的需要和向社区居民提供医疗信息服务,所以该系统的开发必须符合社区医疗机构的常规使用。该系统必须能够有良好的性能,方便可靠及时的处理日程医疗问题。因此,要求病情统计管理、药品信息管理及社区医疗信息的管理等都必须及时体现在其发生阶段的情况,通过网络共享社区医疗资源和信息,方便居民和社区服务机构及时询问问题和及时公布社区医疗新闻、解决居民提出各种健康问题及其它问题的解决,为社区居民创造一个美好健康的生活环境。系统的总体设计遵循“统一规划,分布实施”的思想,使整个系统具有先进性、开放性、经济性、界面友好性、易于扩充和维护性等特点。先进性是目前世界上先进的高速网络及计算机系统技术,确保整个系统在运行若干年后,仍能基本满足用户的需要;开放性是整个网络系统采用开放式体系结构,保证异种数据库平台的通信;经济性要求既考虑系统的先进性,也要考虑系统的经济性,软硬件的配置在产出和投入的比例关系上要恰当;界面友好性是要求系统的开发采用人性化的设计方法,注重人机交互界面的友好性,以便于系统的使用和推广;易于扩充和维护性是系统的设计应留有足够的扩充空间,以便于将来软硬件的升级,用户进行系统维护应方便简单从课题的现状来看,我们可以看出这种基于桌面应用程序系统的最大的一个特点,那就是信息之间无法共享,使得信息成了一个孤岛。为了改善这种信息孤岛模式,我们必须采用一些新技术来解决这些信息孤岛的问题。而近年来兴起Web技术就给我们带来了时代的变迁,我们可以使用ASP来开发该应用程序,该网站在响应速度上快,同时Web技术的应用,不仅实现了数据的实时性和共享性,而且Web服务的跨平台传输特性使得该软件的通用性更强,实用性更好。31第二节 国内外研究现状当前,我国正处于急剧变化的社会转型期,转型带来的社会矛盾凸显、人口流动增强及互联网的迅速崛起,促进了网络论坛、BBS等网络社区的发展。网络社区已成为人们信息发布、观点交流、权益维护、舆论监督的重要平台,在建设和谐社会中的作用渐显。社区的概念及其网络化。“社区”一词是由英文Community翻译而来,其拉丁语词源意指“共同的东西和亲密伙伴关系”。德国社会学家斐迪南?滕尼斯最早将“社区”一词用于社会学研究,其名著共同体与社会中,社区被描述为“一种由共同价值观念的同质人口组成的密切、守望相助、存在一种人情味的社会关系的社会团体”。二战后,美国经验主义社会学家将“社区”向地域共同体靠拢,突出其“地域”涵义。我国社会学界也较强调社区的地域性,认为社区是聚集在一定地域范围内的社会群体和社会组织,根据一套规范和制度结合而成的社会实体,是一定地域的社会生活共同体。中国社会的急剧转型促使人口流动性加剧,而科技的进步让社会进入互联网时代。以上因素造成传统意义上以地缘为纽带的社区走向网络化,由地域观点出发的“社区”概念也随着时代的前进而改变。有社会学家提出:即使人们不住在一个地理区域或相互之间不进行社会交往,社区依然存在。这类社区以网络论坛、BBS、博客、贴吧为代表。它们突破了传统社区的地域性,让生活在不同地理区域的人们能够进行交往。第三节 软件构件技术构件(Component)是指应用系统中可以明确辨识的构成成分。而可复用构件(Reusable Component)是指具有相对独立的功能和可复用价值的构件。可复用构件应具备以下属性:有用性(Usefulness):构件必须提供有用的功能;可用性(Usability):构件必须易于理解和使用;质量(Quality):构件及其变形必须能正确工作;适应性(Adaptability):构件应该易于通过参数化等方式在不同语境中进行配置;可移植性(Portability):构件应能在不同的硬件运行平台和软件环境中工作。随着对软件复用理解的深入,构件的概念已不再局限于源代码构件,而是延伸到需求、系统和软件的需求规约、系统和软件的构架、文档、测试计划、测试案例和数据以及其他对开发活动有用信息。这些信息都可以称为可复用软件构件。 与传统的软件开发方式相比,基于构件的软件开发方法有什么突破呢?以下详述用构件化开发本系统的原因。(1)体系结构:软件体系结构代表了系统公共的高层次的抽象,它是系统设计成败的关键。其设计的核心是能否使用重复的体系模式。传统的应用系统体系结构从基于主机的集中式框架,到在网络的客户端上通过网络访问服务器的框架,都不能适应目前企业所处的商业环境,原因是:企业过分地依赖于某个新闻的软件和硬件产品。这种单一新闻使得企业难以利用计算新闻的免费市场,将计算基础设施的重要决定交给第三方处理,这显然不利于企业在合作伙伴之间共享信息。不能适应远程访问的分布式、多层次异构系统。封装的应用系统在出现某种组织需要时,难以用定制来维护系统,从而难以满足多变的需求。不能实现分析、设计核心功能重用,最多只能实现代码重用。如今,应用系统已经发展成为在Intranet和Internet上的各种客户端可远程访问的分布式、多层次异构系统。CBSD为开发这样的应用系统提供了新的系统体系结构。它是标准定义的、分布式、模块化结构,使应用系统可分成几个独立部分开发,可用增量方式开发。 这样的体系结构实现了CBSD的以下几点目标: 能够通过内部开发的、第三方提供的或市场上购买的现有构件,来集成和定制应用软件系统。 鼓励在各种应用系统中重用核心功能,努力实现分析、设计的重用。系统都应具有灵活方便的升级和系统模块的更新维护能力。 封装最好的实践案例,并使其在商业条件改变的情况下,还能够被采用,并能保留已有资源。由此看出,CDSD从系统高层次的抽象上解决了复用性与异构互操作性,这正是分布式网络系统所希望解决的难题。(2)开发过程:传统的软件开发过程在重用元素、开发方法上都与CBSD有很大的不同。虽然面向对象技术促进了软件重用,但是,只实现了类和类继承的重用。在整个系统和类之间还存在很大的缺口。为填补这个缺口,人们曾想了许多方法,如系统体系结构、框架、设计模式等。自从构件出现以来,软件的重用才得到了根本改变。CBSD实现了分析、设计、类等多层次上的重用。在分析抽象层上,重用元素有子系统、类;在设计层上重用元素有系统体系结构、子系统体系结构、设计模式、框架、容器、构件、类库、模板、抽象类等。 在软件开发方法上,CBSD引导软件开发从应用系统开发转变为应用系统集成。建立一个应用系统需要重用很多已有的构件模块,这些构件模块可能是在不同的时间、由不同的人员开发的,并有各种不同的用途。在这种情况下,应用系统的开发过程就变成对构件接口、构件上下文以及框架环境一致性的逐渐探索过程。例如,在J2EE平台上,用EJB框架开发应用系统,主要工作是将应用逻辑,按session Bean、entity Bean设计开发,并利用JTS事务处理的服务实现应用系统。其主要难点是事务划分、构件的部署与开发环境配置。概括地说,传统的软件开发过程是串行瀑布式、流水线的过程;而CBSD是并发进化式,不断升级完善的过程。(3)软件方法学:软件方法学是从各种不同角度、不同思路去认识软件的本质。传统的软件方法学是从面向机器、面向数据、面向过程、面向功能、面向数据流、面向对象等不断创新的观点反映问题的本质。整个软件的发展历程使人们越来越认识到应按客观世界规律去解决软件方法学问题。直到面向对象方法的出现,才使软件方法学迈进了一大步。但是,高层次上的重用、分布式异构互操作的难点还没有解决。CBSD发展到今天,才在软件方法学上为解决这个难题提供了机会。它把应用业务和实现分离,即逻辑与数据的分离,提供标准接口和框架,使软件开发方法变成构件的组合。因此,软件方法学是以接口为中心,面向行为的设计。归纳起来,CBSD的软件开发方法学应包括下面几方面: 对构件有明确的定义。 基于构件的概念需要有构件的描述技术和规范,如UML、JavaBean、EJB、Servlet规范等。开发应用系统必须按构件裁剪划分组织,包括分配不同的角色。 有支持检验构件特性和生成文档的工具,确保构件规范的实现和质量测试。总之,传统的软件方法学从草稿自顶向下进行,对重用没有提供更多的辅助。CBSD的软件方法学要丰富得多,它是即插即用,基于体系结构,以接口为中心,将构件有机组合,它把自顶向下和自底向上方法结合起来进行开发。(4)开发组织机构:传统软件的开发组织一般由分析员、设计员、程序员和测试员组成。对一个小的应用系统来说,一个熟练的开发人员,可能兼顾以上多个角色。但对CBSD来说,因为构件开发与应用系统集成往往是分开进行的,因此整个开发过程由六个角色来完成,他们是:构件开发者也是构件供货商,这些大多数是中间件构件提供(续致信网上一页内容)者。应用构件集成者 针对某应用领域将已有构件组合成更大的构件模块或容器,作为系统部署的基本单元。应用系统部署者 将系统部署基本单元放入选定的平台环境或基本框架中,完成软件定制的要求。 开发平台服务器新闻 提供服务器、操作系统和数据库等基本软件。 应用系统开发工具新闻 提供构件公共设施服务。系统管理员 配置硬件、网络和操作系统,监督和维护应用系统者。这六个角色的工作专业性很强,要兼顾成为多面手很不容易。目前已形成构件开放市场,而且还很火红。这也是当今软件人才大战所遇的一个困惑。因此,在CBSD中,如何组织好开发队伍尤为重要,必须按本企业所具备人才来组织。特别重要的是:开发初期必须选好标准框架,以及统一的开发指导方针,保证在整个开发过程中,各角色能随时互相沟通。一般来说,CBSD的人员素质决定了构件的重用率。(5)构造方法:传统应用软件的构造是用白盒子方法,应用系统的实现全在代码中,应用逻辑和数据粘结在一起。而CBSD 的构造是用白盒子和黑盒子相结合的方法。基于构件的框架是用两个概念来支持演变:第一个概念是构件有很强的性能接口,使构件逻辑功能和构件模型的实现都隐藏起来。这样,只要接口相同,构件就可以被替换。第二个概念是隐式调用,即在基于构件的框架中,从来不直接给构件的接口分配地址,只在识别构件用户后才分配地址。因此,构件用户只要了解接口要求和为构件接口提供的引用后的返回信息 (该引用可能是一个构件,也可能是一个构件代理。对构件用户来说,构件代理就是构件,不用区分)。 构件接口的信息并不存入构件内,而是存入构件仓库或注册处。这样才能保证构件替换灵活,并很容易利用隐式调用去重新部署构件。由于构件的实现对用户透明,因此也使构件能适应各种不同的个性化要求。为此,构件提供自检和规范化两个机制。自检保证在不了解构件的具体实现时,就能获得构件接口信息。例如,JavaBean提供的自检机制是Reflection和BeanInfo,通过Reflection可直接获得Bean构件的全部方法,通过BeanInfo可直接获得构件的许多复杂信息。规范化允许不访问构件就可以修改它,如JavaBean提供的规范化是property sheet和customizer(定制器)。通过property sheet提供一组简单参数,修改Bean的属性。复杂的修改由用户通过定制器设置参数完成。第四节 技术简介一、 ASP的简介ASP全称为Active Server Pages,即动态服务器页面,它是一套微软开发的服务器端脚本环境,ASP内含于IIS 3.0以上版本之中,通过ASP我们可以结合HTML网页、ASP指令和ActiveX元件建立动态、交互且高效的Web服务器应用程序。ASP文件(即*.asp文件)与HTML文件类似,但ASP文件可以包含脚本命令,脚本命令放在之间。当用户请求一个*.asp主页时,WWW响应HTTP请示调用ASP引擎,解释被申请的文件,当遇到与ActiveX Scripting兼容的脚本(VBScript或JavaScript)时ASP引擎调用相应的脚本引擎进行处理。ASP脚本在服务器端解释执行,结果自动生成符合HTML语言的主页去响应用户的请求。ASP目前已成为目前应用最广泛的动态网页开发工具,同时应用ASP进行网络化的信息管理系统也逐步得到推广。二、 ASP的特点1使用VBScript、JavaScript等简单易懂的脚本语言,同时结合HTML代码,即可快速地完成网站的应用程序。2使用普通的文本编辑器,如Windows的记事本,即可进行编辑设计,而利用诸如FrontPage或者Dream weaver等所见即所得的网页编辑软件可以快捷方便地进行编辑,易学易用。3与浏览器无关(Browser Independence),用户端只要使用可执行HTML代码的浏览器,即可浏览ASP所设计的网页内容。ASP所使用的脚本语言(VBScript、JavaScript)均在Web服务器端执行,用户端的浏览器不需要能够执行这些脚本语言。4Active Server Pages能与任何ActiveX Scripting语言相容。ActiveX Server Components(ActiveX 服务器元件)具有无限可扩充性。可以使用Visual Basic、Java、Visual C+、COBOL等编程语言来编写你所需要的ActiveX Server Components。5Active Server Pages 的源程序,不会被传到客户端浏览器,因而可以避免所写的源程序被他人剽窃,也提高了程序的安全性。ASP的奇妙之处真是不胜枚举,更为重要的是,ASP是一种“无须编程”的软件开发工具,用简单的几个语句,即可对数据库进行操作。另外,ASP程序员的数量惊人,所以当你遇到问题时,可以请求他人帮你解决。三、 ASP的六大对象1.Application对象是一个应用程序级的对象,用在所有用户间共享信息,并可以在Web应用程序运行期间持久地保持数据。2.ObjectContext对象用于控制Active Server的事务处理。事务处理由Microsoft Transaction Server(MTS)管理。3.Request对象用于接受所有从浏览器发往服务器的请求内的所有信息。Request对象是ASP中最基本和最常用的对象。4.Response对象用于向客户端浏览器发送数据,用户可以使用该对象将服务器的数据以HTML的格式发送到用户端的浏览器,它与Request组成了一对接收、发送数据的对象,这也是实现动态的基础。5.Server对象是ASP中一个很重要的对象,许多高级功能都是靠它来完成的。它提供了对ASP及其方法的使用。6.Session其实指的就是访问者从到达某个特定主页到离开为止的那段时间。每位访问者都会单独获得一个Session。在Web应用程序中,当一个用户访问该应用时,Session类型的变量可以供这个用户在该Web应用的所有页面中共享数据;如果另一个用户也同时访问该Web应用,他也拥有自己的Session变量,但两个用户之间无法通过Session变量共享信息,而Application类型的变更则可以实现站点多个用户之间在所有页面中共享信息。四、ASP与ACCESS的连接数据库的访问方式ASP的访问数据库的功能是非常强大的,能够快速有效地对数据库进行访问和管理,访问数据库的方式有两种:(1)通过标准的数据库接口进行数据库的连接这些接口包括ODBC、JDBC和OLEDB等。标准的数据库接口是通过一个遵循标准的驱动程序(ODBC、JDBC),或是通过数据提供器(OLEDB)与数据库联系通信的。遵循标准的驱动程序或数据提供了一些标准的API定义的抽象函数,可以将一个数据请求调用转化成为一个特定数据库所能理解的操作。(2)通过数据库的专用接口来直接连接数据库它使用数据库专用的API与数据库联系通信,这种方式效率很高。通过我们连接大型数据库时采取的是这一种方式,例如:Oracle、Informix等。五、IIS简介IIS是Internet Information Server的缩写,它是微软公司主推的服务器,最新的版本是Windows2000里面包含的IIS 5,IIS与Window NT Server完全集成在一起,因而用户能够利用Windows NT Server和NTFS(NT File System,NT的文件系统)内置的安全特性,建立强大,灵活而安全的Internet和Intranet站点。IIS支持HTTP(Hypertext Transfer Protocol,超文本传输协议),FTP(File Transfer Protocol,文件传输协议)以及SMTP协议,通过使用CGI和ISAPI,IIS可以得到高度的扩展。IIS支持与语言无关的脚本编写和组件,通过IIS,开发人员就可以开发新一代动态的,富有魅力的Web站点。IIS不需要开发人员学习新的脚本语言或者编译应用程序,IIS完全支持VBScript,JavaScript开发软件以及Java,它也支持CGI和WinCGI,以及ISAPI扩展和过滤器。六、DreamWeaver MX 2004的简介 一个可视化的网页设计和网站管理工具,支持最新的Web技术,包含HTML检查、HTML格式控制、HTML格式化选项、Home Site/BBEdit捆绑、可视化网页设计、图像编辑、全局查找替换、全FTP 功能、处理Flash和Shockwave等流媒体格式和动态HTML、基于团队的Web创作。在编辑上你可以选择可视化方式或者你喜欢的源码编辑方式。 Dream weaver MX 2004 的十大新特性: 1.动态跨浏览器验证:自动检测标签和CSS规则来适应所有主流浏览器! 2.更强大的CSS支持。 3.内建的图形编辑引擎:修剪,改变大小,尺寸,旋转角度,调节明暗度都不需要离开Dream weaver环境,因为它本身集成了FW的基本图形编辑技术.(这一点有模仿FrontPage的嫌疑,但这个功能确实很实用)。 4.安全FTP:完全加密传输保证文件和账号信息的安全。5.增强对当今技术的支持:支持当今主流的开放环境:ColdFusion,J2EE,PHP,.NET,和其他主流的服务器技术.Dream weaver现在加入了XML命名空间支持,ASP.NET表单控件对象,新的参考书内容和新的PHP服务器端行为。 6.无缝整合外部文件和代码:直接将Word和Excel文档复制和粘贴到Dream weaver中,会保留字体,颜色,CSS样式表信息.使用,使用系统支持的编码保存任何字体,包括双字节字符集。 7.紧密整合MM的其他工具:加强了和MM其他几款产品的协同工作能力.例如:你可以通过DW直接设置Flash组件的参数。 8.基本支持改良:插入条,表格工具都有改进。9.增强代码编写工具:编辑代码更省时,例如右键编写代码工具,增强的查找和替换,高效的属性面板。 10.改进的设计开放环境:一个改良的用户界面,更高的实用性,非常亲切和有逻辑,让你快速找到你想要的东西,一个新的开始屏幕让你快速访问最近的文件和教程资源。七、VbScript、 JavaScript简介Visual Basic的Scripting版本(VBScript),Active Sever Pages的缺省脚本语言。VBScript通过变量, 操作符,循环,分支,函数和子例程,扩展了HTML。通过在HTML网页中加人VBScript脚本,你可以使静态的HTML网页成为动态网页。VBScript与Basic语言有密切关系。如果你熟悉BASIC,你将会发现VBScript很容易学习和使用。VBScript是Microsoft Visual Basic的简化版本。VBScript是一种脚本语言。这意味着这种语言比BASIC语言的成熟版本容易使用又难于使用。编制简单的程序时,脚本语言是容易使用的。脚本语言的句法比较简单。但是,简单的句法也使开发大的应用程序变得很困难。你可以在HTML文件中直接嵌入VBScript脚本。这使你能够扩展HTML,使它不仅仅是一种页面格式语言。带有VBScript脚本的网页在每次下载到浏览器时都可以是不同的,而且可以对用户的操作做出反应。VBScript是Active Sever Pages的缺省语言JavaScript是一种解释性的,基于对象的脚本语言(an interpreted, object-based scripting language)。HTML网页在互动性方面能力较弱,例如下拉菜单,就是用户点击某一菜单项时,自动会出现该菜单项的所有子菜单,用纯HTML网页无法实现;又如验证HTML表单(Form)提交信息的有效性,用户名不能为空,密码不能少于4位,邮政编码只能是数字之类,用纯HTML网页也无法实现。要实现这些功能,就需要用到JavaScript。JavaScript是一种脚本语言,比HTML要复杂。不过即便你先前不懂编程,也不用担心,因为JavaScript写的程序都是以源代码的形式出现的,也就是说你在一个网页里看到一段比较好的JavaScript代码,恰好你也用得上,就可以直接拷贝,然后放到你的网页中去。正因为可以借鉴、参考优秀网页的代码,所以让JavaScript本身也变得非常受欢迎,从而被广泛应用。原来不懂编程的人,多参考JavaScript示例代码,也能很快上手。JavaScript主要是基于客户端运行的,用户点击带有JavaScript的网页,网页里的JavaScript就传到浏览器,由浏览器对此作处理。前面提到的下拉菜单、验证表单有效性等大量互动性功能,都是在客户端完成的,不需要和Web Server发生任何数据交换, 因此,不会增加Web Server的负担。几乎所有浏览器都支持JavaScript,如Internet Explorer(IE),Fire fox, Netscape,Opera等。第二章 需求分析需求分析是程序设计中最关键的一个步骤,是其他步骤的基础。需求分析的主要任务是“为了解决这个问题,目标系统必须做什么”。它主要是确定目标系统具有哪些功能。具体地说,应该确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景;必须仔细分析系统中的数据,既要分析系统中的数据流,又要分析长期使用的数据存储,通过分析应该得出用功能模块图、数据库表描述所定义的详细的系统逻辑模型。第一节 任务概述 一、系统实现目标系统能够对不同的系统后台使用设置不同的使用权限,通过不同权限人员的人员使用,实现系统特定的功能,如挂号工作人员实现病人挂号的看病的第一步骤、病人通过医生的诊断开具处方、到收费人员那里交费然后领取药品、社区信息管理人员记录病人的看病情况、公布社区医疗新闻、回复居民的留言等功能。为避免相应信息资料的丢失或者遭到非法破坏,系统必须具有安全设置功能,如对使用人员进行用户验证。另外系统具有较强的查询统计功能,能够建立有效的医疗服务机构与网站访问人员的交流渠道,实现系统的高效的使用。二、系统用户的特点社区服务适用于普通社区。本系统的主要用户有管理员、居民和社区医生。管理员需要具备一定的计算机知识,而且熟练撑握SQL语言,能够对数据库进行维护。而居民和社区医生,只需要了解一些计算机的基本操作就可以了。另外,管理员可根据本文档对软件在运行过程中出现的错误进行处理,而且可以基于本软件的基础进行扩展。三、假定和约束社区服务必须在五月中旬完成,而且包括毕业论文。在开发过程期间,需要与辅导老师进行密切交流。以便对开发过程中遇到的问题能顺利解决。在完成用户的全部需求的前提下,合理对系统进行扩展,使系统更加完善。第三节 需要规定一、对功能的规定基于Web的社区医疗管理信息系统包括数据管理、机构管理、挂号管理、收费统计管理、药品管理、疾病管理、信息管理、前台用户管理、病人服务管理。(1)数据管理:系统信息的设置,包括修改系统名称,修改前台首页和每个项目的每页显示记录数、后台每页显示记录数、公告;系统用户,包括修改后台系统用户信息、删除后台系统用户;添加后台系统,包括设置系统用户的登陆名称和密码,授予不同的系统用户权限; 修改用户密码。(2)机构管理:添加机构职务;添加机构部门,设置其是否属于医疗部门(若是医疗部门,在挂号时选择不同种类挂号科室),并分配不同的部门负责人;添加机构员工,并设置其详细信息。(3)挂号管理:添加新的病人的个人资料;添加、修改、删除挂号类型:挂号、改号、退号,打印挂号单据;按照挂号时间、挂号类型、操作员、科室、医生查询挂号信息,查询挂号收入。(4)收费统计管理:添加、修改、删除费用类型;通过病人姓名可以查看病人详细信息,修改、查看、删除病人就近信息;选择处方名单,计算收费情况,打印收费单据;按收费时间、月份、季度、年份查询收费情况及总收入。(5)药品管理:添加、修改、删除药品单位、药库、药品产地、药品供货单位、药品类型、药品信息;添加入库药品、改出库药品;分别查询低于下限和高于上限的药品、查询过期药品;按入库时间、供货单位、采购人员查询入库情况;按照购药时间、月份、季度、年份查询药品的需求,退药。(6)疾病管理:添加、删除疾病;按时间断查询疾病的发生率。(7)信息管理:添加、删除社区信息类别;添加社区详细信息;查看、修改、删除社区信息; 删除、回复留言。(8)前台用户管理:浏览社区医生信息、健康处方和公告、社区新闻;查询社区信息。(9)病人服务管理:修改密码;查看挂号、交费、病情及处方信息,以留言的方式询问医疗信息。二、输人输出要求对于部份数据类型的数据输入,系统可自动判断其正确性并且给予提示。例如,字符、数值、日期的类型输入错误等等。但对于数据输入的格式,就由用户自行决定。这一方面,系统不作严格要求。第三节 系统运行环境规定一、 硬件环境 服务端微型计算机配置: 操作系统:Windows2000 或 Windows XP; CPU:奔腾三 1GMHz或以上 内存:512MB或以上 硬盘:80G或以上 数据库:Microsoft SQL Server 2000或以上 客户端微型计算机配置: 操作系统:Windows2000 或 Windows XP; CPU::奔腾三 700MHz或以上 内存:64MB或以上 硬盘:10G或以上二、软件环境开发软件:Microsoft ASP 2008;开发语言:ASP;数据库软件:Microsoft SQL Server 2000;文档编写软件:Microsoft Word2.三、系统用户界面设计(1)简单明了原则:用户的操作要尽可能以最直接最形象最易于理解的方式呈现在用户面前。对操作接口,直接点击高于右键操作,文字表示高于图标示意,尽可能的符合用户对类似系统的识别习惯。(2)方便使用原则:符合用户习惯为方便使用的第一原则。其它还包括,实现目标功能的最少操作数原则,鼠标最短距离移动原则等。(3)用户导向原则:为了方便用户尽快熟悉系统,简化操作,应该尽可能的提供向导性质的操作流程。(4)实时帮助原则:用户需要能随时响应问题的用户帮助。(5)提供高级自定义功能:为熟悉计算机及软件系统的高级用户设置自定义功能,可以对已经确定的常规操作以及系统的方方面面进行符合自身习惯的自定义设置。包括常规操作、界面排版、界面样式等种种自定义。(6)界面色彩要求:计算机屏幕的发光成像和普通视觉成像有很大的不同,应该注意这种差别作出恰当的色彩搭配。对于需用户长时间使用的系统,应当使用户在较长时间使用后不至于过于感到视觉疲劳为宜。例如轻松的淡彩为主配色,灰色系为主配色等等。切忌色彩过多,花哨艳丽,严重妨碍用户视觉交互。(7)界面平面版式要求:系统样式排版整齐划一,尽可能划分不同的功能区域于固定位置,方便用户导航使用;排版不宜过于密集,避免产生疲劳感。第三章 社区服务系统设计第一节 总体设计总体设计的基本目的就是确定系统应该如何实现,因此总体设计又称为概要设计。总体设计过程通常由两个主要阶段组成:系统设计,确定系统的具体实现方案;结构设计,确定软件结构。这部分主要的设计思想是通过社区服务系统系的开发方案,利用现有的软硬件环境,提高系统的开发水平,充分的利用资源。系统需符合管理系统的规定,并操作方便直观。系统采用模块化的程序设计的方法,便于系统功能的各种组合和修改。社区系统模块图如图3-1所示图3-1 社区系统模块图一、社区网站管理主要功能是管理社区网站的基本信息。管理员可以完成对社区网站的基本信息进行添加、修改、删除、查询的操作。权限仅限于管理员,普通用户不能对其进行添加、修改和删除,只能进行查询。社区网站管理模块如图3-2所示:图3-2 社区网站图二、病人管理 主要功能是管理社区网站的基本信息。管理员可以完成对的基本信息进行添加、修改、删除、查询的操作。权限仅限于管理员,普通用户不能对其进行添加、修改和删除,只能进行查询。管理模块如图3-3所示:图3-3 管理模块图三、权限管理根据需求分析的要求,本系统应完成系统自身的管理。本次设计的主要界面包括管理员登录界面、普通用户登录界面。管理员和普通用户分别在各自的主页面就可以完成系统设定的功能,操作方便。系统设计为两个子系统,即管理员子系统和普通用户子系统。系统功能结构,如图3-4所示。管理员子系统实现了管理员对各个信息进行添加、修改、删除、查询等操作。普通用户子系统实现了普通用户的注册、修改个人信息,以及查询信息的功能。图3-4 权限管理图第二节 系统设计本系统软件主要以表单形式作为界面显示,并且提供菜单以便用户选择所需要的功能操作。在软件运行过程中,对于各功能操作的结果都会有提示信息。例如,操作成功或者失败等等。而对于数据的输入不正确都会有所提示。例如,退货数量信息只可以输入数值等等。另外,对于在运行过程中,系统所以出现的故障都有所提示。例如,由于网络问题而造成的服务器连接失败或者所连接的数据不存在等等。一、系统用户接口本系统软件主要以表单形式作为界面显示,并且提供菜单以便用户选择所需要的功能操作。在软件运行过程中,对于各功能操作的结果都会有提示信息。例如,操作成功或者失败等等。而对于数据的输入不正确都会有所提示。例如,退货数量信息只可以输入数值等等。另外,对于在运行过程中,系统所以出现的故障都有所提示。例如,由于网络问题而造成的服务器连接失败或者所连接的数据不存在等等。二、N层架构技术 一个N层的应用程序通常有三层。三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL),如图3-1所示。区分层次的目的即为了“高内聚,低耦合”的思想。 (1)表现层(UI):表现层用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。在ASP.NET中,该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。 (2)业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。业务层用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。业务逻辑层在数据访问层之上,也就是说BLL调用DAL的类和对象。DAL访问数据并将其转给BLL。在ASP.NET中,该层包括使用SqlClient或OleDb从SQL Server或Access数据库取数据、更新数据及删除数据,把数据通过DataSet 或DataReader的形式给BLL,BLL处理数据给表现层。有的时候,例如直接把DataSet 或DataReader送给表现层的时候,BLL是一个透明层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。 (3)数据访问层(DAL):有时候也称为是持久层,其功能主要是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。数据层是数据库或者数据源。在.NET中,通常它是一个SQL Server或Access数据库,但不仅限于此两种形式,它还可能是Oracle,MySQL,甚至是XML。该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。另外,需要强调的是,业务逻辑层无疑是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也即是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。例如Martin Fowler在Patterns of Enterprise Application Architecture一书中,将整个架构分为三个主要的层:表示层、领域层和数据源层。作为领域驱动设计的先驱Eric Evans,对业务逻辑层作了更细致地划分,细分为应用层与领域层,通过分层进一步将领域逻辑与领域逻辑的解决方案分离。业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。依赖与被依赖的关系都纠结在业务逻辑层上,如何实现依赖关系的解耦,则是除了实现业务逻辑之外留给设计师的任务。第四章 数据库设计第一节 结构设计一、 概念结构设计实体联系方法(EntityRelationship Approach)是最常用的表示概念性数据模型的方法。这种方法使用E-R图来描述现实世界中的实体,而不涉及这些实体在系统中的实现方法,即使不熟悉计算机技术的用户也能理解它。整个系统分为两类用户:前台用户和后台用户,前台用户即在本社区医院看过病的所有病人,病人可用病人门诊号(病人编号)及初始密码(六个0),登录本系统的前台。后台用户包括系统管理员(拥有最高权限,可使用后台所有的功能)、挂号员、收费员、医生、库存管理员,采购员等,各个用户之间存在的关系如图E-R联系所示。E-R联系图二 逻辑结构设计为了编码方便,表名与字段名一律采用英文字符命名。另外,为了提高可扩展性,各表的各字段会因具体需要进行类型与长度的定义。1)关于整型类型的编号方面的信息,各表将以IDENTITY (1, 1)进行储存。2)关于字符类型的备注方面的信息,各表将以Varchar(32)进行储存;关于其他字符类型的信息,各表将以Varchar(64)进行储存。3)关于其数值类型的信息,各表将以Int进行储存。4)关于其日期类型的信息,各表将以DateTime进行储存。在数据字典中,定义了各表的基本信息,具体情况可参见附录3数据字典主要内容。逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图,转换为逻辑结构。本系统的数据库通过physical design的数据库建模生成sql语句文件,在通过SQL Server 2005 的查询分析器运行该文件生成数据库。第二节 运用设计 一、数据字典设计在表DataDict中储存的各表的基本信息,当中包括表的名称、表的别名、字段的名称、字段的别名、字段是否主键、字段是否外键、字段的数据类型、字段长度、字段的可选项、字段的备注等等。这样能为编

温馨提示

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

评论

0/150

提交评论