201671030106 词频统计软件项目报告

本次实验使用Java语言开发英文文本词频统计软件,具备读入英文文本文件、指定单词词频统计、高频词统计等功能。运用HashMap排序函数实现高频词排序,程序运行后将结果输出到文件。作者因Java基础不足遇到困难,未完成显示柱状图的要求。
项目内容
这个作业属于哪个课程2016级计算机科学与工程学院软件工程(西北师范大学)
这个作业的要求在哪里实验二 软件工程个人项目
我们在这个课程的目标是1.掌握软件项目个人开发流程。
2.掌握Github上发布软件项目的操作方法。

一、需求分析
本次实验要求:
使用JAVA编程语言,独立完成一个英文文本词频统计的软件开发。软件基本功能要求如下:
1.程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
2.程序需要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
3.指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图。
4.高频词统计功能:用户从键盘输入高频词输出的个数k,运行程序统计功能,可按文本中词频数降序显示前k个单词的词频及单词。
5.统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt。

二、功能设计
1.程序可读入文件file.txt,该文件内存放《哈利波特》英文原版全书;
2.程序可输出单词及对应的词频数;
3.可查看并输出指定单词的单词及词频数;
4.可将单词及词频存入文件result.txt中。
三、设计实现
运用HashMap的排序函数来对HashMap里面的所有数据按值进行排序,以致能输出所需要输出的n个高频词及词频。
四、测试运行
程序运行后,输出单词及相对应的词频,直接输出到文件“result.txt”里面,运行界面只显示“success!”提示信息:
1616080-20190320082542478-456839085.png
输出到文件“result.txt”的单词及词频如下:
1616080-20190320082650366-2043086797.png
统计高频词,输入想要查询的高频词的个数,输出相应的单词及词频:
1616080-20190320082614206-1817704788.png
统计最高词频的单词及相应的词频:
1616080-20190320082624438-343403182.png
退出程序:
1616080-20190320082636317-1321305262.png
五、部分代码片段
输入要统计的高频词个数,输出高频词及对应的词频:
1616080-20190320092820362-372930386.png
六、总结
本次的实验我感觉对我来说整体是很难的,因为Java的基础本来就不太好,再加上已经有很长时间没有用Java写过程序,所以感觉有些力不从心,在这个过程中,我就通过查资料、请教同学来解决比如说排序等问题,所以以后还得继续加强Java等语言的编程水平,多加练习。本次实验的遗憾就是没有完成作业的一个要求——显示柱状图。
七、PSP展示

PSP2.1任务内容计划共完成需要的时间(min)实际完成需要的时间(min)
Planning计划1020
Estimate估计这个任务需要多少时间,并规划大致工作步骤2030
Development开发300420
Analysis需求分析(包括学习新技术)120100
Design Spec生成设计文档120120
Design Review设计复审3020
Coding Standard代码规范(为目前的开发制定合适的规范)108
Design具体设计90120
Coding具体编码120180
Code Review代码复审3035
Test测试(自我测试,修改代码,提交修改)3040
Reporting报告6070
Test Report测试报告2025
Size Measurement计算工作量2020
Postmortem & Process Improvement Plan事后总结,并提出过程改进计划2030

点此查看源码

转载于:https://www.cnblogs.com/qz-h/p/10554269.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值