PSP 2.1 |
Personal Software Process Stages |
Time |
Planning |
计划 |
|
· Estimate |
· 估计这个任务需要多少时间 |
1h |
Development |
开发 |
|
· Analysis |
· 需求分析 (包括学习新技术) |
2h |
· Design Spec |
· 生成设计文档 |
|
· Design Review |
· 设计复审 (和同事审核设计文档) |
- |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
- |
· Design |
· 具体设计 |
|
· Coding |
· 具体编码 |
5h |
· Code Review |
· 代码复审 |
- |
· Test |
· 测试(自我测试,修改代码,提交修改) |
|
Reporting |
报告 |
- |
· Test Report |
· 测试报告 |
- |
· Size Measurement |
· 计算工作量 |
- |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
1h |
|
合计 |
|
0、 准备工作:
在今天的学习过程中,我在http://10.2.28.170 Git服务器Fork仓库,并将结构开发成员廖雪花老师加入开发团队。
坑:
团队成员作为Developer身份,没有办法提交代码到master分支。只有Maintainer身份才能将代码修改提交到master分支。因此权限问题,配置了很长时间。
1、 输入输出标准
与助教确认了地铁程序输入文件和输出文件的标准格式。对软件有问题的地方进行修改。
2、 封装成模块
与小组成员廖雪花老师讨论,封装有2个主要类。
1)Core类:封装地铁线路核心计算,提供加载地图文件loadMap()、查询线路站点getStations()和获取最短路径getShortPath()接口。
2)FileProcess类:封装文件处理,包括读取地铁信息文件,将Core类计算结果写入文件等。
3、 测试
Gitignore:包括.idea文件夹、doc/(本地文档)等
.vs
*/Debug
*/Release
*/x64
x64
Debug
Release
bin/
out/
.gitlab-ci.yml
subway-java.iml
doc/
.idea/
测试用例:
包括正面测试用例:
测试Core类的loadMap:加载地图数据。
@Test
public void loadMap()
测试Core类的getStation:测试线路站点。
@Test
public void getStations()
测试Core类的getShortPath:测试最优路径。
@Test
public void getShortPath()