《英文文本统计分析》
项目 | 内容 |
---|---|
作业课程地址 | 任课教师首页链接 |
作业要求 | 实验四结对项目 |
课程学习目标 | 熟悉软件开发整体流程,提升自身能力 |
本次作业的意义 | 第一次体验一个完整的工程 |
一、任务一
点评
点评内容:看了你的博客和 githui发现你的整体结构思路很清晰,内容简单明了,符合老师的题目要求,各功能实现的比较好,通过分析你的PSP,发现你的“计划共完成需要的时间”与“实际完成需要的时间”的差距也不是特别大。这些都是需要我去认真学习的。我发现我们在柱状图的实现上都有一些欠缺,相信我们可以通过这次结对合作一定可以改进这个问题的!
点评心得:通过阅读发现自己在编程和设计的过程存在很多问题,我应该向她学习,将自己的代码和设计更加的简单明了。
二、任务二
源代码
(1)需求分析
1)实验2要求的功能;
2)单词频数可视化柱状图:
3)统计该文本行数及字符数;
4)各种统计功能均提供计时功能,显示程序统计所消耗时间(单位:ms);
5)可处理任意用户导入的任意英文文本;
6)人机交互界面要求GUI界面(WEB页面、APP页面都可);
7)附加分功能:统计文本中除冠词、代词、介词之外的高频词;
8)附加分功能:统计前10个两个单词组成的词组频率。
(2)软件设计:
这个项目中有一个Main函数和五个类。WordList.java是统计文件中单词出现的频数并输出到文件。StatisticalWord.java是统计指定单词个数。Figurej.java 是 统计前K个出现的频次最高的单词。Test.java是统计行数和字符数。每个类都会有计时功能,是以毫秒为单位的。WordList1.java是统计除去介词、代词、冠词之外的单词出现的频数并输出到文件
(3)核心代码展示:
1)添加功能按钮:
2)统计字符数、行数和消耗时间;
3)除去介、冠、代词
(4)程序运行截图:
1)主界面图;
2)功能1 统计指定单词词频个数且显示柱状图;
3)功能2 统计词频个数并输出到文本
输出到results.txt中
4)功能3 查询K个出现频次最高的单词
5)功能4 统计文本的行数和字符统计数
6)附加功能1 除代冠介之外的词频输出到文本
输出到results.txt中
7)结对的过程
(5).psp
psp | 任务内容 | 计划共完成需要的时间(min) | 实际完成需要的时间(min) |
---|---|---|---|
Planning | 计划 | 15 | 20 |
Estimate | 估计这个任务需要多少时间,并规划大致的工作步骤 | 18 | 15 |
Development | 开发 | 480 | 620 |
Analysis | 需求分析(包括学习新技术) | 20 | 18 |
Design Spec | 生成设计文档 | 20 | 35 |
Design Review | 设计复审(和同学审核设计文档) | 10 | 25 |
Coding Standard | 代码规范化(为目前的开发制定合适的规范) | 10 | 8 |
Design | 具体设计 | 15 | 19 |
Coding | 具体编码 | 400 | 600 |
Code Review | 代码复审 | 20 | 25 |
Test | 测试(自我测试,修改代码,提交修改) | 20 | 47 |
Reporting | 报告 | 15 | 27 |
Test Report | 测试报告 | 10 | 12 |
Size Measurement | 计算工作量 | 4 | 5 |
Postmortem &Process Improvement plan | 事后总结,并提出过程改进计划 | 5 | 8 |
三、 小结
在合作的过程中我们对图形用户界面的实现上刚开始有些难,通过讨论最终还是完成用户界面的实现,其他的功能实现也完成的很顺利。我们通过这次的结对项目发现,虽然两个人一起完成一个项目时虽然会有不同的想法,但最终通过探讨和交流自己的想法会有更好的方法。