代码改变世界

第三次作业

2019-04-01 15:24  goodnight1  阅读(343)  评论(4编辑  收藏  举报

 

 链接:

 

作业地址:https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2879

共用的GIT仓库地址:https://github.com/pg7go/SchoolAssignment_WordCount.git

小队:何婷、陈一鑫

1. PSP表格

PSP2.1

Personal Software Process Stages

预估耗时(分钟)

实际耗时(分钟)

Planning

计划

   

· Estimate

· 估计这个任务需要多少时间

 180  122

Development

开发

   

· Analysis

· 需求分析 (包括学习新技术)

 10  12

· Design Spec

· 生成设计文档

 0  0

· Design Review

· 设计复审 (和同事审核设计文档)

 0  0

· Coding Standard

· 代码规范 (为目前的开发制定合适的规范)

 0  0

· Design

· 具体设计

 5  3

· Coding

· 具体编码

 90  75

· Code Review

· 代码复审

 10  0

· Test

· 测试(自我测试,修改代码,提交修改)

 10  20

Reporting

报告

   

· Test Report

· 测试报告

 10  7

· Size Measurement

· 计算工作量

 0  0

· Postmortem & Process Improvement Plan

· 事后总结, 并提出过程改进计划

 10  5
 

合计

 145  122

 

 2.讨论

看到作业后,我就找到陈一鑫组队,然后在第二天,星期六,我们就在一起讨论了一下怎么写。

讨论图如下:

 

分工与合作

我们都是一个团队的队员,也有过一些合作,所以这次的项目对我们来说并不是很复杂,所以我们就大致的讨论了下。

先是分工方面

我主要负责代码测试和复审,做单元测试等等,他的技术比我强,所以主要负责整体的代码部分。

然后是合作:

项目的难度并不是很大。所以就一起商讨画了一个结构图,

我们都觉得这样基本的功能都囊括了。

花费的时间也比较的短,大约也就10分钟吧

 

 

项目的实现

陈一鑫的部分:

代码的编写,这是他说的比较难的一部分:

 

我的部分:

测试:

我们选的是英文反乌托邦小说《1984》作为我们的测试数据

(大概的算了一下字数有10多万字,字符有50多万)

测试后输出的数据如图

我发现这里有一些错误,好像是空格也算进去了

然后我给陈一鑫说了一下

 

这是他改正的代码

 

 

复测

改正后再次测试

 

 陈一鑫的部分:

加入新功能

运行结果:

 

 

 我的部分:

单元测试:

我对代码进行了单元测试:

运行过程没有什么错误,一次正确

 

 

 

性能测试:

这是性能分析的图片,从中我们可以看出,wordCount函数所花费的时间最长

 

 陈一鑫的部分

异常处理

 

 

 

 

GIT提交

顺便把测试样例上传,方便大家做测试

 

 总结:

1. 我的技术比陈一鑫的差,不少部分他也给我提了一些意见和指导,在这次结对编程中,我的收获还是挺多的

2.我基本上是陈一鑫带着,对于我来说,确实提高了我的效率,但是对于技术好的,可能就是存在拖累了,所以我觉得结对编程适合技术相当的两个人,这样的话,大家才能一起查漏补缺,互相进步,且不存在拖累的情况。同时,我觉得,结对编程适合一些更高的项目,适合两个人一起做的哪种,这个项目用结对编程,效率可能不会太高。

3.在这个过程中,我也发现了自己的一些缺点,比如看了陈一鑫的代码,我觉得我自己写的代码可阅读性太差;

我接触的各方面太窄,知识学的不够深入,这样会导致我们看到问题的深度不同,谁的更容易解决。

这是一个长期积累的过程,我需要多多努力。

陈一鑫博客链接:https://www.cnblogs.com/pg7go/p/10626306.html