出题

设计报告

一、预估与实际

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

二、需求分析

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

  • 特点1:小学数学算式内的两个加数都应该小于20。
  • 特点2:小学数学算式应为99乘法表内。
  • 特点3:小学数学运算结果不能为负数。

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

  • 一年级函数中,需要判断两数相加或相减是否小于等于20大于等于0。
  • 不能出现负数。
  • 100以内的除法不能出现分数。

三、设计

1. 设计思路

说明你如何设计这个程序

  • 构建一个类,创建四个方法
  • 判断随机数是否为0

2. 实现方案

写出具体实现的步骤

  • 准备工作:先在Github上创建仓库,克隆到本地。
  • 技术关键点:如何通过String[] args数组进行输入,字符串与整型的转换

四、编码

请说明你如何按照设计思路进行编码,并记录你在开发中遇到的问题,与解决过程

1. 调试日志

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

比如:

  • 没有输入参数直接运行,结果无任何显示,与预期结果不一致。
  • 没有考虑到用户输入时会输入非数字的情况,编译出现异常。

2. 关键代码

	for (int i = 1; i <= n; i++) {
		x1 =  (int) (Math.random() * 100);
		x2 =  (int) (Math.random() * 100);
		fh =  (int) (Math.random() * 2);

		if (fh==0) {
			System.out.println("("+i+")"+x1+"+"+x2+"=");
			ans [i-1] = "("+i+")"+x1+"+"+x2+"="+(x1+x2);
		} else {
			System.out.println("("+i+")"+x1+"-"+x2+"=");
			ans [i-1] = "("+i+")"+x1+"-"+x2+"="+(x1-x2);
		}
	}

3. 代码规范

请给出本次实验使用的代码规范:

  • 第一条类型与中括号紧挨相连来定义数组。
  • 第二条采用4个空格缩进,禁止使用tab字符
  • 第三条左小括号和字符之间不出现空格;同样的,有小括号和字符之间也不出现空格。

五、测试

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

六、总结

  • 一定要确定自己的发展方向,并为此目的制定可行的计划。详细制定自己软件开发专业知识学习计划,并注意及时修正和调整(软件开发技术变化实在太快)
posted @ 2018-09-11 23:48  一脚超人  阅读(155)  评论(3编辑  收藏  举报