博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
201671030106 词频统计软件项目报告
阅读量:5369 次
发布时间:2019-06-15

本文共 1435 字,大约阅读时间需要 4 分钟。

项目 内容
这个作业属于哪个课程
这个作业的要求在哪里
我们在这个课程的目标是 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 计划 10 20
Estimate 估计这个任务需要多少时间,并规划大致工作步骤 20 30
Development 开发 300 420
Analysis 需求分析(包括学习新技术) 120 100
Design Spec 生成设计文档 120 120
Design Review 设计复审 30 20
Coding Standard 代码规范(为目前的开发制定合适的规范) 10 8
Design 具体设计 90 120
Coding 具体编码 120 180
Code Review 代码复审 30 35
Test 测试(自我测试,修改代码,提交修改) 30 40
Reporting 报告 60 70
Test Report 测试报告 20 25
Size Measurement 计算工作量 20 20
Postmortem & Process Improvement Plan 事后总结,并提出过程改进计划 20 30

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

你可能感兴趣的文章
window.opener方法的使用 js跨域
查看>>
WPF ”真正的“高仿QQ
查看>>
201621123083 《Java程序设计》第12周学习总结
查看>>
bootstrap
查看>>
博客第一天!回首~~~~~~遥望~~~~~~
查看>>
洛谷P2234 [HNOI2002] 营业额统计 [splay]
查看>>
android中asynctask的使用实例
查看>>
仰慕墙
查看>>
<C> 链表 双向链表 栈 队列
查看>>
关于php,python,javascript文件或者模块导入引入的区别和联系
查看>>
Python编程:从入门到实践——【作业】——第六章(字典)
查看>>
在sqlserver中如何从字符串中提取数字,英文,中文,过滤重复字符
查看>>
使用 docker 安装多版本的 MySQL
查看>>
Directx11教程(42) 纹理映射(12)-简单的bump mapping
查看>>
NET Core + Ocelot + IdentityServer4 + Consul
查看>>
C# Base64Helper
查看>>
【android studio】 gradle配置成本地离线zip包
查看>>
C# API 获取系统DPI缩放倍数跟分辨率大小
查看>>
关于SetLocaleInfo()
查看>>
C#设计模式之十外观模式(Facade Pattern)【结构型】
查看>>