201671030106何啓芝 《英文文本統計分析》結對項目報告

項目 內容
這個做業屬於哪一個課程 >>2016級計算機科學與工程學院軟件工程(西北師範大學)
這個做業的要求在哪裏 >>實驗二 軟件工程我的項目
課程學習目標 1.體驗軟件項目開發中的兩人合做,練習結對編程(Pair programming)。
2.掌握Github上增量發佈軟件的操做方法。
本次做業在哪一個具體方面幫助咱們實現目標 第一次體驗完整的工程

任務一:

項目 內容
點評博客 >>201671030119詞頻統計軟件項目報告
GitHub >>結對方實驗二GitHub連接地址
點評內容 仔細看了你的詞頻統計的博文,整體設計實現的還不錯,也實現了大部分功能。可是同時呢,也存在一些問題。好比在你的博文中就缺了一部份內容——設計實現,不知道在撰寫博文的時候是遇到了什麼問題呢?其次,這個項目沒有擴展功能,這個也是相對於老師的要求來講沒有完成的一個點;另外,我也發現你的博文中有錯別字,這個但願你能夠改正。
點評心得 我看完唐蓋強同窗實驗二我的項目的博文以及代碼,我以爲總的來講,功能實現地還不錯。可是在點評的時候我也說了,還存在一些問題。這些問題其實也是我所存在的,功能是實現了,可是實現地還不夠完整,因此這些地方是須要咱們共同去進步的。就但願在本次實驗的結對項目中咱們可以很好地配合,共同完成這個項目。

任務二:

a.需求分析

(1)程序可輸出文本單詞及對應的詞頻數;
(2)可查看並輸出指定單詞的單詞及詞頻數;
(3)可將單詞及詞頻存入文件result.txt中
(4)單詞頻數可視化柱狀圖要求是如下樣式:
(5)統計該文本行數及字符數;
(6)各類統計功能均提供計時功能,顯示程序統計所消耗時間(單位:ms);
(7)可處理任意用戶導入的任意英文文本;
(8)人機交互界面要求GUI界面(WEB頁面、APP頁面均可);
(9)附加分功能:統計文本中除冠詞、代詞、介詞以外的高頻詞;
(10)附加分功能:統計前10個兩個單詞組成的詞組頻率。html

b.軟件設計

類之間的關係:

c.核心功能代碼展現

- 統計文本中除介詞的高頻詞:
for(Entry<String,Integer> entry : aMap2.entrySet()) 
             { 
                     F=0;
                     for(int s=0;s<Preposition.length;s++)    /* 數組Preposition中存放介詞*/
                     {
                         if(Preposition[s].equals(entry.getKey()))
                         { 
                             F=1;
                         } 
                     }
                     if(F==0)
                     {
                         text.append("單詞: " +entry.getKey() + "      次數   :" + entry.getValue()+"\r\n"); 
                         count=count+1; 
                     }
                     if(count==Integer.parseInt(num.getText()))
                         break;
                 }
- 統計文本行數與字符數:
StringBuffer sb1=  new  StringBuffer();
                try {
                    String file1 =file_.getText();
                    BufferedReader in = new BufferedReader(new FileReader(file1));
                    while ((str = in.readLine())!= null) 
                    {
                        str = str.toLowerCase();
                        sb1.append(str);
                        line++;
                    }
                    text.append("文件行數  :  "+line  +"\n");
                    
                    in.close();
                    String str2 = sb1.toString();
                    String[] wordsArr1 = str2.split("[^a-zA-Z]");  //過濾出只含有字母的  
                    for (String word : wordsArr1) 
                    {  
                        wordCount++;
                    } 
                    text.append("字符數  :"+ wordCount  + "\n");
                } catch (IOException e1) 
                {
                    e1.printStackTrace();//printStackTrace()方法是打印異常信息在程序中出錯的位置及緣由
                }

d.程序運行結果

-  登錄界面:


- 菜單界面:

- 統計該文本行數及字符數:

- 將單詞及詞頻存入文件result.txt中

- 查看並輸出指定單詞的單詞及詞頻數:

- 統計文本中除冠詞、代詞、介詞以外的高頻詞:

git

e.結對照片

f.PSP

PSP展現github

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

總結:此次結對項目給我最大的感覺就是合做真的很重要,兩我的分工明確的話,一塊兒作項目效率真的很高。此次的項目可能沒有作得很成功,好比擴展功能只實現了一個,還有那個柱狀圖因爲時間和技術等緣由沒有完成,可是在我看來這已是一個不錯的經歷不錯的體驗,相信之後的更多的機會會讓我更加適應合做帶來的好處。
點此查看源碼編程

相關文章
相關標籤/搜索