个人psp
排球计分程序
1.计划
通过对用户故事估计这个任务需要3~5d天。
2.开发
2.1需求分析
作为一个观众,我希望了解每场比赛的比分,以便了解比赛的情况。
作为一个观众,我希望输入球队名称查询球队比分,以便快速了解比分。
2.2生成设计文档
通过textbox填写查询球队的队名,点击查询按钮查讯结果。
通过多行文本框输出查询结果。
在查询按钮写一个查询方法。
清空按钮:编写清空方法,点击清空按钮清空文本框内容。
2.3设计复审
由小组成员讨论设计是否满足用户需求,设计的可行性,以及可能出现的问题。
2.4代码规范
根据设计文档制定出合适的规范,对程序需要实现的功能作出合理的划分,以便于提高各个部分功能的可用性。当需要更改时可以快速更改,但影响小。
2.5具体设计
用户界面应简洁。
将数据库合理设计出来,以便于记分员存储排球队的成绩。

数据库设计
|
字段名 |
类型 |
允许空 |
主键 |
|
ID |
Int |
√ |
|
|
Jushu |
nchar(10) |
|
|
|
Duiming |
nchar(10) |
|
|
|
fenshu |
int |
|
|
2.6具体编码
代码:
private void button1_Click(object sender, EventArgs e)
{
Form2 a = new Form2();
a.Show();
}
private void button2_Click(object sender, EventArgs e)
{
Form3 b = new Form3();
b.Show();
}
private void Form2_Load(object sender, EventArgs e)
{
//为DataGridView控件加载数据
DataGridViewDataLoad();
}
private void DataGridViewDataLoad(string sql = "select * from vollyball")
{
//创建数据库连接
string conn = @"Data Source=.;Initial Catalog=Game;Integrated Security=True";
SqlConnection con = new SqlConnection(conn);
//创建一个SqlDataAdapter的对象适配器,用于检索和保存数据
SqlDataAdapter adapter = new SqlDataAdapter(sql,con);
//创建一个存放于内存中的数据缓存
DataSet ds = new DataSet();
//打开数据库链接
con.Open();
//将适配器检索到的数据填充到本地数据库中
adapter.Fill(ds);
//将本地数据库中的数据表设置为dataGridView1控件的数据源
dataGridView1.DataSource = ds.Tables[0];
}
private void btnEnd_Click(object sender, EventArgs e)
{
Form4 d = new Form4();
d.Show();
this.Hide();
}
private void Form3_Load(object sender, EventArgs e)
{
//为DataGridView控件加载数据
DataGridViewDataLoad();
}
private void DataGridViewDataLoad(string sql = "select * from Chang")
{
//创建数据库连接
string conn = @"Data Source=.;Initial Catalog=Game;Integrated Security=True";
SqlConnection con = new SqlConnection(conn);
//创建一个SqlDataAdapter的对象适配器,用于检索和保存数据
SqlDataAdapter adapter = new SqlDataAdapter(sql, con);
//创建一个存放于内存中的数据缓存
DataSet ds = new DataSet();
//打开数据库链接
con.Open();
//将适配器检索到的数据填充到本地数据库中
adapter.Fill(ds);
//将本地数据库中的数据表设置为dataGridView1控件的数据源
dataGridView1.DataSource = ds.Tables[0];
}
private void button1_Click(object sender, EventArgs e)
{
Form5 f = new Form5();
f.Show();
this.Hide();
}
代码复审
对代码进行复审,并对代码进行重构,提高代码质量,可维护性。
通过复审尽可能发现错误,便于后续的开发速度,以及新功能的的
添加。
测试
使用VS2010进行所有的单元测试。
正确输入测试;错误输入测试;无结果查询测试;
3.报告
3.1测试报告
所有单元测试通过。
3.2计算工作量
|
时间 |
24h |
|
随笔累计数 |
不确定 |
|
代码累计 |
不确定 |
3.3事后总结,并提出过程改进计划
C#基础薄弱,部分功能不能实现,数据库部分应用不灵活,程序仍有漏洞。
|
开发 |
12h |
|
需求分析 |
1h |
|
生成设计文档 |
1h |
|
设计复审 |
30min |
|
代码规范 |
30min |
|
具体设计 |
50min |
|
具体编码 |
6h |
|
代码复审 |
20min |
|
测试 |
5miin |
|
测试报告 |
5min |
|
总结20min |
|
随笔累积数 |
不确定 |
|
代码累积 |
无 |
|
知识点 |
数组优化,数据库数据显示 |
个人psp的更多相关文章
- 结对项目:代码复审+PSP
一.代码复审 首先我从代码风格规范和程序修改两方面进行审查. (一)代码风格规范修改 1 . 代码的部分未缩进:在用markdown粘贴代码时,需要后期tab,无形中加大工作量. 2 . ...
- 最后一周psp
团队项目PSP 一:表格 C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 讨论 讨论用户界面 10:20 11:45 25 40 80 分析 ...
- 第十周 psp
团队项目PSP 一:表格 C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 讨论 讨论用户界面 8:45 10:55 40 35 90 分析与 ...
- 第九周 psp
团队项目PSP 一:表格 C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 讨论 讨论用户界面 9:50 12:45 35 45 80 分析与 ...
- 第八周PSP
团队项目PSP 一:表格 C类型 C内容 S开始时间 E结束时间 I时间间隔 T净时间(mins) 预计花费时间(mins) 讨论 讨论用户界面 8:40 11:40 35 60 70 分析与 ...
- 本周psp
本周PSP 类别 内容 开始时间 中止时间 终止时间 总用时 产品计划会议 定义产品的用户需求,以及从这个产品中得到什么.解决啥问题 18:00 0 20:00 120分钟 撰写博客 会议记录与个 ...
- 本周psp(观众页面)
个人项目PSP(观众页面) 计划 30min 估计要用多长时间 3d 开发 5h 需求分析 1h 生成设计文档 1h 设计复审 50min 代码规范 20min 具体设计 40min 具体编码 3h ...
- psp进度(11月25号-31号)
本周psp进度 11月25号 内容 开始时间 结束时间 打断时间 净时间 处理数据集 9:27 11:34 12m 115m 11月27号 内容 开始时间 结束时间 打断时间 净时间 scr ...
- 本周psp(11月17-23)
本周psp进度 11月19号 内容 开始时间 结束时间 打断时间 净时间 发布读书笔记 11:05 11:25 0 20m 看构建之法书 9:50 10:48 5m 53m 11月20号 内容 开始时 ...
- 补PSP进度(10.28-11.3)
本周PSP进度 10月31号 内容 开始时间 结束时间 打断时间 净时间 看蛋白质相互作用论文 8:40 10:35 约12m 103m 分析约跑功能 13:20 13:55 0 35m 练习VSL2 ...
随机推荐
- mybatis里的foreach语句
相信用了Mybatis的朋友们,都曾有一个疑惑,就是foreach是怎么用的,下面我就简单讲讲我的理解: foreach主要用在SQL语句中迭代一个集合.foreach元素的属性主要由item,ind ...
- (最重要)学了这么久的编程,你知道byte吗?
在c#中,Byte b=12; 上面是合法的,因为Byte是一个字节.他的范围是0-255. 如果是 Byte b=4096;这是错的 ,必须加上强制类型转换. 这个小问题,虽然很小但是值得注意.
- JAVA 学习随笔 : JDK Enhancement Process JEP process
是时候寻找一个学习JAVA的路径了 ---- JDK Enhancement Process Oracle发布了JDK增强提案与路线图进程,目的在于鼓励OpenJDK提交者贡献点子和扩展以改进Open ...
- html5,增加flash插件
<embed src="2.swf" type="" width="500" height="" >< ...
- html5,单击文字自动获得焦点
<p><label for=""></label>这样单击后自动获得焦点</p>
- List view优化
ListView 针对每个item,要求 adapter "返回一个视图" (getView),也就是说ListView在开始绘制的时候,系统首先调用getCount()函数,根据 ...
- pt-online-schema-change原理解析
都说pt-toolkit工具集中的pt-online-schema-change可以在线不锁表修改表结构,那么这个工具具体是什么原理呢,请见下面娓娓道来: 1.pt-online-schema-cha ...
- mybatis使用generator生成对应的model、mapping配置文件、dao
http://blog.csdn.net/fengshizty/article/details/43086833 使用时 补充 输入命令:cd d:\generator 敲回车 再输入命令:d: 敲 ...
- Js控制Div在浏览器中的高度
//需求是,我需要通过浏览器内容可视化的高度来控制div的高度boxheight(); //执行函数function boxheight(){ //函数:获取尺寸 //获取浏览器窗口高度 var wi ...
- 给自己的XTC820摆拍一下。
上个月入手了捷安特的XTC820,始终没有时间为爱车拍几张照,今天凑着在办公室的机会,就随手拍了几张,展示一下XTC820.先给大家看图片,然后再分享一下当初我买它的原因以及车的规格. 下面就来简单说 ...