- Github地址 :https://github.com/Ahmatjan-IT/sizeyunsuanGUI
- 队友博客地址:http://www.cnblogs.com/ahmatjan/p/8718714.html
一丶需求分析
- 本次实验采用结对编程方式,设计开发一个小学生四则运算练习软件,使之具有以下功能:
- 由计算机从题库文件中随机选择20道加减乘除混合算式,用户输入算式答案,程序检查答案是否正确,每道题正确计5分,错误不计分,20道题测试结束后给出测试总分;
- 题库自动生成;
- 程序为用户提供三种进阶四则运算练习功能选择:百以内整数算式(必做)、带括号算式、真分数算式练习;
- 程序允许用户进行多轮测试,提供用户多轮测试分数柱状图,示例如下:
- 程序记录用户答题结果,当程序退出再启动的时候,可为用户显示最后一次测试的结果,并询问用户可否进行新一轮的测试;
- 测试有计时功能,测试时动态显示用户开始答题后的消耗时间。
- 程序人机交互界面是GUI界面(WEB页面、APP页面都可),界面支持中文简体(必做)/中文繁体/英语,用户可以进行语种选择。
二丶软件设计:使用类图
三丶核心功能代码
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
四丶程序运行
1.登陆页面
2.点击开始答题进行答题
3.点击再来一次重新答题
.
五丶结对过程
六丶PSP
PSP2.1 | 任务内容 | 计划共完成需要的时间(min) | 实际完成需要的时间(min) |
Planning | 计划 | 30 | 20 |
· Estimate | · 估计这个任务需要多少时间,并规划大致工作步骤 | 30 | 20 |
Development | 开发 | 1200 | 1100 |
·· Analysis | 需求分析 (包括学习新技术) | 50 | 50 |
· Design Spec | · 生成设计文档 | 50 | 50 |
· Design Review | · 设计复审 (和同事审核设计文档) | 100 | 100 |
· Coding Standard | 代码规范 (为目前的开发制定合适的规范) | 50 | 50 |
· Design | 具体设计 | 200 | 100 |
· Coding | 具体编码 | 500 | 600 |
· Code Review | · 代码复审 | 50 | 50 |
· Test | · 测试(自我测试,修改代码,提交修改) | 200 | 100 |
Reporting | 报告 | 44 | 30 |
·· Test Report | · 测试报告 | 14 | 2 |
· Size Measurement | 计算工作量 | 10 | 8 |
· Postmortem & Process Improvement Plan | · 事后总结 ,并提出过程改进计划 | 20 | 20 |
七丶汉堡评价
因为我跟他是一个宿舍的,所以我们沟通很方便,很愉快。他什么事都想做,想法也很多,只要有想法就想去试试。在整个过程当中,他很积极,蛮勤奋的,遇到
不会的问题他会尽力解决而且不愿意拖很久。他很乐意接受别人的意见,我说哪里不对或者不合适,他就会认真倾听之后会解决这些问题。跟他合作真的很愉快!
八丶结对编程真的能够带来1+1>2的效果吗?通过这次结对编程,请谈谈你的感受和体会。
首次看到项目任务的时候不知道怎么做才好,之后和队友商量了一段时间我们觉得就根据各自的长处来分工完成任务。做实验的时候,我们一起讨论,发现谁有错误的时候就积极提出来。有些无法解决的地方我们一起查阅资料一起问班里学习好的同学解决了。通过我俩认真合作,实验顺利地完成了。两人合作的效率挺高的,让我意识到团队合作的重要性。