201671030114 馬秀麗 實驗四 軟件工程結對項目

源代碼
項目 內容
課程名稱: 2016級計算機科學與工程學院軟件工程(西北師範大學)
課程要求: 實驗四 軟件工程結對項目
課程目的: 熟悉軟件開發總體流程,提高自身能力
做業意義: 第一次體驗一個完整的工程

任務一:

兩兩自由結對,對結對方的《實驗二 軟件工程我的項目》的項目成果進行評價。
評價同窗
源代碼
評價:總體排版清晰,基本上實現了要求功能,可是所畫柱狀圖不能看出效果,沒有輸出到文本的結果顯示,代碼寫的還能夠,命名挺規範,在java方面要在多熟悉、練習,那麼應用起來結果會好不少。

結對同窗html

任務2:

採用兩人合做方式,設計開發一個英文文本統計分析軟件。

功能設計

1.實驗2要求的功能;
2.單詞頻數可視化柱狀圖要求是如下樣式:

3.統計該文本行數及字符數;
4.各類統計功能均提供計時功能,顯示程序統計所消耗時間(單位:ms);
5.可處理任意用戶導入的任意英文文本;
6.人機交互界面要求GUI界面(WEB頁面、APP頁面均可);
7.附加分功能:統計文本中除冠詞、代詞、介詞以外的高頻詞;java

設計實現

1.StatisticalWord()函數,統計指定單詞詞頻個數且顯示柱狀圖;
2.WordList()函數,統計詞頻個數並輸出到文本;
3.Figure()函數,查詢K個出現頻次最高的單詞;
4.Test()函數,統計文本的行數和字符統計數;
5.WordList1()函數,統計文本中除冠詞、代詞、介詞以外的單詞輸出到文本
6.Main()函數,調用各個功能。git

結果展現

1.按按鈕調用相應功能
github

2統計指定單詞詞頻個數且顯示柱狀圖
app

3.統計詞頻個數並輸出到文本
函數

4.查詢K個出現頻次最高的單詞
學習

5.統計文本的行數和字符統計數
測試

6.統計文本中除冠詞、代詞、介詞以外的單詞輸出到文本
編碼

合做中
設計

代碼展現

監聽按鈕調用相應函數

{
Button1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
StatisticalWord frame = new StatisticalWord();
//frame.setBounds(200,300,500,800);
frame.setTitle("統計指定單詞詞頻個數且顯示柱狀圖");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
optStatisticalWord();
}
});
add(Panel,BorderLayout.CENTER);
pack();
}

統計各功能時間

{
long startTime=System.currentTimeMillis();
long lines = Files.lines(Paths.get(new File("src\DATA.txt").getPath())).count();
// System.out.println("行數: " + lines);
long endTime=System.currentTimeMillis();
result.append("字符統計結果爲:" + n+"\n行數: " + lines+"\n所消耗時間爲:"+ (endTime-startTime)+"ms" );
//System.out.println("所消耗時間爲:"+ (endTime-startTime)+"ms" );
}

統計數字或者字符出現的次數

public static int Pross(String str) { 

    char[] charArray = str.toCharArray(); 
    int all = 0;
    TreeMap<Character, Integer> tm = new TreeMap<Character, Integer>(); 
    for (int x = 0; x < charArray.length; x++)
    { 
        if (!tm.containsKey(charArray[x])) 
        { 
            tm.put(charArray[x], 1); 
        } 
        else
        { 
            int count = tm.get(charArray[x]) + 1; 
            tm.put(charArray[x], count); 
            all=all+count;
        } 
      
    }  
    return all;
}

總結:

此次做業是在實驗二的基礎上進行的,首先咱們根據實驗二的我的PSP作了分析並在開發和編寫代碼上增長了時間,在開始開發設計以前咱們讀了對方的代碼並選擇了此次做業以對方的代碼爲基礎,由於她的代碼命名比較規範,完成過程當中會遇到各類各樣的問題,雙方之間的調解和適當的妥協是頗有必要的。

psp

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