201671010440 王雨竹 詞頻統計軟件項目報告

實驗二 軟件工程我的項目

實驗目的與要求

  • 掌握軟件項目我的開發流程。
  • 掌握Github上發佈軟件項目的操做方法。

實驗內容和步驟

任務1:

需求分析:

  • 嘗試按照《構建之法》第2章中2.3所述PSP流程,使用JAVA編程語言,獨立完成一個英文文本詞頻統計的軟件開發。軟件基本功能要求以下:java

  • 程序可讀入任意英文文本文件,該文件中英文詞數大於等於1個。git

  • 程序須要很壯健,能讀取容納英文原版《哈利波特》10萬詞以上的文章。github

  • 指定單詞詞頻統計功能:用戶可輸入從該文本中想要查找詞頻的一個或任意多個英文單詞,運行程序的統計功能可顯示對應單詞在文本中出現的次數和柱狀圖。編程

  • 高頻詞統計功能:用戶從鍵盤輸入高頻詞輸出的個數k,運行程序統計功能,可按文本中詞頻數降序顯示前k個單詞的詞頻及單詞。數組

  • 統計該文本全部單詞數量及詞頻數,並能將單詞及詞頻數按字典順序輸出到文件result.txt。編程語言

    功能設計:

  • 基本功能:可以按照需求分析知足對英文文本的查詢,基本實現文本中單詞查詢。
  • 擴展功能:在單詞查詢的基礎上,實現對高頻詞的查詢,並具有順序輸出功能。學習

    設計實現:

  • 使用main()的主方法,利用java語言進行編譯來實踐詞頻統計;
  • 利用map<String,Integer>存儲單詞計數信息,以便實現以後的單詞詞頻統計。
  • 利用數組進行詞頻統計。
  • 最後進行value大小的排序。測試

測試運行:

滿意代碼片斷:

  • 統計:
  • 排序:

總結:

本次設計詞頻查找軟件,耗費時間不少,因爲以前跨專業從未學習過相關知識,因此作起來尤其費勁。在學習了相應的java語言以後,首先作了本次做業的基本原理設計:針對單詞查找,首先將單詞文本整成一長串字符串,將其中單個字符串找出,並加以計數。基本原理思考完畢後,進行代碼編程,因爲沒有基礎,編碼實在困難,只實現了基礎功能,能作到基本的單詞查找和字典排序。其餘擴展功能還沒有實現,準備在後面的時間裏虛心學習,爭取早日有所長進。

PSP:

PSP2.1 任務內容 計劃共完成須要的時間(min) 實際完成須要的時間(min)
Planning 計劃 10 12
Estimate 估計這個任務須要多少時間,並規劃大體工做步驟 6 6
Development 開發 200 180
Analysis 需求分析 (包括學習新技術) 15 10
Design Spec 生成設計文檔 15 12
Design Review 設計複審 (和同事審覈設計文檔) 8 10
Coding Standard 代碼規範 (爲目前的開發制定合適的規範) 5 5
Design 具體設計 50 48
Coding 具體編碼 120 110
Code Review 代碼複審 10 20
Test 測試(自我測試,修改代碼,提交修改) 20 20
Reporting 報告 30 30
Test Report 測試報告 4 3
Size Measurement 計算工做量 3 1
Postmortem & Process Improvement Plan 過後總結 ,並提出過程改進計劃 5 4

任務2:

相關文章
相關標籤/搜索