爱心宠物诊所系统实训报告(20210113224357)_第1页
爱心宠物诊所系统实训报告(20210113224357)_第2页
爱心宠物诊所系统实训报告(20210113224357)_第3页
爱心宠物诊所系统实训报告(20210113224357)_第4页
爱心宠物诊所系统实训报告(20210113224357)_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

1、丄卡谬粽实训报告实践环节:软件工程项目实践项目名称:爱心医院宠物诊所院(系):软件学院专业班级:软件工程(软件开发)1401学号:541413260109学生姓名:何强强指导教师:李玉华学年学期:2015-2016学年第2学期成 绩:郑州轻工业学院软件学院实训任务书一、实训名称实践环节软件工程项目实践项目名称爱心医院宠物诊所二、学生信息专业班级软件开发14-01学号541413260109姓名何强强三、用户需求及约束条件1、功能需求:“爱心”宠物诊所的职员在工作中需要查阅和管理 如下信息:诊所的鲁医、客户以及客户的宠物。系统的用例图如图1 所示。2、功能概述:“爱心”宠物诊所的职员需要使用系统

2、提供的如下功能: 浏览诊所的兽医以及他们的专业特长; 浏览宠物的主人(即诊所的客户)的相关信息; 更新宠物的主人的相关信息; 向系统中增加一个新客户; 浏览宠物的相关信息; 更新宠物的相关信息; 向系统中增加一个新宠物; 浏览宠物的访问历史记录; 向宠物的访问历史记录添加一次访问;此外,诊所的职员在使用系统提供的上述功能之前需要进行登3、性能需求: 应用程序提供友好的图形用户界而。 应用程序要具备健壮性、稳定性和好的可移植性。4、应用程序开发要求:选用技术:JSP、Java. SERVLET等;软件集成开发环境(IDE):NetBeans Eclipse、 MyEclipse 等。四、设计要求

3、、技术参数及设计规格1、实现MVC分离:用JSP实现视图层设讣,SERVLET实现控制层设计, 使用 DTO(JAVABEAN)、CONNETOR 对象实现 MODEL 层设讣。2、数据库设计要求符合第一、第二范式要求,实现对医生表、医生专业特 长表数据联合查询要求。3、设计规格:符合Java. JSP编码规范。五、工作量天/日期任务描述通过标准1完成业务需求分析和业务分析,找出系统设讣 中涉及到的所有业务对象,设计相应的类需求分析说明书、概要设计说 明书提交1详细功能设计:模块结构设计、用例、对象、 根据对象类型分析、设计完成具体功能的方法2数据库系统设计:设计出相应的数据库表2给出E-R图

4、,写出不同表的增删改查SQL3实现初始化类,兽医、专业特长、宠物主人、 宠物类型、宠物和宠物等对象的编码实现3测试对象类的正确性4实现对数据库的访问类,实现业务逻辑登录模 块功能4实现业务逻辑对宠物的查询模块(1)5实现业务逻辑对宠物的查询模块(2)5实现业务逻辑对医生的查询模块(1)6实现业务逻辑对医生的查询模块(2)6实现业务逻辑对客户的查询模块(1)7实现业务逻辑对客户的查询模块(2)7实现业务逻辑对宠物诊疗记录查询模块(1)8实现业务逻辑对宠物诊疗记录查询模块(2)8系统调优及功能完善9系统功能测试项目验收通过9实训报告撰写完成实训报告提纲10实训报告撰写完善实训报告内容和格式10实训

5、报告撰写撰写一个完善的实训报告六、考核形式、考核时间、考核指标及成绩评定实训成绩由下面构成:实训纪律、实训态度和平时表现占20%:实训结果占 30%:实训报告占30%;实践操作能力占20%。考核形式:1)老师每日对学生的考察、评估和考核;2)最后对实训项LI完 成的质量进行考核和验收。完成期限:2016年7月8日指导教师签章:李玉华专业负责人签章:教学院长签章:2016年6月27日实训进度日历实践环节软件开发综合实训项目名称爱心医院宠物诊所学年学期2015-2016 学年第2学期专业软件工程(测试技指导教师崔雪班级术)14-01、14-02姓名马军霞天上午/ 下午实训任务详细描述教师实训任务的

6、指导(解决 方案、实现步骤、技术路线、 难点提示)通过标准1上午业务需求分析和业 务分析根据实训指导材料,让学生 先对项目有一个整体的了 解,对系统的需求分析进行 讲解。需求分析说明书提交分析系统设计中涉 及到的所有业务对 象,设计相应的类根据实训指导材料,分析总 结系统业务对象概要设计说明书提交1下午详细功能设计:模 块结构设计、用例、 对象设计按照MVC思想设讣系统框 架,规范设计系统用例详细功能设计:根 据对象类型分析、 设计完成具体功能 的方法按照面向对象的方法设计类 和方法2上午数据库系统设计: 分析系统数据,进 行数据库概念模型 设计根据数据库设汁的范式要求 进行设计数据库系统设计

7、: 设计出相应的数据库表根据选择的数据库系统,利 用图形界而工具完成设计数据库和测试数据准备 完成2下午画出E-R图写出不同表的增删 改查SQL3上午实现初始化类,兽 医、专业特长等对 象的编码实现实现宠物主人、宠 物类型、宠物等对 象的编码实现3下午测试初始化类,兽 医、专业特长等对 象类的正确性测试宠物主人、宠 物类型、宠物等对 象类的正确性4上午实现对数据库的访 问类,实现业务逻辑登录 模块功能4下午实现业务逻辑对宠 物的查询模块(1)实现业务逻辑对宠 物的查询模块(1)5上午实现业务逻辑对宠 物的查询模块(2)实现业务逻辑对宠 物的查询模块(2)5下午实现业务逻辑对医 生的查询模块(1

8、)实现业务逻辑对医 生的查询模块(1)6上午实现业务逻辑对医 生的查询模块(2)实现业务逻辑对医 生的查询模块(2)6下午实现业务逻辑对客 户的查询模块(1)实现业务逻辑对客 户的查询模块(1)7上午实现业务逻辑对客 户的查询模块(2)实现业务逻辑对客 户的查询模块(2)7下午实现业务逻辑对宠 物诊疗记录查询模 块(1)实现业务逻辑对宠 物诊疗记录查询模 块(1)8上午实现业务逻辑对宠 物诊疗记录查询模块(2)实现业务逻辑对宠 物诊疗记录查询模 块(2)8下午系统调优系统功能完善9上午系统功能测试(1)系统功能测试(2)项目验收通过9下午实训报告撰写总结实训内容和过程,理淸实训报告撰写撰写实训

9、报告提纲10上午实训报告撰写完善实训报告内容实训报告撰写完善实训报告内容完成实训报告大纲10下午实训报告撰写完善实训报告格式完善实训报告内容和 格式实训报告撰写文档格式正确、内容无 误制订教师: 李玉华1系统需求分析11.1功能需求11.2功能说明12系统设计12.1系统总体结构设计42.2关键抽象42. 3用例设计52. 3数据库设计103系统功能实现143. 1登录功能实现143.2系统框架143.3浏览兽医及其专业特长143.4浏览宠物及其主人153.5浏览修改宠物主人的详细信息163. 6浏览修改宠物的详细信息173. 7增加病例193.8阅读病例203.9添加新客户213. 10添加

10、新宠物224实训感想231系统需求分析1.1功能需求功能需求:爱心”宠物诊所的职员在工作中需要查阅和管理如下信息:诊所的兽医、 客户以及客户的宠物。1.2功能说明1.2. 1登录诊所职员打开浏览器,输入正确的CRL地址,即可跳转到系统的登录页面。职员 需要输入、密码、验证码后,提交页面。系统验证职员提交的信息,若输入为空,系 统会提示该项不能为空;若输入信息与数据库信息不匹配,系统会提示对应项出错; 用户可以重新输入。若输入信息正确,系统跳转到爱心宠物诊所的主页面,职员可以 使用其他的功能。1.2.2退出职员点击“退出系统”后,系统会结束本次对话,提示退出成功的信息,并返回 到登录页面上。职员

11、可以选择重新登录,或者关闭登录页面。1.2.3浏览兽医及其专业特长职员点击兽医后即可进入查找兽医及专业的页面。在文本框中输入兽医的名称, 点击查询按钮即可浏览该兽医所擅长的专业,点击下方的重新查询,即可返回到查询 页面。若不清楚兽医名称,可通过输入想了解的专业获取与该专业相关的兽医。此查 询页面支持模糊查询,输入相关文字即可获得信息。若输入为空或信息不存在,系统 会给出相应的提示信息。1.2.4浏览宠物主人的信息职员点击宠物后进入宠物及其主人的查询页面。在文本框中输入宠物主人的全名 或者名字中的部分字后,点击查询提交页面。系统给出主人及其所拥有的宠物,点击 宠物主人的链接,即可查看该宠物主人的

12、电话、所在城市和详细的地址。职员可以选 择对主人信息进行修改或重新查询。若所查询的宠物主人不存在,系统提示该客户不存在。1.2.5更新宠物主人的信息职员在宠物主人信息页面点击修改信息后,系统跳转到修改信息的页面,可以对 宠物主人所在城市、地址和电话等信息进行修改。职员将所需修改的信息修改完毕后 点击确认修改的按钮,系统会对宠物主人的信息进行修改,提示修改成功,并显示修 改后的信息。1.2.6添加新客户职员点击添加新客户后,系统跳转到客户添加的页面。职员对客户名称、地址、 城市、电话号码等信息进行填写,并提交页面。系统将信息添加到客户信息表中,提 示添加成功,自动跳转到查看信息的页面。1.2.7

13、浏览宠物信息职员输入宠物名称后点击“查询”按钮,系统查找出符合条件的宠物,呈现一个 查询结果页面给职员以便浏览其相关的信息,职员不仅可以浏览宠物的信息,还可以 浏览该宠物主人的信息。职员点击所需查找的宠物链接,便可浏览该宠物的详细信息: 名称、类型、出生日期和主人名称等1.2.8更新宠物信息职员在浏览宠物的详细信息时,可以通过点击修改信息按钮进入到修改信息的页 面。职员可以修改宠物的类型、出生日期和主人等信息。点击修改按钮,系统将更新 数据库中的相关信息,呈现修改过后的宠物信息,并给用户提示信息“修改信息成功”。 1.2.9添加一次宠物的访问职员在宠物信息页面点击增加病例,系统跳转到增加病例页

14、面。职员填写求诊日 期和病例描述后,进行确认增加或者取消增加的操作。病例增加成功后,系统提示病 例增加成功1.2.10浏览宠物的访问历史记录职员在浏览宠物详细信息时,点击阅读病例,可以浏览宠物的求诊记录,包括每 次的求诊日期及病例描述1.2.11添加新宠物职员输入宠物的名称,从下拉列表选择中宠物的主人和类型,点击选择日期的文 本框选择宠物的出生日期,点击添加按钮。系统成功添加了宠物的信息后,提示用户 “添加成功”,并跳转到宠物的详细信息页面,职员可以选择修改其信息或者继续添 加新的宠物。2系统设计2.1系统总体结构设计系统设计时基于MVC设计模型,采用三层架构,如图2-1所示。应用服务器务器图

15、2-1 “爱心宠物诊所”系统的体系结构2. 2关键抽象从需求中可以得出系统的如下关键抽象:兽医、专业特长、宠物主人、宠物类型、 宠物和宠物的访问。这些实体可以设计为JavaBean类,例如宠物需要获得这些信息: 名称、标识ID、类型ID和出生日期等。宠物主人和宠物之间具有如下关系:一个宠 物主人可以拥有多个宠物,每一个宠物属于一个主人:每一个宠物可能到诊所多次就 诊;每个兽医具有多项专长,而同一专长可能有多个兽医。图2-2描述了系统的关键 抽象,他们为系统的模型。log-inS ervl etBean-nane :卩hksvord : Stri ng -chock : String check

16、code : String* .j :、.山:;I se-NriniuOgePasswordO sctPasshiotd 0 tscrCheckO ge: +geti)!iwe ( +setl!njtf*e (gelllirLh_da;eO +沁iBirlh du:uO +gotVamo() +setMajnfiO getfo*ner() +adlA,JlUf G+geiVisit daicO +LookOwriGrBwiri-onanir? : s tri ng address : siruw -city : slruiK -ieli?irnie : string gelOname 0 ts

17、ctOfiamaO 4-gc*Adcrc!SsO i-se:Aricr(ssO i;e;C; iy0 FsetCityO tgciTwli,phoneO, se: Telephone 0图2-2系统模型2. 3用例设计使用面向对象设计时,关键在于描述那些对象如何交互完成用例的功能,通常将对象发送消息的相互调用过程画成时序图。下面将逐一画出用例的时序图。登录的时序图,如图2-3图2-3登录的时序图浏览兽医及其专业特长的时序图,如图2-4u紐人査询条件T图2-4浏览兽医及其专业特长Z、dakos t Crq. resp) 护、yturuh (vlanie, siia5. sendRedirect浏

18、览宠物主人的信息的时序图,如图2-5K输人査询条件-T( ATrayLi 狀Z、doFos t irTO. 护 Nurull (pininie, o.*5、sv:JRcdirect图2-5浏览宠物主人的信息更新主人信息的时序图,如图2-6图2-6更新主人信息图2-7添加新客户浏览宠物信息的时序图,如图2-81.输人住询条件M捉交I5宀3- search (pnntw?, onninn;L Affaylisl3、vii city, telephone等信息变为可以改变信息的文本框,如图3-3所示。表格中含有确认 修改和取消修改两个按钮,若选择取消修改则删除修改后的信息显示默认信息。点击 确认修改

19、,表单中的信息提交到updateOwnerServlet.java文件中。在Servlet中,使用 SQL更新语句更新owners表中的信息,并用查找语句将修改后的休息保存在session 中,将修改后的信息发送到ownerlnfo.jsp页面,使修改后的信息显示在该页面中。 关键代码如下:String sql=update owners set address=+address+,city=,+city+,telephone=,+telephone+,where oname=+oname+;stmt.executeUpdate(sql);String sq!2=select * from o

20、wners where onanie=+oname+;rs=stmt.executeQuery(sqI2);LookOwnerBean mm=new LookOwnerBeanO;while(rs.next()mm.setOname(rs.getString(HonameH);mm.setAddress(rs.getString(Haddress,r):mm.setCity(rs.getString(ncityH);mm.setTeIephone(rs.getString(,telephonew);)退出系统宠输役衍应用元肖主人堆址电话166234752图3-3修改宠物主人的详细信息3. 6浏

21、览修改宠物的详细信息点击宠物链接时,将宠物的名字发送到petlnfoServlet.java文件中,根据传送过 来的名字,使用SQL语句从pets表中获取与名字对应的birth_date、type_id、owner_id。 pets表中的owner_id与owners表中id是外键链接的,可以用select语句找出其主人 名字oname,同理可获取其类型,并将生日、类型、主人名字等信息保存在session 中。在petlnfo.jsp页面中,建立表格。在表格中添加标签和对应的信息,信息从session 中获取。表格下方提供阅读病例、增加病例、修改信息和重新查询的超链接,若选择 重新查询,则返回

22、到lookPet.jsp页面,如图3-4所示。退岀系统S3岳芳籾忘物名称fhT-恢出生B朝2016-07-06珮王人李3图3-4浏览宠物的详细信息选择修改信息,则跳转到updatePet.jsp文件中,在修改信息页面中,宠物的名字 仍从session中获取并设置为只读属性,birth_date初值为原来的生日可以改变。宠物 主人和类型从数据库中存在的客户和类型中进行选取,如图3-5所示。表格中含有确 认修改和取消修改两个按钮,若选择取消修改则删除修改后的信息显示默认信息。点 击确认修改,表单中的信息提交到updatePetServlet.java文件中。在Servlet中,使用 SQL更新语句

23、更新pets表中的信息,并用查找语句将修改后的休息保存在session中, 将修改后的信息发送到petlnfo.jsp页面,使修改后的信息显示在该页面中。退出系统宠涵舎所龛用小飞I出生日期2016-07-06宠紛壬人*7幼収*冷改图3-5修改宠物的详细信息3. 7增加病例在petlnfo.jsp页面中选择增加病例,页面跳转到addCase.jsp页面。在此页面嵌入 riqi.jsp文件。宠物名称、类型、出生日期、宠物主人等信息设为与petlnfo.jsp页面相 同的固定值,求诊日期点击后选择日历的方法是调用riqi.jsp文件的HS_setDate(this) 方法,病例描述需要职员进行填写,

24、下方有确认增加、取消增加和返回三个按钮。如 图3-6所示。点击取消增加则清空所填写的内容,点击返回则回到petlnfo.jsp页面, 点击确认增加则提交表单信息到addCaseServlet.java文件中。在Servlet文件中根据宠 物名字,用SQL语句获取宠物表pets的id。而pets中的id与visits表中的pet_id通 过外键联系,获得pet_id后将求诊日期和病例描述加入visits表中,返回到lookPet.jsp 中并提升添加成功。关键代码如下:String sql2=Mselect pets.id from pets where pnanie=,M+pnanie+MM,

25、;rs=stmt.executcQuery(sql2);LookPetBean mm=new LookPctBeanO;while(rs.next()mm.setId(rs.getString(HidH);wordlist.add(mm);petid=nini.getld();/System.out.println(petid);String sql3=Hselect from visits ”;rs=stmt.executeQuerjr(sql3);rs.last();int k;k=rs.getRow()+l;String sql=Hinsert into visitsvalues(n+k

26、+T+petid+,H+date+,;,+N,+description+”);stmt.executeUpdate(sql);出生日尊时壬人JA*2015:?曰一二三囚五亢BWttO3Vg67&9U11121334ISlfrI?131020nn23M252?31 1T&010111213MIS17WJ920212225M2S2627矗H3031I W图3-9添加新宠物4实训感想“纸上得来终觉浅,绝知此事要躬行! ”在这短短的时间里,让我深深的感觉到 自己在实际应用中所学专业知识的匮乏。仅鼎书本上那些有限的知识根本满足不了工 作的需要,让我真真领悟到“学无止境”这句话的涵义。对于老师所说的课堂上

27、培养 不出高级程序员的观点,我表示深刻的赞同,这次的实训也恰好证明了这一点。课堂 上大家纸上谈兵积极性不高,也没有碰到什么实际的问题,对自己能力提升帮助不大。 在这次实训中,儿乎每天都在敲代码,碰到各种各样的问题,通过求助同学白度搜索 解决问题的同时,也是自己能力提升的过程。随着实训的进行,从遇到问题一脸懵逼 到学会查找程序中的错误代码及程序中的逻辑错误,享受到了编程的乐趣。因为前期 基础差进度慢,所以很多同学都选择了晚上来加班,虽然学校没有要求。这次实训中,大家学习的积极性空前高涨。在寝室除了讨论游戏以外,也开始讨 论程序的逻辑问题,打游戏的时间明显减少了很多。印象最深的是一个奇葩同学,晚 上快十二点了还抱着电脑去我们寝室问问题,虽然很欣赏他的态度,但是真的不赞同 他的做法。感谢学校为我们提供了这次实训的机会和环境,感谢崔老师为我们提供的 实训资源,感谢李老师在实训期间对我们的照顾。实训对我们的帮助比无聊的文化课 强多了,真心希望学校能多提供一些这样的机会。

温馨提示

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

评论

0/150

提交评论