实验四 软件工程结对项目

博文简要信息表

项目 内容
这个作业属于哪个课程 任课教师博客主页链接
这个作业的要求在哪里 作业链接地址
课程学习目标 熟悉软件开发基本流程,提升自身能力
本次作业在哪个具体方面帮助我们实现目标 第一次体验一个完整的工程

任务一

-两两自由结对,对结对方的《实验二 软件工程个人项目》的项目成果进行评价,具体要求如下:
-对项目博文作业进行阅读并进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系、PSP中“计划共完成需要的时间”与“实际完成需要的时间”两列数据的差异化分析与原因探究。
-克隆结对方项目源码到本地机器,阅读并测试运行代码,结合运行结果评论程序代码,评论要点包括:软件结构、代码规范、功能实现、人机交互等。
-尝试利用github中的Fork、Clone、Push、Pull request、Merge pull request对结对方仓库中的源码进行合作修改。

[评论博客地址]:(https://www.cnblogs.com/147258369asd/p/10548760.html)

评论内容:

-看了小伙伴的博客,我发现她把词频统计里面基本的功能实现了,比如能读取容纳英文原版《哈利波特》10万词以上的文章。程序可读入任意英文文本文件,该文件中英文词数大于等于1个。用户从键盘输入高频词输出的个数k,运行程序统计功能,但是一些附加功能还没有实现,比如说生成result.txt文件,以及函数柱状图没有实现,博文结构这些总体来说还是不错的,看了psp发现计划需要的时间都比实际完成的时间少,而且在项目开发中计划您需要30分钟,实际花了一小时,从这可以看出你是有java的一些基础的,希望在下一个项目里面能够再接再厉,加油。

[修改github源码地址]:(https://github.com/Athena-SM/homework/blob/master/src/demo/TestBarChart.java)

任务二

-采用两人合作方式,设计开发一个英文文本统计分析软件,使之具有以下功能:

-(1)实验2要求的功能;
-(2)单词频数可视化柱状图要求是以下样式:
-(3)统计该文本行数及字符数;
-(4)各种统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);
-(5)可处理任意用户导入的任意英文文本;
-(6)人机交互界面要求GUI界面(WEB页面、APP页面都可);
-(7)附加分功能:统计文本中除冠词、代词、介词之外的高频词;
-(8)附加分功能:统计前10个两个单词组成的词组频率。

包含以下内容

软件设计:

-代码里面实现了一个类 TestBarChart,图表,柱状图的实现。

核心功能代码展示:

程序运行:

程序流程图:

程序GUI界面:


描述结对过程:


-通过这次结对过程,我发现两个人在一起完成项目比一个人好很多,而且两个可以进行优缺点的互补以及知识点的讨论,两人可以互相监督,使得作业的质量和代码的质量更加好,并有效减少BUG,可以得到能力上的互补,可以更快有效的解决问题。同时,结对过程也是存在一些缺点的,就比如说两人意见不一致的时候,到底采取谁的意见,或者谁对谁错,都没有折中的方法。

PSP:

PSP2.1 | 任务内容 |计划共完成需要的时间(min)|实际完成需要的时间(min)

  •                   |:-:              |:-:           |:-:           |:-:   |:-:    |:-:    |:-:             
    

Planning|计划 |60 | 150
Estimate | 估计这个任务需要多少时间,并规划大致工作步骤|50 |100
Development | 开发 | 87|180
Analysis |需求分析 (包括学习新技术) |45 |110
Design Spec | 生成设计文档 | 30 | 50
Design Review | 设计复审 (和同事审核设计文档) | 20 |25
Coding Standard| 代码规范 (为目前的开发制定合适的规范) | 56 | 60
Design| 具体设计 |100 | 200
Coding | 具体编码 | 200 | 255
Code Review| 代码复审 | 67 | 90
Test | 测试(自我测试,修改代码,提交修改) | 77 | 100
Reporting | 报告 | 10 | 15
Test Report| 测试报告 | 9 | 15
Size Measurement |计算工作量 |45 |66
Postmortem & ProcessImprovement Plan| 事后总结 ,并提出过程改进计划 | 29 | 36