(1)體驗軟件項目開發中的兩人合做,練習結對編程(Pair programming)。
(2)掌握Github上增量發佈軟件的操做方法。html
任務一:兩兩自由結對,對結對方的《實驗二 軟件工程我的項目》的項目成果進行評價。
一、對項目博文做業進行閱讀並進行評論,評論要點包括:博文結構、博文內容、博文結構與PSP中「任務內容」列的關係、PSP中「計劃共完成須要的時間」與「實際完成須要的時間」兩列數據的差別化分析與緣由探究。
二、克隆結對方項目源碼到本地機器,閱讀並測試運行代碼,結合運行結果評論程序代碼,評論要點包括:軟件結構、代碼規範、功能實現、人機交互等。
三、嘗試利用github中的Fork、Clone、Push、Pull request、Merge pull request對結對方倉庫中的源碼進行合做修改。git
項目 | 內容 |
這個做業屬於哪一個課程 | http://www.cnblogs.com/nwnu-daizh/ |
這個做業的要求在哪裏 | http://www.javashuo.com/article/p-bjcswxqf-ma.html |
課程學習目標 | 熟悉軟件開發總體流程,提高自身能力。 |
本次做業在哪一個具體方面幫助咱們實現目標 | 第一次體驗一個完整的工程 |
結對對象評論連接地址:https://www.cnblogs.com/bkcq/p/10558650.html 結對對象github源代碼連接地址:https://github.com/201671010403/- <hr> 點評內容: 讀完你的博文以後,就我我的而言,此篇博文條列清晰,一下就能讓人瞭然與胸,但其中也有不少的不足之處。從博文結構上看,太過於簡單,能夠在markdown編輯器下學習一些語法,接受一些新知識,新事物來充實你的博文。從博文內容上看,功能實現過於片面,基本功能的實現不完整,好比柱狀圖的實現。從PSP表上看,咱們的JAVA編程功底太差,不止是你,我也是,但願在之後的做業中學習中都能不斷的進步。
你的程序編碼段:github
設計實現: 1.在本地磁盤中建立了一個文本文件,摘取英語文本。 2.經過map集合和定義的文本字節,實現讀取存儲等功能。 3.利用類treemap〈K,V〉基於樹的接口實現。整個實現過程不夠完整,功能實現片面,也沒有按照需求分析來實現。 以上是個人我的見解,但願對你的博文改進有所幫助,有什麼觀點誤解還望指出。<hr> 閱讀心得:在看告終對對象的實驗二做業後,我深入意識到本身的不足,包括在總體結構上。幾回接觸markdown編輯器以後,基礎語法已經可以運用自如,在以後的每篇博文裏,我將嚴格要求本身,一步一步完善本身的博文,查缺補漏,在編程方面也將努力,把以前的不足儘快糾正。
需求分析
一、實驗二的功能;
二、單詞頻數可視化柱狀圖要求是如下樣式:
算法
三、統計該文本行數及字符數; 四、各類統計功能均提供計時功能,顯示程序統計所消耗時間(單位:ms); 五、可處理任意用戶導入的任意英文文本; 六、人機交互界面要求GUI界面(WEB頁面、APP頁面均可);
軟件設計說明:
本次項目主要目的是實現可導入任意英文文本文件,統計該英文文件中單詞數和各單詞出現的頻率(次數),並能將單詞按字典順序輸出;將單詞及頻率寫入文件;實現GUI界面;將單詞及頻率寫入指定位置。
算法設計
1) 文章分割成單詞
簡單概述下算法:把從文件提取的文章存放在String字符串中,而後進行逗號,句號,空格分割,基本上能夠分割成單詞。
2)按字典排序算法
這裏字符串的排序和數字的排序同樣。
3)統計詞頻
利用hashmap的compareTo()方法,map存在則put並count++(計數),不存在則put進去。數據庫
一、統計文本單詞總數
編程
二、統計單詞出現的次數
markdown
三、統計出現頻率最高的前8個單詞結果
eclipse
四、統計文本行數
編輯器
五、GUI界面
學習
六、單詞頻數可視化柱狀圖
七、輸出到文件result.txt中
八、在GitHub中的倉庫管理以及代碼的共同合做及修改
1)代碼克隆,檢查及修改
psp2.1 | 任務內容 | 計劃總共須要完成的時間(min) | 實際完成須要的時間(min) |
Planning | 計劃 | 10 | 20 |
Estimate | 估計須要時間,並計劃大體工做步驟 | 10 | 10 |
Development | 開發 | 200 | 240 |
Analysis | 需求分析 | 10 | 15 |
Design Spec | 生成設計文檔 | 30 | 25 |
Design Review | 設計複審 | 10 | 8 |
Coding Standard | 代碼規範 | 20 | 25 |
Design | 具體設計 | 20 | 30 |
Coding | 具體編碼 | 360 | 420 |
Code Review | 代碼複審 | 30 | 40 |
Test | 測試 | 15 | 20 |
Reporting | 報告 | 8 | 10 |
Text Report | 測試報告 | 5 | 8 |
Size Measurement | 計算報告量 | 5 | 5 |
Postmortem&Process Improvement plan | 總結,並提出改進計劃 | 15 | 20 |
小結感覺
經過本次結編程項目,深入的體會到一我的的力量畢竟有限,不管是在邏輯設計仍是技術實現上,都存在很大差距,整個項目的完成過程當中,每一個人都發揮出了各自的長處,達到告終對編程的目的,1+1>2的效果很明顯,兩人都必須參與程序的編碼工做,在結對編程中兩我的輪流作對方的角色,達到知識互補,將代碼質量提到最高,在結對編程模式下,咱們之間沒有水平上的高低比較,雙方都是平等地、互補地進行工做,咱們一塊兒分析、起設計、寫代碼並測試運行,直到最後的文檔生成,在開發層次,結對編程能提供更好的設計質量和代碼質量,兩人合做能有更強的解決問題的能力,對咱們自身來講,結對編程能帶來更多的自信心,每一個模塊的實現都能帶來更多的成就感,這有利於項目能夠更好的進行下去,結對能更好而且有效地交流,相互學習和傳遞經驗,由於一我的的知識已經被其餘人共享。若是運用得當,結對編程能達到更好的效果。
結對項目源碼在GitHub的倉庫主頁連接地址:https://github.com/201671010436/jieduibiancheng