软件设计作业:物诊所管理系统设计分析与实现_第1页
软件设计作业:物诊所管理系统设计分析与实现_第2页
软件设计作业:物诊所管理系统设计分析与实现_第3页
软件设计作业:物诊所管理系统设计分析与实现_第4页
软件设计作业:物诊所管理系统设计分析与实现_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

大连理工大学城市学院 宠物诊所管理系统设计分析与实现第一章 宠物诊所管理系统需求规格说明书4第二章 软件项目的概要设计说明书19第三章 医院患者管理系统详细设计52第四章 医院患者管理系统编码实现61第五章 网上招聘系统客户端系统测试计划67第六章 网上招聘系统客户端系统测试设计72第八章 网上招聘系统客户端系统测试报告7461第一章 宠物诊所管理系统需求规格说明书1.导言 伴随城市宠物饲养数量的增加,许多关于宠物的新兴的行业在省内大中城市陆续出现。专业的宠物洗浴、宠物裁缝、宠物摄影、宠物婚介等专门化经营服务行业如雨后春笋般地发展起来,组成了一个庞大的宠物市场,宠物诊所是其中相当重要的一部分。为了使宠物诊所管理更加规范化,专业化,为此设计了此系统1.1 目的该文档是关于用户对于宠物诊管理系统的功能和性能的要求,重点描述了宠物管理系统的功能需求,是概要设计阶段的重要输入。本文档的预期读者是: 设计人员; 开发人员; 项目管理人员; 测试人员; 用户。1.2 范围该文档是借助于当前系统的逻辑模型导出目标系统的逻辑模型的,解决整个项目系统的“做什么”的问题。在这里,没有涉及开发技术,而主要是通过建立模型的方式来描述用户的需求,为客户、用户、开发方等不同参与方提供一个交流的平台。1.3 编写说明JSP,Java Server Page(Java服务器页面)的缩写,一个脚本化的语言。UML,Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。1.4 术语定义无1.5 引用标准1企业文档格式标准,*有限公司软件工程过程化组织2需求规格报告格式标准,*有限公司软件工程过程化组织1.6 参考资料1UML说明,*软件有限公司2需求规格报告格式标准,*公司软件工程过程化组织1.7 版本更新信息本文档的更新记录如表1-1所示。版本/状态修订人修改日期备注12010.11.2023表1-1 版本更新记录2.系统定义我们分别阐述一下项目的来源、背景,项目的用户特点和项目的目标。2.1 项目来源及背景本项目是为宠物诊所开发的一个管理系统,为了实现宠物医院的网络化管理,网站前台统主要负责与用户打交道,实现用户的注册,登录,挂号,等功能。用户登录后可以进行查询兽医的专业与特长病历查询。在宠物主和医院之间搭建了一座沟通的桥梁。为了解决以上这些问题,从而开发出了针对宠物诊所在管理方面上的系统2.2 用户的特点本系统的用户包括两类,一类“管理员”,他们是宠物诊所的人。“管理员”包括医师,护士以及管理人员,他们负责对客户信息的录入。他们对业务很熟悉,通过实际使用,他们对使用管理软件比较熟悉。另外一类用户是系统管理员用户,在实际中,他们可能是医院院长或人力资源部主管,系统管理人员对系统很熟悉2.3 项目目标本项目设定的目标如下: 系统能够提供友好的用户界面,使操作人员的工作量最大限度的减少; 系统具有良好的运行效率,能够达到提高生产率的目的; 系统应有良好的可扩充性,可以容易地加入其他系统的应用; 平台的设计具有一定的超前性,灵活性,能够适应企业生产配置的变化; 通过这个项目可以锻炼队伍,提高团队的开发能力和项目管理能力。3.应用环境 根据用户的需求陈述,可以确定本项目分为客户端(患者)和管理端(医生、超级 , 管理员),客户端主要功能是为患者提供医生信息查询、就诊预约、查询预约信息、查看病历等。 管理端的功能为医生提供查看预约患者信息、创建、修改、查看宠物病历信息等功能, 为医院管理人员进行医生的添加、删除管理等。它们的关如下图表示图1-2 宠物诊所管理系统流程图3.1 系统运行的网络环境本系统的网络运行无论是客户端的应聘者还是管理端的管理用户都可以通过网络登录到本系统中。应聘者通过网络提交简历等相关信息,人力资源部通过网络发布职位信息,获得应聘者提交的简历信息,进行面试管理。管理端的系统管理员需要设置管理端的用户以及相应的权限。3.2 系统运行的硬件环境本系统的硬件环境如下:客户机:普通PC CPU:P41.8GHz以上 内存:256MB以上 能够运行IE5.0以上或者Netscape4.0以上版本的机器 分辨率:推荐使用1024768像素Web服务器 CPU:P41.0GHz 内存:1G以上 硬盘:80GB以上 网卡:KMb/s速度数据库服务器 CPU:P42.0GHz 内存:1GB以上硬盘:80GB以上图1-3 网络拓扑结构图 系统运行软件环境本系统的软件环境如下: 操作系统:UNIX/Linux/Windows2000或以上版本 数据库:SQL Server 2000 开发工具包:JDK Version 1.4.2Web服务器:Tomcat浏览器:IE6.0以上4.功能规格我们采用面向对象分析作为主要的系统建模方法,使用UML(Unified Modeling Language)作为建模语言。UML为建模活动提供了从不同角度观察和展示系统的各种特征的方法。在UML中,从任何一个角度对系统所作的抽象都可能需要几种模型来描述,而这些来自不同角度的模型图最终组成了系统的映像。用例描述角色(用户、外部系统以及系统处理)是如何与系统交互来完成工作的。用例模型提供了一个非常重要的方式来界定系统边界以及定义系统功能,同时,该模型将来可以派生出动态对象模型。设计用例时,我们遵循下列步骤:1)识别出系统的角色。角色可以是用户、外部系统,甚至是外部处理,通过某种途径与系统交互。重要的是着重从系统外部执行者的角度来描述系统需要提供哪些功能,并指明这些功能的执行者(角色)是谁。尽可能地确保所有角色都被完全识别出来。2)描述主要的用例。可以采取不断地问自已“这个角色究竟想过系统做什么?”来准确地描述用例。3)重新审视每个用例,为它们下个详尽的定义。4.1 角色定义角色或者执行者指与系统产生交互的外部用户或者外部系统。4.1.1 客户患者是指在这个系统中通过客户端提交预约就诊信息的人员,这个角色主要参与客户端的注册系统用户、兽医信息查询、提交预约就诊信息等功能。4.1.2 管理用户管理用户是指管理端的用户,此角色派生两个子类,兽医和系统管理员。医生是指在这个系统中通过客户端查看预约患者信息的人员,这个角色主要参与客户端的查看预约患者信息、创建患者病例、查询患者病例、修改患者病例等功能。 系统管理员是指管理医生用户的人员,这个角色主要负责对管理端医生用户的增加、删除等功能。他也是通过管理端登录对管理端的用户进行设置,它们的关系图1-4 管理用户角色的关系管理用户具体说明如下:系统管理员通过管理端对系统用户进行管理的人员,这个角色主要负责对管理端用户的增删,权限的设置等功能。4.1.3 数据库数据库是一个与系统产生交互的外部系统,这个角色负责系统的数据查询、增加、删除和修改等操作。4.2 系统主用例图宠物诊所患者管理系统可以分为两个主要的组成部分,一个是客户端子系统。一个是管理端子系统。客户端子系统功能主要是指患者、医生通过登录网站进行操作的功能。管理端子系统功能是医院的管理人员管理医生用户的功能。系统的主用例如图1-5所示。图1-5 系统的主用例图4.3 客户端子系统患者通过本网站网站登录到系统中进行就诊预约、查看病历信息等,患者通过它提交预约信息,这就是客户端子系统的功能。在客户端用户可以看到可以预约的医生的信息。图1-6是它的用例图。图1-6是它的用例图。客户端管理的这些用例描述如下:1.1:填写,提交预约信息1.2:挂号1.3:查询缴费情况1.4:领取药品。4.3.1预约用例描述:提交预约信息;执行者:患者;前置条件:患者已登录系统;后置条件:查看医生信息后,患者可选择某一位医生预约就诊。基本路径:a)患者登录到医院的预约网页,显示目前可以预约的医生列表;b)点击任何一个医生可以显示该医生在一周每天可预约的人数;4.3.2 挂号用例描述:挂号执行者:患者;前置条件:未曾预约后置条件:挂号提交以后则可以查看该主治医生的详细信息。基本路径:a)基本信息输入,包括姓名、性别、年龄、电话、地址、等信息;b)输入完成后,点击提交可提交预约信息。4.3.3 缴费患者提交预约信息后可通过该功能查询自己是否预约成功,具体功能描述如下。用例描述:查询预约情况;执行者:患者;前置条件:诊断结束后置条件:无。基本路径:a)患者点击页面左侧“查询预约信息”超链接;b)若药品信息已成功提交,取药4.3.4 领取药品患者可通过本页面查询自己的病例信息,具体功能描述如下。用例描述:查询病例信息;执行者:患者;前置条件:患者预约成功,且完成至少一次就诊;后置条件:无。基本路径:a)患者点击页面左侧“查询病例”超链接;b)若患者完成一次就诊,则在页面中可显示自己的病例信息。4.4 管理端子系统管理端子系统主要是提供兽医和系统管理员使用的功能,医生使用的功能有查询预约患者信息、创建病例、查询患者病例;系统管理员是用的功能为添加医生账号和删除兽医账号。图1-7是管理端的用例图。图1-7 管理端用例图登录到管理端的所有人都需要通过登录界面进入相应的管理界面。在登发界面输入用户名和密码,系统首先判断用户名和密码的正确性,然后根据用户名确定其权限,不同的登录者具有不同的权限,根据登录者具有的权限将相应的功能显示在管理界面上。图1-8是它的活动视图。图1-8 登录管理活动视图(1)图1-9 登录管理活动视图(2)4.4.1添加兽医账户兽医账户管理模块主要是完成兽医账户的添加和删除。具体描述如下。用例描述:添加兽医账户;执行者: 系统管理员;前置条件: 系统管理员已登录系统;后置条件: 无。基本路径:a)进入兽医账户管理界面,首先显示目前已存在的医生账户;b)点击“添加”按钮可以添加医生账户,输入新账户的相关信息完成添加;4.4.2删除兽医账户兽医账户管理模块主要是完成兽医账户的添加和删除。具体描述如下。用例描述:删除兽医生账户;执行者: 系统管理员;前置条件: 系统管理员已登录系统;后置条件: 无。基本路径:a)进入兽医账户管理界面,首先显示目前已存在的兽医账户;b)点击某个医生可以详细浏览这个兽医的具体内容,同时也可以对这个账户经行删除;4.4.3查看预约患者信息用例描述:查看预约患者信息;执行者: 兽医;前置条件: 兽医已登录到系统;后置条件: 无。基本路径:a)进入医生所属管理界面;b)通过点击“查看预约患者信息”可显示已成功提交预约信息的患者列表;c)单击某一患者可以查看该患者的详细信息;4.4.4创建病例患者在就诊之后,兽医应为其建立相应的病例信息,具体功能描述如下。用例描述:创建病例信息;执行者: 兽医前置条件: 兽医已登录系统;后置条件: 无。基本路径:a)进入兽医所属管理界面;b)通过点击左侧导航栏“创建病例”按钮,在右侧填写症状、诊断、处方等病例信息;4.4.5修改病例兽医为患者建立相应的病例信息后,也可以正对相应的情况对病例经行修改,具体功能描述如下。用例描述:修改病例信息;执行者: 兽医;前置条件: 兽医已登录系统;后置条件: 无。基本路径:a)进入兽医所属管理界面;b)通过点击左侧导航栏“修改病例”按钮,在右侧可对症状、诊断、处方等病例信息进行修改; 图1-10 总活动视图5.性能需求根据用户对本系统的要求,确定系统在响应时间、可靠性、安全性等方面有较高的必能要求。5.1 界面需求系统的界面要求如下。1)页面内容:主题突出,站点定义、术语和行文格式统一、规范、明确、栏目、菜单设置和布局合理,传递的信息准确、及时。内容丰富,文字准确,语句通顺,专用术语规范,行文格式统一规范。2)导航结构:页面具有明确的导航指示,且便于理解,方便用户使用。3)技术环境:页面大小适当,能用各种常用浏览器以不同分辨率浏览,无错误链接和空链接;采用CSS处理,控制字体大小和版面布局。4)艺术风格:界面、版面形象清晰悦目、布局合理,字号大小适宜、字体选择合理,前后一致,美观大方,动与静搭配恰当,动静效果好;色彩和谐自然,与主题内容相协调。5.2 响应时间需求无论是客户端还是管理端,当用户登录,进行任何操作的时候,系统应该及时地进行反应,反应的时间在5秒以内。系统应能监测出各种非正常情况,如与设备的通信中断,无法连接数据库服务器等,以避免出现长时间等待甚至无响应。5.3 可靠性需求系统应保证724小时内不宕机,保证20人可以同时在客户端登录,此时系统能正常运行,正确提示相关内容。5.4 开放性需求系统应具有较强的灵活性,以适应将来功能扩展的需求。5.5 可扩展性需求系统设计要求能够体现扩展性要求,以适应将来功能扩展的需求。5.6 系统安全性需求系统有严格的权限管理功能,各功能模块需有相应的权限方能进入。系统需能够防止各类误操作可能造成的数据丢失,破坏。防止用户非法获得网页以及内容。6.产品提交提交产品为:a)应用系统软件包;b)数据库初始数据;c)系统开发过程文档;d)系统使用、维护说明文档,提交方式为CD介质。7.实现约束系统的实现约束如下:a)操作系统为Windows200;b)开发平台为:eclise-SDK-3.1.2-win32;c)数据库为SQL serer2000。8. 签字 本需求规格经过双方认可,特签字如表1-10所例。1-10 需求规格签字用户签署信息企业签署信息单位名称 大连XXX宠物诊所 ( 盖 章 )签署人姓名 签署日期 2010.12.18单位名称 MJD软件有限公司 ( 盖 章 )签署人姓名 签署日期 2010.12.18第二章 软件项目的概要设计说明书案例说明宠物诊所管理系统的概要设计说明书如下。宠物诊所管理系统分析设计1.导言1.1 目的该文档的目的是描述网上招聘系统项目的概要设计,其主要内容包括:系统功能简介;系统结构设计;系统接口设计;数据设计;模块设计;界面设计。本文档的预期的读者是:开发人员;项目管理人员;测试人员。1.2 范围该文档定义了系统的结构和单元接口,但未确定单元的实现方法,这部分内容将在详细设计/实现中确定。1.3 编写说明1. UML:Unified Modeling Language(统一建模语言)的缩写,是一个标准的建模语言。2. HR:Human Resource(人力资源管理)的缩写。3. JSP:Java Server Page(java服务器页面)的缩写,一个脚本化的语言。4. MVC:Model-View-Control(模式-视图-控制)的缩写,表示一个三层的结构体系。5. EJB:Enterprise Java Bean(企业级JavaBean)的缩写。1.4 术语定义JSP Model2:Servlet/JSP规范的0.92版本中描述的术语,定义了如何在同一个应用程序中联合使用Servlet和JSP的体系结构。JavaBean:用Java语言实现的满足一定功能的类。1.5 引用标准1企业文档格式标准,*软件有限公司2软件概要设计报告格式标准,*软件有限公司软件工程过程化组织1.6 参考资料1实战struct(美)Ted Husted机械工业出版社, 2软件重构清华大学出版社, 1.7 版本更新信息本文档的更新记录如表B-1所示。表B-1 版本更新记录修改编号修改日期修改后版本修改位置修改内容概述000001 2010.1 1.18201.0全部6.5节初始发布版本修改问卷管理模块的设计2.系统分析系统包括管理端子系统和客户端子系统。管理端子系统包括题库管理、问卷管理、职位发布、简历管理、面试管理、用户管理等功能。客户端子系统包括查询职位,简历录入,回答问卷,提交简历等功能。图B-1和图B-2为客户端和管理端的组成构图。图2-1 客户端子系统图示 图2-2 管理端子系统2.1界面设计管理端的功能提供“更新宠物主人的信息”、“添加新客户”、“添加新宠物”、“浏览宠物的访问历史记录”、“添加一次宠物的访问”等功能。主要界面设计如下:登录界面:通过输入用户各和密码,实现用户登录,;管理首页:更新宠物主人的信息: 添加新客户: 2.2 客户端界面设计客户端主要为应聘者提供网上预约就诊的过程,应聘者通过浏览可预约的医生信息后可选择某位医生进行预约,填写个人信息,提交后,提交的预约信息保存到服务器端。在客户界面,患者首先进入患者管理系统主界面,注册患者账号后即可登录,点击“查询医生信息”按钮可以查看可预约医生的信息,可选择某位医生进行预约;提交预约信息后,可以点击“查询预约信息”按钮查看自己的预约信息是否成功提交到服务器;若患者已经完成一次就诊,且医生已经为其创建了病例信息,则可以通过点击“查询病例”按钮查看自己的病例信息。添加新宠物:浏览宠物的访问历史记录: 添加一次宠物的访问: 图2-1 登陆界面 登陆成功后,进入浏览兽医资料界面图2-2 查询兽医信息浏览兽医及其专业特,输入查询的兽医的名称,点击查询按钮图2-3 增加新客户和新宠物图2-4 查询,修改宠物主人信息图2-5 添加宠物及其主人相关信息3. 体系结构系统的总体结构设计遵循如下原则。1)系统应具有良好的适应性:能适应用户对系统的软件环境、管理内容、模式和界面的要求;2)系统应具有可靠性:采用成熟的技术方法和软件开发平台,以保证系统在以后的实际应用中安全、可靠;3)系统应具有较好的安全性:应提高安全机制和用户权限限制机制的完善程度,确保数据的受限访问;4)系统应具有良好的可维护性:系统应易于维护、安装;5)系统应具有良好的可扩展性:系统应适应未来信息化建设的要求,能方便地进行功能扩展,以建立完善的信息集成管理体系。本系统采用体系结构,struct是一个基于模型(Model)一视图(View)一控制器(Controller),即MVC模式的应用架构的开源框架。4.1 体系结构目前软件项目中有很多体系结构,其中struct是比较流行的一种。4.1.1 struct体系结构对于开发Web应用,要从头设计并开发出一个可靠、稳定的框架不是一件容易的事情。随着Web开发技术的日趋成熟,在Web开发领域出现了一些现成的优秀的框架、开发者可以直接使用它们,struct就是一个很好的框架结构,它是在JSP Model2基础上实现的一个MVC框架,在struct框架在模型由实现业务逻辑的JavaBean或者EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件组成,图B-5显示了Struct实现的MVC框架。其中:视图,就是一组JSP文件,这些JSP文件没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或者是客户化标签,如struct标签库的标签。此外,通常将struct框架中的ActionForm Bean也划为视图模块,ActionForm Bean是一种JavaBean,除了具有一些JavaBean的常规方法外,还包含了一些特殊的方法,用于验证HTML表单数据以及将其属性重新设置为默认值。Struct框架利用ActionForm Bean来进行视图和控制器之间表单数据的传递。Strcut框架将用户输入的表单数据保存在ActionForm Bean中,将它传递给控制器,控制器可以对ActionForm Bean中的数据进行修改,JSP文件使用struct标签读取修改后的ActionForm Bean的信息,然后重新设置HTML表单。图B-23 struct实现的MVC框架控制器,控制器由ActionServlet类和Action类实现,ActionServlet类是struct框架中的核心组件,是这个MVC的中央控制器的角色。ActionServlet主要负责接收HTTP请求的信息,根据配置文件struct-config.xml的配置信息,将请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Action对象.Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程,对于小型简单的应用,Action类本身也可以完成一些实际的业务逻辑。模型,模型表示应用程序的状态和业务逻辑,业务逻辑常常由JavaBean或者EJB组件实现。如果在Web应用开发中套用现成的struct框架,就可以简化每个开发阶段的工作,开发人员可以更加有针对性地分析应用需求,不必重新设计框架,只需在struct框架的基础上,设计MVC各个模块包含的具体组件,在编码过程中,可以充分利用struct提供的各种实用类和标签库,简化编码工作。Struct框架可以方便迅速地将一个复杂的应用划分成模型、视图和控制器组件,而struct的配置文件struct-config.xml可以灵活地组装这些组件,以简化开发过程。4.1.2 系统体系结构根据系统分析结果,该系统从结构上应满足:基于游览器进行显示以方便用户使用;采用MVC的三层体系结构,分化各个功能组件;采用JDBC技术与数据库通信以便于数据库的转换;采用标签技术完成动态页面的简单逻辑。本系统的体系结构如图B-6所示,它基本遵循了struct体系的MVC框架规范。图B-24 系统的体系结构其中:表示层,用于与用户进行交互并显示结果。包括所有的JSP,提供用户界面,接受用户输入,还包括相应的ActionFrom Bean,用来存放表单数据,并进行表单数据验证;控制层,包括所有的Action类,它完成三项任务,一是进行业务逻辑验证,二是调用模型组件,三是决定将合适的视图组件返回给用户;模型,包括进行逻辑处理的JavaBean等,数据库采用ODBC技术以提供数据库的可移植性。1)客户层:用于与企业信息系统的用户进行交互以及显示根据特定业务规则进行计算后的结果。本系统将完全采用基于Web的(B/S架构)客户端,即用户可以直接通过浏览器来访问和使用本系统。2)中间层:这相当于三层标准架构中的Web应用服务层,支持诸如响应客户请求以及查询等功能。并且由中间层进行逻辑处理,再将处理的结果反馈给客户或者发送到数据库中。3)服务层:主要是数据库系统,这里的数据库系统主要是关系数据库系统(RDMS)。4.2 系统进行环境 下面讲述系统运行的网络结构,硬件、软件环境。4.2.1 网络结构图本系统的网络拓扑图如图B-8所示。图B-26 网络拓扑图其中的局域网用户机主要是公司内部的人员可以使用的机器,运程用户机主要是指通过互联网登录系统的人员使用的机器,可以是公司内部的人,也可以是应聘者。4.2.2 硬件环境本系统的硬件环境如下。1)客户机:普通PCCPU:P41.8GHz以上内存:256MB以上能够运行IE5.0以上或者Netscape4.0以上版本的机器分辨率:推荐使用1024768像素2)Web服务器CPU:P42.0GHz内存:1GB以上硬盘:80GB以上网卡:KMb/s速度网卡3)数据库服务器CPU:P42.0GHz内存:1GB以上硬盘:80GB以上4.2.3 软件环境本系统的软件环境如下:操作系统:UNIX/Linux/Windows2000或以上版本数据库:SQL Server 2000开发工具包:JDK Version1.4.2开发环境:eclipse-SDK-3.1.2win32Web服务器:Tomcat浏览器:IE6.0以上1)数据库及操作系统:对于核心数据库来说,选择一个合适的数据库系统对我们的系统运行是很重要的,选择数据库的关键因素是要考虑预计会有多少人同时访问数据库;正常工作时间的级别;用来访问数据库的应用程序的类型;运行数据库的服务器的硬件和操作系统类型以及管理人员的专业技术水平。目前市场上适用于中小型企业的数据库产品有IBM DB2、Microsoft SQL Server系列,Oracle系列。所有这些产品都基于SQL语言。同时,它们还拥有精度复杂的安全控制以适应不同的商业需要。服务器操作系统使用Windows2000 Server考虑到价格因素、易用性,我们使用SQL Server2000作为系统后台数据库系统,服务器操作系统采用Windows2000 Server。2)Web服务软件:目前的Web服务器软件有很多种,成熟而且稳定的有Apache、Tomcat和Microsoft的IIS,它们占据着Web服务器市场最大的份额。Tomcat是Sun和Apache合作推出的JSP Server,支持Servlet2.2及JSP1.1等版本。而且Tomcat未来将会取代Jserv,成为Apache主要的Servlet&JSP Engine。Tomcat在设计上是以独立的Server执行,而不像Jserv是附在Apche中,这样就更可以在servlet中,发挥非HttpServlet的能力。Tomcat是Java程序,所以只要有JDK就可以使用,不需要考虑操作系统平台。因此这里选择Tomcat作为Web服务器。5. 数据模型本系统的数据模型设计内容主要是进行数据库的设计。1. 关键抽象从需求中可以得出系统的如下关键抽象:兽医、专业特长、宠物主人、宠物类型、宠物和宠物的访问。这些实体可以设计为JavaBean类,例如宠物具有这些属性:名称、标识ID、类型ID和出生日期等。宠物主人和宠物之间具有如下关系:一个宠物主人可以拥有多个宠物,每一个宠物属于一个主人;每一个宠物可能到诊所多次就诊;每个兽医具有多项专长,而同一专长可能有多个兽医。图三描述了系统的关键抽象,他们为系统的模型。图2-3宠物诊所管理系统的模型2. 用例的设计使用面向对象设计时,关键在于描述那些对象如何交互完成用例的功能,通常将对象发送消息的相互调用过程画成时序图。下面将逐一解释用例的时序图。1登录A、时序图B、描述编号类名或方法名功能描述 1login.jspjsp页面,显示登录界面 2EmpServletServlet,处理职员的登录请求 3EmpDAO其verify方法负责访问employee表,验证用户名称和口令 4vetsearch.jspjsp页面, 若职员登录成功,显示一个页面可供职员访问用例“浏览兽医及其专业特长”2 退出A、时序图B、描述编号类名或方法名功能描述 1EmpServletServlet,处理职员的退出请求 2HttpSessionsession对象,其invalidate方法负责使客户的会话无效 3login.jspjsp页面, 职员退出后,显示登录界面3 浏览兽医及其专业特长A、时序图B、描述编号类名或方法名功能描述 1VetServletServlet,处理职员的查询兽医的请求 2VetDAO其search方法负责访问vets, specialties, vet_specialties表完成查询兽医及其专业特长 3vetsearch.jspjsp页面, 可供输入查询兽医名称或专业的条件 4vetsearch_name.jspjsp页面, 显示查询出的兽医及其专业特长4浏览宠物主人的信息A、时序图B、描述编号类名或方法名功能描述 1PetServletServlet,处理职员的查询宠物主人的请求,其doPost方法调用其自己的search方法 2PetDAO其searchPet方法负责访问owners , pets表完成查询宠物主人及其宠物 3petsearch.jspjsp页面, 可供输入查询宠物主人的条件 4petsearch_name.jspjsp页面, 显示查询出的宠物主人及其宠物的信息5更新宠物主人的信息A、时序图B、描述编号类名或方法名功能描述 1PetOwnerServletServlet,处理职员的查询和更新宠物主人的请求,其doPost方法调用其自己的search方法 2PetOwnerDAO其viewPetOwner方法负责访问owners 表完成查询出指定的宠物主人的信息;其updatePetOwner方法负责访问owners 表完成更新指定的宠物主人的信息; 3ownerupdate.jspjsp页面, 显示查询出的宠物主人的信息,可供修改,提交后保存修改,并再次显示更新后的宠物主人的信息。6添加新客户A、时序图B、描述编号类名或方法名功能描述 1PetOwnerServletServlet,处理职员的添加新客户的请求 2PetOwnerDAO其addPetOwner方法负责访问owners表完成添加新客户 3newpetowner.jspjsp页面, 显示界面可供输入添加的宠物主人的信息 4petsearch.jspjsp页面, 其界面上存在一个按钮可供链接到此用例的功能7浏览宠物信息A、时序图B、描述编号类名或方法名功能描述 1PetServletServlet,处理职员的查询宠物主人的请求,其doPost方法调用其自己的search方法 2PetDAO其searchPet方法负责访问owners , pets表完成查询宠物及其主人的信息 3petsearch.jspjsp页面, 可供输入查询宠物的条件 4petsearch_name.jspjsp页面, 显示查询出的宠物及其主人的信息8更新宠物信息A、时序图B、描述编号类名或方法名功能描述 1PetServletServlet,处理职员的更新宠物信息的请求 2PetDAO其selectPetById方法负责访问pets, types, owners表完成查询出指定的宠物的详细信息以供修改;其updatePet方法负责访问pets表完成更新指定的宠物的信息; 3petview_name.jspjsp页面, 显示点击的某个宠物的详细信息,只可浏览,当职员点击其中的一个修改按钮后,系统呈现修改编辑界面。 4petupdate.jspjsp页面, 修改宠物的编辑界面。9添加新宠物A、时序图B、描述编号类名或方法名功能描述 1PetServletServlet,处理职员的添加新宠物的请求 2PetDAO其addPet方法负责访问pets表完成添加新宠物 3petnew.jspjsp页面, 显示界面可供输入添加的宠物的信息 4petsearch.jspjsp页面, 其界面上存在一个按钮可供链接到此用例的功能10 浏览宠物的访问历史记录A、时序图B、描述编号类名或方法名功能描述 1PetVisitServletServlet,处理职员的浏览宠物的访问历史记录的请求 2PetVisitDAO其searchPetVisitHistory方法负责访问visits表完成查询出指定的宠物的访问历史记录; 3petview_name.jspjsp页面, 显示点击的某个宠物的详细信息,只可浏览,当职员点击其中的一个阅览病历按钮后,系统呈现宠物的访问历史记录。 4petvisithistory.jspjsp页面, 显示宠物的访问历史记录。11添加一次宠物的访问A、时序图B、描述编号类名或方法名功能描述 1PetVisitServletServlet,处理职员的添加一次宠物的访问的请求 2PetVisitDAO其addNewVisit方法负责访问visits表完成添加一次宠物的访问记录; 3petview_name.jspjsp页面, 显示点击的某个宠物的详细信息,只可浏览,当职员点击其中的一个增加新病历按钮后,系统呈现添加宠物的一次访问记录的界面。 4petnewvisit.jspjsp页面, 显示一个界面以便输入宠物的访问记录。 5petsearch.jspjsp页面, 可供输入查询宠物的条件6 数据库部分1、 逻辑设计系统的E-R图如下:2、 表设计表名功能说明vets存储兽医信息specialties存储兽医的专业特长信息vet_specialties兽医与专业特长的关联表types宠物的类型表owners宠物的主人pets存储宠物信息visits存储宠物的访问信息employee存储职员信息2.1 vets表名vets列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYnameVARCHAR(30)补充说明2.2 specialties表名specialties列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYnameVARCHAR(80)补充说明2.3 vet_specialties表名vet_specialties列名数据类型(精度范围)空/非空约束条件其它说明vet_idINTNOT NULLforeign key REFERENCES vets(id)specialty_idINTNOT NULLforeign key REFERENCES specialties(id)补充说明2.4 types表名types列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYnameVARCHAR(80)补充说明2.5 owners表名owners列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYnameVARCHAR(30)addressVARCHAR(255)cityVARCHAR(80)telephoneVARCHAR(20)补充说明2.6 pets表名pets列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYnameVARCHAR(30)birth_dateDATETIMEtype_idINTNOT NULLforeign key REFERENCES types(id)owner_idINTNOT NULLforeign key REFERENCES owners(id)补充说明2.7 visits表名visits列名数据类型(精度范围)空/非空约束条件其它说明idINTNOT NULLIDENTITY(1,1) PRIMARY KEYpet_idINTNOT NULLforeign key REFERENCES pets(id)visit_dateDATETIMEdescriptionVARCHAR(255)补充说明2.8 employee表名employee列名数据类型(精度范围)空/非空约束条件其它说明nameVARCHAR(20)NOT NULLPRIMARY KEYpasswordVARCHAR(20)NOT NULL补充说明7 数据库物理结构模型设计信息存储结构的设计在系统的设计中至关重要,要考虑到数据冗余、系统执行效率、信息控制以及维护等方面的要求。信息的管理离不开数据库的支持,我们采用MySQL数据库管理系统。数据表详细结构设计医生表(doctor)的详细设计结构。字段名类型备注约束条件默认值DIDVARCHAR(5)医生编号主键NameVARCHAR(12)姓名索引AgeTINYINT(3)UNSIGNED年龄0PasswordVARCHAR(41)密码初始化:DIDSexTINYINT(3)UNSIGNED性别1-男0-女1LevelVARCHAR(12)医生职称SectionVARCHAR(20)所属科室索引SpecialismVARCHAR(20)医生擅长PhoneVARCHAR(15)联系电话患者表(patient)的详细结构字段名类型备注约束条件默认值PIDMEDIUMINT(8)UNSIGNEDAUTO_INCREMENT患者编号主键NameVARCHAR(12)姓名UsernameVARCHAR(20)登录用户名惟一索引PasswordVARCHAR(41)密码AgeTINYINT(3)UNSIGNED年龄0SexTINYINT(3)UNSIGNED性别1男0女1AddressTINYTEXT家庭住址PhoneVARCHAR(12)联系电

温馨提示

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

评论

0/150

提交评论