在實際的項目中,需求分析和數據庫的設計是很重要的一個環節,這個環節會 直接影響項目的開發過程和質量。實際中,這個環節不但需要系統分析師、軟件 工程師等計算機方面的專家,還需要相關領域的領域專家參與才能完成。
但是,在這個文章系列中,所要使用的Demo僅僅是一個例子,而且其業務極為 簡單,因此,這裡並不是真正的需求分析和數據庫設計,而是將Demo的需求和數 據庫羅列至此,使朋友們對Demo有一個大體的了解,方便後續文章中開發過程的 理解。
需求分析:
這個項目是一個留言本,其業務極為簡單,現將其描述如下。
1.任何訪問者可以進行留言,留言完成後,不會立即顯示正文,而是要經過管 理員驗證後才可顯示。
2.任何訪問者可以對留言發表評論,未通過驗證的留言不可以評論。
3.管理員可以對留言進行回復(這個回復不同於評論,是直接顯示在正文下面 ,而且是一個留言只能有一個回復),並可對留言與評論實行刪除,以及對留言 進行通過驗證操作。
4.管理員分為超級管理員和普通管理員。超級管理員只有一個,負責對普通管 理員實行添加、刪除操作。普通管理員可偶多個,負責對留言的管理,並可以修 改自己的登錄密碼。
這個項目的用例圖如下:
數據庫設計:
設計數據表之前,首先進行實體和關系的識別與確定。
通過需求分析,可以觀察得出,本項目的實體有:管理員(不包括超級管理員 ),留言,評論。本項目的關系有:留言與評論間的一對多關系。
進一步,數據庫各表的設計如下:
管理員表(TAdmin)
ID int 管理員ID NotNull 主鍵,自增
Name varchar(20) 登錄名 NotNull
Password varchar(50) 登錄密碼 NotNull 使用MD5加密
留言表(TMessage)
ID int 留言ID NotNull 主鍵,自增
GuestName varchar(20) 留言者用戶名 NotNull
GuestEmail varchar(100) 留言者E-mail Null
Content text 留言內容 NotNull
Time datetime 發表留言時間 NotNull
Reply text 回復 Null
IsPass varchar(10) 是否通過驗證 NotNull
評論表(TComment)
ID int 評論ID NotNull 主鍵,自增
Content text 評論內容 NotNull
Time datetime 發表評論時間 NotNull
MessageID int 所屬留言的ID 外鍵