四則運算出題程序的分析與設計
一、項目分工
?
人員 | 工作 |
---|---|
吳錦涵 | 負責後續代碼編寫,程序實現 |
黃偉源 | 負責此次程序所有的分析與設計,博文撰寫 |
二、需求分析
1.網上問卷調研
- 您的身份是?
A.老師 B.學生 C.家長
2.您喜歡使用什麽方式做題?
A.電腦 B.手機 C.紙質版練習冊
3.您需要什麽功能的做題系統?
A.娛樂性 B.防作弊 C.多樣化
4.您覺得,需要給予孩子獎勵的功能嗎?
A.需要 B.不需要 C.無所謂
5.做題系統需要家長自己參與嗎?
A.需要 B.不需要 C.無所謂
網上調研結果如下:
- 用戶A AABCA
- 用戶B BBAAB
- 用戶C CACCA
- 用戶D BACAC
- 用戶E BCAAB
- 用戶F AABAA
- 用戶G CBCAA
- 用戶H ABBAA
- 用戶I CBBCA
- 用戶J BAAAC
2.軟件需求規格說明書
https://gitee.com/huangweiyuan/four_calculation_program/tree/master
三、原型設計
? 一個可用可交互的原型所帶來的好處並不是一星半點,它還可以幫助開發和設計人員從不同的維度上來規劃和設計產品。原型是幫助網站與APP設計最終完成標準化和系統化的最好手段。
https://modao.cc/workspace/apps/pADEB27A3191526795104629
四、用例圖、用例規約
1.用例圖
2.主要用例規約
註冊:
名稱 | 用戶註冊 |
---|---|
用例ID | 01 |
角色 | 用戶 |
說明 | 本用例描述用戶註冊過程。沒有賬號的用戶必須註冊後才能進入系統。學生註冊需填寫郵箱/手機,密碼,姓名,學號,學校等信息,老師/助教註冊也需填寫郵箱/手機,密碼,姓名,學號,學校等信息。用例起始於點擊註冊四則運算頁面的“學生”或“老師/助教”按鈕。 |
前置條件 | 未註冊的用戶 |
基本事件流 | 1. 用戶點擊註冊四則運算頁面下方中心的“學生”或“老師/助教”按鈕。 2. 用戶根據系統提示輸入信息(郵箱/手機,密碼,姓名,學號,學校等等)。 3. 用戶確認信息無誤,點擊“註冊為學生”或者“註冊為老師/助教”按鈕 。5. 系統提示“新用戶註冊成功” |
其它事件流 | 用戶在任何一步均可以退出 |
異常事件流 | 3.1如果用戶輸入無效的信息(例如用戶名存在,用戶名為空,密碼為空,密碼不合法等等),系統顯示錯誤信息。用戶重新輸入,返回基本事件流2; |
後置條件 | 註冊成功,用戶返回登錄界面 |
登陸:
名稱 | 用戶登錄 |
---|---|
用例ID | 02 |
角色 | 用戶 |
說明 | 本用例描述用戶輸入用戶名密碼登錄的過程。用例起始於點擊“登錄”按鈕。 |
前置條件 | 用戶已註冊 |
基本事件流 | 1. 用戶輸入用戶名和密碼 2. 用戶點擊“登錄”按鈕,系統驗證用戶名和密碼 |
其它事件流 | 用戶在任何一步均可以退出 |
異常事件流 | 如果用戶輸入無效的信息(例如用戶名存在,用戶名為空,密碼為空,密碼不合法等等),系統顯示錯誤信息。用戶重新輸入,返回基本事件流1; |
後置條件 | 註冊成功,用戶返回登錄界面 |
五、順序圖
六、類圖
七、編碼規範
因為後臺使用PHP,所以除了命名規範采用統一標準,編程規範采用PHP的縮進規範。
1.縮進。4個空格的縮進,不使用Tap,更不能混合使用Tap和空格。
2.行寬。限制為100字符。
3.括號。在復雜的條件表達式中,用括號清楚地表示邏輯優先級。
? 4.需要擁有斷行和空白的{}行。
5.分行。不要把多行語句放在一行上。
6.下劃線。下劃線用來分隔變量名字中的作用域標註和變量的語義。
7.大小寫問題。所有單詞的第一個字母都大寫,有很多單詞使用駝峰命名法。
8.註釋。復雜的註釋應該放在函數頭,如果程序正文已經能夠說明參數的類型in/out等,就不重復。註釋隨著程序的修改而不斷更新。
9.錯誤處理。如果錯誤會發生,讓程序崩潰的地方離錯誤越近越好。
10.代碼復審。同組成員復審,對於至關重要的代碼,要多復審幾遍。
四則運算出題程序的分析與設計