【文章內(nèi)容簡(jiǎn)介】
性,提高可讀性、可維護(hù)性,但模塊的劃分不能是任意的,應(yīng)盡量保持其獨(dú)立性。也就是說(shuō),每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單,提高模塊的獨(dú)立性,為設(shè)計(jì)高質(zhì)量的軟件結(jié)構(gòu)奠定基礎(chǔ)。我首先將整個(gè)系統(tǒng)化分為幾個(gè)小模塊,在系統(tǒng)中,我設(shè)計(jì)了辦公用品信息管理模塊、辦公用品申請(qǐng)模塊、辦公用品分發(fā)模塊、數(shù)據(jù)統(tǒng)計(jì)模塊、領(lǐng)取權(quán)限管理模塊和入庫(kù)管理模塊六個(gè)小模塊。然后,進(jìn)一步細(xì)分模塊,添加細(xì)節(jié)。比如,辦公用品信息管理模塊我又將其分為辦公用品信息添加、辦公用品信息刪除、辦公用品信息修改、辦公用品信息查詢等。 辦公用品信息管理模塊設(shè)計(jì)管理員有該模塊操作權(quán)限,負(fù)責(zé)辦公用品的基本信息儲(chǔ)存。屬性包括:用品編號(hào)、用品名稱、單價(jià)和庫(kù)存量等,該模塊可以對(duì)這些信息進(jìn)行添加、刪除、修改和查詢。(1)本模塊共有4個(gè)功能:圖51 物品信息管理功能模塊圖 The chart of res info manage function module(2) 功能設(shè)計(jì)功能: 辦公用品信息的增加使用人管理員使用目的出現(xiàn)新的辦公用品時(shí),在辦公用品信息中添加新信息操作流程登錄進(jìn)入辦公用品信息管理模塊,選擇添加辦公用品類型填寫(xiě)辦公用品信息報(bào)表顯示填寫(xiě)信息,確認(rèn)添加退出登錄完成功能增加辦公用品信息功能: 辦公用品信息的刪除使用人管理員使用目的辦公用品類型失效時(shí),把它從辦公用品信息中刪除操作流程登錄進(jìn)入辦公用品信息管理模塊,選擇刪除辦公用品類型從類型列表里選擇待刪除的辦公用品類型確認(rèn)刪除退出登錄完成功能刪除一條辦公用品信息功能: 辦公用品信息的修改使用人管理員使用目的辦公用品類型或信息變動(dòng)時(shí),更新原來(lái)的信息內(nèi)容操作流程登錄進(jìn)入辦公用品信息管理模塊,選擇修改辦公用品類型從類型列表里選擇待修改的辦公用品類型填寫(xiě)辦公用品信息表確認(rèn)修改退出登錄完成功能更新辦公用品信息內(nèi)容功能: 辦公用品信息的查詢使用人管理員使用目的查看辦公用品信息操作流程登錄進(jìn)入辦公用品信息管理模塊,選擇查詢辦公用品類型 顯示查詢結(jié)果退出登錄完成功能查看到辦公用品信息 辦公用品信息管理模塊順序圖圖52 辦公用品信息增加順序圖 The sequence chart of res info increase圖53 辦公用品信息刪除順序圖 The sequence chart of res info delete圖54 辦公用品信息查詢順序圖 The sequence chart of res info query圖55 辦公用品信息修改順序圖 The sequence chart of res info amend 數(shù)據(jù)庫(kù)設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)(Database Design)是指根據(jù)用戶的需求,在某一具體的數(shù)據(jù)庫(kù)管理系統(tǒng)上,設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)和建立數(shù)據(jù)庫(kù)的過(guò)程。一般,數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程大致可分?jǐn)?shù)據(jù)庫(kù)設(shè)計(jì)為5個(gè)步驟:需求分析:調(diào)查和分析用戶的業(yè)務(wù)活動(dòng)和數(shù)據(jù)的使用情況,弄清所用數(shù)據(jù)的種類、范圍、數(shù)量以及它們?cè)跇I(yè)務(wù)活動(dòng)中交流的情況,確定用戶對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的使用要求和各種約束條件等,形成用戶需求規(guī)約。概念設(shè)計(jì):對(duì)用戶要求描述的現(xiàn)實(shí)世界(可能是一個(gè)工廠、一個(gè)商場(chǎng)或者一個(gè)學(xué)校等),通過(guò)對(duì)其中住處的分類、聚集和概括,建立抽象的概念數(shù)據(jù)模型。這個(gè)概念模型應(yīng)反映現(xiàn)實(shí)世界各部門(mén)的信息結(jié)構(gòu)、信息流動(dòng)情況、信息間的互相制約關(guān)系以及各部門(mén)對(duì)信息儲(chǔ)存、查詢和加工的要求等。所建立的模型應(yīng)避開(kāi)數(shù)據(jù)庫(kù)在計(jì)算機(jī)上的具體實(shí)現(xiàn)細(xì)節(jié),用一種抽象的形式表示出來(lái)。以擴(kuò)充的實(shí)體—(ER模型)聯(lián)系模型方法為例,第一步先明確現(xiàn)實(shí)世界各部門(mén)所含的各種實(shí)體及其屬性、實(shí)體間的聯(lián)系以及對(duì)信息的制約條件等,從而給出各部門(mén)內(nèi)所用信息的局部描述(在數(shù)據(jù)庫(kù)中稱為用戶的局部視圖)。第二步再將前面得到的多個(gè)用戶的局部視圖集成為一個(gè)全局視圖,即用戶要描述的現(xiàn)實(shí)世界的概念數(shù)據(jù)模型。邏輯設(shè)計(jì):主要工作是將現(xiàn)實(shí)世界的概念數(shù)據(jù)模型設(shè)計(jì)成數(shù)據(jù)庫(kù)的一種邏輯模式,即適應(yīng)于某種特定數(shù)據(jù)庫(kù)管理系統(tǒng)所支持的邏輯數(shù)據(jù)模式。與此同時(shí),可能還需為各種數(shù)據(jù)處理應(yīng)用領(lǐng)域產(chǎn)生相應(yīng)的邏輯子模式。這一步設(shè)計(jì)的結(jié)果就是所謂“邏輯數(shù)據(jù)庫(kù)”。物理設(shè)計(jì):根據(jù)特定數(shù)據(jù)庫(kù)管理系統(tǒng)所提供的多種存儲(chǔ)結(jié)構(gòu)和存取方法等依賴于具體計(jì)算機(jī)結(jié)構(gòu)的各項(xiàng)物理設(shè)計(jì)措施,對(duì)具體的應(yīng)用任務(wù)選定最合適的物理存儲(chǔ)結(jié)構(gòu)(包括文件類型、索引結(jié)構(gòu)和數(shù)據(jù)的存放次序與位邏輯等)、存取方法和存取路徑等。這一步設(shè)計(jì)的結(jié)果就是所謂“物理數(shù)據(jù)庫(kù)”。驗(yàn)證設(shè)計(jì):在上述設(shè)計(jì)的基礎(chǔ)上,收集數(shù)據(jù)并具體建立一個(gè)數(shù)據(jù)庫(kù),運(yùn)行一些典型的應(yīng)用任務(wù)來(lái)驗(yàn)證數(shù)據(jù)庫(kù)設(shè)計(jì)的正確性和合理性。一般,一個(gè)大型數(shù)據(jù)庫(kù)的設(shè)計(jì)過(guò)程往往需要經(jīng)過(guò)多次循環(huán)反復(fù)。當(dāng)設(shè)計(jì)的某步發(fā)現(xiàn)問(wèn)題時(shí),可能就需要返回到前面去進(jìn)行修改。因此,在做上述數(shù)據(jù)庫(kù)設(shè)計(jì)時(shí)就應(yīng)考慮到今后修改設(shè)計(jì)的可能性和方便性。數(shù)據(jù)庫(kù)的完整性是指數(shù)據(jù)的正確性和有效性,是為防止數(shù)據(jù)庫(kù)中存在不符合語(yǔ)義規(guī)定的數(shù)據(jù)和防止因錯(cuò)誤信息的輸入輸出造成無(wú)效操作或錯(cuò)誤信息而提出的。數(shù)據(jù)庫(kù)的完整性包括:實(shí)體完整性、參照完整性和用戶定義完整性。實(shí)體完整性 :現(xiàn)實(shí)世界的實(shí)體是可區(qū)分的,即它們具有某種唯一性標(biāo)識(shí)。相應(yīng)地,關(guān)系模型中主鍵應(yīng)作為唯一性標(biāo)識(shí)。因此實(shí)體完整性規(guī)則規(guī)定基本關(guān)系的所有主鍵都不能取空值(NULL)。參照完整性:參照完整性維護(hù)表與表之間的相關(guān)性,通常用“主鍵/外鍵”保證,其中可以取NULL值,或取其參照表中的取值。用戶定義的完整性:針對(duì)某一具體數(shù)據(jù)的約束條件,由應(yīng)用環(huán)境決定。數(shù)據(jù)庫(kù)完整性約束能夠防止合法用戶使用數(shù)據(jù)庫(kù)時(shí)向數(shù)據(jù)庫(kù)中添加不合語(yǔ)義的數(shù)據(jù)。在信息世界中,信息從客觀事物出發(fā)流經(jīng)數(shù)據(jù)庫(kù),通過(guò)決策機(jī)構(gòu)最后又回到客觀世界,信息的這一循環(huán)經(jīng)歷了三個(gè)領(lǐng)域:信息世界,數(shù)據(jù)世界,現(xiàn)實(shí)世界。現(xiàn)實(shí)世界的事物反映到人的頭腦中,人的大腦對(duì)它有個(gè)認(rèn)識(shí)過(guò)程,經(jīng)過(guò)分析(選擇、命名、分類等)進(jìn)入信息世界。這些信息再進(jìn)一步加工、編碼,然后進(jìn)數(shù)據(jù)世界,而軟件系統(tǒng)的開(kāi)發(fā)工作需要考慮這兩個(gè)方面的問(wèn)題,也就是要考慮系統(tǒng)開(kāi)發(fā)所需要的數(shù)據(jù),以及如何對(duì)這些數(shù)據(jù)進(jìn)行操作。這兩個(gè)問(wèn)題貫穿了整個(gè)軟件系統(tǒng)的開(kāi)發(fā)過(guò)程,這也就是數(shù)據(jù)庫(kù)的設(shè)計(jì)問(wèn)題,軟件設(shè)計(jì)的一個(gè)核心。 實(shí)體類的屬性辦公用品信息類的屬性:代理主鍵、用品編號(hào)、用品名稱、供應(yīng)商、申請(qǐng)時(shí)間限制、申請(qǐng)權(quán)限限制員工部門(mén)屬性:代理主鍵、部門(mén)名稱(1)管理員屬性:管理員姓名、密碼、權(quán)限、性別、電話(2)留言及總務(wù)消息屬性:代理主鍵、標(biāo)題、撰寫(xiě)人、內(nèi)容(3)庫(kù)存表類的屬性:代理主鍵、用品編號(hào)、庫(kù)存數(shù)量、類型、價(jià)格 數(shù)據(jù)庫(kù)表的設(shè)計(jì)在辦公用品管理模塊中,涉及的表有:(1)User表字段名描述數(shù)據(jù)類型主鍵非空備注Mana_Name管理員姓名VARCHAR(20)YMana_PWD管理員密碼VARCHAR(10)YPopedom辦公用品名稱VARCHAR(4)YMana_Sex管理員性別VARCHAR(45)YMana_Age管理員年齡VARCHAR(45)YMana_DepID部門(mén)IDVARCHAR(45)YMana_Tel管理員號(hào)碼VARCHAR(45)YMana_Address管理員地址VARCHAR(45)Y(2)News表字段名描述數(shù)據(jù)類型主鍵非空備注id代理主鍵INT(4)YYtitle標(biāo)題VARCHAR(20)Ywriter撰寫(xiě)人CHAR(2)Ycontent內(nèi)容INT(4)Y(3)product表字段名描述數(shù)據(jù)類型主鍵非空備注ID代理主鍵INT(4)YYPro_name庫(kù)存數(shù)量INT(8)YPrice價(jià)格BIGINT(20)Ytime日期DATEYtype類型CHAR(6)Ystock庫(kù)存VARCHAR(20)Y 輸入輸出設(shè)計(jì)輸入輸出是信息系統(tǒng)和用戶交流的接口,由于用戶無(wú)法知道后臺(tái)數(shù)據(jù)處理的過(guò)程,他們只能通過(guò)輸入輸出界面與系統(tǒng)進(jìn)行交互,用戶對(duì)系統(tǒng)的評(píng)價(jià)大多是基于輸入輸出界面。系統(tǒng)的輸入是向后臺(tái)數(shù)據(jù)庫(kù)錄入數(shù)據(jù),而系統(tǒng)為用戶服務(wù)主要是通過(guò)輸出的功能,即把后臺(tái)數(shù)據(jù)庫(kù)運(yùn)行的結(jié)果顯示出來(lái)。因此,系統(tǒng)地輸入輸出要遵循少量的輸入,少轉(zhuǎn)換數(shù)據(jù)等原則。而輸出要保證數(shù)據(jù)的準(zhǔn)確性。辦公用品管理模塊的主要功能是辦公用品的申請(qǐng),因此,輸入輸出設(shè)計(jì)就顯得非常重要,輸入輸出設(shè)計(jì)的主要目的是保證用戶存取信息的準(zhǔn)確及時(shí)性。該模塊設(shè)計(jì)到了許多輸入輸出環(huán)節(jié),例如辦公用品信息的錄入、修改和查詢;辦公用品申請(qǐng)的錄入、修改和查詢等。 登錄流程系統(tǒng)開(kāi)始運(yùn)行之后,首先彈出的就是登錄界面,只有成功登錄之后才能進(jìn)入本系統(tǒng)。首先,用戶要有一個(gè)用戶名和密碼。信息管理網(wǎng)站需要很高的穩(wěn)定性和安全性,因此對(duì)用戶名不允許使用惡意的代碼作為用戶名。同時(shí)對(duì)密碼也要求保密,將密碼加密后再存入數(shù)據(jù)庫(kù),為了使用戶使用時(shí)更為發(fā)你干快捷,在本機(jī)上保存五個(gè)近期登錄的用戶名,處于系統(tǒng)安全性的考慮,密碼不作保存。如圖56所示:圖56 用戶登陸