地铁路线规划的简要分析

地铁路线规划的简要分析

github

blog

需求分析

  1.设计地铁线路的文件存储格式

  2.设计一个支持显示地铁线路与计算换乘的程序

  3.设计可以通过命令行启动这个程序

  4.设计一条路线的查询功能

  5.设计支持查询的一个命令行

  6.设计两个站点间最短路径的查询功能

  7.设计让程序将结果写入文本文件的命令行

  8.性能测试

  9.PSP表格记录各模块花费时间

PSP 2.1Personal Software Process StagesTime
Planning 计划  
  · Estimate   · 估计这个任务需要多少时间  
Development 开发  
  · Analysis   · 需求分析 (包括学习新技术)  
  · Design Spec   · 生成设计文档  
  · Design Review   · 设计复审 (和同事审核设计文档)  
  · Coding Standard   · 代码规范 (为目前的开发制定合适的规范)  
  · Design   · 具体设计  
  · Coding   · 具体编码  
  · Code Review   · 代码复审  
  · Test   · 测试(自我测试,修改代码,提交修改)  
Reporting 报告  
  · Test Report   · 测试报告  
  · Size Measurement   · 计算工作量  
  · Postmortem & Process Improvement Plan   · 事后总结, 并提出过程改进计划  
  合计  

实现思路

  1.该项目最重要的两个实体是:路线和站点,而且两者为一对多的关系,所以各功能设计都要环绕这两个实体来进行。

  2.文本格式可以设计为:   

     序号  站名1     所属线路  是否开通   是否为换乘站

     序号     站名2     所属线路  是否开通   是否为换乘站

     。。。。。。

  3.启动程序命令行格式为:

java subway -map subway.txt

  4.路线查询功能命令行格式为:

java subway -map subway.txt

  5.将结果写入文本文件的命令行格式为:

subway.exe -b 洪湖里 复兴路 -map subway.txt -o routine.txt

  6.输出文本文件格式为:

3
洪湖里
西站
6号线
复兴路

程序将计算从出发到目的站点之间的最短路线,并输出经过的站点的个数和路径。如果需要换乘,在换乘站的下一行输出换乘的线路。

  7.初步设想的几个测试案例

    测试用例1:同一线路出发和到达站 预期返回,起点和终点所有站点及其信息

    测试用例2:不同线路出发和到达站,需要1次换乘,预期返回,多条起点和终点所有站点及其信息

    测试用例3:不同线路出发和到达站,需要2次换乘,预期返回,多条起点和终点所有站点及其信息

    测试用例4:不同线路出发和到达站,需要超过2次换乘,预期返回,多条起点和终点所有站点及其信息

相关想法

  本项目最主要的还是最短路径的设计,只要找出两个站点的最短路径,输入输出就比较简单。需要注意的还有各个细节上的处理,比如转站站点的处理,这里可能需要多张表来进行处理,因为两张表格无法完成运算的需求。再有比如,仔细观察发现五号线和六号线之间有三个连续的重合站点,所以在这三个站点进行换线的话,从水上公园东路或者体育中心来的最好要在肿瘤医院换线,从西南楼或者乐园道来的最好在文化中心换线,当然也要考虑特殊情况等等,具体细节在编程时展示。

posted on 2019-09-20 18:14  31701036蔡炜  阅读(360)  评论(0编辑  收藏  举报

导航