个人项目1(地铁线路最短路径的程序)初步分析

1.需求分析

根据个人项目简介,软件的需求有以下三个:

需求1:

实现一个支持显示地铁线路与计算换乘的程序。之后,用户可以通过命令行启动这个程序。程序在启动时,会读取不同命令对应的命令行参数。对于地铁线路信息图,我们约定它采用参数 -map 作为标志。程序启动时需要通过读取 -map 参数来获得对应的自定义地铁文件(命名为 subway.txt),从而得到地铁线路图的信息。

需求2:

实现基础的查询操作。比如说,用户希望查询指定地铁线经过的站点。这样,在应用程序需要支持一个新的命令行参数 -a,它指定了用户希望查询的地铁线路。这样,在给定地铁线路时,你的程序就需要能够从线路的起始站点开始,依次输出该地铁线经过的所有站点,直到终点站。输出的文件我们使用 -o 命令行参数来指定。

需求3:

实现一个计算任意两个站点间最短路径(经过的站点数最少)的程序,并输出经过的站点的个数和路径(包括出发站,目的站与换乘线路)。如果用户希望坐地铁,他希望能通过最少的站数从出发点到达目的地,这样就可以在命令行中以 -b 参数加两个地铁站点名称分别作为出发与目的,比如用户希望知道 洪湖里 到复兴路 之间的最短路线是怎样的,他就可以使用如下命令让程序将结果写入 routine.txt 中:subway.exe -b 洪湖里 复兴路 -map subway.txt -o routine.txt。

2.实现方法分析

需求1:

这项需求似乎是要我们把一张地铁线路图转换为文本格式的表格。也就是说,我们要将地铁线路信息等用文本文件的形式保存起来,应保存的信息应包括地铁线路名称各个地铁站点的名称以及车站换乘信息,使得应用程序可以通过读取这个文件,就能掌握关于地铁线路的所有信息。这其中涉及的技术包括图片读取、自动分析、信息保存与转换,我完全不知道如何实现计算机自动将图片转换为文本文件,所以我默认本程序只使用一张地铁图,并且此步骤已经由人工完成。最后的结果应该像这样:


序号


线路


站点名


是否为换乘站


001


1


刘园


0


002


1


西横堤


0


003


1


果酒厂


0

将所有站点输入subway.txt后,就可以将它导入程序实现各种计算。

需求2:

就路线查询为例,只需读入用户输入的路线编号并与表格中的所有线路比较,输出站点名即可。

需求3:

运行举例:

输入:

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

输出:

3                                        //共经过3站

洪湖里

西站                                   //在该站换乘
6号线
复兴路

从地铁设计规划的角度考虑,换乘路线应该会导致乘坐经过的站点变多。

对于终点站,首先查出它所在的路线。接下来有两种情况:起点站与它在同一路线,或起点站与它不在同一路线;对于第二种情况,可以确定终点站与起点站一定都在路线1、6或9上。

对于单个站点存在两个方向,可以首先对起点站进行两个方向的遍历。

3.PSP


PSP 2.1


Personal Software Process Stages


Time/h


Planning


计划


· Estimate


· 估计这个任务需要多少时间



Development


开发


· Analysis


· 需求分析 (包括学习新技术)


1


· Design Spec


· 生成设计文档


1


· Design Review


· 设计复审 (和同事审核设计文档)


1


· Coding Standard


· 代码规范 (为目前的开发制定合适的规范)


1


· Design


· 具体设计


10


· Coding


· 具体编码


200


· Code Review


· 代码复审


1


· Test


· 测试(自我测试,修改代码,提交修改)


1


Reporting


报告


· Test Report


· 测试报告


2


· Size Measurement


· 计算工作量


1


· Postmortem & Process Improvement Plan


· 事后总结, 并提出过程改进计划

31701056

杨峥

原文地址:https://www.cnblogs.com/Non-Exited/p/11564393.html

时间: 2024-11-03 01:26:51

个人项目1(地铁线路最短路径的程序)初步分析的相关文章

个人项目--北京地铁线路规划(已完成)

一.任务: 实现一个帮助进行北京地铁出行路线规划的命令行程序. 二.需求分析及实现 需求1 在程序启动时,自动获取到地图信息 需要实现一个支持自动加载subway.txt 文件的程序 需求2 查询指定地铁线经过的站点 在应用程序上,需要支持一个新的命令行参数  -a ,指定用户希望查询的地铁线路. 在给定地铁线路时,程序需要从线路的起始站点开始,依次输出该地铁线经过的所有站点,直到终点站.输出的文件使用-o参数来指定. 一个调用应用程序的示例如下: java subway -a 1号线 -map

天津地铁线路最短路径计算项目规划

天津地铁线路路径查询项目规划 一.项目介绍 实现一个帮助进行地铁出行路线规划的命令行程序. 二.项目完成预估表 PSP 2.1 Personal Software Process Stages Time Time Planning 计划 · Estimate · 估计这个任务需要多少时间 1day Development 开发 · Analysis · 需求分析 (包括学习新技术) 3day · Design Spec · 生成设计文档 1day · Design Review · 设计复审 (

地铁线路最短路径问题

项目介绍 主要功能 提供一副地铁线路图,计算指定两站之间最短(最少经过站数)乘车路线:输出指定地铁线路的所有站点.以北京地铁为例,地铁线路信息保存在data.txt中,格式如下: 地铁线路总数 线路名1 站名1 站名2 站名3 ... 线路名2 站名1 站名2 站名3 ... 线路名3 站名1 站名2 站名3 ... ... github https://github.com/xupppp/subwayAssistant 实现语言 java 主要算法 迪杰斯特拉(dijkstra) 类职责划分

个人项目——北京地铁线路规划

一.前言 现实和理想的差距总是那么大,在过程中碰到的坑比预期的还多(说那么多,其实就是自己菜),过程中复习了淡忘已久的许多算法和数据结构,一边深刻的体会着自己是多菜,一边也体会到了自身一点点微小的进步,大概. 二.项目简介 实现北京地铁查询功能 附上一张北京地铁的图: 三.项目地址 https://github.com/fireworks-EX/MetroLinePlanning 四.需求分析 1.确定储存及读取地铁线路数据文件的格式 2.支持用户输入的地铁线路的查询 3.提供用户指定两站点间的

地铁线路问题分析

一.任务: 实现一个帮助进行地铁出行路线规划的命令行程序,能处理正确输入的命令行的计算地铁线路最短路径. 二.设计: 输入格式:选择json格式来输入,便于阅读. 需求1:显示地铁线路信息 将地铁线路信息等用一个文本文件以 subway.txt的形式保存起来,应保存的信息应包括地铁线路名称.各个地铁站点的名称以及车站换乘信息,使得应用程序可以通过读取这个文件,就能掌握关于北京地铁线路的所有信息. java subway -map subway.txt 需求2:查询指定路线经过的站点 查询指定地铁

个人项目——地铁线路的最短路径

地铁路线规划的初步分析 支持环境 windows7, 10, macOS, linux 需求分析 1.读取一定格式下的地铁信息文件 2.提供详细的地铁信息的查询 3.提供最短路的计算与推荐功能:路线最短,时间最短,换地铁数最少... 4.UI展示 设计实现 1.基本线路设计表(概念设计如下): 开始时只保存同一站点下相邻的站点 最后生成站点间两两的最优路线 初始信息表: 出发站点 目的站点 经过地铁 肿瘤医院 天津宾馆 5号线.6号线 大王庄 十一经路 9号线 大学城 王顶堤 3号线 大毕庄 南

地铁线路项目-结对编程

地铁线路项目-结对编程 2019.7.25 完成了模块开发:填写PSP实际完成时间:完成了模块设计:进行单元测试.黑盒测试. PSP表记录: PSP2.1 Personal Software Process Stages Time Real Time Planning 计划 1h 1h ??·?Estimate ?? ·?估计这个任务需要多少时间 1h 1h Development 开发 21h 20.5h ??·?Analysis ?? ·?需求分析?(包括学习新技术) 2h 1.5h ??·

地铁线路项目需求分析

地铁线路项目需求分析 需求分析 1.如何设计读取的文档格式. 2.根据输入的线路获得该线路上的所有站点信息. 3.输入一个起点站一个终点站,能够输出它们之间最短距离所经过的站点数以及站点名称. 4.测试以及性能的检测 5.各环节所需时间 计划阶段 时间 计划 估计此任务所需时间 开发 需求分析 生成设计文档 设计复审 代码规范 具体设计 具体编码 代码复审 测试 报告 测试报告 计算工作量 事后总结 总计 设计思路 题目的主要要求是如何读取数据以及根据用户需要输出站点信息. 在文档中,每行先输入

个人项目关于北京地铁线路出行线路规划

一  问题重述 1.实现地铁线路的加载 2.实现查询指定线路所有站点(包括换乘信息) 3.实现查询指定两个站点间的最短路径 二  功能设计 1.实现地铁线路的加载 -map subway.txt //将存储在subway.txt文件里的地铁线路进行读取 2.实现查询指定线路所有站点 -a 地铁线路名称 -map subway.txt -o station.txt //读取subway.txt文件信息后,通过输入的地铁线路名称,将指定地铁线路的所有站点写入station.txt文件 3.实现查询指