结对项目开发(石家庄地铁乘车系统)
结对项目开发(石家庄地铁乘车系统)
结对成员:高宇,刘津鑫
|
时间百分比(%) |
实际花费的时间 (分钟) |
原来估计的时间 (分钟) |
|
Planning |
计划 |
70 |
40 |
|
· Estimate |
· 估计这个任务需要多少时间,把工作细化并大致排序 |
70 |
40 |
|
Development |
开发 |
640 |
815 |
|
· Analysis |
· 需求分析 (包括学习新技术) |
300 |
400 |
|
· Design Spec |
· 生成设计文档 |
30 |
20 |
|
· Design Review |
· 设计复审 (和同事审核设计文档) |
10 |
10 |
|
· Coding Standard |
· 代码规范 (制定合适的规范) |
20 |
15 |
|
· Design |
· 具体设计 |
60 |
100 |
|
· Coding |
· 具体编码 |
120 |
180 |
|
· Code Review |
· 代码复审 |
40 |
60 |
|
· Test |
· 测试(自我测试,修改代码,提交修改) |
60 |
30 |
|
Reporting |
总结报告 |
|
|
|
· Test Report |
· 测试报告 |
|
|
|
· Size Measurement |
· 计算工作量 |
|
|
|
· Postmortem & Improvement Plan |
· 事后总结, 并提出改进 |
|
|
|
Total |
总计 |
100% |
总用时 |
总估计 |
设计文档:
需求分析:
- 最短路线查询,需要输出每次查询后的路线。
- 换乘最少路线查询,需要输出每次查询后的路线。
功能设计:
把起始点到终点的所有路线查询查来放到list容器中,之后找出其中size()最小的为最短路线,换乘最少的为换乘最少路线。
Subway的基础类型:
public class Subway { private int Id; private String Sname; private String Snum; private String Change; public Subway(int id2, String sname2, String snum2, String change2) { this.Id=id2; this.Sname=sname2; this.Snum=snum2; this.Change=change2; } public String getSname() { return Sname; } public void setSname(String sname) { Sname = sname; } public String getSnum() { return Snum; } public void setSnum(String snum) { Snum = snum; } public int getId() { return Id; } public void setId(int id) { Id = id; } public String getChange() { return Change; } public void setChange(String change) { Change = change; } }
list函数用来从数据库查出信息并存放到list容器中
public static List<Subway> list(String table) { String sql = "select * from " +table; List<Subway> list = new ArrayList<>(); Connection conn = BaseConnection.getConnection(); Statement state = null; ResultSet rs = null; try { state = conn.createStatement(); rs = state.executeQuery(sql); Subway subway = null; while (rs.next()) { String Sname = rs.getString("Sname"); String Snum = rs.getString("Snum"); int Id = rs.getInt("Id"); String Change = rs.getString("Change1"); subway = new Subway(Id, Sname, Snum, Change); list.add(subway); } } catch (SQLException e) { e.printStackTrace(); } finally { BaseConnection.close(rs, state, conn); } return list; }
Judge(List<Subway>来判断换乘问题,并把查出来的线路存放到List<List<Subway>>中
Gather(List<Subway>用来把多个容器合并成一个容器
public static List<Subway> Gather(List<Subway> list1,List<Subway> list2,List<Subway> list3 ,List<Subway> list4,List<Subway> list5,List<Subway> list6) { List<Subway> list =new ArrayList(); Subway sub=null; list.addAll(list1); list.addAll(list2); list.addAll(list3); list.addAll(list4); list.addAll(list5); list.addAll(list6); return list; }
测试截图: