機房總算做完了,但是還需要乙個系統的總結過程,現在我的總結之路開始了!
一:需求分析
做軟體首要的就是做需求分析,因為是第二次做機房,所以對於需求這一塊還是比較了解的。下面我們來分析一下我們的機房:
1.機房收費系統使用者是:機房的老師,學生。 2.
機房收費系統的主要功能:
學生:修改密碼,查詢充值記錄,檢視上機記錄,檢視充值記錄,學生上機狀態檢視
操作員:註冊,充值,退卡,收取金額查詢,金額退還查詢,學生基本資訊維護,學生上機統計查詢,操作員
工作記錄
管理員:新增刪除使用者,基本資料設定,正在值班老師,結賬,日結賬單,周結賬單
3.機房主要功能的er圖
二:資料庫設計
雖然之前做過機房,但是資料庫不是自己設計的,這次自己設計的資料庫,經過修改之後還是比較滿意的。我的表包括:user表,student表,database表,card表,line表,recharge表,returncard表,bill表。
user
表:任何系統都需要使用者,我們的機房收費系統也不例外。需要的資訊是:使用者
id號,使用者名稱(唯一識別一條記錄),使用者密碼(用於保護個人賬戶的安全),使用者級別(不同的級別有不同的許可權),所以我們需要的字段有
userid,username(主鍵)
,password,level.
student
:機房收費系統主要是管理學生上機,結賬,所以學生表就是乙個客戶比較關鍵的表了。需要的資訊是:學號,學生姓名,卡號(主鍵),密碼,性別,系別,年級,班級,卡餘額,使用情況,學生級別,所以需要的字段是:
stuno,stuname,cardno,password,***,department,grade,class,balance,state,level
database
表:在計算消費的時候必須得設定基本的資料,再根據公式來進行計算,所需要的字段是:固定使用者消費時間單價,臨時使用者消費時間單價,最低消費,準備時間,最低消費時間。
card
表:學生需要刷卡上機,所以卡表很重要的一張表。卡表需要的資訊:卡號,姓名,購卡時間,退卡時間,使用狀態,操作員
id,需要的字段有:cardno,name, buytime, returntime,state,operatorid.
line
:這張表最重要的是學生上機時間和消費金額的計算。這裡我改掉上次做機房時候用的表的狀況,把上機表和下機表合併成一張表。需要的字段是:
cardno,username,ondate,ontime,offdate,offtime,costtime,costmoney,balance
,usestate
,acoountstate,operatorid
recharge
表:記錄學生充值狀況。需要的資訊:卡號,充值金額,充值時間,操作員
id,欄位為:
cardno,rechargemoney,rechargetime,operatorid
returncard
表:這張表和充值表很像,這裡主要的是學生退卡狀況。需要欄位是:
cardno,returntime,returnmoney,operatorid
bills
表:主要是做結賬的時候需要用到的,每天的結賬後的資訊儲存在賬單表中。需要的資訊是:上期餘額,充值金額,退卡金額,消費總額,收入總金額。
三:總結
資料庫是我們做的軟體系統的核心,把大量的資料組織起來,然後供我們使用。資料庫設計分三個階段,概念設計,邏輯設計和物理設計。通過三個階段謹慎的來設計我們的資料庫,建立主鍵和外來鍵,處理好各個表的關係。我們的資料庫做好了,我們的軟體才能夠做好!
機房重構 資料庫設計
上次發表過一篇資料庫設計後來師傅說理解的不正確就擱置了很久才提筆。關於資料庫的設計是乙個大方面,因為暑假已經用vb6.0敲過機房收費系統了,對於裡面的功能結構也比較熟悉,所以對於重建有很大的幫助。分析er圖 實體user和card之間存在著4種關係 註冊 充值 取消 上下機。實體card和stude...
sql server 資料庫設計《機房重構》
開始機房重構了,不自己設計乙個資料庫怎麼好意思說自己是在重構機房呢?而且原資料庫本身就有很多瑕疵,不符合資料庫的規範,今天我們就根據資料庫三正規化,來設計屬於我們自己的一版資料庫。本次的資料庫是為了服務於我們的機房收費系統,機房收費系統大致的要求是什麼呢?看圖 這是我們機房收費系統的主要的功能,這涉...
重構機房收費系統 資料庫設計
弄完了三層的例子後,機房重構早就該開始了,但是自己一直不想動,萬事開頭難,機房收費的重構,先是資料庫的設計問題,開始包括er圖的設計。然後設計資料庫,設計表.現在想想自己資料庫的設計。首先先想一想上下機的整個流程,乙個學生拿著卡來到老師面前,老師講學生的卡啟用,學生在拿著卡去找機子上機,假如學生沒有...