201671030111 词频统计软件项目 告

 项     目   内     容 
所属课程 软件工程
作业要求 实验二软件工程个人项目
课程目标 掌握软件项目个人开发流程,
掌握Github上发布软件项目的操作方法。
项目源码 源码链接

一、需求分析

二、功能设计

1.读取英文文本的功能;
2.可输出指定单词的词频(可输入一个或多个单词);
3.可显示对应单词的柱状图;
4.统计并输出前k个高频词及其词频;
5.统计文本中的单词数量及词频数;
6.将单词及词频数按字典顺序输出到文件result.txt。

三、设计实现

  • 1.项目包含两个类,分别是主函数Main类和实现功能的Function类。
  • 2.Main类的作用是实现用户选择功能、退出功能和读取英文文本的功能。
  • 3.Function类的作用是实现指定单词词频统计功能、统计并输出前k个高频词及其词频功能、统计文本所有单词数量及词频数并将单词及词频数按字典顺序输出到文件result.txt的功能和退出功能。

五、部分代码展示

1.统计并输出前k个高频词及其词频

2.将单词及词频数按字典顺序输出到文件result.txt

六、总结

        主类里实现功能选择,简单的退出功能和调用Function类中的函数的功能,Function类里实现指定单词词频统计功能,高频词统计功能(前k个)和统计该文本所有单词数量及词频数,并将单词及词频数按字典顺序输出到文件result.txt的功能,每个功能用一个函数实现,以实现软件设计的“模块化”原则。

七、PSP

PSP2.1 任务内容 计划共完成需要的时间(min) 实际完成需要的时间(min)
Planning 计划 8 10
Estimate 估计这个任务需要多少时间,并规划大致工作步骤 8 10
Development 开发 130 256
Analysis 需求分析 (包括学习新技术) 20 44
Design Spec 生成设计文档 10 14
Design Review 设计复审 10 12
Coding Standard 代码规范 5 5
Design 具体设计 10 10
Coding 具体编码 60 145
Code Review 代码复审 5 10
Test 测试(自我测试,修改代码,提交修改 10 16
Reporting 5 5
Test Report 测试 告 3 2
Size Measurement 计算工作量 2 3
Postmortem & Process Improvement Plan 事后总结 ,并提出过程改进计划 3 5

        通过本项目,我对软件的开发流程有了大致的了解,这种规范化的流程对比我以往的代码编写方法确实有许多的优点;通过本项目,我也学到了一些新知识,比如怎样将TreeMap按value值排序,怎样在Github上发布软件项目;通过本项目,我也发现了自己还有许多不足之处,比如Java基础不好,编程实现困难。在本次项目开发中,我也有一点遗憾,一是没有实现选择功能的循环录入,二是因个人能力不足没有将指定单词的柱状图完全实现,而是用一种投机取巧的方式实现。

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91537 人正在系统学习中 相关资源:下拉通刷词软件v3.1.zip-其它代码类资源-CSDN文库

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年2月17日
下一篇 2019年2月17日

相关推荐