PSP个人项目耗时记录
估计这个任务需要多少时间:
|
计划 |
估计用时 |
|
估计这个任务需要多少时间 |
500min |
|
开发 |
450min |
|
需求分析 |
120min |
|
生成设计文档 |
20min |
|
设计复审 |
30miin |
|
代码规范 |
10min |
|
具体设计 |
20min |
|
具体编码 |
200min |
|
代码复审 |
50min |
|
测试 |
50min |
|
测试报告 |
20min |
|
计算工作量 |
20min |
|
事后总结并提出改进计划 |
10min |
需求分析:
需求:作为一个记分员,我希望能记录每一场比赛的具体得分,以便于及时显示。
实现记录加分,减分,及时显示加减后分数的界面。
生成设计文档:
运用三层架构,实现软件的基本功能。

设计复审:
自我复审已完成。同事复审暂未完成。
代码规范:
代码风格的原则,简明,易读,无二义性。
缩进:四个空格。
行宽:不超过100字符。
括号:在复杂的条件表达式中,用括号清楚地表示逻辑优先级。
断行与空白的{}行:(加代码)
分行:不要把多个语句放在一行上。
命名:
Camel 驼峰命名法:单词连写 无分割符 每个单词大写首字母
类名和接口名 大写第一个单词首字母
注释:要加入必要的注释。
具体设计:
数据库名:PaiQiu
数据库用于储存队伍得分的具体情况 无需加密

大致界面如下所示:

基本架构方案如下所示:


基本活动图如下:

可能遇到的技术性问题:每一个用户使用的数据库中的表需要在使用该程序的时候自动在后台创建,如何使用VS2010用代码创建指定唯一表名的数据表是一个急需解决的技术性问题。
数据表名必须遵循数据库创建表的表名格式且表名需要让用户易于记忆。
上述技术性问题解决后:用户可以根据自己的队伍名来查找该队伍在数据库中的表数据。
具体编码:
部分代码:
private void button1_Click(object sender, EventArgs e)
{
//单击A队
//调用BLL层
But1BLL bll = new But1BLL();
//判断第一局框里是否为空
if (string.IsNullOrEmpty(diYiJu.Text))
{
//判断是否胜利
if (bll.sheng(diYiJu1.Text, diYiJu2.Text,changNeiBiFen1.Text,changNeiBiFen2.Text))
{
//胜利
MessageBox.Show("第一局"+butAJia.Text);
//加场内比分
changNeiBiFen1.Text = bll.bizhi(changNeiBiFen1.Text, changNeiBiFen2.Text).ToString();
//在第一局文本框中写入某队胜
diYiJu.Text = butAJia.Text;
}
else
{
//没有胜利,给A队加一分
diYiJu1.Text = bll.jia(diYiJu1.Text, diYiJu2.Text).ToString();
//再次判断是否胜利
if (bll.sheng(diYiJu1.Text, diYiJu2.Text, changNeiBiFen1.Text, changNeiBiFen2.Text))
{
MessageBox.Show("第一局" + butAJia.Text);
diYiJu.Text = butAJia.Text;
changNeiBiFen1.Text = bll.bizhi(changNeiBiFen1.Text, changNeiBiFen2.Text).ToString();
}
}
}
单击事件
public class But1DAL
{
//单击button1
//判断是否胜利
public bool sheng(string chang1, string chang2,string fen1,string fen2)
{
if (int.Parse(chang1) >= && int.Parse(chang1)> int.Parse(chang2)+)
{
int a = int.Parse(fen1)+;
string aa = a.ToString();
ShuJuKu.shujuku(chang1, chang2, aa, fen2);
return true;
}
else
{
return false;
}
}
//单击加分
public int jia(string chang1, string chang2)
{
int a = int.Parse(chang1);
a++;
return a;
}
//加比值
public int bizhi(string bi1, string bi2)
{
int a = int.Parse(bi1);
a++;
return a;
}
DAL层
代码复审:已完成
测试:已完成
测试报告:加分减分已经可以正常运行。
计算工作量:
|
计划 |
估计用时 |
实际用时 |
|
估计这个任务需要多少时间 |
500min |
810min |
|
开发 |
450min |
710min |
|
需求分析 |
120min |
60min |
|
生成设计文档 |
20min |
60min |
|
设计复审 |
30miin |
10min |
|
代码规范 |
10min |
60min |
|
具体设计 |
20min |
200min |
|
具体编码 |
200min |
300min |
|
代码复审 |
50min |
20min |
|
测试 |
50min |
100min |
|
测试报告 |
20min |
40min |
|
计算工作量 |
20min |
40min |
|
事后总结并提出改进计划 |
10min |
20min |
事后总结并提出改进计划:
该程序的减分应给出提示框提示是否为确定为某队减分。
PSP个人项目耗时记录的更多相关文章
- PSP个人项目耗时对比记录表:四则运算
Personal Software Process Stages Time(%) 计划 5 •估计这个任务需要多长时间 5 开发 60 •需求分析 5 •生成设计文档 5 ...
- PSP记录个人项目耗时情况
四则运算编程 PSP记录个人项目耗时情况 PSP Personal Software Process Stages Time(%) Planning 计划 7 Estimate 估计这个任务需要多少时 ...
- 王者荣耀交流协会PSP Daily项目Postmortem结果
王者荣耀交流协会PSP Daily项目Postmortem结果 整理:王超 设想和目标 1. 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? PSP D ...
- Ionic3项目实践记录
Ionic3首次项目实践记录 标签(空格分隔): Angular Ionic Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则 ...
- Anytime项目开发记录0
Anytime,中文名:我很忙. 开发者:孤独的猫咪神. 这个项目会持续更新,直到我决定不再维护这个APP. 2014年3月10日:近日有事,暂时断更.希望可以会尽快完事. 2014年3月27日:很抱 ...
- Express+Mongoose(MongoDB)+Vue2全栈微信商城项目全记录(二)
用mogoose搭建restful测试接口 接着上一篇(Express+Mongoose(MongoDB)+Vue2全栈微信商城项目全记录(一))记录,今天单独搭建一个restful测试接口,和项目前 ...
- Unity3D Demo项目开发记录
前言 经过一段时间的学习与实际开发,unity3D也勉强算是强行入门了,正所谓好记性不如烂笔头,更何况本人并非专业从事unity3D开发,会一点C#但也并不熟悉,为了避免后期遗忘,因此特意整理了一个D ...
- PSP记录个人项目耗时
PSP2.1 Personal Software Process Stage Time Planning 计划 90 ·Estimate ·估计这个任务需要多长时间 90 Development 开发 ...
- 作业三:PSP记录个人项目耗时情况
PSP2.1 Personal Software Process Stages Time Planning 计划 20min Estimate 估计开发 ...
随机推荐
- canvas 动态画线
<!--实现鼠标按下的时候,移动进行绘制,鼠标抬起结束绘图,用到的事件有mousedown mousemove mouseup用的的canvas api 有 beginPath moveTo l ...
- WCF初体验(C#操作Exchange)
最近再做一个Exchange的客户端维护工具,遇到了很多问题. 由于刚接触C#和Exchange,所以还需要继续学习.在此记录一下,只是一个新手的记录. 环境: 服务器:Exchang ...
- kbengine0.4.20源代码分析(一)
基于kbengine 0.4.2 MMOPG服务端是一种高品质的工程项目,品读开源的kbe是一种乐趣.本文档我带童鞋们一起领略一下.囿于我知识面和经验方面所限,文中所述之处难免有错误存在,还请读童鞋们 ...
- unity, 调节图片导入尺寸
unity中直接导入高清图,通过max size来调节图片尺寸. 打包的时候通过看editor log或通过插件来监视是否有过大尺寸的图片.
- LoadRunner简介
LoadRunner是什么 LoadRunner是一个性能测试工具,它最初是Mercury公司的产品,后背HP收购. LoadRunner常用来做什么 l 验证某系统在某环境下是否满足性能需求. l ...
- Java基础--Java语言介绍
Java是一种半编译半解释的语言.1.编译阶段使用指令:javac这个阶段,Java编译器(也就是JVM:java虚拟机,后称JVM),首先把你的代码加载完成,然后开始检查语法.此后会产生.class ...
- apache 使用 .htaccess 导致500错误
今天在win主机上配置了一个apache+mysql+php 的环境,一切看似正常了.结果将程序转移过来,打开网站的时候,出现了500错误.于是乎查原因: 首先,怀疑的是连接mysql出错了,找出配置 ...
- (转载)iOS开发历程书籍推荐
http://www.zhihu.com/question/19649679 我来说说我学习的过程:(无耻的使用一个回答 回答了很多问题.^^) 第一步,精读 Stephen G. Kochan 的& ...
- 【学】ECMA6的新特性1
ECMA6的新特性1 let特性: 1.不允许重复声明 2.没有预解析 3.块级作用域 一对{}包括的区域称为代码块 块级作用域指一个变量或者函数只在该区域才起作用. 例1: console.log( ...
- [转]mysql在windows下支持表名大小写,lower_case_table_names
windows下mysql默认是不支表名大小写的,也就是表名大小写不敏感.用phpmyadmin创建的驼峰式表名,全部被强制成小写.mysql表名大小写敏感的参数: lower_case_table_ ...