为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

基于Web汽车租赁系统详细设计说明书

2019-02-15 50页 doc 285KB 58阅读

用户头像

is_281650

暂无简介

举报
基于Web汽车租赁系统详细设计说明书 案卷号 日期     <基于WEB的汽车租赁系统> 详细设计说明汽车 作    者:                                  完成日期:              2011-06-08              签 收 人:                                    签收日期:                                    修改情况记录: 版本号 修改批准人 修改人 安装日期 签收人       ...
基于Web汽车租赁系统详细设计说明书
案卷号 日期     <基于WEB的汽车租赁系统> 详细说明汽车 作    者:                                  完成日期:              2011-06-08              签 收 人:                                    签收日期:                                    修改情况记录: 版本号 修改批准人 修改人 安装日期 签收人                                         1 引言    1 1.1 编写目的    1 1.2 背景    1 1.3 定义    1 1.4 参考资料    2 2 程序系统的结构    3 3基于WEB的汽车租赁系统管理服务端设计    6 3.1基于WEB的汽车租赁系统服务端管理员登录模块    6 3.1.1 程序描述    6 3.1.2 功能    7 3.1.3 输入项及格式    7 3.1.4 算法    7 3.1.5 流程逻辑    7 3.1.6 接口    8 3.1.7 限制条件    8 3.1.8测试    8 3.1.9 尚未解决的问题    9 3.2管理员添加汽车信息模块    9 3.2.1 程序描述    9 3.2.2 功能    9 3.2.3 输入    9 3.2.4 算法    10 3.2.5流程图    10 3.2.6 接口    10 3.2.7 限制条件    10 3.2.8测试计划    10 3.2.9 尚未解决的问题    10 3.3管理员处理汽车信息(修改汽车信息、删除汽车信息)模块    11 3.3.1 程序描述    11 3.3.2 功能    11 3.3.3 输入    11 3.3.4 算法    12 3.3.5流程逻辑    12 3.3.6 接口    12 3.3.7 限制条件    13 3.3.8测试计划    13 3.3.9 尚未解决的问题    13 3.4管理员处理预订订单模块    13 3.4.1 程序描述    13 3.4.2 功能    14 3.4.3 输入    14 3.4.4 算法    14 3.4.5流程逻辑    15 3.4.6 接口    15 3.4.5 限制条件    16 3.4.6测试计划    16 3.4.6 尚未解决的问题    16 3.5管理员修改密码模块    16 3.5.1 程序描述    16 3.5.2 功能    16 3.5.3 输入    16 3.5.4 算法    17 3.5.5流程逻辑    17 3.5.6 接口    18 3.5.7 限制条件    18 3.5.8测试计划    18 3.5.9 尚未解决的问题    19 3.6管理员退出管理模块    19 3.6.1 程序描述    19 3.6.2 功能    19 3.6.3 输入    19 3.6.4 算法    19 3.6.5流程逻辑    19 3.6.6 接口    19 3.6.7 限制条件    20 3.6.8测试计划    20 3.6.9 尚未解决的问题    20 4 基于WEB的汽车租赁系统客户服务端设计    20 4.1用户登录和注销模块    21 4.1.1 程序描述    21 4.1.2 功能    22 4.1.3 输入项    23 4.1.4输出项    23 4.1.5 算法    23 4.1.6 流程逻辑    24 4.1.7 接口    24 4.1.8 测试计划    24 4.1.9 尚未解决的问题    24 4.2用户注册模块    25 4.2.1 程序描述    25 4.2.2 功能    25 4.2.3 输入项    26 4.2.4输出项    27 4.2.5 流程逻辑    28 4.2.6 接口    28 4.2.7 测试计划    28 4.3汽车信息检索模块    29 4.3.1 程序描述    29 4.3.2 功能    30 4.3.3 输入项    31 4.3.4输出项    31 4.3.5 算法    32 4.3.6 流程逻辑    32 4.3.7 接口    32 4.3.8 测试计划    33 4.4最优质服务排行推荐模块    33 4.4.1 程序描述    33 4.4.2 功能    34 4.4.3 输入项    34 4.4.4输出项    34 4.4.5 算法    35 4.4.6 流程逻辑    35 4.4.5 接口    35 4.4.6 测试计划    36 4.5查看汽车详细信息模块    36 4.5.1 程序描述    36 4.5.2 功能    36 4.5.3输出项    36 4.5.4 流程逻辑    37 4.5.5 接口    37 4.5.6 测试计划    38 4.6在线客服模块    38 4.6.1 程序描述    38 4.6.2 功能    38 4.6.3输出项    38 4.6.4 测试计划    38 4.7预订汽车信息模块    38 4.7.1 程序描述    38 4.7.2 功能    39 4.7.3 输入项    40 4.7.4输出项    40 4.7.5 算法    41 4.7.6 流程逻辑    41 4.7.7 接口    41 4.7.8 测试计划    42 4.8查看订单模块    42 4.8.1 程序描述    42 4.8.2 功能    42 4.8.3 输入项    42 4.8.4 输出项    43 4.8.6 流程逻辑    43 4.8.7 接口    43 4.8.8 测试计划    44 4.9个人信息面板模块    44 4.9.1 程序描述    44 4.9.2 功能    44 4.9.3 输入项    44 4.9.4 输出项    45 4.9.6 流程逻辑    46 4.9.7 接口    46 4.9.8 测试计划    46 5 阶段小结    46 1 引言 1.1 编写目的 该详细设计说明文档详细阐述了整个网上汽车租赁系统各个模块的主要算法,具体实现流程,以及各个模块之间的接口,模块之间的通信机制。预期读者包含系统的设计人员、编码人员、测试人员以及后期维护人员。 1.2 背景 a. 软件系统的名称:基于WEB的汽车租赁系统 b. 任务提出者:          开发者:          用户:欲使汽车租赁系统网络化运营、拓展网络租赁业务的各类汽车租赁公司。 使用本软件的单位:待定 1.3 定义 UML:Unified Modeling Language , 统一建模语言。 案况(scenario):是一系列表示系统和用户之间一次交互的步骤。 用案(use case):是由一名普通用户的目标联系在一起的一组用案。 类图(class diagram):表述系统中各个对象的类型及其间存在的各种静态关系。静态关系包括关联和子类型两种。 交互图(interactive diagram):是表述各组对象如何依某种行为进行协作的模型。包括顺序图和协作图。 状态图:表述了一个特定对象可能进入的所有可能的状态以及该对象的状态如何因影响该对象的事件而变。 可修改性:容许对系统进行修改而不增加原系统的复杂性。 有效性:软件系统能有效地利用计算机的时间资源与空间资源的能力。 可靠性:能够防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。 可理解性:系统具有清晰的结构,能直接反映用户的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植与可用。 可维护性:软件产品交付用户使用以后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化。 可重用性:概念或功能相互独立的一个或一组相关模块定义为一个软部件。软部件可以在多种场合应用的程度称为部件的可重用性。 可适应性:软件在不同的系统约束条件下,使用户需求得到满足的难易程度。 可移植性:软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。 可追踪性:根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。 可互操作性:多个软件元素相互通信并协同完成任务的能力。 1.4 参考资料 《软件工程:理论、与实践》,北京:高等教育出版社,2005.7出版,孙家广主编,刘强编著。 《UML基础与Rose建模教程》,人民邮电出版社,蔡敏,徐慧慧,黄炳强编著。 2 程序系统的结构 ? 管理服务端 服务端共包含7项功能:添加新优惠、、在现客服、删除过期通知、修改汽车信息、注册客户管理、特殊订单处理、密码变更、客户信息反馈处理、退出管理。 服务端各个模块总体结构图如下: 错误提示页面 当管理员登录汽车租赁系统服务端时,首先进入login.jsp界面,出现管理员登录页面,正确输入ID和密码后,页面跳转到后台管理主页面managerPannel.jsp,如果ID和密码输入不正确,这页面跳转到loginErr.htm错误提示页面。 ? 客户服务端 客户服务端共包含功能:注册、登录、注销、分类浏览汽车信息、推荐最优质服务、最新优惠服务通知、查看汽车、服务人员详细信息、按各种查询条件搜索、在线客服、提交订单、查看订单、个人信息面板、修改个人信息。 服务端各个模块总体结构图如下: 客户通过浏览器进入首页index.htm,该页面可以以各种方式浏览租赁公司简介、最新租赁优惠通知、最优质服务推荐、最新汽车信息、最近客户留言等,也可以通过在线客服获得帮助。注册用户则可以输入ID和密码验证登录。登录失败后,跳转到loginErr.htm。登录成功后进入注册客户服务userPannel.jsp主页面。这里可以查看、修改个人信息、发表租赁心得、预订租赁汽车服务、查看订单(当前订单状态和历史订单)。 3基于WEB的汽车租赁系统管理服务端设计 3.1基于WEB的汽车租赁系统服务端管理员登录模块 3.1.1 程序描述 服务端管理员登录模块主要完成对管理员登录时ID和密码的验证,如果输入的ID和密码正确,则页面跳转到managerPannel.jsp,进行下一步的操作,并且用session变量保存管理员的ID,以方便修改密码验证使用,否则就不能进入服务端主界面,不能进行管理员对汽车租赁系统的维护操作。 3.1.2 功能 验证管理员输入的ID和密码是否合法。 3.1.3 输入项及格式 登录ID:(adminID) 标识:adminID 类型:字符串型 格式:字符、数字的组合(字母开头)均可 长度的有效范围:20 登录密码: 标识:password 类型:字符串型 格式:字符、符号、数字的组合均可(区分大小写) 长度的有效范围:20 3.1.4 算法 系统先从登录界面的输入框中取得登录人员输入的ID和密码,然后将ID和密码与数据库中的ID和密码匹配,如果两者均和数据库中的相同,则验证通过,页面跳转到主界面,如果两者无法同时匹配,则验证不能通过,要求用户继续输入ID和密码进行验证。 3.1.5 流程逻辑 3.1.6 接口 ID:  adminID 参数赋值:调用request.getParameter从输入文本框中得到 调用方式:使用session.setAttribute将ID存入session变量中 关联表:  carRent数据库中的login表 3.1.7 限制条件 数据库在使用前要配置成功。 3.1.8测试计划 1.输入一个错误的ID观察程序运行的结果。 2.输入一个正确的ID和密码观察程序运行的结果。 3.不输入ID只输入密码观察程序结果。 4.只输入ID而不输入密码观察程序运行结果。 3.1.9 尚未解决的问题 暂无。 3.2管理员添加汽车信息模块 3.2.1 程序描述 管理员添加汽车信息模块主要完成管理员向数据库中添加新汽车的详细信息,系统先出现一个汽车信息输入提示界面,让管理员输入该汽车的相关信息,然后确定添加后,系统将该汽车的相关信息存入数据库中。 添加汽车信息模块包含如下文件: addCarInfo.htm(填写汽车信息) addCarStore.jsp(添加汽车处理页面,主要完成向数据库插入汽车信息的功能) 3.2.2 功能 在输入框中输入相应的汽车信息,然后单击添加汽车信息按钮,程序将输入的信息添加到数据库中,完成添加汽车信息操作。 3.2.3 输入 输入 标识 数据类型 数据格式 数据有效范围 汽车编号 carNo text String 1~20字符 车牌号 carID text String 1~20字符 汽车品牌 carBrand text String 1~20字符 入库时间 regDate text date   汽车服务人员 carServicer text String 1~20字符 车库号 garageNo text String 2字符 库存量 stockNum text int 1~65535 租赁价格 rentPrice text double   备注 remarks text String 1~200字符           3.2.4 算法 先从输入的文本框中取得上述数据,然后以汽车编号在数据库中查找,看看是否有重复的,如果有,则不能添加该汽车,因为每一本汽车的编号是唯一的,如果数据库中不存在这一编号,则将数据用SQL语句insert into……values…添加到数据库中。实现添加一条汽车信息记录的功能。 3.2.5流程图 3.2.6 接口 该程序的接口为上述输入数据,使用request.getParameter方法从输入文本框中取得数据,然后将这些数据传递给汽车添加处理程序,完成向数据库中插入一条新汽车信息记录的功能。 3.2.7 限制条件 数据库在使用前要配置成功,且确保输入的车牌号唯一。 3.2.8测试计划 1.输入不完整的汽车信息观察运行结果 2.输入完整的汽车信息且车牌号唯一,观察程序运行结果。 3.输入一个中已有的车牌号,观察程序运行结果,看看是否显示出错信息。 3.2.9 尚未解决的问题 暂无。 3.3管理员处理汽车信息(修改汽车信息、删除汽车信息)模块 3.3.1 程序描述 管理员处理汽车信息模块主要完成对汽车信息修改、删除功能。在每条汽车信息后面有两个按钮,分别为修改和删除,单击修改按钮,即进入修改汽车页面,首先显示汽车原有信息,然后管理员对相应的项进行修改,修改完后,单击修改,程序收集修改后的信息,然后对原有数据库的相应项进行更新。即可完成汽车信息的修改。如果单击删除按钮,即可将该汽车信息记录从数据库中删除。 修改汽车信息、删除汽车功能包含如下文件: dealCarInfo.jsp:处理汽车信息页面,通过这个页面可以删除汽车、修改汽车信息,以及搜索汽车。 delCar.jsp:根据车牌号在数据库中搜索该汽车,搜索到该汽车就将其从数据库中删除。 modifyCar.jsp:显示要修改汽车的原始信息,然后根据需要更改相应的项。 modifyCarS.jsp:显示修改后的汽车信息 3.3.2 功能 实现管理员对汽车信息的删除、修改的功能。 3.3.3 输入 注:删除时不需输入数据,而修改汽车信息需对汽车相应信息进行修改,需要输入修改的数据,此时,汽车编号、车牌号、汽车品牌、入库时间不能被修改。 输入 标识 数据类型 数据格式 数据有效范围 汽车服务人员 carServicer text String 1~20字符 车库号 garageNo text String 2字符 库存量 stockNum text int 1~65535 租赁价格 rentPrice text double   备注 remarks text String 1~200字符           3.3.4 算法 删除汽车时,通过点击汽车信息记录后面的删除按钮,系统将该汽车的编号传递到下一个页面进行处理,删除汽车处理页面先根据汽车编号和车牌号在数据库中进行查找,如果找到,则将该汽车从数据库中删除,页面进行自动刷新。而修改汽车信息时,也是首先将汽车编号和车牌号传递到下一个进行汽车修改操作的页面,程序先根据汽车编号在数据库查找该汽车,并把该汽车的原有信息输出,供管理员查看,管理员对汽车信息应修改的部分进行修改,然后点击确认后,程序对数据库进行更新,并显示修改成功后汽车的相应信息。 3.3.5流程逻辑 删除汽车信息: 修改汽车信息: 3.3.6 接口 汽车编号和车牌号:carNo、carID 方法:1、通过URL来传递该参数给下一页面处理 self.open('maintainCar.jsp? no=<%=carNo%>&id=<%=carID%>'); 2、使用session变量来保存 session.setAttribute(“carNo”,carNo); session.setAttribute(“carID”,carID); 3.3.7 限制条件 1、数据库在使用前要配置成功。 2、删除汽车时先会弹出一个确认删除框,只有点击确认后,才能对汽车进行删除操作,否则删除无法成功。 3.3.8测试计划 1.删除几条汽车记录,查看数据库中该汽车是否已经删除。 2.对汽车信息进行修改操作,修改后,查看输出修改后的结果和数据库中的显示是否一致 3.3.9 尚未解决的问题 暂无。 3.4管理员处理预订订单模块 3.4.1 程序描述 管理员处理订单模块主要完成管理员对订单的查看、取消以及个别特殊情况的用户订单处理。首先显示所有订单信息,订单处理分为处理、查看、取消功能。其中处理订单功能可以由系统根据汽车租赁日程表安排来自动处理,如时间冲突,提示预订时间冲突,拒绝用户订单,系统将推荐相似度最接近的其他空闲车辆信息给用户。查看订单时,根据订单编号查找数据库,如果查到,显示该订单的相关信息,如果查不到,提示出错信息。取消订单时,先弹出一个确认窗口,以防止管理员误操作,确认取消后,将该订单标号传到取消订单处理页面,根据该订单号,查找数据库,如果查到,修改该订单的服务状态,如果查不到,提示错误信息。个别特殊情况用户订单,如系统提示用户时间冲突,但是用户坚持原有订单,那么如果其他用户取消了订单,而此时正好时间不再冲突,那么系统发送邮件提示用户是否需要继续服务,如果用户没有取消订单,则更改订单状态(“成功”),如果用户取消,则更改订单状态(“取消”)等等个别特殊订单。 处理订单包含如下文件: dealOrder.jsp:订单处理主界面,可以查看、处理、取消订单 orderDel.jsp:  订单取消处理,更改用户订单状态 orderSucc.jsp:更改订单状态和相应汽车日程安排表 orderLook.jsp:查看用户所有订单信息 3.4.2 功能 管理员查看订单信息、取消用户订单以及根据用户预订时间进行订单预处理。 3.4.3 输入 输入 标识 数据类型 数据格式 数据有效范围 预订时间 orderDate Date Date 系统当前时间之后           3.4.4 算法 查看订单时,程序将订单编号传递给orderLook.jsp页面,该页面接收到订单编号后,首先从数据库中查找,如果查到,就从数据库中取出该订单的信息项,在页面中输出供管理员查看。 取消订单,程序首先显示是否确定取消订单,确认后,程序将订单编号传递给orderDel.jsp页面,该页面接收到订单编号后,在数据库中查找该订单,找到后就从数据库更改该订单状态。 处理订单时,首先将订单编号传递给orderPreproc.jsp页面,系统将根据汽车日程表安排是否已经安排任务来判断此次的订单是否可以接受,如果时间冲突,则订单将拒绝,如果时间空闲,则可以将订单状态更改“成功”,订单被接受。 3.4.5流程逻辑 查看订单: 取消订单: 订单处理: 3.4.6 接口 该功能模块所包含的程序之间的接口主要是用户ID和订单编号(recordNo)。 传参方法: 1、通过URL来传递该参数给下一页面处理 self.open('maintainCar.jsp? id=<%=ID%>& no =<%= recordNo %>'); 2、使用session变量来保存 session.setAttribute(“id”,ID); session.setAttribute(“recordNo”,no); 3.4.5 限制条件 数据库在使用前要配置成功。 3.4.6测试计划 1.点击查看订单,观察显示出的订单信息和数据库中的是否一致 2.点击取消订单,产看数据库中的该订单状态是否已经被修改。 3.分别针对算法中介绍的几种情况进行测试,查看数据库中订单的状态信息改变情况。 3.4.6 尚未解决的问题 暂无。 3.5管理员修改密码模块 3.5.1 程序描述 管理员修改密码模块主要完成管理员对密码的修改。其包含的文件如下: updatePwd.jsp:对管理员的密码进行验证以及更改操作。 3.5.2 功能 实现管理员更该密码功能。 3.5.3 输入 输入 标识 数据类型 数据格式 数据有效范围 原有密码 password text String 1~20字符 新密码 newPassword text String 1~20字符 验证密码 confirmPassword text String 1~20字符           3.5.4 算法 管理员根据需要可以修改登录密码,实现方法如下:首先通过session变量取得管理员登录服务端所输入正确的adminID,通过管理员的登录ID查找数据库,取出相应密码,即为原密码,然后将该密码与修改密码时需要输入的原来密码项、新密码和验证密码项作比较,如果不同,显示出错信息,如果相同,则意味着通过验证,将管理员输入的新密码写入数据库,更新数据库中相应的项。 3.5.5流程逻辑 3.5.6 接口 该程序的接口为上述输入数据,使用request.getParameter方法从输入文本框中取得数据,然后将数据传递到密码更新处理程序,完成在数据库中对管理员密码更新功能。 3.5.7 限制条件 数据库在使用前要配置成功。而且在操作前数据库一定要打开,否则会报出错信息。 3.5.8测试计划 1.不输入原始密码,观察程序运行结果。 2.输入原始密码,不输入新密码观察程序运行结果。 3.输入原始密码和新密码,不输入验证密码,观察程序运行结果。 4.输入原始密码、新密码和验证密码,但是新密码和验证密码输入不一致,观察程序运行结果。 5.新密码和验证密码输入一致,但是原始密码输入错误时,观察程序运行结果。 6.新密码和验证密码输入一致,原始密码输入正确,查看数据库中管理员的密码是否已经更改。 3.5.9 尚未解决的问题 暂无。 3.6管理员退出管理模块 3.6.1 程序描述 当管理员按下退出管理的按钮时,通过response方法将页面定向到login.jsp页面,并使所有的session变量失效。从而完成退出功能。 3.6.2 功能 实现管理员退出服务端的功能 3.6.3 输入 暂无 3.6.4 算法 当管理员按下“退出系统”按钮时,通过response方法将页面定向到login.jsp页面,并使所有的session变量失效,从而完成退出功能。 3.6.5流程逻辑 3.6.6 接口 接口为一个可以改变的转向地址,通过这个地址,可以确定管理员退出服务端时,程序页面将转向哪个页面,此时暂定为login.jsp(管理员登录界面) 3.6.7 限制条件 暂无 3.6.8测试计划 1.点击退出按钮,观察程序是否按照预先设定的转向地址转向 2. 随便输入一个页面地址,观察是否可以访问,如果能访问,说明退出服务端时session变量未清除成功,如果清除成功,不经过登录界面,不能访问服务端任何一个页面,页面会自动跳转到错误提示页面。 3.6.9 尚未解决的问题 暂无 4 基于WEB的汽车租赁系统客户服务端设计 客户服务端功能列表: 序号 功能 执行者 1 注册 所有用户 2 登录 注册用户 3 注销 注册用户 4 分类浏览汽车信息 注册用户、游客 5 按最优质服务推荐汽车 注册用户、游客 6 按最优惠价格推荐汽车 注册用户、游客 7 最新优惠活动通知 注册用户、游客 8 查看汽车详细信息 注册用户、游客 9 查询公司简介 注册用户、游客 10 在线客服 注册用户、游客 11 预订汽车服务 注册用户 12 查看订单 注册用户 13 修改订单 注册用户 14 取消订单 注册用户 15 个人信息面板 注册用户 16 查看个人信息 注册用户 17 修改个人信息 注册用户       客户服务端提供给用户详细的服务,完成了整个基于WEB的汽车租赁系统的主要功能,是整个工程实现的重点和难点。基于WEB的汽车租赁系统服务端提供给用户网上预订服务的接口,用户可以注册成为会员后进行预订汽车服务订单的相关服务请求,也可以以游客身份浏览相关查询汽车信息,但此时不能预订汽车服务。 主服务模块大致界面如下: 4.1用户登录和注销模块 4.1.1 程序描述 该模块主要是一个嵌在主服务页面index.jsp中的一个表单,由用户输入ID和密码后,点击《登录》,会现调用JavaScript函数验证是否满足基本输入要求,确定正确后将表单提交给服务端。登录成功后链接到userPannel.jsp,若用户不存在或密码不正确,将链接到登录失败页。登录后点击“注销”相当于请求未登录时的主服务页面index.jsp。链接关系类图如下: 4.1.2 功能 用户登录模块主要完成用户输入ID和密码后验证数据库中是否有及是否正确,登录失败后提示错误信息。登录成功后链接进登录后的主服务界面。模块界面大致如下: 登录前: 登录后: 4.1.3 输入项 ? 输入项: 输入项名称 标识 数据类型 数据格式 数值有效范围 ID logName String 字符、符号、数字的组合均可 20 密码 password String 字符、符号、数字的组合均可 20           ? 附加限制说明 输入为空时,在客户端通过脚本程序(javascript)即可给出出错提示信息,信息不会提交到服务端。 4.1.4输出项 ? 输出变量: 无 ? 附加限制说明 ID输入为空或所输入的用户不存在时,给出出错提示信息,提示用户错误原因。 4.1.5 算法 目前不涉及加密算法。 4.1.6 流程逻辑 4.1.7 接口 登录成功后,将ID保存到session变量中,提供给其他页面做验证用。 4.1.8 测试计划 ? 登录输入 ID 密码 预期结果 user0(数据库中有该项) user0 登录成功 user0(数据库中有该项) 123 登录失败,密码错误 user0(数据库中有该项)   提示“密码不能为空” user1(数据库中没有该项) 123 登录失败,报用户不存在       ? 注销 在登录后,点击 “注销”,预期结果:进入未登录的主服务页面,同时将Session变量清空。 4.1.9 尚未解决的问题 登录信息加密传送。 4.2用户注册模块 4.2.1 程序描述 包括注册信息提示页registerInfo.htm,注册信息输入页register.jsp,主要包含一个输入用户注册信息的表单。输入完成后现调用JavaScript函数验证基本的正确性,确定正确后提交给服务端。注册成功后进入未登录的主服务端页面index.jsp。关系类图如下: 4.2.2 功能 主要完成用户输入注册信息并提交注册。大致界面如下: 1) 注册信息提示页 2) 注册信息输入页: 4.2.3 输入项 ? 输入项: 输入项名称 标识 数据类型 数据格式 数值有效范围 ID userName String 字符、符号、数字的组合均可 20 登录密码 password String 字符、符号、数字的组合均可 20 确认密码 confirmPassw String 字符、符号、数字的组合均可 20 真实姓名 tureName String 字符、符号、数字的组合均可 20 性别 sex   单选     联系方式 tel String 数字(如需要,加区号) 20   E-mail email String 按照邮箱的格式输入 20             ? 附加限制说明 必须要的输入的项为空,或密码与确认密码不一致时,在客户端即可判断并给出出错报告信息,信息不会提交到服务端。 4.2.4输出项 ? 输出变量: 无 ? 附加限制说明 必须输入的项为空或密码与确认密码不一致时,给出出错报告信息,提示用户输入错误原因。所注册ID已经存在,则详细错误提示。 4.2.5 流程逻辑 4.2.6 接口 数据库接口: 变量名称 变量符号 数据库中符号 变量类型 限制说明 ID logName logName String 不能为空 登录密码 password password String           4.2.7 测试计划 注册信息输入: ? 测试1: 输入项名称 输入信息 预期结果 ID User111 数据库中没有此ID,注册成功. 登录密码 123 确认密码 123 真实姓名 User111 性别 男 联系方式 0731******* E-mail 111@sohu.com       ? 测试2 输入项名称 输入信息 预期结果 ID User111 该ID已经被用过,提示注册失败. 登录密码 321 确认密码 321 真实姓名 123 性别 女 联系方式 0731******* E-mail 222@yahoo.com.cn       4.3汽车信息检索模块 4.3.1 程序描述 主服务页面index.jsp中有汽车信息检索模块。通过检索可以查询到符合检索条件的所有汽车信息列表页sortList.jsp,并且可以链接到detailView.jsp页查看汽车详细信息。关系类图如下: 4.3.2 功能 按汽车信息检索,并可以查看汽车详细信息。界面大致如下: 汽车检索模块: 4.3.3 输入项 分页信息中,当有多页显示时,可以输入要转到的页数: 变量名称 变量符号 变量类型 限制说明 要转到的页码 ToPage int 通过下拉列表选择         4.3.4输出项 1) 分类浏览汽车 ? 输出列表信息包括: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 汽车品牌 brand String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double 数值             ? 附加限制说明 检索汽车不存在时,给出出错提示。 4.3.5 算法 分页算法:确定所有记录条数count,然后确定每页显示的记录条数pageSize,从而确定共有页数pageCount。要显示第k页时,将数据库指针定位到要显示页的第一条记录,其下面连续的pageSize条记录即为当前页的记录。 4.3.6 流程逻辑 4.3.7 接口 1) 内部接口: sortList.jsp和index.jsp之间: 变量名称 变量符号 变量类型 限制条件 汽车类别 sort String           2) 外部接口: sortList.jsp与数据库之间: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double               4.3.8 测试计划 在index.jsp页面检索模块中填写检索关键字,单击“检索”,查看结果,对结果列表中的某些项单击“详细信息”,查看详细信息。 4.4最优质服务排行推荐模块 4.4.1 程序描述 主服务页面index.jsp中有最优质服务排行链接列表。通过列表可以链接到最优质服务排行汽车列表信息页commandList.jsp,并且可以链接到detailView.jsp页查看汽车详细信息。 4.4.2 功能 浏览最优质服务排行汽车信息,并可以查看汽车详细信息。界面大致如下: 最优质服务排行推荐列表页: 4.4.3 输入项 分页信息中,当有多页显示时,可以输入要转到的页数: 变量名称 变量符号 变量类型 限制说明 要转到的页码 ToPage int           4.4.4输出项 1) 按最优质服务排行浏览汽车信息 ? 输出列表信息包括: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 汽车品牌 brand String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double 数值             ? 附加限制说明 该类汽车不存在时,给出错误提示。 4.4.5 算法 确定最优质服务排行的依据是:上个月租赁汽车订单量的大小。实际相应请求时,查询数据库后根据上个月汽车预订单量的降序排列。 分页算法:确定所有记录条数count,然后确定每页显示的记录条数pageSize,从而确定共有页数pageCount。要显示第k页时,将数据库指针定位到要显示页的第一条记录,其下面连续的pageSize条记录即为当前页的记录。 4.4.6 流程逻辑 4.4.5 接口 1) 内部接口: commandList.jsp和main.jsp之间: 变量名称 变量符号 变量类型 限制条件 租赁订单数量 limitNum int           说明: 租赁订单数量是评价汽车是否为最优质服务排行汽车的标准。 2) 外部接口: commandList.jsp与数据库之间: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double               4.4.6 测试计划 单击主服务页中最优质服务排行链接列表中的某些项,查看结果,然后对列表中的某些项单击“详细信息”,查看详细信息。 4.5查看汽车详细信息模块 4.5.1 程序描述 对应文件detailView.jsp,主要是显示汽车的详细信息,包括所有对用户可见的信息。同时还可以链接到预订订单库将预订租赁汽车存入其中。 4.5.2 功能 根据传入的汽车编号查询数据库并显示查询到的汽车的详细信息,包括所有对用户可见的信息。如:汽车编号、汽车品牌、服务人员、车内设施、计费方式。 4.5.3输出项 1) 查看汽车详细信息 ? 输出变量: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 汽车品牌 brand String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double 数值             ? 附加限制说明 该类汽车不存在时,给出错误提示。 4.5.4 流程逻辑 4.5.5 接口 1) 外部请求接口: 变量名称 变量符号 变量类型 限制条件 汽车编号 carID String 长度 < 20         2) 数据库接口: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 汽车品牌 brand String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 车内设施 component String 字符、符号、数字的组合均可 20 计费方式 carPrice double 数值             4.5.6 测试计划 在不同的页面中点击查看汽车详细信息,看显示的结果。 4.6在线客服模块 4.6.1 程序描述 主要是链接聊天对话框,由汽车租赁公司服务人员直接在线进行解答疑问。 4.6.2 功能 通过对话框在线服务。 4.6.3输出项 显示聊天对话框。 4.6.4 测试计划 在各个页面上点击“在线帮助”,查看运行结果。 4.7预订汽车信息模块 4.7.1 程序描述 汽车详细信息页面中有提交租赁订单的按钮,此功能仅对登录用户有用。orderView.jsp根据提交的汽车编号将信息加入预订订单库中,并保存在Session中,提交订单时再将Session中预订汽车信息全部提交。用户也可以修改订单的信息。 4.7.2 功能 具体包括将汽车租赁记录放入预订订单库中,生成订单和提交订单。 界面大致如下: ? 预订订单库页面: ? 生成订单页面: ? 提交订单页面: 4.7.3 输入项 修改预订汽车信息时输入: 输入项名称 标识 数据类型 数据格式 数值有效范围 租赁汽车数 num int 数值 车场现有车辆           4.7.4输出项 1) 订单信息列表 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 计费方式 calculateWay int 数值 系统提供 优惠方式 discount Int 数值 系统提供 订购辆数 carNum int 数值 系统提供           4.7.5 算法 生成订单是要给订单一个编号,生成这个编号的方法是构造一个字符串,它由一下两部分组成: 1) ID 2) 订单提交的时间,包括年月日和时分秒。 这样,可以保证一个用户在较短时间那连续提交不同的订单不会造成数据库出错. 4.7.6 流程逻辑 4.7.7 接口 1) 订单修改时orderView.jsp与modify.jsp之间的接口: 变量名称 变量符号 变量类型 限制条件 操作类型 type int 1 表示修改 2 表示清空购物车 预订订单库 Store Vector 保存在Session变量中         2) 订单提交时submitOrder.jsp 与submitResult.jsp之间的接口: 变量名称 变量符号 变量类型 限制条件 登录名 logName String 由Session变量中取得 预订订单库 Store Vector 保存在Session变量中         3) submitResult.jsp与数据库之间的接口: 变量名称 变量符号 变量类型 限制条件 订单号 ordered String 由特定算法构成 ID logName String 由Session变量中取得 总消费金额 totalCost double   日期 orderDate Date           4.7.8 测试计划 预订多辆汽车,然后修改订单,改变所预订租赁汽车数包括将其改为0看是否会把该项删除.然后再提交订单,查看数据库结果。 4.8查看订单模块 4.8.1 程序描述 查看订单模块主要就是查看预订订单库内容页面orderView.jsp和修改订单页面modify.jsp. 4.8.2 功能 用户查看本次所预订的汽车信息,以修改所预订汽车的数量,可以删除某种汽车的预订。最后可以生成本次预订的订单.界面大致如下: 4.8.3 输入项 1) 修改订单 ? 输入项: 输入项名称 标识 数据类型 数据格式 数值有效范围 预订车数 carNum int 数值 系统现有车辆           ? 附加限制说明 预订车数输入为0时,该汽车的预订信息将被删除。 4.8.4 输出项 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 计费方式 calculateWay int 数值 系统提供 优惠方式 discount Int 数值 系统提供 订购辆数 carNum int 数值 系统提供           4.8.6 流程逻辑 4.8.7 接口 变量名称 变量符号 变量类型 限制条件 预订订单库 Store Vector   登录名 logName String   汽车编号 carID String 查看订单时carID为-1         4.8.8 测试计划 在服务主模块中点击“查看订单”,预期结果为显示用户预订的汽车信息。修改预订汽车数后,点击“修改”,看是否链接到modify.jsp,点击“生成订单”,看是否链接到orderSubmit.jsp中。 4.9个人信息面板模块 4.9.1 程序描述 主要用于用户查看个人信息,修改个人信息。包括modUser.jsp ,nowOrder.jsp,userView.jsp和head.jsp三个页面。modUser.jsp用于修改个人信息;nowOrder.jsp用于显示用户订单;head.jsp用于显示页面框架并判断用户是否登录而userView.jsp用于显示用户信息。 4.9.2 功能 用户可以查看个人信息,修改个人信息,查看个人定汽车情况。 4.9.3 输入项 1) 修改个人信息 ? 输入项: 输入项名称 标识 数据类型 数据格式 数值有效范围 登录密码 password String 字符、符号、数字的组合均可 20 确认密码 confirmPassw String 字符、符号、数字的组合均可 20 真实姓名 tureName String 字符、符号、数字的组合均可 20 性别 sex   单选   联系方式 tel String 数字(如需要,加区号) 20 E-mail email String 按照邮箱的格式输入 20           ? 附加限制说明 必要的输入项为空,或密码与确认密码不一致时,在客户端即可判断并给出出错报告信息,信息不会提交到服务端。 4.9.4 输出项 1) 查看个人信息: 输入项名称 标识 数据类型 数据格式 数值有效范围 ID userName String 字符、符号、数字的组合均可 20 登录密码 password String 字符、符号、数字的组合均可 20 确认密码 confirmPassw String 字符、符号、数字的组合均可 20 真实姓名 tureName String 字符、符号、数字的组合均可 20 性别 sex   单选   联系方式 tel String 数字(如需要,加区号) 20 E-mail email String 按照邮箱的格式输入 20           2) 查看预订汽车情况: 输入项名称 标识 数据类型 数据格式 数值有效范围 汽车编号 carNo String 字符、符号、数字的组合均可 20 服务人员 ServicerID String 字符、符号、数字的组合均可 20 计费方式 calculateWay int 数值 系统提供 优惠方式 discount Int 数值 系统提供 订购辆数 carNum int 数值 系统提供           4.9.6 流程逻辑 4.9.7 接口 变量名称 变量符号 变量类型 限制条件 预订订单库 Store Vector   登录名 logName String           4.9.8 测试计划 进入用户面板,点击“查看个人信息”,“修改个人信息”和“查看预订信息”按钮然后再观察。在修改个人信息页中输入不同的值检查不同的输入的情况。 5 阶段小结 通过对系统的详细设计,我对整个工程的实现有了一个更加细致的把握,对于实现中的一些细节技术进行了探讨和确定,为后期的编码工作提供了完全的参考和指导。下面我将进行编码工作,目标是要体会整个开发的过程。编码过程中可能对本文档中的部分内容进行细节性修改和完善。
/
本文档为【基于Web汽车租赁系统详细设计说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索