理员分配一个用户名和密码,就可以使用了[8]。
3. 系统需求分析
3.1 系统的功能性需求
3.1.1 车辆管理
用例图如图3-1所示:
图:3-1 车辆管理
用例说明:运输人员对车队和车辆信息的添加、更新、查询和删除。
3.1.2 驾驶员管理
用例图如图3-2所示:
图:3-2 驾驶员管理
用例说明:运输管理员对驾驶员信息的添加、更新、查询和删除。
3.1.3 运力查询
用例图如图3-3所示:
图:3-3 运力查询
用例说明:调度员和承运人员对承运任务中承运单的车队和车辆的查询。
3.1.4 承运任务管理
用例图如图3-4所示:
图:3-4 承运任务管理
用例说明:承运人员对对承运单的修改,查询,删除和添加;承运单开出后,业务员进行接收工作。
3.1.5 运输成本核算
用例图如图3-5所示:
图:3-5 运输成本核算
用例说明:财务人员进行成本录入,修改和查询,以便最后对运输成本的核算。
3.1.6 系统管理
用例图如图3-6所示:
图:3-6 系统管理
用例说明:管理员对用户进行注册和对用户进行权限分配,对系统数据的备份会恢复。
3.2 系统的非功能性需求
3.2.1 配置需求
系统提供如下两种浏览器兼容支持:
(1) Microsoft Internet Explorer 6.0 及其以上版本;
(2) Netscape Navigator 6.0 及其以上版本。
3.2.2 安全性需求
安全性需求通常分为二类:
(1) 用户认证需求:阐述系统表示用户和用户认证的方法。
(2) 数据完整性和隐私需求:确保数据完整,不会影响系统安全。
3.2.2.1 用户认证需求
系统使用一组用户ID 和密码来表示一个用户。
在用户登录10 分钟后,如果没有任何的动作,则自动退出登录。如果再次试图访问受保护页面,则自动显示登录页面。
3.2.2.2 数据完整性和隐私需求
密码必须加密存储,采用哈希值MD5加密算法。
用户账号和密码必须通过SSL 进行传送。
3.2.3 可靠性需求
系统每天至少保持23 小时30 分的可用时间,每日凌晨2:30 到3:00 之间进行日常系统
维护工作,如数据传输、交换等。
临时的系统停机时间,每月合计必须少于3 小时。
3.2.4 并发性能需求
在多个并发用户更新同一账户信息时,第一个可以成功更新。随后的更新在提交之前, 显示错误信息"用户数据已经改变,是否需要刷新用户数据?"。
4. 系统模块设计和流程分析
4.1 系统模块设计
如图4-1所示:
图:4-1 系统模块设计
说明:根据功能,将系统划分为若干个子系统。分别为:系统管理、车辆信息管理、车队信息管理、驾驶员信息管理、运力管理、承运单管理、成本核算管理、系统设置[9]。
各个子系统的功能:系统管理主要是为用户注册和管理用户权限,还有对系统数据的备份和恢复。车辆管理、车队管理、驾驶员信息管理将提供特定运输管理员对相应信息的添加、删除、修改、查询功能。运力管理将提供给调度员和承运业务员对公司的车队、车辆运力情况动态查询,对业务进行动态分配。承运任务管理将提供承运业务员对承运单的开出、接收,以及对承运单的修改、删除、查询功能。成本管理将提供给财务人员对成本的录入、核算功能。系统设置就是提供系统帮助[10]。
4.2 系统流程分析
4.2.1 车辆管理时序说明
添加车辆时序图及说明:运输管理直接打开AddCar页面,进行填写车辆基本信息,系统进行验证输入的信息格式是否正确,不正确返回错误格式信息给运输管理员,正确则调用开发人员编写业务逻辑对象中的CarManage管理类中的AddCar方法,系统在SQLServerDAL实现如何添加车辆,执行存储过程,数据验证该预存记录是否已存在,若存在则返回存储过程预设值返回值,若不存在,则添加记录到数据中对应的表。存储过程返回戒指过执行改操作的方法AddCar。AddCar把执行结果值返回给页面,页面对返回的值进行判断,是否添加成功,或车牌号码已存在,如果车牌号码已存在,则返回车牌号码已存储信息给用户,如果不成功,则返回不成功信息给用户,如果成功则返回成功信息给用户[11]。如图4-2所示:
图:4-2 添加车辆
4.2.2 车队管理时序说明
删除车队时序图及说明:运输管理员打开CarTeamManager页面,选择要删除的记录,系统执行删除操作,数据验证该记录状态是否是"维修中","承运中"进行拒绝删除,不是则删除,返回值与CarTeamManager,页面根据返回值返回消息给运输管理员。如图4-3所示:
图:4-3 删除车队
4.2.3 驾驶员管理时序说明
添加驾驶员时序图及说明:运输管理员打开AddDrivers页面,添加驾驶员基本信息,系统验证数据格式,返回不正确消息,正确进入添加操作,数据验证该记录是否已存在,不存在则插入,返回成功,失败预定义值,页面根据返回值返回消息给运输管理员。如图4-4所示:
图:4-4 添加驾驶员
4.2.4 运力查询管理时序说明
查询承运车队时序图及说明:承运业务员,调度员打开SearchCapacity页面,输入查询条件,系统调用业务逻辑对象中的SearchTeam方法,在数据访问层中队该方法实现,执行查询操作,数据库验证是否存在该符合条件的记录,否返回NULL,是返回记录给SearchTeam方法,方法返回结果给页面,页面显示结果。如图4-5所示:
图:4-5 运力查询
4.2.5 承运任务管理时序说明
开出承运单时序图及说明:承运业务员打开AddSingleCarrier页面,填写开承运单基本信息,页面验证数据格式是否正确,返回不正确消息,正确则调用业务逻辑层对象中的AddAcceptance方法,数据访问层中实现添加操作,执行添加操作存储过程,数据验证该记录是否已存在,存在则拒绝添加,不存在则添加,返回预定义值给AddAcceptance方法,方法返回值予页面AddSingleCarrier,页面根据值,返回消息给承运业务员[12]。如图4-6所示:
图:4-6 开出承运单
4.2.6 运输成本管理时序说明
添加成本时序图及说明:财务人员打开AddCosing页面,添加成本基本信息,页面验证格式是否正确,返回不通过消息给财务人员,正确则调用业务逻辑对象中的AddCostAccounting方法,数据访问层中实现该方法,执行添加操作,数据验证该记录是否已存在,返回成功,失败预定义值给AddCostAcounting方法,方法返回值给页面,页面根据返回值返回消息给财务人员。如图4-7所示:
图:4-7 添加成本
4.2.7 系统管理时序说明
添加用户的时序图及说明:
系统管理员打开Regeist页面,添加用户基本信息,系统验证数据格式,返回不正确消息,正确进入添加操作,数据验证该记录是否已存在,不存在则插入,返回成功,失败预定义值,页面根据返回值返回消息给系统管理员。如图4-8所示:
图:4-8 添加用户
5. 系统数据库设计
5.1 数据库概念设计
车队信息实体,如图5-1所示:
图:5-1 车队信息表
车辆信息实体,如图5-2所示:
图:5-2 车辆信息
驾驶员信息实体,如图5-3所示:
图:5-3 驾驶员信息
承运单信息实体,如图5-4所示:
图:5-4 承运单信息
维修实体,如图5-5所示:
图:5-5 维修表
油耗实体,如图5-6所示:
图:5-6 油耗表
成本核算实体,如图5-7所示:
图:5-7 成本核算表
系统主要实体关系 如图5-8所示:
图:5-8 系统主要实体关系
5.2 数据表设计
车队信息表(TeamInfo),如表5-1所示:
表:5-1 车队信息表
序号 字段名 数据类型 长度 字段说明 1 TeamId Char 10 定义车队唯一ID 2 TeamName Varchar 10 记录车队名称 3 Unit Varchar 10 记录归属单位 4 Name Varcha
上一篇:
基于net的汽车租赁管理系统毕业论文
下一篇:
购书系统设计与实现论文