• 2.51 MB
  • 34页

地球生物学web数据库管理系统实习报告

  • 34页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
软件工程综合实习报告实习任务名称:地球生物学web数据库管理系统小组成员姓名:班级学号:中国地质大学信息工程学院软件工程系2012年4月31 目录1.系统概述11.1系统背景11.2系统目标11.3里程碑计划11.4系统可交付成果21.5人力计划21.6测试计划21、数据和数据库完整性测试22、功能测试33、用户界面测试34、性能评价45、安全性和访问控制测试46、故障转移和恢复测试57、配置测试68、安装测试71.8开发环境与工具82.需求分析82.1现有系统概述82.2系统需求概述82.3功能性需求92.4非功能性需求92.4.1用户界面92.4.2硬件考虑92.4.3性能特征102.4.4错误处理102.4.5系统接口102.4.5质量要求102.4.6安全问题112.5系统模型112.5.1用例模型112.5.1.1参与者汇总112.5.1.2用例汇总112.5.1.3顶层用例图112.5.1.4用例描述122.5.2对象模型152.5.3动态模型163.概要设计173.1系统总体设计173.1.1逻辑结构设计183.1.2软件架构设计183.2系统功能设计1931 3.2.1总体结构193.2.1功能设计说明193.3数据库设计203.3.1建库设计203.3.2数据库表存放关系213.4界面设计213.4.1界面214.详细设计234.1模块接口设计234.1.1接口A234.1.1.1功能描述234.1.1.2输入项与输出项235.单元测试246.系统测试266.1模块测试266.2测试评价307.实习体会30参考文献3131 1.系统概述1.1系统背景地质资料是地质工作者在地质勘查工作的结晶,是国家的宝贵财富。随着计算机科学技术的发展,我们可以利用数据库Web服务系统将这些海量的数据进行有效的管理和存储并且为工作者提供良好的信息服务。地球生物学数据库Web服务系统是从地理剖面数据角度出发建立的数据库web服务系统。地质剖面数据时空性强、类型和来源多、数据量大、结构复杂、获取成本高。因此,大力推动地质生物学数据的共享平台建设,运用信息技术手段加强地质生物学数据库管理与服务,创造科学、高效的共享环境,有利于数据资源的充分开发和利用,有利于地球科学的系统性研究。其次,地质生物学数据对于地质勘查具有长期的使用价值,因而具有长期保存的必要性,科研工作者或各地质单位通过对已有的地质数据进行处理分析,结合野外的地质勘查,将进一步提高地质数据的准确性。总之,地球生物学数据是国家宝贵的财富和战略性资源,国家地球生物学信息系统也因此成为国家经济资源信息系统的重要组成部分。地球生物学数据库Web服务系统为地质工作者提供良好的数据存储和查询等服务的平台,这对于地质工作者具有重要的意义。1.2系统目标序号目标内容1本项目主要是基于Java技术实现地球生物学数据库管理系统,最终提交一个基于B/S的Web服务系统。2系统开发同步产生的相关文档1.3里程碑计划序号项目阶段阶段完成标准(里程碑)开始时间结束时间工作量(日)1项目启动项目启动会议2.282.2912项目计划项目计划核准3.13.323项目实施需求分析完成3.43.1064项目实施与监控概要设计完成3.113.1875项目实施与监控详细设计完成3.193.2896项目实施与监控系统代码完成3.294.25277项目实施与监控系统测试完成4.264.3048项目实施与监控交付软件成果5.15.32合计5831 1.4系统可交付成果序号里程碑可交付成果交付日期责任人主要工作1需求分析完成软件需求规格说明3.10贺小梅完成需求规格说明书2概要设计完成概要设计说明3.18-完成概要设计说明3详细设计完成详细设计说明3.28-完成详细说明4系统代码完成单元测试问题追踪表4.25-进行单元测试问题追踪5系统测试完成系统测试报告4.30-完成系统测试6交付软件成果系统软件/演示数据5.3-软件演示1.5人力计划序号阶段开始时间结束时间人力数量备注1项目启动2.282.29-2计划核准3.13.3-3需求分析3.43.10-4概要设计3.113.18-5详细设计3.193.28-6编码及单元测试3.294.25-7系统测试4.264.30-8系统提交5.15.31.6测试计划1、数据和数据库完整性测试数据库和数据库进程应作为PGBDB中的子系统来进行测试。在测试这些子系统时,不应将测试对象的用户界面用作数据的接口。对于数据库管理系统(DBMS),还需要进行深入的研究,以确定可以支持以下测试的工具和方法。测试目标:确保数据库访问方法和进程正常运行,数据不会遭到损坏。方法:1、调用各个数据库访问方法和进程,并在其中填充有效的和无效的数据或对数据的请求。2、检查数据库,确保数据已按预期的方式填充,并且所有数据库事件都按正常方式出现;或者检查所返回的数据,确保为正当的理由检索到了正确的数据31 完成标准:所有的数据库访问方法和进程都按照设计的方式运行,数据没有遭到损坏。需考虑的特殊事项:测试可能需要DBMS开发环境或驱动程序以便在数据库中直接输入或修改数据。进程应该以手工方式调用。应使用小型或最小的数据库(其中的记录数很有限)来使所有无法接受的事件具有更大的可见性。2、功能测试测试对象的功能测试应该侧重于可以被直接追踪到用例或业务功能和业务规则的所有测试需求。这些测试的目标在于核实能否正确地接受、处理和检索数据以及业务规则是否正确实施。这种类型的测试基于黑盒方法,即通过图形用户界面(GUI)与应用程序交互并分析输出结果来验证应用程序及其内部进程。以下列出的是每个应用程序推荐的测试方法概要:测试目标:确保测试对象的功能正常,其中包括数据浏览、数据输入、处理、检索和导出等。方法:利用有效的和无效的数据来执行各个用例、用例流或功能,以核实以下内容:在使用有效数据时得到预期的结果。在使用无效数据时显示相应的错误消息或警告消息。各业务规则都得到了正确的应用。完成标准:所计划的测试已全部执行。所发现的缺陷已全部解决。需考虑的特殊事项:确定或说明那些将对功能测试的实施和执行造成影响的事项或因素(内部的或外部的)3、用户界面测试通过用户界面(UI)测试来核实用户与软件的交互。UI测试的目标在于确保用户界面向用户提供了适当的访问和浏览测试对象功能的操作。除此之外,UI测试还要确保UI功能内部的对象符合预期要求,并遵循一定的标准。测试目标:核实以下内容:1、通过浏览测试对象可正确反映业务的功能和需求,这种浏览包括窗口与窗口之间、字段与字段之间的浏览,以及各种访问方法(Tab健、鼠标移动和快捷键)的使用2、窗口的对象和特征(例如:菜单、大小、位置、状态和中心)都符合标准。方法:为每个窗口创建或修改测试,以核实各个应用程序窗口和对象都可正确地进行浏览,并处于正常的对象状态。完成标准:证实各个窗口都与基准版本保持一致,或符合可接受标准需考虑的特殊事项:并不是所有定制或第三方对象的特征都可访问。31 4、性能评价性能评价是一种性能测试,它对响应时间、事务处理速率和其他与时间相关的需求进行评测和评估。性能评价的目标是核实性能需求是否都已满足。实施和执行性能评价的目的是将测试对象的性能行为当作条件(例如工作量或硬件配置)的一种函数来进行评价和微调。注:以下事务均指“逻辑业务事务”。这种事务被定义为将由系统的某个主角通过使用测试对象来执行的特定用例,例如,添加或修改某个合同。测试目标:核实所指定的事务或业务功能在以下情况下的性能行为:1、正常的预期工作量2、预期的最繁重工作量方法:使用为功能测试制定的测试过程。1、通过修改数据文件来增加事务数量,或通过修改脚本来增加每项事务的迭代次数。2、脚本应该在一台计算机上运行(最好是以单个用户、单个事务为基准),并在多台客户机(虚拟的或实际的客户机)上添加负载。完成标准:单个事务或单个用户:在每个事务所预期或要求的时间范围内成功地完成测试脚本,没有发生任何故障。多个事务或多个用户:在可接受的时间范围内成功地完成测试脚本,没有发生任何故障。需考虑的特殊事项:综合的性能测试还包括在服务器上添加后台工作量。可采用多种方法来执行此操作,其中包括:直接将“事务强行分配到”服务器上,这通常以“结构化查询语言”(SQL)调用的形式来实现。1、通过创建“虚拟的”用户负载来模拟许多个(通常为数百个)客户机。此负载可通过“远程终端仿真”(RemoteTerminalEmulation)工具来实现。此技术还可用于在网络中加载“流量”。2、使用多台实际客户机(每台客户机都运行测试脚本)在系统上添加负载。性能测试应该在专用的计算机上或在专用的机时内执行,以便实现完全的控制和精确的评测。性能测试所用的数据库应该是与实际大小相同或等比例缩放的数据库。5、安全性和访问控制测试安全性和访问控制测试侧重于安全性的两个关键方面:1、应用程序级别的安全性,包括对数据或业务功能的访问2、系统级别的安全性,包括对系统的登录或远程访问。应用程序级别的安全性可确保:在预期的安全性情况下,主角只能访问特定的功能或用例,或者只能访问有限的数据。例如,可能会允许所有人输入数据,创建新账户,但只有经理才能删除这些数据或账户。如果具有数据级别的安全性,测试就可确保“用户类型一”能够看到所有客户信息(包括财务数据),而“用户二”只能看见同一客户的统计数据。系统级别的安全性可确保只有具备系统访问权限的用户才能访问应用程序,而且只能通过相应的网关来访问。31 测试目标:应用程序级别的安全性:核实主角只能访问其所属用户类型已被授权使用的那些功能或数据。系统级别的安全性:核实只有具备系统和应用程序访问权限的主角才能访问系统和应用程序。方法:应用程序级别的安全性:确定并列出各用户类型及其被授权使用的功能或数据。1、为各用户类型创建测试,并通过创建各用户类型所特有的事务来核实其权限。2、修改用户类型并为相同的用户重新运行测试。对于每种用户类型,确保正确地提供或拒绝了这些附加的功能或数据。系统级别的访问:请参见下面的“需考虑的特殊事项”完成标准:各种已知的主角类型都可访问相应的功能或数据,而且所有事务都按照预期的方式运行,并在先前的应用程序功能测试中运行了所有的事务。需考虑的特殊事项:必须与相应的网络或系统管理员一起对系统访问权进行检查和讨论。由于此测试可能是网络管理或系统管理的职能,可能不需要执行此测试。6、故障转移和恢复测试故障转移和恢复测试可确保测试对象能成功完成故障转移,并从硬件、软件或网络等方面的各种故障中进行恢复,这些故障导致数据意外丢失或破坏了数据的完整性。故障转移测试可确保:对于必须始终保持运行状态的系统来说,如果发生了故障,那么备选或备份的系统就适当地将发生故障的系统“接管”过来,而且不会丢失任何数据或事务。恢复测试是一种相反的测试流程。其中,将应用程序或系统置于极端的条件下(或者是模仿的极端条件下),以产生故障,例如设备输入/输出(I/O)故障或无效的数据库指针和关健字。启用恢复流程后,将监测和检查应用程序和系统,以核实应用程序或系统是正确无误的,或数据已得到了恢复。测试目标:确保恢复进程(手工或自动)将数据库、应用程序和系统正确地恢复到了预期的已知状态。测试中将包括以下各种情况:1客户机断电2、服务器断电3、通过网络服务器产生的通信中断4、DASD和/或DASD控制器被中断、断电或与DASD和/或DASD控制器的通信中断5、周期未完成(数据过滤进程被中断,数据同步进程被中断)。6、数据库指针或关键字无效7、数据库中的数据元素无效或遭到破坏31 方法:应该使用为功能和业务周期测试创建的测试来创建一系列的事务。一旦达到预期的测试起点,就应该分别执行或模拟以下操作:1、客户机断电:关闭PC的电源。2、服务器断电:模拟或启动服务器的断电过程。3、通过网络服务器产生的中断:模拟或启动网络的通信中断(实际断开通信线路的连接或关闭网络服务器或路由器的电源)。4、DASD和DASD控制器被中断、断电或与DASD和DASD控制器的通信中断:模拟与一个或多个DASD控制器或设备的通信,或实际取消这种通信。一旦实现了上述情况(或模拟情况),就应该执行其他事务。而且一旦达到第二个测试点状态,就应调用恢复过程。在测试不完整的周期时,所使用的方法与上述方法相同,只不过应异常终止或提前终止数据库进程本身。对以下情况的测试需要达到一个已知的数据库状态。当破坏若干个数据库字段、指针和关键字时,应该以手工方式在数据库中(通过数据库工具)直接进行。其他事务应该通过使用“应用程序功能测试”和“业务周期测试”中的测试来执行,并且应执行完整的周期。完成标准:在所有上述情况中,应用程序、数据库和系统应该在恢复过程完成时立即返回到一个已知的预期状态。此状态包括仅限于已知损坏的字段、指针或关键字范围内的数据损坏,以及表明进程或事务因中断而未被完成的报表。需考虑的特殊事项:1、恢复测试会给其他操作带来许多的麻烦。断开缆线连接的方法(模拟断电或通信中断)可能并不可取或不可行。所以,可能会需要采用其他方法,例如诊断性软件工具。2、需要系统(或计算机操作)、数据库和网络组中的资源。3、这些测试应该在工作时间之外或在一台独立的计算机上运行。7、配置测试配置测试核实测试对象在不同的软件和硬件配置中的运行情况。在大多数生产环境中,客户机工作站、网络连接和数据库服务器的具体硬件规格会有所不同。客户机工作站可能会安装不同的软件,例如,应用程序、驱动程序等。而且在任何时候,都可能运行许多不同的软件组合,从而占用不同的资源。测试目标:核实测试对象可在要求的硬件和软件配置中正常运行。31 方法:1、使用功能测试脚本。2、在测试过程中或在测试开始之前,打开各种与非测试对象相关的软件(例如Microsoft应用程序:Excel和Word),然后将其关闭。3、执行所选的事务,以模拟主角与测试对象软件和非测试对象软件之间的交互。4、重复上述步骤,尽量减少客户机工作站上的常规可用内存。完成标准:对于测试对象软件和非测试对象软件的各种组合,所有事务都成功完成,没有出现任何故障。需考虑的特殊事项:1、需要、可以使用并可以通过桌面访问哪种非测试对象软件?2、通常使用的是哪些应用程序?3、应用程序正在运行什么数据?例如,在Excel中打开的大型电子表格,或是在Word中打开的100页文档。4、作为此测试的一部分,应将整个系统、Netware、网络服务器、数据库等都记录下来。8、安装测试安装测试有两个目的。第一个目的是确保该软件能够在所有可能的配置下进行安装,例如,进行首次安装、升级、完整的或自定义的安装,以及在正常和异常情况下安装。异常情况包括磁盘空间不足、缺少目录创建权限等。第二个目的是核实软件在安装后可立即正常运行。这通常是指运行大量为功能测试制定的测试。测试目标:核实在以下情况下,测试对象可正确地安装到各种所需的硬件配置中:1、首次安装:以前从未安装过PGBDB的新计算机2、更新:以前安装过相同版本的PGBDB的计算机3、更新:以前安装过较早版本的PGBDB的计算机方法:手工开发脚本或开发自动脚本,以验证目标计算机的状况新PGBDB从未安装过;已安装PGBDB相同或较早版本)。启动或执行安装。使用预先确定的功能测试脚本子集来运行事务。完成标准:PGBDB事务成功执行,没有出现任何故障。需考虑的特殊事项:应该选择PGBDB的哪些事务才能准确地测试出PGBDB应用程序已经成功安装,而且没有遗漏主要的软件构件?31 1.8开发环境与工具序号类别具体需求备注1硬件普通个人PC2软件MyEclipse,MacromediaDreamweaver82.需求分析2.1现有系统概述地质资料是地质工作者在地质勘查工作的结晶,是国家的宝贵财富。随着计算机科学技术的发展,我们可以利用数据库Web服务系统将这些海量的数据进行有效的管理和存储并且为工作者提供良好的信息服务。地球生物学数据库Web服务系统是从地理剖面数据角度出发建立的数据库web服务系统。地质剖面数据时空性强、类型和来源多、数据量大、结构复杂、获取成本高。因此,大力推动地质生物学数据的共享平台建设,运用信息技术手段加强地质生物学数据库管理与服务,创造科学、高效的共享环境,有利于数据资源的充分开发和利用,有利于地球科学的系统性研究。其次,地质生物学数据对于地质勘查具有长期的使用价值,因而具有长期保存的必要性,科研工作者或各地质单位通过对已有的地质数据进行处理分析,结合野外的地质勘查,将进一步提高地质数据的准确性。2.2系统需求概述通过计算机网络数据库技术,将以往地球生物学研究的成果资料和目前研究过程中获取的科研数据,搭建具有结构化的数据格式,供相关人员使用······。31 2.3功能性需求2.4非功能性需求2.4.1用户界面地球生物学数据库系统界面的设计应当着重于易于使用,功能清晰,层次不宜太浅太深,操作简单,内容一目了然。良好的界面设计给用户带来良好的体验,对于客户不需要经过复杂的培训就能够明白系统具备哪些功能,并熟练掌握系统的使用;地球生物学数据库系统的每项特性都应具有内置的用户联机帮助。联机帮助应包括关于平台使用的分步指导。联机帮助应包括术语和缩写词的定义。2.4.2硬件考虑一般个人PC内存:2G31 2.4.3性能特征数据访问效率高,稳定性强,能够支持多用户并行操作,具有很强的安全控制机制。2.4.4错误处理适时提醒并能够有效地阻止非法访问。2.4.5系统接口表格类:XLS,已获取及研究中不断产生的以EXCLE软件制作和提交的化学测试或薄片分析的结果数据。每条数据以剖面中的分层为数据单元,包含相关测试结果。图片:JPG,与剖面相关的照片和矢量图件导出的位图。文献:一些书籍、资料。导出数据表格XLS其他输出数据:图像、电子书籍、资料。2.4.5质量要求主要质量属性详细要求31 正确性地球生物学数据库系统一般能够保持运行正确。可靠性地球生物学数据库系统在每周七天,每天二十四小时内都应是可以使用的。健壮性地球生物学数据库系统对于需要输入的数据,应该给予用户良好的提示,若输入数据不合要求,应将具体的错误信息展示出来,以方便用户操作;对于一些数据,可预先设置默认值,以给用户对一些参数设置的参考,系统应该对数据的存取有良好的设计。兼容性一般情况下都可与其它软件良好兼容。2.4.6安全问题能够有效地阻止非法访问。2.5系统模型2.5.1用例模型2.5.1.1参与者汇总[列出系统的所有执行者,并且对其进行简短描述]参与者参与者说明非登录用户只允许访问开放数据登录用户可以访问开放及机密数据管理员可以访问并管理数据2.5.1.2用例汇总用例编号用例名称优先级复杂度1登录12浏览03查询24导出25下载22.5.1.3顶层用例图主要包括查询、浏览、插入、删除、修改、下载及导入功能。31 2.5.1.4用例描述1、登录(1)用例图成功场景通过客户身份验证:成功登陆取消客户身分验证:基本流,退出失败场景无效用户名:基本流,无效用户名重新输入客户密码:基本流,客户密码不正确31 2、浏览(1)用例图成功场景获取所需浏览剖面信息得到对应剖面图片失败场景获取所需浏览剖面信息错误或者获取信息失败获取对应剖面图片失败3、查询(1)用例图31 成功场景获取所需地球生物信息失败场景获取所需地球生物信息错误或者获取信息失败4、数据导出(1)用例图成功场景获取所需地球生物信息并导出层样品数据31 失败场景获取所需地球生物信息错误或者获取信息失败2.5.2对象模型31 2.5.3动态模型浏览:登录:查询:31 导出:3.概要设计3.1系统总体设计31 3.1.1逻辑结构设计Mvc架构:3.1.2软件架构设计31 3.2系统功能设计3.2.1总体结构3.2.1功能设计说明31 3.3数据库设计3.3.1建库设计31 3.3.2数据库表存放关系文献用户idid名称名称剖面包含时代介绍描述......3.4界面设计3.4.1界面a.剖面概览页面31 b.分层概览页面31 b.分层细览页面4.详细设计4.1模块接口设计4.1.1接口A4.1.1.1功能描述导入:直接读取XLS(excel)文件数据,批量导入添加:添加某一新的数据项修改:对某些字段可以修改删除:批量、选择删除4.1.1.2输入项与输出项输入数据:表格类:XLS,已获取及研究中不断产生的以EXCLE软件制作和提交的化学测试或薄片分析的结果数据。每条数据以剖面中的分层为数据单元,包含相关测试结果。输出数据:图片:JPG,与剖面相关的照片和矢量图件导出的位图。文献:一些书籍、资料。31 导出数据表格XLS其他输出数据:图像、电子书籍、资料。5.单元测试Dialog("InternetExplorer").WinButton("否(N)").ClickWindow("WindowsInternetExplorer").Move244,10Window("WindowsInternetExplorer").MaximizeWindow("WindowsInternetExplorer").CloseFindBugs是一个静态分析工具,它检查类或者JAR文件,将字节码与一组缺陷模式进行对比以发现可能的问题。检测出的问题分析解决方法Bug:db.ChatDB.getChat()mayfailtoclosePreparedStatementPatternid:ODR_OPEN_DATABASE_RESOURCE,type:ODR,category:BAD_PRACTICE写代码的时候考虑不够全面Themethodcreatesadatabaseresource(suchasadatabaseconnectionorrowset),doesnotassignittoanyfields,passittoothermethods,orreturnit,anddoesnotappeartoclosetheobjectonallpathsoutofthe31 method. Failuretoclosedatabaseresourcesonallpathsoutofamethodmayresultinpoorperformance,andcouldcausetheapplicationtohaveproblemscommunicatingwiththedatabase.Bug:db.FriendDB.addFriend(Friend)mayfailtoclosePreparedStatementPatternid:ODR_OPEN_DATABASE_RESOURCE,type:ODR,category:BAD_PRACTICE写代码的时候考虑不够全面Themethodcreatesadatabaseresource(suchasadatabaseconnectionorrowset),doesnotassignittoanyfields,passittoothermethods,orreturnit,anddoesnotappeartoclosetheobjectonallpathsoutofthemethod. Failuretoclosedatabaseresourcesonallpathsoutofamethodmayresultinpoorperformance,andcouldcausetheapplicationtohaveproblemscommunicatingwiththedatabase.有几个变量声明之后没有用到Eg:Bug:Unreadfield:action.BoardAction.boardDBPatternid:URF_UNREAD_FIELD,type:UrF,category:PERFORMANCEThisfieldisneverread.写代码的时候考虑不是很周到,定义了一些变量,但是后面没有用到,浪费了内存,以及程序的运行速度。Considerremovingitfromtheclass.将这些没有用到的变量删除31 6.系统测试6.1模块测试1、登录(1)用例图成功场景通过客户身份验证:成功登陆取消客户身分验证:基本流,退出失败场景无效用户名:基本流,无效用户名重新输入客户密码:基本流,客户密码不正确(2)用例规约:用例编号UC用例名称客户身份验证用例描述该用例描述系统是如何验证客户身份的主参与者客户前置条件根据登录后用户,分配权限后置条件无级别基本事件流程:1.进入网站2.输入用户名3.输入密码4.系统向后台服务器检查用户名和用户密码是否正确。5.选择服务6.退出候选事件流程:31 A1.无效用户名提示错误,是否重新输入A2.客户密码不正确提示错误,是否重新输入A3.匿名进入系统,可以查看部分信息A4.退出在基本流的任何一个步骤中,客户都可以选择“取消(Cancel)”退出,用例结束。特殊需求验证用户名和客户密码操作必须在3秒钟内完成扩展点无备注无2、浏览(1)用例图成功场景获取所需浏览剖面信息得到对应剖面图片失败场景获取所需浏览剖面信息错误或者获取信息失败获取对应剖面图片失败(2)用例规约:用例编号UC2用例名称浏览用例描述该用例描述客户是如何使用P_GBDB浏览地球生物信息主参与者客户前置条件根据登录后用户,分配权限后置条件无31 级别基本事件流程:1.进入网站2.点击浏览3.选择数据类别4.点击所属层更多信息,得到对应层信息5.点击详细,得到对应剖面详细信息6.若选择数据类别后,点击更多图片,则进入对应层图片浏览候选事件流程:A1.首页进入首页A2.登录会员登录A3.加入收藏收藏为主页特殊需求无扩展点无备注无3、查询(1)用例图成功场景获取所需地球生物信息失败场景获取所需地球生物信息错误或者获取信息失败(2)用例规约:31 用例编号UC3用例名称数据查询用例描述该用例描述客户是如何使用P_GBDB查询地球生物信息主参与者客户前置条件根据登录后用户,分配权限后置条件无级别基本事件流程:1.进入网站2.点击数据查询3.选择数据条件类别4.点击详细,得到对应剖面详细信息候选事件流程:A1.首页进入首页A2.登录会员登录A3.加入收藏收藏为主页特殊需求无扩展点无备注无2、数据导出(1)用例图成功场景获取所需地球生物信息并导出层样品数据31 失败场景获取所需地球生物信息错误或者获取信息失败(2)用例规约:用例编号UC4用例名称数据导出用例描述该用例描述客户是如何使用P_GBDB导出地球生物信息主参与者客户前置条件根据登录后用户,分配权限后置条件无级别基本事件流程:1.进入网站2.点击数据导出3.选择数据条件类别4.点击搜索,得到对应层详细信息1.点击层样品数据导出,则导出层样品数据候选事件流程:A1.首页进入首页A2.登录会员登录A3.加入收藏收藏为主页特殊需求无扩展点无备注无6.2测试评价在这个项目中我做的主要是前台页面的开发以及后面的业务流程,在编写jsp页面的时候进行过单元测试,大多数错误在开始编码时就已经发现并解决了,还有最复杂的业务流程,我们使用了Struts2框架进行了开发,在数据库层次我们使用了Hibernate框架进行开发,刚开始的时候我们遇到了很多问题,主要在单元测试时就已经解决了。我觉得对于我这种初学者开发这种Web服务系统,对于测试很重要,特别是我的前台,基本上是没编写一点代码就必须测试一些,要不然开发出来的结果往往出乎意料之外,因为它是Web服务系统,最后开发出来后还必须放到服务器上发布,所以它对于后面的系统集成测试也很重要。比如在进行集成测试时我们发现很多路径问题,还有在不同的系统上发布产生了种种的不兼容。7.实习体会经过这学期软件工程实验的学习,深深感到用户需求对软件的重要性。成功的软件产品是建立在成功的需求基础之上的,而高质量的需求来源于用户与开发人员之间有效的沟通与合作。当用户有一个问题可以用计算机系统来解决,而开发人员开始帮助用户解决这个问题,沟通就开始了。31   需求获取可能是最困难、最关键、最易出错及最需要沟通交流的活动。对需求的获取往往有错误的认识:用户知道需求是什么,我们所要做的就是和他们交谈从他们那里得到需求,只要问用户系统的目标特征,什么是要完成的,什么样的系统能适合商业需要就可以了,但是实际上需求获取并不是想象的这样简单,这条沟通之路布满了荆棘。首先需求获取要定义问题范围,系统的边界往往是很难明确的,用户不了解技术实现的细节,这样造成了系统目标的混淆。其次是对问题的理解,用户对计算机系统的能力和限制缺乏了解,任何一个系统都会有很多的用户或者不同类型的用户,每个用户只知道自己需要的系统,而不知道系统的整体情况,他们不知道系统作为一个整体怎么样工作效率更好,也不太清楚那些工作可以交给软件完成,他们不清楚需求是什么,或者说如何以一种精确的方式来描述需求,他们需要开发人员的协助和指导,但是用户与开发人员之间的交流很容易出现障碍,忽略了那些被认为是"很明显"的信息。最后是需求的确认,因为需求的不稳定性往往随着时间的推移产生变动,使之难以确认。为了克服以上的问题,必须有组织的执行需求的获取活动。在这次综合实习中,我深深地感觉到基础知识的重要性,充分理解用户需求后,其次就是将需求付诸于实际,对于设计,代码编写,就用到了以前的相关知识,所以学习很重要,只有不断的学习才能进步。31