MathExam V2.0
.未完成.
一、预估与实际
PSP2.1 | Personal Software Process Stages | 预估耗时(分钟) | 实际耗时(分钟) |
---|---|---|---|
Planning | 计划 | ||
• Estimate | • 估计这个任务需要多少时间 | 10 | 15 |
Development | 开发 | ||
• Analysis | • 需求分析 (包括学习新技术) | 100 | 150 |
• Design Spec | • 生成设计文档 | 10 | 15 |
• Design Review | • 设计复审 | 5 | 5 |
• Coding Standard | • 代码规范 (为目前的开发制定合适的规范) | 10 | 10 |
• Design | • 具体设计 | 20 | 10 |
• Coding | • 具体编码 | 180 | 300 |
• Code Review | • 代码复审 | 30 | 60 |
• Test | • 测试(自我测试,修改代码,提交修改) | 30 | 40 |
Reporting | 报告 | ||
• Test Repor | • 测试报告 | 10 | 20 |
• Size Measurement | • 计算工作量 | 5 | 3 |
• Postmortem & Process Improvement Plan | • 事后总结, 并提出过程改进计划 | 10 | |
合计 |
二、需求分析
我通过查看家长需求及百度的方式了解到,小学三年级数学有如下的几个特点:
- 特点1 运算符在2~4个
- 特点2 减法运算的结果不能有负数
- 特点3 除法运算除数不能为0,不能有余数
- 特点4 可以带括号
- 特点5 需要保存一二年级的出题
三、设计
1. 设计思路
说明你如何设计这个程序
比如:
- 这个程序在MathExam1的基础上不增加类,新增三年级的题目计算函数,主要需要解决出题的问题,做到随机的四则运算
- 算法的关键的关键是什么?
- 算法关键是如何随机生成四则运算
2. 实现方案
写出具体实现的步骤
比如:
- 准备工作:先在Github上创建仓库,克隆到本地
- 技术关键点:在上次作业基础上添加一个函数为三年级,其功能为进行三年级的出题和计算,同时应要求输入的判断也需要更改
四、编码
1. 调试日志
一开始没有考虑乘除号的优先级,随机出的题目按顺序计算导致结果不正确
2. 关键代码
课堂写博客 没法给出代码
3. 代码规范
请给出本次实验使用的代码规范:
- 第一条 每个类应该以某种逻辑去排序它的成员,维护者应该要能解释这种排序逻辑
- 第二条 大括号遵循Kernighan和Ritchie风格
- 第三条 每个语句后要换行
五、测试
代码尚未完成 测试无法进行
六、总结
这次的作业发现在自己不会的方面 搭档可以给与帮助,提高了效率,但在两人都不会的情况下还是需要花费大量时间去查资料学习,而在自身方面,我的编程基础还是较为薄弱,需要加强