结对项目开发(石家庄地铁乘车系统)
结对成员:高宇,刘津鑫
Personal Software Process Stages | 时间百分比(%) | 实际花费的时间 (分钟) | 原来估计的时间 (分钟) |
|
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 Listlist(String table) { String sql = "select * from " +table; List 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 ListGather(List list1,List list2,List list3 ,List list4,List list5,List list6) { List 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; }
测试截图: