个人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 ...
随机推荐
- C++之路进阶——codevs2306(晨跑)
2306 晨跑 2009年省队选拔赛山东 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 大师 Master 题目描述 Description Elaxia最近迷恋 ...
- Oracle 多行变一列的方法
多行变一列的方法有很多,觉得这个第一眼看懂了当时就用的这个办法. 情况是这样的.以下数据前几列是一样的,需要把VAT_VALUE_CHAR 的值放在同一行上. SELECT * FROM ps_vat ...
- 飞机大战编写以及Java的面向对象总结
面向对象课程完结即可编写一个简单的飞机大战程序.我觉得我需要总结一下 飞机大战中类的设计: 父类:FlyingObject(抽象类) 接口:Award .Enemy 子类:Hero.Bullet.Ai ...
- win10安装oracle 11g 报错 要求的结果: 5.0,5.1,5.2,6.0 6.1 之一 实际结果: 6.2
Windows10下安装Oracle11G.10G,都会提示如下信息 正在检查操作系统要求... 要求的结果: 5.0,5.1,5.2,6.0 之一 实际结果: 6.1 检查完成.此次检查的总体结果为 ...
- eBox(stm32) 之中断结构
eBox的中断结构参考了mbed,和我们平时所用的中断结构有些差异,不容易理解,最近仔细看了底层代码,终于搞清楚了,总结一下 一 首先要要搞清楚的几个概念:类的静态成员,实例成员 ...
- 优化 bulk insert
https://www.simple-talk.com/sql/learn-sql-server/bulk-inserts-via-tsql-in-sql-server/
- 【笔记】js Function类型 内部方法callee
运用function实现阶乘 以往的做法是如下的 function factorial(num){ if(num <= 1){ return 1; }else{ return num * fac ...
- Android 开发命令行完全攻略
作为命令行的爱好者,我想写这个主题已经有好一段时间了.除了显得很酷之外,命令行的使用能够提高我们的开发效率,因为相比通过鼠标点击一系列的菜单选项,使用键盘输入几个字符并点击 TAB 健显然会快很多. ...
- Write Your software base on plugin(C/C++ ABI)
一个软件,如果把所有的功能写进C++源码,维护,扩展,编译都特别麻烦. 共享库后缀名.Linux -> .so Windows -> .dll 关于动态符号显示问题,具体可以看系统的AP ...
- Topcoder SRM 683 Div2 B
贪心的题,从左向右推过去即可 #include <vector> #include <list> #include <map> #include <set&g ...