201671010437+王小倩+《英文文本统计分析》结对项目报告


一:实验名称:软件工程结对项目--英文文本统计

项目 内容
这个做业属于哪一个课程 http://www.cnblogs.com/nwnu-daizh/
这个做业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p/10569690.html
课程学习目标 熟悉软件开发总体流程,提高自身能力
本次做业在哪一个具体方面帮助咱们实现目标 第一次体验一个完整的工程

二:实验目的与要求

(1)体验软件项目开发中的两人合做,练习结对编程(Pair programming)。html

(2)掌握Github上增量发布软件的操做方法。
git


三:实验步骤

任务1: 两两自由结对,对结对方的《实验二 软件工程我的项目》的项目成果进行评价,具体要求以下:

(1)对项目博文做业进行阅读并进行评论,评论要点包括:博文结构、博文内容、博文结构与PSP中“任务内容”列的关系、PSP中“计划共完成须要的时间”与“实际完成须要的时间”两列数据的差别化分析与缘由探究。
     (2)克隆结对方项目源码到本地机器,阅读并测试运行代码,结合运行结果评论程序代码,评论要点包括:软件结构、代码规范、功能实现、人机交互等。
     (3)尝试利用github中的Fork、Clone、Push、Pull request、Merge pull request对结对方仓库中的源码进行合做修改。
杜娣-实验二
结对同伴的博客:点评内容:
读完你的博文,发现你写的博文结构清晰,内容标题醒目,令人一目了然。从博文内容上来看,需求分析很全面,写出了该系统的基本功能,也使后续的工做过程清晰,功能明确。
  但也有一些不足之处,好比:
引用
功能实现
一、主要实现的功能:从磁盘中读取英文文本,对文本进行处理,统计单词的个数,最后按个数排序
引用
设计实现
一、在本地磁盘建立一个文本文件
二、经过map集合,以键值对的方式去存储单词和出现的词数
三、定义一个文件字节,去读取磁盘中的文件
四、建立一个spilt数组,用来分割字符串,经过调用map的key值获取value,进行单词统计
五、利用treemap实现comparator接口,对map集合进行排序
这两部份内容写的不是很具体,在功能实现方面,只表述了统计单词个数以及排序,但没有写出指定单词和高频单词的统计,以及最后将文本的全部单词输出到文件等功能,功能设计应该按照需求分析来展开写。在设计实现方面,应该写出建立了几个类,这些类分别负责什么功能和类之间的关系等,详细内容能够参考老师的做业要求。对比PSP中的时间比例发现,有些时间规划不是很合理,因此但愿你能下次改进,加油!
点评心得: 读完同伴的博文,发现了有不少亮点值得本身去学习,好比博文结构顺序清晰,内容标题醒目,令人一目了然。从博文内容上来看,项目需求分析很全面,写出了该系统的基本功能,也使后续的工做过程清晰,功能明确。

任务2:采用两人合做方式,设计开发一个英文文本统计分析软件。


四:实验内容

1. 需求分析

(1)实验2要求的功能;github

(2)单词频数可视化柱状图要求是如下样式:编程

(3)统计该文本行数及字符数;数组

(4)各类统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);学习

(5)可处理任意用户导入的任意英文文本;测试

(6)人机交互界面要求GUI界面(WEB页面、APP页面均可);编码

(7)附加分功能:统计文本中除冠词、代词、介词以外的高频词;设计

(8)附加分功能:统计前10个两个单词组成的词组频率。代码规范

2. 功能设计
该程序主要实现的功能是进行英文文本的统计,基于实验二进行,实现统计该文本行数及字符数;各类统计功能均提供计时功能,显示程序统计所消耗时间,可处理任意用户导入的任意英文文本。
3. 设计实现(展现核心功能代码)

(1)统计单词数量并输出


(2)绘制柱状图


(3)显示用户须要查询的单词词频数

4. 测试运行(各个功能实现界面截图)







5. 结对过程(两人在讨论、细化和编程时的结对照片)

6. 小结感觉:两人合做真的可以带来1+1>2的效果吗?

经过实验二的我的项目和这次的结对项目,咱们不难发现,耗时最多的就是编程过程和修改bug。若是是我的项目,不免会由于我的的疏忽,输入的错误,以及设计思路的误差,每每会让咱们的程序没法顺利进行下去,而结对编程的好处就在于,在编写代码时,一旦出现输入错误,就会有人及时的提醒。还有在设计代码时,有个同伴能够一块儿讨论,融合两我的不一样的看法和观点,咱们每每能够得出更加准确且更加高效的设计思路,这大大提升了咱们编程的效率,并且咱们二人一块儿讨论出来的编程思路,也使得咱们的代码功能更全面,效率更高,因此我认为1+1确定>2。

7. 展现PSP
PSP2.1 任务内容 计划共完成须要的时间(min) 实际完成须要的时间(min)
Planning 计划 40 80
· Esitimate 估计这个任务须要多少时间,并规划大体工做步骤 15 20
· Development 开发 400 800
· Analysis 需求分析(包括学习新技术) 60 60
· Design Spec 生成设计文档 20 30
· Design Review 设计复审(和同事审核设计文档) 15 15
· Coing Standard 代码规范(为目前开发制定合适的规范) 20 20
· Design 具体设计 30 60
· Coding 具体编码 400 600
· Code Review 代码复审 10 10
· Test 测试(自我测试,修改代码,提交修改) 20 25
· Reporting 报告 10 15
· Test Report 测试报告 15 25
· Size Measurement 计算工做量 5 3
· Postmortem&Process Improvement Plan 过后总结,并提出过程改进计划 5 15

项目源代码请点击这里查看...

相关文章
相关标签/搜索