软件工程网络15结对编程做业

小组成员html

姓名 学号 我的博客连接
姚佳希 201521123042 http://www.cnblogs.com/ballonbaby/
吴慧婷 201521123094 http://www.cnblogs.com/whting/p/8569603.html

1.分析现有代码

咱们选择的网络14现有的代码:
我的博客地址:http://www.cnblogs.com/NianQiFeng ,源代码:https://git.coding.net/qwx_hh/java-szys.gitjava

(1)clone 所选项目,并在博客中给出结对项目码云连接git

(2)检查所选项目的类之间的关系,画出类图
算法

(3)浏览全部代码考虑代码质量和测试覆盖率编程

  • 单元测试[感受没有掌握该项目测试的方法,将进行修改(有空)]

  • 覆盖率测试

(4)找出原项目中的逻辑泥球小程序

  • “复习”功能不够完善(后面不知道为何都出不来复习界面了)
  • 计时功能不够完善(虽然咱们没有改进)

2.功能改进与扩展

(1)需求分析网络

随着课余娱乐项目的增长,如今的小孩子在学习上变得愈来愈不自觉,须要老师、家长在背后催着才会作做业,所以须要实现一个计时功能,以时间的流逝来给孩子一些紧迫感。另外,在通过长期的运算训练以后,如何才知道学生的运算水平是否有显著提升呢?将作题过程进行计时能够解决这个问题,从花费时间的长短就能够看出是否取得进步。同时,老师、家长也能够利用计时功能设立奖励机制。例如,规定在二十秒内完成十道题目的学生能够获得一个大大的奖励,激励学生一次又一次地挑战这个时间。
为了让这个四则运算自动生成器的使用人群跨越国界,就须要咱们实现语言切换功能。不只让中国大陆的小孩能够简单上手这个小程序,同时还能让中国台湾以及外国的小孩一样可使用。实现这样一个小小的功能,就可让咱们这个自动生成器的受众面遍及世界各地,不受语言的障碍,何乐而不为呢?
大多数的时候咱们都不能要求这些小孩子在一个时间段内持续不断地作计算题,而是让他们分次来完成。举个例子,当老师布置小孩子一周以内要完成200道的四则运算,并记录作对多少题,作错多少题时,绝大部分学生确定会选择一天作几回,一次作几题,极少同窗会选择一次性把这200道题作完。这样子就存在一个问题,若是分次作的话那每一次作对多少题作错多少题都要登记下来吗?这也太麻烦了。所以就须要咱们可以记录用户作题的总数,即便在用户退出又再次启动时,能够作到把之前的对错数量保存并在此基础上进行增量计算。工具

                                          ——引用于原项目做者的博客(连接单元测试

  咱们在这个需求分析的基础上进一步完善四则运算的功能,具体功能见设计分析,功能展现见截图。学习

(2)设计分析

  • 增长括号操做符
  • 增长乘方运算符
  • 增长“从新开始”功能

(3)展现每一个功能的核心代码
运算功能:

  ① 整数简单运算

  ② 分数简单运算

  ③ 整数混合运算(有括号)

“从新开始”功能:

优化语言切换功能:

优化复习功能:

(4)程序运行及每一个功能的使用截图
  初始界面

  简体中文

  繁体中文

  English

  运算功能

(5)思惟导图

(6)类图

(7)覆盖率

  覆盖率分析:界面的覆盖率下降,运算的覆盖率升高,整体覆盖率相对升高。

(8)给出效能分析工具的分析结果
(待续——软件安装有问题)

3.其它

(1)博客开头给出两人的学号(见博客开头)

(2)结对编程的感觉和体会

  • 首先,两我的合做确实能完成的快一些(1+1>2),可是总会遇到价值观相左或者意见不一样的时候,但都能很愉快的解决,由于咱们的目标就是完成项目需求。 ^。^
  • 最大的体会就是改别人的项目比本身写项目可贵多,你要理解他们作这个项目时的想法(竟然忘了问学长),理解他们为何要用这样的算法,从他们的角度看待这个项目,并在这个基础上作出扩展;本身写项目的时候,就能够根据本身的想法逐步进行,比较好理解。
  • 而后很是感谢队友的体谅(毕竟我作的工做很少),咱们能够一块儿分析项目,向他人请教,并作出本身的改变,仍是值得开心滴。
  • 对于项目,咱们想过不少修改的方法,可是改起来又以为有问题,讨论用的时间仍是蛮多的。
  • 咱们又一次的合做比以前更加融合。

(3)两人在讨论、细化和编程时的结对照片
(不在一个宿舍,老是相约图书馆的咱们)

(4)完成PSP表格

PSP2.1 我的开发流程 预估耗费时间(分钟) 实际耗费时间(分钟)
· Planning 计划 15 40
· Estimate 明确需求和其余相关因素,估计每一个阶段的时间成本 15 20
· Development 开发 60 80
· Analysis 需求分析 (包括学习新技术) 10 20
· Design Spec 生成设计文档 20 20
· Design Review 设计复审 10 10
· Coding Standard 代码规范 10 10
· Design 具体设计 30 30
· Coding 具体编码 60 120
· Code Review 代码复审 10 20
· Test 测试(自我测试,修改代码,提交修改) 15 30
· Reporting 报告 30 40
· 测试报告 10 10
· 计算工做量 10 5
· 并提出过程改进计划 10 15

(5)码云上的代码记录

(6)码云上的编码规范文档 (由于没有大量修改就使用了原项目的编码规范)

相关文章
相关标签/搜索