1、最新公交查询系统详细设计说明书最新公交查询系统详细设计说明书 1 1 引言 1 1.1 编写目的 该文档为 公交线路查询系统 具体设计说明的文档。编写目的在于从需求分析已经明确的基础上,为实现需求的功能而阐述自己开发设计思想、方法,逐步开发强壮的系统构架, 使设计适合于实施环境,为进步性能而进行设计。并为下一步的具体设计做基础。 2 1.2 背景说明 开发软件名称:南京市公交线路查询系统。 项目任务提出者:南京航空航天大学储剑波老师。 项目开发者:南京航空航天大学小组。 用户:南京市公交总公司。 实现软件单位:南京航空航天大学及南京市公交总公司。 3 1.3 定义 列出本文件中用到的专门术语的
2、定义和缩写词的原词组。 1. 4 参考资料 软件工程导论,张海藩,清华大学出版社。 实用软件工程,郑人杰等,清华大学出版社。 2 2 总体设计 2 21 .1 需求规定 1. 线路查询:在线路列表中选择相应的线路,经查询后查询结果会显示该线路上所有经过站点于总站数; 要求输进框不为空; 2. 线路选择:在站点中选择相应的出发点站与终点站的编号,点击查询,即在查询结果框显示符适用户选择的路线并提供多种路线的支持。 3. 修改线路:在线路列表里选择即将修改的线路; 在线路改名框输进要更新的名字,点击修改; 对一条线路上站点进行修改时,在选择站点框进行相应的增加,删除,改名等操纵。 4. 站点查询:
3、在站点列表中选择站点,查询后查询结果显示经过该站点的所有线路及具体的站点显示及经过该站点的线路总条数。 输进框必须选择站点。 注:查询结果框可清空。 2.2 运行环境 操纵系统:windows 7(x86 x64) 编译环境:.Visual C+ 编译软件:Microsoft Visual Studio 2008 2 2. .3 3 基本设计概念和处理流程 该系统的基本设计概念及主要功能图: 登录界面 普通用户 治理员 站点查询 线路查询 线路选择 密码修改 站点治理 线路治理 账户治理 输进站点名是否为空Y是否存在NN查找经过该站点的n条线路Y依次显示这些线路所经过的站点开始结束 图 2.3
4、-1 站点查询 输进线路名是否为空是否存在N查询该线路所经过的站点依次显示这些站点结束开始YYN 图 2.3-2 线路查询 开始输进出发点站和终点站是否为空是否一样是否存在查询经过出发点的线所有路查询经过终点的线所有路依次取其中一条路线,直到所有NNYYN判定是否相等是否有交点显示直连路线NY依次取出其中一条,直到所有记录信息记录信息N N找出最短站点数Y显示换乘一次路线结束Y 图 2.3-3 线路选择 开始输进线路名依次输进站点名是否为空NY是否重复Y线路名是否存在N保存新增线路和站点信息NY结束 图 2.3-4 增加路线 开始选择要删除的线路是否删除N删除所选线路的信息Y结束 图 2.3-
5、5 删除线路 开始选择要修改的线路名输进修改名名字是否变化N修改名是否存在YY修改名称N结束保存新信息 图 2.3-6 修改线路 开始选择要增加站点的线路输进站点名是否重复Y增加新站点N保存站点信息结束 图 2.3-7 增加站点 开始选择要删除站点的线路选择要删除的站点该线路站点个数是否即是2YN删除该站点 保存信息结束 图 2.3-8 删除站点 开始选择线路选择要改名的站点输进修改名修改名是否已存在Y修改名称 保存信息结束 图 2.3-9 修改站点 开始输进新用户名和密码是否已存在YN保存新用户结束 图 2.3-10 增加用户 开始选择要删除用户是否为当前用户Y删除用户是否为治理员N是否删除
6、更新信息Y输进密码密码是否正确 YNNY结束N 图 2.3-11 删除用户 开始选择用户是否为治理员修改用户名输进密码是否正确YNYN确认N结束 图 2.3-12 用户名修改 2 2. .4 4 结构 设计 2 21 .4.1 结构 登录界面 普通用户 治理员 站点查询 线路查询 线路选择 密码修改 站点治理 线路治理 账户治理 站点名 线路名 起 点站名 终点站名 删除站点 增加站点 修改站点 删除线路 增加线路 修改线路 删除账户 增加账户 修改账户 2 2. .3 4.3 人工处理过程 1:登录界面时,手动输进用户名和密码; 2:增加路线时,新增线路名和站点名; 3:修改路线时,将需要修
7、改的路线名和站点名; 4:新增用户与密码修改时,手动输进要新添的用户与密码。 2 2 .44 .4 尚未问决的题目 说明在概要设计过程中尚未解决而设计者以为在系统完成之前必须解决的各个题目。 2 25 .5 接口设计 2 21 .5.1 用户接口 用户登录时,需要输进用户名,密码及是否记住密码(可选), 要求输进相匹配的用户名及密码,登录界面后提示登录成功,否则提示登录失败。 登录治理员界面后,增加线路:输进要新增的线路名,并依次对此线路上的站点名输进; 要求以上两项必须全部输进;系统刷新后线路增加成功。删除线路:在线路列表里选择要删除的线路;系统提示是否确认删除。修改线路:在线路列表里选择即
8、将修改的线路;在线路改名框输进要更新的名字,点击修改;对一条线路上站点进行修改时,在选择站点框进行相应的增加,删除,改名等操纵。选择站点后,有上移下移操纵。帐号治理:从选择用户的下拉框中选择进行操纵的用户名; 如需新增用户,输进用户名,密码和是否为治理员(可选);系统提示添加成功; 删除用户时,选择用户并进行操纵;修改用户密码时,需输进用户的新密码及确认密码; 修改用户名,输进要修改的名字。 登录普通用户界面后, 修改密码:菜单栏中文件选择修改密码,用户需输进原密码,新密码及确认新密码以进行修改; 线路选择:在站点列表中选择相应的出发点站与终点站,显示在出发点站框与终点站框,点击查询,即在查询
9、结果框显示符适用户选择的路线并提供多种路线的支持。注:出发点站与终点站需全部输进; 线路查询:在线路列表中选择相应的线路,经查询后查询结果会显示该线路上所有经过站点于总站数;要求输进框不为空; 站点查询:在站点列表中选择站点,查询后查询结果显示经过该站点的所有线路及具体的站点显示及经过该站点的线路总条数。 输进框必须选择站点。( 注:查询结果框可清空。) 2 2 .5.2 2 外部接口 软件接口:支持所有 Windows 平台系统; 用户界面; 2 2 .5.3 3 内部接口 登录模块,输进:用户名、密码。输出:登陆成功或失败提示。 增加路线,输进:新路线名,站点名。输出:添加成功。 删除路线
10、,输进:路线名。输出:删除成功。 修改路线,输进:路线名,站点名。输出:系统提示修改成功。 添加账户,输进:新账户名,密码。输出:添加成功。 线路选择,输进:出发点名,终点名。输出:查询结果。 线路查询,输进:路线名。输出:查询结果。 站点查询,输进:站点名。输出:查询结果。 2 2 .6 其它专门要求 1、软件必须严格按照设定的安全权限机制运行,并有效防止非授权用户进进本系统。 2、软件对用户的所有误操纵或分歧法操纵进行检查,并给出提示信息。 3 3 数据库设计 3 31 .1 概念结构设计 1 m n m n m p 治理员 站点 线路 普通用户 治理 映射 查询 线路名 帐号 密码 用户
11、名 密码 增加 站点名 删除 站点名 选择 线路上站点顺序 线路名 修改 3 32 .2 逻辑结构设计 以上 E-R 图中有实体:治理员,普通用户,线路,站点。 以下对实体进行分解: 站点映射表(站点序号,站点名,线路名) 注:该站点映射表具有属性站点序号,站点名,线路名。主码为站点序号,站点名,线路名。 用户(用户名,密码) 注:该用户包括治理员与普通用户。属性为用户名和密码。主码为用户名,密码。 站点(站点名) 注:该站点属性是站点名。主码为站点名。 线路(线路名) 注:该线路具有属性线路名。主码为线路名。 3 33 .3 物理结构设计 表 3-1 登录表(user) 表 3-2 站点信息
12、表(station) 字段 类型 说明 是否为空 Uname char 用户 ID Not null Psw char 密 码 Not null Role Boolean 是否为治理员 Not null 字段 类型 说明 是否为空 Sname Char(10) 主键 Not null 表 3-3 线路信息表(route) 表 3-4 线路站点映射表(RSmap) 字段 类型 说明 是否为空 Rname Int 主键 Not null Sname Int 主键 Not null Rsorder Int 站点序号 Not null 3 3. .3 3 数据字典设计 用户数据字典: 属性名 存储代码
13、 类型 长度 说明 普通用户名 User Varchar 30 普通用户登陆时的名称 治理员 Admin Varchar 30 治理员登录时账户名 密码 Password int 4 用户登录时所用密码 站点数据字典: 属性名 存储代码 类型 长度 说明 站点名 Station Varchar 20 站点标志名称 线路数据字典: 属性名 存储代码 类型 长度 说明 线路名 Rname Varchar 20 线路标志名称 字段 类型 说明 是否为空 Rname char(10) 主键 Not null 3 3. .4 4 安全保密设计 本系统用户分两种:治理员及普通用户。分别对其权限进行了设置,
14、如下: 治理员:本系统的最高治理者,能对本系统软件进行操纵,分别为站点治理(删除站点,增加站点,修改站点),线路治理(删除线路,增加线路,修改线路),账号治理(删除账户,增加账户,修改账户)。当公交路线出现变更时,治理员可及时对信息进行更换以便用户查询正确的信息。这个操纵仅限治理员。 普通用户:本系统的广大使用者,能使用本系统密码修改,查询线路信息,站点信息,及终极的线路选择。 4 4 系统出错处理设计 1 4.1 出错信息 。 可能出现的错误和故障 系统输出信息形式 系统输出信息的含意 处理方法 人工操纵出错 系统出现大量错误数据 系统数据出现错误 备份还原操纵恢复前一段时间的数据; 病毒故
15、障 系统运行过慢,计算机死机等现象 系统受到病毒的进侵,导致数据错误或丢失 备份还原操纵恢复前一段时间的数据,并经常杀毒,安装系统防火墙 软件打开故障 系统不能正常打开 系统启动出现题目 需重新安装系统 软件显示错误信息 显示与实际不符的信息 数据转换错误 封闭该系统后重新开启 4.2 2 补救措施 1.周期性地把磁盘信息记录到磁带上,当原始数据丢失后启用此副本。 2.使用手工操纵和数据的人工记录作为降效技术。 3.使用回滚技术使软件从故障点开始继续工作。 4.在运行操纵本系统前应先进行备份操纵,治理员对该软件的数据库进行备份并存档。并定期进行此操纵。 4.3. 系统维护设计 说明为了系统维护
16、的方便而在程序内部设计中作出的安排,包括在程序中专门安排用于系统的检查与维护的检测点和专用模块。 各个程序之间的对应关系,可采用如下的矩阵图的形式; 为了系统的安全维护,可以对本系统数据库进行一下维护: 1. 全备份-每季度进行一次; 2. 差分备份-每个月进行一次; 3. 增量备份-天天进行一次。 5 5 程序 模块 1 1 设计说明 从本章开始,逐个地给出各个层次中的每个程序的设计考虑。以下给出的提纲是针对一般情况的。对于一个具体的模块,尤其是层次比较低的模块或子程序,其很多条目的内容往往与它所隶属的上一层 模块的对应条目的内容相同,在这种情况下,只要简单地说明这一点即可。 5 51 .1
17、 程序描述 给出对该程序的扼要描述,主要说明安排设计本程序的目的意义,并且,还要说明本程序的特点(如 是常驻内存还是非常驻?是否子程序?有无覆盖要求?是顺序处理还是并发处理等)。 该系统用户分为治理员与普通用户。而治理员权限为站点治理(删除站点,增加站点,修改站点),线路治理(删除线路,增加线路,修改线路),账号治理(删除账户,增加账户,修改账户)。普通用户权限则是站在用户角度考虑的,即要知道最新的更改信息而且能查询到自己想要的信息。用户权限为对自身账号的密码修改和查询线路信息,站点信息,及终极的线路选择。 治理员站点治理:该设计系统为公交查询系统,是针对公交公司及广大乘客为出发点的。一个比较
18、完善的系统必须有维护者,而治理员的站点治理是针对该系统中当某些站点发生信息变更时,例如增加某一站点,取消站点,修改该站点名,则治理员必须及时输进更新的消息以便用户查询。所以该站点治理包括删除站点,增加站点,修改站点。 治理员线路治理:一个城市的公交并不是永远处于固定的状态模式,一个活动的城市随时会有信息的变化,所以我们在设计该系统时会有治理者来进行治理。当由于某些原因该线路需要更新信息时,例如线路删除,增加某些线路,对线路进行修改。 治理员账户治理:一个城市使用的公交系统其用户肯定也并不在少数,所以系统设置了专门的账户治理以便增添用户,或注销掉用户以及出于安全的考虑会对密码进行及时的修改。 普
19、通用户站点查询:上面已经进行了一定描述,该系统使用于广大用户及公交公司,设置此项功能后,用户可以更加方便快捷的进行公交信息的查询,将自己想要到达的站点名输进后,点击查询可以得到经过该站点的所有线路。 普通用户线路查询:普通用户想知道自己乘坐车的站点信息,只用选择乘坐的线路,点击查询即可得到该线路上所有站点信息。 普通用户线路选择:经过上述查询后,假如没有显示信息出现,则该系统的设计是失败的,用户不能得到查询的结果,所以此设计是必要的。 普通用户密码修改:私人信息例如账户密码是需要得到保障的。所以系统设置了用户的密码修改,当普通用户察觉自己的信息受到威胁时,可以通过此项进行修改自身账户的密码。
20、5 52 .2 功能 说明该程序应具有的功能,可采用 IPO 图(即输进一处理一输出图)的形式。 O IPO 表 模块编号: M1 模块名称: 站点查询 所属子系统: 普通用户治理 调用模块: 输进站点名信息 被调用模块: 普通用户治理 模块描述: 用户输进站点信息进行查询 输进参数: 站点名 输出参数: 线路名,线路条数 变量说明: 文本,数字 相关数据表: 站点映射表 处理: 把要查询的站点名输进,然后返回相应的查询信息,如经过该站点的线路名,和经过该站点的所有线路条数。 备注: 设计人: 设计日期: O IPO 表 模块编号: M2 模块名称: 线路查询 所属子系统: 普通用户治理 调用
21、模块: 输进线路名信息 被调用模块: 普通用户治理 模块描述: 用于用户输进线路名进行信息查询 输进参数: 线路名 输出参数: 线路上所有站点,站点总数 变量说明: 文本,数字 相关数据表: 站点映射表 处理: 把要查询的线路名输进,然后返回相应的查询信息,如该线路上所有站点名,和经过多少站点数。 备注: 设计人: 设计日期: O IPO 表 模块编号: M3 模块名称: 线路选择 所属子系统: 普通用户治理 调用模块: 输进出发点站,终点站信息 被调用模块: 普通用户治理 模块描述: 用于用户查询经过出发点站和终点站之间的线路具体信息。 输进参数: 出发点站,终点站 输出参数: 换乘方案,总
22、站数 变量说明: 文本,数字 相关数据表: 站点映射表 处理: 输进要查询的出发点站和终点站,然后返回相应的查询信息,如进过该出发点站和终点站 的所有换乘方案及进过的总站数。 备注: 设计人: 设计日期: O IPO 表 模块编号: M4 模块名称: 密码修改 所属子系统: 普通用户治理 调用模块: 修改密码 被调用模块: 普通用户治理 模块描述: 用户出于安全考虑,对自身密码进行修改。 输进参数: 原密码,新密码,新确认密码 输出参数: 修改成功 变量说明: 文本 相关数据表: 用户表 处理: 用户点击修改密码时,输进之前的原始密码,再将要修改的新密码和新的确认密码输进标签,点击修改。 备注
23、: 设计人: 设计日期: O IPO 表 模块编号: M5 模块名称: 站点治理 所属子系统: 治理员治理 调用模块: 删除站点,增加站点,修改站点 被调用模块: 治理员治理 模块描述: 当 某些站点发生信息变更时,例如增加某一站点,取消站点,修改该站点名,则治理员必须及时输进更新的消息以便用户查询。 输进参数: 线路名,站点名 输出参数: 站点名 变量说明: 文本 相关数据表: 站点映射表 处理: 首先选择要进行修改的线路,如要进行删除站点设置,则选中该线路上的某个站点进行删除。要增加新的站点时,输进新的站点名进行增加。要修改某一站点名时,选中站点,输进要修改的新站点名,点击改名。然后返回相
24、应的结果,显示成功。 备注: 设计人: 设计日期: O IPO 表 模块编号: M6 模块名称: 线路治理 所属子系统: 治理员治理 调用模块: 删除线路,增加线路,修改线路 被调用模块: 治理员治理 模块描述: 当由于某些原因该线路需要更新信息时,例如线路删除,增加某些线路,对线路进行修改 时,治理员及时将变更信息进行修改。 输进参数: 线路名,站点名 输出参数: 线路名,站点名 变量说明: 文本 相关数据表: 站点映射表 处理: 当要增加线路时,首先输进要增加的新线路名,然后依次输进该线路上的站点名,然后返回。删除线路时,选择要删除的线路,点击删除返回。修改线路时,选中要修改的线路,可以对
25、该线路上的站点信息进行修改,然后返回相应的结果。 备注: 设计人: 设计日期: O IPO 表 模块编号: M7 模块名称: 账户治理 所属子系统: 治理员治理 调用模块: 删除账户,增加账户,修改账户 被调用模块: 治理员治理 模块描述: 系统中会经常出现用户的信息变更,如要新增用户或用户注销时,治理员就在该流程上进行操纵。 输进参数: 密码,用户名 输出参数: 新用户 变量说明: 文本 相关数据表: 用户表 处理: 治理员要对自身密码进行修改时,需首先登录自己的账户,输进要修改的新密码和新确认密码,修改返回。当新增用户时,输进要增加的用户名及密码,并重复密码,新增返回。要删除用户时,必须不
26、是当前用户,当前用户对自身的账户名没有删除权限。 备注: 设计人: 设计日期: 5 5. .3 3 算法 具体说明本程序所选用的算法,具体的计算公式和计算步骤。 用图表(例如流程图、判定表等)辅以必要的说明来表示本程序的逻辑流程。 本系统的流程图如下: 输进站点名是否为空Y是否存在NN查找经过该站点的n条线路Y依次显示这些线路所经过的站点开始结束 图 2.3-1 站点查询 站点查询说明:用户输进要查询的站点名,系统判别是否为空,当为空时系统提示重新输进,当输进站点名后,系统会匹配自己的数据库,看该站点名是否存在,当存在时,则显示经过该站点的所有路线信息,点击其中的线路,可显示具体信息。 输进线
27、路名是否为空是否存在N查询该线路所经过的站点依次显示这些站点结束开始YYN 图 2.3-2 线路查询 线路查询说明:用户输进要查询的线路名,系统进行相应的匹配,当存在时,查询结果框显示该线路上的所有站点名。 开始输进出发点站和终点站是否为空是否一样是否存在查询经过出发点的线所有路查询经过终点的线所有路依次取其中一条路线,直到所有NNYYN判定是否相等是否有交点显示直连路线NY依次取出其中一条,直到所有记录信息记录信息N N找出最短站点数Y显示换乘一次路线结束Y 图 2.3-3 线路选择 线路选择说明:用户输进要查询的出发点站和终点站,系统判定输进是否为空和输进的出发点站和终点站是否一样,最后判
28、定是否存在,当存在时,分别从出发点站和终点站出发,系统找出相应的路线,判定是否相等并记录信息,找出最短路径显示直连路线和换乘一次的路线。 开始输进线路名依次输进站点名是否为空NY是否重复Y线路名是否存在N保存新增线路和站点信息NY结束 图 2.3-4 增加路线 增加路线说明:输进要增加的路线名,系统判别是否为空,如不为空,则依次输进该路线上的站点名,当重复输进站点名时,系统提示重复输进。 开始选择要删除的线路是否删除N删除所选线路的信息Y结束 图 2.3-5 删除线路 删除路线说明:选择要删除的路线,系统会提示是否删除即给了治理员误操纵的可能性。当选择删除时,该线路及该线路上所有站点信息也删除
29、。 开始选择要修改的线路名输进修改名名字是否变化N修改名是否存在YY修改名称N结束保存新信息 图 2.3-6 修改线路 修改线路说明:选择要修改的线路名并输进要修改的线路名,系统会提示是否存在要修改的名字。 开始选择要增加站点的线路输进站点名是否重复Y增加新站点N保存站点信息结束 图 2.3-7 增加站点 增加站点说明:选择要增加站点的线路,输进要增加的站点名,假如重复系统提示重复,增加新站点成功时,保存站点信息。 开始选择要删除站点的线路选择要删除的站点该线路站点个数是否即是2YN删除该站点 保存信息结束 图 2.3-8 删除站点 删除站点说明:选择要删除站点的线路,将要删除的站点选定,当该线路上站点小于 2 个时,系统自动回复到开始阶段,假如站点多余 2 个时,则删除站点成功。 开始选择线路选择要改名的站点输进修改名修改名是否已存在Y修改名称 保存信息结束 图 2.3-9 修改站点 修改站点说明:首先选择线路,将线路上要修改的站点名选定时,输进要修改的站点名,当修改名存在时,返回上一阶段,否则修改成功。 开始输进新用户名和密码是否已存在YN保存新用户结束 图 2.3-10 增加用户 增加用户说明:输进要增
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1