首页 > 代码库 > PSP个人(观众界面)
PSP个人(观众界面)
需求:作为一个观众,我希望了解某一场比赛的比分,以便了解赛况。(满意条件:精确到每一局的结果比分)
需求分析:实现查询数据库中每一局的分数并用界面显示。
生成设计文档:
运用三层架构,实现软件的基本功能。
设计复审:自我复审已完成。同事复审暂未完成。
代码规范:代码风格的原则,简明,易读,无二义性。
缩进:四个空格。
行宽:不超过100字符。
括号:在复杂的条件表达式中,用括号清楚地表示逻辑优先级。
断行与空白的{}行:(加代码)
分行:不要把多个语句放在一行上。
命名:
Camel 驼峰命名法:单词连写 无分割符 每个单词大写首字母
类名和接口名 大写第一个单词首字母
注释:要加入必要的注释。
具体设计:
大致界面如下所示
单击刷新获取目前场内得分情况。
基本活动图如下
具体编码:
//获取数据库数据 //查询前几条 int x = a + b; //x = 3; string sql = "select *from p limit "+x+""; MySqlDataReader dr = MySqlHelperA.ExecuteReader(sql, null); if (dr.HasRows) { if (dr.Read()) { //第一局 diYiJu1.Text = dr["chang1"].ToString(); diYiJu2.Text = dr["chang2"].ToString(); changNeiBiFen1.Text = dr["fen1"].ToString(); changNeiBiFen2.Text = dr["fen2"].ToString(); int aa=int.Parse(dr["chang1"].ToString()); int bb = int.Parse(dr["chang2"].ToString()); if (aa > bb) { diYiJu.Text = txtDuiMing1.Text + "胜"; } else { diYiJu.Text = txtDuiMing2.Text + "胜"; } } if (dr.Read()) { //第二局 diErJu1.Text = dr["chang1"].ToString(); diErJu2.Text = dr["chang2"].ToString(); changNeiBiFen1.Text = dr["fen1"].ToString(); changNeiBiFen2.Text = dr["fen2"].ToString(); int aa = int.Parse(dr["chang1"].ToString()); int bb = int.Parse(dr["chang2"].ToString()); if (aa > bb) { diYiJu.Text = txtDuiMing1.Text + "胜"; } else { diYiJu.Text = txtDuiMing2.Text + "胜"; } } if (dr.Read()) { //第三局 diSanJu1.Text = dr["chang1"].ToString(); diSanJu2.Text = dr["chang2"].ToString(); changNeiBiFen1.Text = dr["fen1"].ToString(); changNeiBiFen2.Text = dr["fen2"].ToString(); int aa = int.Parse(dr["chang1"].ToString()); int bb = int.Parse(dr["chang2"].ToString()); if (aa > bb) { diYiJu.Text = txtDuiMing1.Text + "胜"; } else { diYiJu.Text = txtDuiMing2.Text + "胜"; } } if (dr.Read()) { //第四局 diSiJu1.Text = dr["chang1"].ToString(); diSiJu2.Text = dr["chang2"].ToString(); changNeiBiFen1.Text = dr["fen1"].ToString(); changNeiBiFen2.Text = dr["fen2"].ToString(); int aa = int.Parse(dr["chang1"].ToString()); int bb = int.Parse(dr["chang2"].ToString()); if (aa > bb) { diYiJu.Text = txtDuiMing1.Text + "胜"; } else { diYiJu.Text = txtDuiMing2.Text + "胜"; } } if (dr.Read()) { //第五局 diWuJu1.Text = dr["chang1"].ToString(); diWuJu2.Text = dr["chang2"].ToString(); changNeiBiFen1.Text = dr["fen1"].ToString(); changNeiBiFen2.Text = dr["fen2"].ToString(); int aa = int.Parse(dr["chang1"].ToString()); int bb = int.Parse(dr["chang2"].ToString()); if (aa > bb) { diYiJu.Text = txtDuiMing1.Text + "胜"; } else { diYiJu.Text = txtDuiMing2.Text + "胜"; } } }
代码复审:已完成
测试:已完成
测试报告:可以实现基本的查询功能。
计算工作量:
计划 |
估计用时 |
实际用时 |
估计这个任务需要多少时间 |
145min |
120min |
开发 |
105min |
100min |
需求分析 |
10min |
5min |
生成设计文档 |
5min |
5min |
设计复审 |
15miin |
5min |
代码规范 |
5min |
10min |
具体设计 |
20min |
20min |
具体编码 |
40min |
50min |
代码复审 |
10min |
5min |
测试 |
30min |
20min |
测试报告 |
5min |
5min |
计算工作量 |
20min |
10min |
事后总结并提出改进计划 |
5min |
5min
|
事后总结并提出改进计划:基本功能虽已实现,但是还未改为三层架构的格式。
PSP个人(观众界面)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。