201671030106 詞頻統計軟件項目報告

項目 內容
這個做業屬於哪一個課程 2016級計算機科學與工程學院軟件工程(西北師範大學)
這個做業的要求在哪裏 實驗二 軟件工程我的項目
咱們在這個課程的目標是 1.掌握軟件項目我的開發流程。
2.掌握Github上發佈軟件項目的操做方法。

1、需求分析
本次實驗要求:
使用JAVA編程語言,獨立完成一個英文文本詞頻統計的軟件開發。軟件基本功能要求以下:
1.程序可讀入任意英文文本文件,該文件中英文詞數大於等於1個。
2.程序須要很壯健,能讀取容納英文原版《哈利波特》10萬詞以上的文章。
3.指定單詞詞頻統計功能:用戶可輸入從該文本中想要查找詞頻的一個或任意多個英文單詞,運行程序的統計功能可顯示對應單詞在文本中出現的次數和柱狀圖。
4.高頻詞統計功能:用戶從鍵盤輸入高頻詞輸出的個數k,運行程序統計功能,可按文本中詞頻數降序顯示前k個單詞的詞頻及單詞。
5.統計該文本全部單詞數量及詞頻數,並能將單詞及詞頻數按字典順序輸出到文件result.txt。html

2、功能設計
1.程序可讀入文件file.txt,該文件內存放《哈利波特》英文原版全書;
2.程序可輸出單詞及對應的詞頻數;
3.可查看並輸出指定單詞的單詞及詞頻數;
4.可將單詞及詞頻存入文件result.txt中。
3、設計實現
運用HashMap的排序函數來對HashMap裏面的全部數據按值進行排序,以至能輸出所須要輸出的n個高頻詞及詞頻。
4、測試運行
程序運行後,輸出單詞及相對應的詞頻,直接輸出到文件「result.txt」裏面,運行界面只顯示「success!」提示信息:

輸出到文件「result.txt」的單詞及詞頻以下:

統計高頻詞,輸入想要查詢的高頻詞的個數,輸出相應的單詞及詞頻:

統計最高詞頻的單詞及相應的詞頻:

退出程序:

5、部分代碼片斷
輸入要統計的高頻詞個數,輸出高頻詞及對應的詞頻:

6、總結
本次的實驗我感受對我來講總體是很難的,由於Java的基礎原本就不太好,再加上已經有很長時間沒有用Java寫過程序,因此感受有些力不從心,在這個過程當中,我就經過查資料、請教同窗來解決好比說排序等問題,因此之後還得繼續增強Java等語言的編程水平,多加練習。本次實驗的遺憾就是沒有完成做業的一個要求——顯示柱狀圖。
7、PSP展現git

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

點此查看源碼github

相關文章
相關標籤/搜索