一、需求分析
一个英文文本词频统计的软件开发,其基本需求有:
1.程序可读入任意英文文本文件,该文件中英文词数大于等于1个。
2.程序需要很壮健,能读取容纳英文原版《哈利波特》10万词以上的文章。
3.指定单词词频统计功能:用户可输入从该文本中想要查找词频的一个或任意多个英文单词,运行程序的统计功能可显示对应单词在文本中出现的次数和柱状图。
4.高频词统计功能:用户从键盘输入高频词输出的个数K,运行程序统计功能,可按文本中词频数降序显示前K个单词的词频及单词。
5.统计该文本所有单词数量及词频数,并能将单词及词频数按字典顺序输出到文件result.txt.
二、功能设计
基本功能:使用流的方法读取文件,存储读取的单词,记录单词的总数;能够读取任意英文文本文件;具有统计单词词频统计的功能。
三、设计实现
定义一个主函数main,用来实现读取文件,存储读取的文件,记录单词的总数。
利用类treemap<K,V>基于树的接口实现,其中,K为键的类型,V为映射值的类型。
四|、测试运行
五、满意的代码片段
六、总结
通过本次实验了解到了软件开发的难度,尤其是自身代码基础差对软件开发影响巨大,使之花费了大量的时间去学习一些基础东西,当然这方面也是在我今后的学习中
需要强化的。除此之外,这次实验让我切实体验了软件项目个人开发流程,掌握了在Github上发布软件项目的操作方法。
七、psp展示
|||||||||||||
|:--|:--|:--|:--|
|psp2.1|阶段/时长|计划总共需要完成的时间(min)|实际完成需要的时间(min)|
|Planning|计划|10|10|
|Estimate|估计需要时间,并计划大致工作步骤|10|15|
|Development|开发|120|150|
|Analysis|需求分析|10|15|
|Design Spec|生成设计文档|30|25|
|Design Review|设计复审|5|5|
|Coding Standard|代码规范|6|6|
|Design|具体设计|20|15|
|Coding|具体编码|80|100|
|Code Review|代码复审|15|10|
|Test|测试|8|6|
|Reporting|报告|5|3|
|Text Report|测试报告|5|5|
|Size Measurement|计算报告量|8|10|
|Postmortem&Process Improvement plan|总结,并提出改进计划|15|20|
源码地址:https://github.com/201671010403/-