第一次作业

自己取一个大气又可爱的标题

一、预估与实际

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 600 650
• Estimate • 估计这个任务需要多少时间 600 650
Development 开发 600 650
• Analysis • 需求分析 (包括学习新技术) 60 70
• Design Spec • 生成设计文档 20 20
• Design Review • 设计复审 20 30
• Coding Standard • 代码规范 (为目前的开发制定合适的规范) 20 20
• Design • 具体设计 200 200
• Coding • 具体编码 200 200
• Code Review • 代码复审 40 40
• Test • 测试(自我测试,修改代码,提交修改) 30 30
Reporting 报告 30 30
• Test Repor • 测试报告 20 20
• Size Measurement • 计算工作量 10 10
• Postmortem & Process Improvement Plan • 事后总结, 并提出过程改进计划 20 20
合计 650

二、需求分析

我通过网络的方式了解到,小学一年级数学有如下的几个特点:

  • 简单点的加减乘除运算

经过分析,我认为,这个程序应当:

  • 出题数量应该符合正整数
  • 加减使用的数字小于50,乘除小于20
  • 不能出现负数 不出现小数

三、设计

1. 设计思路

判断输入的题目数量和年级数字是否符合规范
随机数的生成
调用函数实现不同年级不同随机题目生成
打印结果至屏幕以及output.txt
程序有三个方法,主方法判定生成一年级或者二年级,然后分别执行对应方法
设置a,b两个数字,让他们随机进行加减法,如果是加法,不用考虑特殊情况,如是减法,则要控制被减数大于或等于减数,从而不会得到负数的结果
设置a,b两个数字,让他们随机进行乘除法,如果是乘法,不用考虑特殊情况,如是除法,则要控制被除数大于或等于除数,从而不会得到小数的结果

2. 实现方案

写出具体实现的步骤

-准备工作:先在Github上创建仓库,克隆到本地
-技术关键点:输出至txt,判断输入的数字是否符合规范

四、编码

输入题目数和年纪数 调用不同的方法从而达到不同目的

1. 调试日志

记录编码调试的日志,请记录下开发过程中的 debug 历程

加减结果出现了负数 然后进行了改正

2. 关键代码

public static void main(String[] args) throws IOException {
int n;
while (true) {
Scanner input = new Scanner(System.in);
try {
n=input.nextInt();
}catch(Exception e) {
System.out.println("输入的不是整数请重新输入");
continue;}
if(n<0) {
System.out.println("输入的不是正数请重新输入");
}
break;
}
Scanner x = new Scanner(System.in);
int grade = x.nextInt();
if(grade==1) {
grade_one();
}else if(grade == 2) {
grade_two();
利用输入的信息判断题目数和年级数 来调用后面的方法

3. 代码规范

不适用未定义的变量
右括号后换行
对应好每个循环
并人工检查代码是否符合规范

五、测试

请思考并记录你认为必要的测试点,并记录测试用例与测试结果

六、总结

请总结过程中的教训和经验,思考

  • 是否使用了“软件开发的基本策略:分而治之”,是否需要重构
  • “高质量的设计、规范的编码以及有效的测试是保证软件产品质量的三个重要方面”,你是否采用了相关的手段,是否需要重构
    自己在实践中还有很多问题,以后要认真学习专业知识,不会重构

posted on 2018-09-11 23:46  耳又又  阅读(115)  评论(1编辑  收藏  举报

导航