首页 > 代码库 > 软件工程个人作业03
软件工程个人作业03
本次需要完成的任务其实我在上次的任务中已经完成得差不多了,实现分数的计算,括号的插入和指定操作数个数都已经完成。需要添加的功能主要是实现将真分数表示为带分数,比较表达式是否相同和将数据插入数据库。
项目开发前的预估如下表,由于没有实际开发经验,只能根据书上的提示和老师的指导大致估测。
PSP2.1 |
Personal Software Process Stages |
Time |
Planning |
计划 |
20h |
· Estimate |
· 估计这个任务需要多少时间 |
20h |
Development |
开发 |
15h |
· Analysis |
· 需求分析 (包括学习新技术) |
2h |
· Design Spec |
· 生成设计文档 |
1h |
· Design Review |
· 设计复审 (和同事审核设计文档) |
1h |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
1h |
· Design |
· 具体设计 |
2h |
· Coding |
· 具体编码 |
4h |
· Code Review |
· 代码复审 |
1h |
· Test |
· 测试(自我测试,修改代码,提交修改) |
3h |
Reporting |
报告 |
5h |
· Test Report |
· 测试报告 |
2 |
· Size Measurement |
· 计算工作量 |
1.5h |
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
1.5h |
|
合计 |
20h |
具体到开发过程中,我光分析需求设计算法就花了将近5个小时的时间,这还只是保守的估计,因为有些思考时间比较零散,无法计算。然后编程花了将近12个小时。这比我估计的要多得多,只不过我是编程过程中就在测试,测试和编程混在一起了,两则时间无法计算了。在记录过程中我发现一旦开始编程,就会全心投入,总是忘了记录时间、测试用例以及程序缺陷,而且压根儿就不会按照PSP规范走。所以最后得到的记录表格和实际还是有些出入的。
PSP2.1 |
Personal Software Process Stages |
Time |
Planning |
计划 |
|
· Estimate |
· 估计这个任务需要多少时间 |
|
Development |
开发 |
18h |
· Analysis |
· 需求分析 (包括学习新技术) |
6 |
· Design Spec |
· 生成设计文档 |
没有 |
· Design Review |
· 设计复审 (和同事审核设计文档) |
没有 |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
一般的java编程规范 |
· Design |
· 具体设计 |
2h |
· Coding |
· 具体编码 |
10h |
· Code Review |
· 代码复审 |
|
· Test |
· 测试(自我测试,修改代码,提交修改) |
和编码一块儿做了 |
Reporting |
报告 |
2h |
· Test Report |
· 测试报告 |
2h |
· Size Measurement |
· 计算工作量 |
|
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
|
|
合计 |
20h |
测试用例
1. 生成一个分数:我写了一个生成分数的方法getFraction(int x,int y,int z),x是限定整数的大小,y用于限定分子的大小,z用来限定分母的大小。下面为测试的截图:
因为无x,y,z的值是何种情况,都可以得到一个可接受的结果,所以这个方法应该没有出错。
2. 测试生成表达式:createExpress()方法用来生成一个表达式,括号中有参数控制表达式的操作数个数,是否含有括号,以及数值范围等。以下是测试截图:
3. 生成有括号的式子:其中并不是每个式子都会带有括号,也不是带括号的式子都只带一对括号,这需要看随机情况。
4. 计算表达式结果:
计算结果无误,计算过程中也没有出现负数。
5. 比较两个表达式是否相同:这是最关键的一步,我进行的多册测试,暂时没有发现不和要求的地方。
根据题目需求,我认为没有什么疏漏。
软件工程个人作业03