好難的個人作業1
===========================
# 一、預估與實際(都不懂啊!!!!!)
PSP2.1 | Personal Software Process Stages | 預估耗時(分鐘) | 實際耗時(分鐘) |
---|---|---|---|
Planning | 計劃 | ||
• Estimate | • 估計這個任務需要多少時間 | 2天 | 好多天 |
Development | 開發 | ||
• Analysis | • 需求分析 (包括學習新技術) | 30 | 60 |
• Design Spec | • 生成設計文檔 | ||
• Design Review | • 設計複審 | 10 | 15 |
• Coding Standard | • 代碼規範 (為目前的開發制定合适的規範) | ||
• Design | • 具體設計 | 25 | |
• Coding | • 具體編碼 | 200 | 210 |
• Code Review | • 代碼複審 | 120 | 180 |
• Test | • 測試(自我測試,修改代碼,送出修改) | 150 | |
Reporting | 報告 | ||
• Test Repor | • 測試報告 | 40 | 50 |
• Size Measurement | • 計算工作量 | 20 | |
• Postmortem & Process Improvement Plan | • 事後總結, 并提出過程改進計劃 | ||
合計 | 840 |
## 二、需求分析
我通過百度的方式了解到,國小一年級數學有如下的幾個特點:
特點是一般隻學加減法,而且作業量不多,均為整數,并且不會出現負數情況
經過分析,我認為,這個程式應當:兩個加數應該在100以内
- 使用的數字小于100
但如果該系統的使用者是老師,那麼題量可稍微多一些可供選擇,是以我為其設定了最多可出999道題的量。
## 三、設計
### 1. 設計思路
這個程式有1個類,2個函數
### 2. 實作方案
先寫代碼,然後根據作業文檔的操作一步步做下來
## 四、編碼
請說明你如何按照設計思路進行編碼
-結果錯誤,顯示不出數字,開頭的數值輸入錯誤。
-無緣無故抛異常,因為代碼疏漏導緻抛異常
-數組越界,要輸入兩個參數,但是隻輸入了一個參數。
杜絕完全不規範的縮寫
人
工檢查代碼是否符合規範
根據平常做作業的思路一步一步按照要求做下來
并記錄你在開發中遇到的問題
很多,第一次用這種方法做作業,遇到特别多的小麻煩
與解決過程
解決就是靠同學間的互幫互助以及自己百度
### 1. 調試日志 記錄編碼調試的日志,請記錄下開發過程中的 debug 曆程 比如: - 在代碼的什麼位置,代碼出現了什麼問題,問題會導緻什麼結果,怎麼解決的
### 2. 關鍵代碼 請展示一段程式的關鍵代碼,并解釋代碼的作用
//将計算題存儲到.txt檔案
// 步驟1:确定輸出的檔案(目的地)
// 如果filename中包含路徑,必須確定路徑已存在
PrintStream Wt=null;
try {
// 步驟2:建立指向檔案的輸出流
Wt = new PrintStream(new FileOutputStream("out338.txt"));
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
System.out.println("加載檔案失敗");
e.printStackTrace();
}
// 步驟3:寫入資料
// 計算題題目
for (int i = 1; i <= a; i++) {
Wt.println("("+i+") "+M1.get(i));
Wt.println("");
// 分界線
Wt.println("------------愉快的分割線---------------");
// 标準答案
Wt.println("("+i+") "+M1.get(i)+" = "+M2.get(i));
// 步驟4:關閉
Wt.close();
### 3. 代碼規範 請給出本次實驗使用的代碼規範: - 第一條... - 第二條... 并人工檢查代碼是否符合規範
## 五、測試 請思考并記錄你認為必要的測試點,并記錄測試用例與測試結果
參數是否為1000以内的整數,這個就可以測很多種情況了
不過我輸出的測試結果隻會評判兩種,
一種是:有輸入,但不符合要求,會輸出“請輸入介于1~999間的整數”
另一種:輸入空值,提示“請輸入”
## 六、總結 請總結過程中的教訓和經驗,
思考 - 是否使用了“軟體開發的基本政策:分而治之”,
有
是否需要重構 - “高品質的設計、規範的編碼以及有效的測試是保證軟體産品品質的三個重要方面”,
需要
你是否采用了相關的手段,是否需要重構
現在還不會,接下去的學習中會慢慢修正。