愛是用心碼——項目系統設計與數據庫設計


這個作業屬於哪個課程 軟件工程
這個作業要求在哪里 項目系統設計與數據庫設計
這個作業的目標 項目系統設計與數據庫設計
作業正文 愛是用心碼——項目系統設計與數據庫設計
github鏈接 項目地址
其他參考文獻

一、預期開發計划時間安排

周數 團隊目標與產出 當前進度
第一周 1、前端完成基礎頁面設計。
2、后端完成各模塊的php代碼。
已完成
第二周 1、前端進行跳轉頁面以及組件功能實現。
2、后端補足各模塊缺失接口代碼。
3、代碼測試修改bug。
未完成
第三周 1、前端進行UI統一以及美化界面。
2、后端測試並完善基礎功能接口。
未完成
第四周 1、前端調用后端小組的接口,並嘗試完成頁面渲染和效果調用。
2、后端輔助前端小組調用,並進行相應的修改調整。
未完成
第五周 1、前端組合成功后進行前端測試。
2、后端進行完整性校驗,根據小程序不足,編寫新的接口,進而完善功能。
未完成
第六周 1、前后端收尾,保證小程序基本功能運行正常,頁面效果對用戶友好。
2、bug修改和后期維護。
未完成

二、預期開發計划分工安排

學號 姓名 角色 預期任務分配
211706206 吳秋悅 后端 1、學生模塊接口功能實現。
2、輔助前端進行接口調用。
3、API接口文檔及測試。
211706130 王孟玉 前端 1、學生模塊中“我的”全部功能。
2、UI統一以及美化界面。
3、前端測試。
211706205 吳娉婷 前端 1、學生模塊中“首頁”全部功能。
2、UI統一以及美化界面。
3、前端測試。
211706152 張露 前端 1、登錄頁面、輔導員模塊中的功能主頁、個人頁面部分。
2、UI統一以及美化界面。
3、前端測試。
211706161 蔡雨婷 前端 1、輔導員模塊中的忘記密碼部分、查看查寢結果。
2、UI統一以及美化界面。
3、前端測試。
211706197 汪鈺瑩 前端 1、宿舍管理功能、抽取宿舍功能。
2、UI統一以及美化界面。
3、前端測試。
211706187 林連坤 后端 1、輔導員模塊接口功能實現。
2、輔助前端進行接口調用。
3、API接口文檔及測試。
211706174 洪成龍 后端 1、登錄模塊與輔導員模塊接口功能實現。
2、數據庫建立。
3、API接口文檔及測試。

三、設計圖和設計思路

1、體系結構圖

2、功能模塊圖

該功能模塊圖分為兩個模塊:學生端與輔導員端。學生端擁有登錄功能、查看功能、拍照上傳功能以及個人信息管理功能,輔導員端擁有登錄功能、抽取功能、查看功能、宿舍管理功能以及個人信息管理功能,每個功能都帶有子功能。

查看原圖

3、類圖

我們設計了用戶、輔導員、學生、照片、宿舍類,各類所擁有的屬性、操作以及各類之間的關系如下圖,輔導員和學生都繼承於用戶類,輔導員與照片、宿舍類關聯,學生實現照片類、依賴宿舍類。

4、ER圖

我們有輔導員、學生、宿舍、記錄四個實體,分別以id為主鍵,輔導員與宿舍之間為一對多,學生與宿舍之間為一對多,輔導員、學生與記錄之間為多對多。
輔導員【學工號,性別,用戶名(姓名),密碼,電子郵箱,手機號,頭像地址,年級,系別】
學生【學號,性別,用戶名(宿舍號),密碼,電子郵箱,手機號,頭像地址,年級,系別】
宿舍【ID,宿舍號,舍長學號】
記錄【ID,照片地址,宿舍號,隨機號碼,開始時間,上傳時間,結束時間】

5、數據庫設計圖

設計思路:

  • student表、counselor表用來存儲學生、輔導員的個人、登陸信息
  • dorm表用來存儲宿舍的相關信息
  • record表用來存儲用戶的查寢記錄

6、系統安全和權限設計

系統安全

  1. 數據庫不直接存儲用戶的密碼,而是以MD5或其它等方式加密后存入數據庫,避免密碼明文傳輸過程中被截獲;
  2. 防止SQL注入:在后台代碼中以預編譯SQL語句等方式防止SQL注入,降低通過原生SQL語句攻擊數據庫的風險;
  3. 定期備份數據庫中的數據到其他地方,防止數據丟失、損壞等意外;
  4. 審計:建立審計日志,把用戶對數據庫的所有操作自動記錄下來放入審計日志中,DBA可以利用審計跟蹤的信息,重現導致數據庫現有狀況的一系列事件,找出非法存取數據的人,時間和內容等;
  5. 用戶標識符和鑒別:該方法由系統提供一定的方式讓用戶標識自己的名字或身份。每次用戶要求進入系統時,由系統進行核對,通過鑒定后才能提供系統的使用權。

用戶權限設計

系統首先對用戶發出的訪問請求進行身份和授權認證,具有合法權限的用戶才能進入系統操作環境,對數據庫進行權限范圍內的訪問。本系統主要面向輔導員和學生兩種角色,系統會根據角色授予具體的功能權限。

四、Q&A與改進

1、Q&A

Q:只有一個輔導員用戶嗎?
A:如果其他輔導員願意使用,我們可以為他提供賬號,並幫助他將學生宿舍信息批量導入數據庫。

Q:如何對宿舍進行管理?
A:我們增加了宿舍管理功能,輔導員可以自己增刪宿舍,或是聯系后台管理員進行批量導入。

Q:抽簽采用什么規則?怎么隨機?
A:使用MySQL的rand()函數隨機抽取宿舍和號碼,如
select dormNumber, round(rand()*999 + 1) as randNumber from dorm order by rand() limit 4;

Q:需求報告中提到的用戶重要信息指哪些,加密方式采用什么?
A:用戶重要信息指的是密碼,采用MD5算法加密。

Q:后端應該會備有相應的數據庫,這應該會有相應的通訊需求的。搜索采用關鍵字完全搜索,如果數據量大了之后會不會性能出現嚴重降低?
A:如果數據量大了會性能會降低。但我們總的數據量不會太大,如果我們系的所有輔導員都在使用,也大概只有300間宿舍,所以在設計數據庫時暫時不考慮性能問題。

2、改進

  1. 新增輔導員宿舍管理、查看等功能。輔導員可查看或增刪自己名下管理的宿舍名單,也可聯系后台管理員批量增刪。為了解決單個輔導員可能兼職其他年級或系的輔導員,因而加上年級與系的選擇框(注:只顯示自己管理的年級與系的宿舍),為了方便查看宿舍,輔導員可通過宿舍樓進行分量查看。
  2. 新增用戶的用戶名、系、年級、宿舍號顯示及修改。用戶可登陸至修改個人信息界面,修改自己的信息至數據庫中,方便宿舍樓調動的情況的修改。
  3. 新增登錄中忘記密碼的驗證身份模塊,及手機驗證與郵箱驗證。增加了用戶使用的安全性。

五、此次工作流程與貢獻度比例

工作流程

分工及貢獻度

學號 工作內容 貢獻度
211706206 分配任務、畫數據流圖、《系統設計說明書》接口設計、整合說明書、編輯博客 13%
211706130 畫體系結構圖、《系統設計說明書》驗收標准及引言、審查博客和ppt 12%
211706205 畫功能模塊圖、《系統設計說明書》驗收標准及引言、審查博客和ppt 12%
211706187 畫泳道圖、《系統設計說明書》輸入輸出格式、審查博客和ppt 12%
211706152 畫類圖、編寫《數據庫設計說明書》、PPT制作、演講、審查博客 13.5%
211706161 畫ER圖、編寫《數據庫設計說明書》、PPT制作、審查博客 12%
211706197 畫ER圖、編寫《數據庫設計說明書》、PPT制作、審查博客 12%
211706174 畫類圖、數據庫設計、編寫《數據庫設計說明書》、PPT制作、審查博客 13.5%

六、commit提交記錄

七、github地址與文檔下載地址

github地址

系統設計說明書PDF

數據庫設計說明書PDF

系統設計和數據庫設計答辯PPT 提取碼:6jw8


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM