个人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 ...
随机推荐
- Java学习手记2——多线程
一.线程的概念 CPU执行程序,就好比一个人在干事情一样,同一个时间你只能做一件事情,但是这样的效率实在是太低了,在你用电脑的时候,听歌就不能浏览网页,看电影就不能下载视频,你想想是不是很蛋疼. 所以 ...
- Dev统计选中行、如需其他数据源可留言
Clipboard.Clear(); Dictionary<string, decimal> dtary = new Dictionary<string, decimal>() ...
- 算法第四版 用eclipse实现书中UnionFind例子
一 安装环境 直接下载algs4.exe 下载完成后C:\Users\zle 下面会有algs4 文件夹 原文: Our installer downloads, installs, and conf ...
- C++之检测文件结尾
当使用文件作为输入流时,为了确保适时的结束文件读取操作,程序要靠检查文件尾来判断该何时停止读取.常用的检查文件尾方法有两种: 两种方式均已将 fin 与文件关联,即 均已声明 fin 输入流,并已调用 ...
- net core 控制台中文乱码的解决方案
net core 对控制台中文的支持需要加入下面的语句 Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
- mybatis+MySQL--CRUD
①导入jar包: ②.配置config.xml: ③.entity: mapping: ④.DAO: —————————————————————————————————— 目录结构: —————— ...
- Foundation框架
1.框架是由许多类.方法.函数.文档按照一定的逻辑组织起来的集合,以便使研发程序变的更容易 清除缓存,删除这个文件夹下的所有文件/Users/fanyafang/Library/Developer/X ...
- 227 Entering Passive Mode (xxx,xxx,,xxx,xxx,x)
登录ftp时显示227 Entering Passive Mode (xxx,xxx,,xxx,xxx,x) 因为FTP有两种工作模式,PORT方式和PASV方式,中文意思为主动式和被动式 ,详细介绍 ...
- 安卓版App开发心得
从2016年4月到6月主要做的工作是网站的开发,而6月到现在2016年8月初,主要做的工作是Android和IOS两种App的开发,又以Android为主. 将这段时间的Android开发心得记录如下 ...
- 非常好的Oracle教程【转】
http://www.blogjava.net/kiant/articles/234781.html Oracle 笔记(四).SQL 几个要点 附录: 1.SQL 简介 2.SQL 操作符 3.Or ...