成教管理系統(tǒng)需求分析.doc_第1頁
成教管理系統(tǒng)需求分析.doc_第2頁
成教管理系統(tǒng)需求分析.doc_第3頁
成教管理系統(tǒng)需求分析.doc_第4頁
成教管理系統(tǒng)需求分析.doc_第5頁
已閱讀5頁,還剩34頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

本資料由-大學生創(chuàng)業(yè)/收集提供的資料1 緒 論1.1 成教管理系統(tǒng)需求分析當今時代是飛速發(fā)展的信息時代。在各行各業(yè)中離不開信息處理,這正是計算機被廣泛應用于信息管理系統(tǒng)的環(huán)境。計算機的最大好處在于利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復雜的信息管理,計算機能夠充分發(fā)揮它的優(yōu)越性。計算機進行信息管理與信息管理系統(tǒng)的開發(fā)密切相關,系統(tǒng)的開發(fā)是系統(tǒng)管理的前提。本系統(tǒng)就是為了管理好我校成人教育學生學籍、成績信息而設計的。在學校里,學校學生資料繁多,包含很多的信息數(shù)據(jù)的管理,現(xiàn)今,有很多的學校都是初步開始使用,甚至尚未使用計算機進行信息管理。根據(jù)調(diào)查得知,他們以前對信息管理的主要方式是基于文本、表格等紙介質(zhì)的手工處理,對于學生成績的統(tǒng)計和核實等往往采用算盤,計算器等工具進行,對學生考試資料,以及成績管理多用手抄進行。數(shù)據(jù)信息處理工作量大,容易出錯;由于數(shù)據(jù)繁多,容易丟失,且不易查找??偟膩碚f,缺乏系統(tǒng),規(guī)范的信息管理手段。盡管有的學校有計算機,但是尚未用于信息管理,沒有發(fā)揮它的效力,資源閑置比較突出,這就是管理信息系統(tǒng)的開發(fā)的基本環(huán)境。數(shù)據(jù)處理手工操作,工作量大,出錯率高,出錯后不易更改。學校采取手工方式對教務檔案進行管理,由于信息比較多,信息的管理工作混亂而又復雜;平時檔案資料放在檔案柜里,教師和教務處的管理員也只是當時對它比較清楚,時間一長,如再要進行查詢,就得在眾多的資料中翻閱、查找了,造成查詢費時、費力。如要對很長時間以前的成績進行更改就更困難了?;谶@此問題,我認為有必要建立一個成人教育管理系統(tǒng),使學生學籍、成績管理工作規(guī)范化,系統(tǒng)化,程序化,避免教務管理的隨意性,提高信息處理的速度和準確性,能夠及時、準確、有效的查詢和修改信息本系統(tǒng)基于WEB設計,采用B/S三層結(jié)構(gòu)體系(前端即瀏覽器,中間層即響應層,后端即數(shù)據(jù)端)。所有應用數(shù)據(jù)安裝在服務器端(后端),由中間層封裝了所有業(yè)務邏輯,負責前端與后端之間的數(shù)據(jù)傳遞和處理,數(shù)據(jù)庫的維護和系統(tǒng)功能升級只需在服務器端進行即可,客戶端不進行任何模塊的安裝與設置,從而實現(xiàn)客戶端的零維護,大大減輕管理員的工作量,并且提高了工作效率。1.2 功能模塊介紹1.2.1 學籍管理模塊(如圖1.1所示)實現(xiàn)對學校在校成教班學生、離校生檔案信息資源的查詢、統(tǒng)計、維護與管理。包括:(1)后臺管理員添加、修改(姓名、密碼、性別、身份證號、準考證號、專業(yè)、學習形式、民族、籍貫、學號、政治面貌、健康狀況、婚否、參加工作時間、放學前最高學歷、入學時間、現(xiàn)在工作單位名稱、詳細地址、聯(lián)系電話、郵政編碼、家庭地址、簡歷、社會關系、結(jié)業(yè)時間、畢業(yè)證編號、學籍變動情況、注冊日期)。2 前臺學生登陸后查詢自己的檔案信息,并可修改除姓名、準考證號、專業(yè)、學號、結(jié)業(yè)時間、畢業(yè)證編號之外的所有信息。注冊日期為程序自動提取并錄入數(shù)據(jù)庫。1.2.2 班主任管理模塊(如圖1.1所示)實現(xiàn)對學校在校成教班學生、離校生成績信息資源、畢業(yè)設計信息的查詢、統(tǒng)計、維護與管理。包括:(1) 班主任登陸后臺可添加修改刪除本班的所有學期的所有課程。(2) 班主任登陸后臺將本班學生成績添加到相應課程中,并可修改、刪除。輸入成績時按成績一(第一次考試成績)、成績二(如有補考,則輸入成績二),最終記入數(shù)據(jù)庫的成績?yōu)槌煽円缓统煽兌淖罡叱煽?。?) 班主任登陸后臺可對本班學生的畢業(yè)設計信息進行增刪改查等日常維護。(4) 學生登陸后可查詢自己的所有成績,及自己的畢業(yè)設計信息。1.2.3 超級管理模塊(如圖1.1所示)1. 新聞管理超級管理員admin登陸后臺,可對本系統(tǒng)新聞公告進行增刪改查等維護。2. 留言管理超級管理員admin登陸后臺,可回復、刪除學生提問及訪客留言。3. 班主任、專業(yè)、管理超級管理員admin登陸后臺,可對班主任、專業(yè)、課程進行增刪改查等日常維護。管理員登陸(login.asp)超級管理員班主任新聞管理專業(yè)及班主任管理添加超級管理員課程管理學生檔案管理學生成成績管理畢業(yè)設計 管理學生備注管理圖1.1成教管理系統(tǒng)功能模塊介紹1.3 B/S模式分析Browser/Server (簡稱B/S) 即瀏覽器/服務器模式,是一種從傳統(tǒng)的二層C/S模式發(fā)展起來的新的網(wǎng)絡結(jié)構(gòu)模式,其本質(zhì)是三層結(jié)構(gòu)C/S模式。B/S模式是基于Intranet 的需求而出現(xiàn)并發(fā)展的,Intranet是應用TCP/IP協(xié)議建立的企事業(yè)單位內(nèi)部專用網(wǎng)絡,它采用諸如TCP/IP、HTTP、SMTP和HTML等Internet技術和標準,能為企事業(yè)單位內(nèi)部交換信息提供服務。在B/S模式中,客戶端運行瀏覽器軟件。瀏覽器以超文本形式向Web服務器提出訪問數(shù)據(jù)庫的要求,Web服務器接受客戶端請求后,將這個請求轉(zhuǎn)化為SQL語法,并交給數(shù)據(jù)庫服務器,數(shù)據(jù)庫服務器得到請求后,驗證其合法性,并進行數(shù)據(jù)處理,然后將處理后的結(jié)果返回給Web服務器,Web 服務器再一次將得到的所有結(jié)果進行轉(zhuǎn)化,變成HTML文檔形式,轉(zhuǎn)發(fā)給客戶端瀏覽器以友好的Web頁面形式顯示出來。B/S模式管理信息系統(tǒng)基本上克服了C/S 模式管理信息系統(tǒng)的不足,其主要表現(xiàn)在: 系統(tǒng)開發(fā)、維護和升級的經(jīng)濟性對于大型的管理信息系統(tǒng),軟件開發(fā)、維護與升級的費用是非常高的,B/S模式所具有的框架結(jié)構(gòu)可以大大節(jié)省這些費用,同時,B/S模式對前臺客戶機的要求并不高,可以避免盲目進行硬件升級造成的巨大浪費。 B/S模式提供了一致的用戶界面B/S模式的應用軟件都是基于Web瀏覽器的,這些瀏覽器的界面都很相似。對于無用戶交互功能的頁面,用戶接觸的界面都是一致的,從而可以降低軟件的培訓費用。 B/S模式具有很強的開放性在B/S模式下,外部的用戶亦可通過通用的瀏覽器進行訪問。 B/S模式的結(jié)構(gòu)易于擴展由于Web 的平臺無關性,B/S模式結(jié)構(gòu)可以任意擴展,可以從一臺服務器、幾個用戶的工作組級擴展成為擁有成千上萬用戶的大型系統(tǒng)。 B/S模式具有更強的信息系統(tǒng)集成性在B/S模式下,集成了解決企事業(yè)單位各種問題的服務,而非零散的單一功能的多系統(tǒng)模式,因而它能提供更高的工作效率。 B/S模式提供靈活的信息交流和信息發(fā)布服務B/S模式借助Internet強大的信息發(fā)布與信息傳送能力可以有效地解決企業(yè)、高等學校內(nèi)部的大量不規(guī)則的信息交流。 2 數(shù)據(jù)庫理論基礎一個成功的信息管理系統(tǒng),是建立在許多條件之上的,而數(shù)據(jù)庫是其中一個非常重要的條件和關鍵技術。信息管理系統(tǒng)所涉及的數(shù)據(jù)庫設計分五個步驟:數(shù)據(jù)庫需求分析、概念設計、邏輯設計、物理設計與加載測試。數(shù)據(jù)庫的設計中,如何處理多對多的關系和如何設計主鍵,是兩個有著較大難度、需要重點考慮的問題。本章著重從SQL應用、數(shù)據(jù)庫設計范式和查詢優(yōu)化等方面來分析本系統(tǒng)的關鍵技術和實現(xiàn)難點。2.1 數(shù)據(jù)庫系統(tǒng)設計及范式分析信息系統(tǒng)的主要任務是通過大量的數(shù)據(jù)獲得管理所需要的信息,這就必須存儲和管理大量的數(shù)據(jù)。因此建立一個良好的數(shù)據(jù)組織結(jié)構(gòu)和數(shù)據(jù)庫,使整個系統(tǒng)都可以迅速、方便、準確地調(diào)用和管理所需的數(shù)據(jù),是衡量信息系統(tǒng)開發(fā)工作好壞的主要指標之一。2.1.1 數(shù)據(jù)庫系統(tǒng)設計數(shù)據(jù)庫設計主要是進行數(shù)據(jù)庫的邏輯設計,即將數(shù)據(jù)按一定的分類、分組系統(tǒng)和邏輯層次組織起來,是面向用戶的。數(shù)據(jù)庫設計時需要綜合企業(yè)各個部門的存檔數(shù)據(jù)和數(shù)據(jù)需求,分析各個數(shù)據(jù)之間的關系,按照DBMS提供的功能和描述工具,設計出規(guī)模適當、正確反映數(shù)據(jù)關系、數(shù)據(jù)冗余少、存取效率高、能滿足多種查詢要求的數(shù)據(jù)模型。數(shù)據(jù)庫設計的步驟是:(1) 數(shù)據(jù)庫結(jié)構(gòu)定義 (2) 數(shù)據(jù)表定義(3) 數(shù)據(jù)使用權限設置(4) 數(shù)據(jù)字典設計2.1.2 數(shù)據(jù)庫設計范式分析 建立起一個良好的數(shù)據(jù)指標體系,是建立數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的最重要的一環(huán)。一個良好的數(shù)據(jù)指標體系是建立DB的必要條件,但不是充分條件。我們完全可以認為所建指標體系中的一個指標類就是關系數(shù)據(jù)庫中的一個基本表,而這個指標類下面的一個個具體指標就是這個基本表中的一個字段。但如果直接按照這種方式建庫顯然還不能算最佳。對于指標體系中數(shù)據(jù)的結(jié)構(gòu)在建庫前還必須進行規(guī)范化的重新組織。 在數(shù)據(jù)的規(guī)范化表達中,一般將一組相互關聯(lián)的數(shù)據(jù)稱為一個關系(relation),而在這個關系下的每個數(shù)據(jù)指標項則被稱為數(shù)據(jù)元素(dataelement),這種關系落實到具體數(shù)據(jù)庫上就是基本表,而數(shù)據(jù)元素就是基本表中的一個字段(field)。規(guī)范化表達還規(guī)定在每一個基本表中必須定義一個數(shù)據(jù)元素為關鍵字(key),它可以唯一地標識出該表中其它相關的數(shù)據(jù)元素。 在對表的形式進行了規(guī)范化定義后,數(shù)據(jù)結(jié)構(gòu)還有五種規(guī)范化定義,定名為規(guī)范化模式,稱為范式。在這五種范式中,一般只用前三種,對于常用系統(tǒng)就足夠了。而且這五種范式是“向上兼容”的,即滿足第五范式的數(shù)據(jù)結(jié)構(gòu)自動滿足一、二、三、四范式,滿足第四范式的數(shù)據(jù)結(jié)構(gòu)自動滿足第一、二、三范式,依此類推。第一范式(first normal form,簡稱1 NF)就是指在同一表中沒有重復項出現(xiàn),如果有則應將重復項去掉。這個去掉重復項的過程就稱之為規(guī)范化處理。在本文所討論的開發(fā)方法里,1 NF實際上是沒有什么意義的。因為我們按規(guī)范化建立的指標體系和表的過程都自動保證了所有表都滿足1 NF。 第二范式(second normal form,簡稱 2 NF)是指每個表必須有一個(而且僅一個)數(shù)據(jù)元素為主關鍵字(primary key),其它數(shù)據(jù)元素與主關鍵字一一對應。只要知道了一個合同記錄的合同號,就可以唯一地在同一行中找到該合同的任何一項具體信息。通常我們稱這種關系為函數(shù)依賴(functional depEndence)關系。即表中其它數(shù)據(jù)元素都依賴于主關鍵字,或稱該數(shù)據(jù)元素唯一地被主關鍵字所標識。第三范式(third normal form,簡稱 3 NF)就是指表中的所有數(shù)據(jù)元素不但要能夠唯一地被主關鍵字所標識,而且它們之間還必須相互獨立,不存在其它的函數(shù)關系。也就是說對于一個滿足了 2NF的數(shù)據(jù)結(jié)構(gòu)來說,表中有可能存在某些數(shù)據(jù)元素依賴于其它非關鍵宇數(shù)據(jù)元素的現(xiàn)象,必須加以消除。為防止數(shù)據(jù)庫出現(xiàn)更新異常、插入異常、刪除異常、數(shù)據(jù)冗余太大等現(xiàn)象,關系型數(shù)據(jù)庫要盡量按關系規(guī)范化要求進行數(shù)據(jù)庫設計。 2.2 SQL語言介紹2.2.1 SQL基礎SQL(Structured Query Language,結(jié)構(gòu)查詢語言)是一個功能強大的數(shù)據(jù)庫語言。SQL通常使用于數(shù)據(jù)庫的通訊。ANSI(美國國家標準學會)聲稱,SQL是關系數(shù)據(jù)庫管理系統(tǒng)的標準語言。SQL語句通常用于完成一些數(shù)據(jù)庫的操作任務,比如在數(shù)據(jù)庫中更新數(shù)據(jù),或者從數(shù)據(jù)庫中檢索數(shù)據(jù)。使用SQL的常見關系數(shù)據(jù)庫管理系統(tǒng)有:Oracle、 Sybase、 Microsoft SQL Server、 Access等等。雖然絕大多數(shù)的數(shù)據(jù)庫系統(tǒng)使用SQL,但是它們同樣有它們自立另外的專有擴展功能用于它們的系統(tǒng)。但是,標準的SQL命令,比如Select、 Insert、 Update、 Delete、 Create和 Drop常常被用于完成絕大多數(shù)數(shù)據(jù)庫的操作。SQL語言有著非常突出的優(yōu)點,主要是:n 非過程化語言n 統(tǒng)一的語言n 是所有關系數(shù)據(jù)庫的公共語言2.2.2 SQL語句SQL功能強大,是一種完備的數(shù)據(jù)處理語言,不僅用于數(shù)據(jù)庫查詢,而且用于數(shù)據(jù)庫中的數(shù)據(jù)修改和更新,概括起來,它可以分成以下幾組:DML(Data Manipulation Language,數(shù)據(jù)操作語言):用于檢索或者修改數(shù)據(jù); DDL(Data Definition Language,數(shù)據(jù)定義語言): 用于定義數(shù)據(jù)的結(jié)構(gòu),比如 創(chuàng)建、修改或者刪除數(shù)據(jù)庫對象; DCL(Data Control Language,數(shù)據(jù)控制語言):用于定義數(shù)據(jù)庫用戶的權限。DML組可以細分為以下的幾個語句:SELECT:用于檢索數(shù)據(jù);INSERT:用于增加數(shù)據(jù)到數(shù)據(jù)庫;UPDATE:用于從數(shù)據(jù)庫中修改現(xiàn)存的數(shù)據(jù);DELETE:用于從數(shù)據(jù)庫中刪除數(shù)據(jù)。DDL語句可以用于創(chuàng)建用戶和重建數(shù)據(jù)庫對象。下面是DDL命令:CREATE TABLE,ALTER TABLE,DROP TABLE,CREATE INDEX,DROP INDEX下面是一個簡單SQL語句的例子:我們使用SQL語句來從Students中檢索stu_ID為15的學生姓名:SELECT Name FROM Students WHERE stu_ID = 15數(shù)據(jù)定義語言DDL:它是用來創(chuàng)建和修改數(shù)據(jù)庫結(jié)構(gòu)的一種語句,包括 Create、Alter和Drop 語句。 數(shù)據(jù)操作語言DML:包括數(shù)據(jù)查詢與數(shù)據(jù)更新。數(shù)據(jù)查詢主要是由Select語句完成,這一點不再贅述。而數(shù)據(jù)更新所造成的風險大大超過數(shù)據(jù)查詢。數(shù)據(jù)庫管理系統(tǒng)必須在更改期內(nèi)保護所存儲的數(shù)據(jù)的一致性,確保有效的數(shù)據(jù)進入數(shù)據(jù)庫,數(shù)據(jù)庫必須保持一致性,DBMS還必須協(xié)調(diào)多用戶的并行更新,以確保用戶和它們的更改不至于影響其它用戶的作業(yè)。用于修改數(shù)據(jù)庫內(nèi)容的 SQL 語句主要有以下三個: (1) Insert,向一個表中加入新的數(shù)據(jù)行 (2) Delete,從一個表中刪除數(shù)據(jù)行 (3) Update,更改數(shù)據(jù)庫中已經(jīng)存在的數(shù)據(jù) 3 ASP數(shù)據(jù)庫編程3.1 ASP簡介 Microsoft Active Server Pages 即我們所稱的 ASP ,其實是一套微軟開發(fā)的服務器端腳本環(huán)境, ASP 內(nèi)含于 IIS 3.0 和 4.0 之中 , 通過 ASP 我們可以結(jié)合 HTML 網(wǎng)頁、 ASP 指令和 ActiveX 元件建立動態(tài)、交互且高效的 WEB 服務器應用程序。有了 ASP 你就不必擔心客戶的瀏覽器是否能運行你所編寫的代碼,因為所有的程序都將在服務器端執(zhí)行,包括所有嵌在普通 HTML 中的腳本程序。當程序執(zhí)行完畢后,服務器僅將執(zhí)行的結(jié)果返回給客戶瀏覽器,這樣也就減輕了客戶端瀏覽器的負擔,大大提高了交互的速度。 以下羅列了 Active Server Pages 所獨具的一些特點:1. 使用 VBScript 、 Jscript 等簡單易懂的腳本語言,結(jié)合 HTML代碼,即可快速地完成網(wǎng)站的應用程序。 2. 無須 compile 編譯,容易編寫,可在服務器端直接執(zhí)行。 3. 使用普通的文本編輯器,如 Windows 的記事本,即可進行編輯設計。 4. 與瀏覽器無關 (Browser Independence), 用戶端只要使用可執(zhí)行 HTML 碼的瀏覽器,即可瀏覽 Active Server Pages 所設計的網(wǎng)頁內(nèi)容。 Active Server Pages 所使用的腳本語言 (VBScript 、 Jscript) 均在 WEB 服務器端執(zhí)行,用戶端的瀏覽器不需要能夠執(zhí)行這些腳本語言。 5. Active Server Pages 能與任何 ActiveX scripting 語言相容。除了可使用 VBScript 或 Jscript 語言來設計外,還通過 plug-in 的方式,使用由第三方所提供的其他腳本語言,譬如 REXX 、 Perl 、 Tcl 等。腳本引擎是處理腳本程序的 COM(Component Object Model) 物件。 6. Active Server Pages 的源程序,不會被傳到客戶瀏覽器,因而可以避免所寫的源程序被他人剽竊,也提高了程序的安全性。 7. 可使用服務器端的腳本來產(chǎn)生客戶端的腳本。 8. 物件導向( Object-oriented )。 9. ActiveX Server Components(ActiveX 服務器元件 ) 具有無限可擴充性??梢允褂?Visual Basic 、 Java 、 Visual C+ 、 COBOL 等編程語言來編寫你所需要的 ActiveX Server Component 。3.2 ASP內(nèi)置組件介紹什么叫組件(Active Server Compontents)?組件是基于Activex技術的代碼片斷,通過指定接口提供指定的一組服務,組件供給客戶端(Clients)在運行時候請求的對象。你可以理解成組件是一種程序,通過調(diào)用這種程序,你可以實現(xiàn)你在ASP程序中無法實現(xiàn)或者很難實現(xiàn)的功能,組件是一種很好的代碼重用方法。我們可以運用Active Server Pages設計制作動態(tài)、交互的Web頁面,但是一旦你開始著手工作,參與一些實際工作的時候,你會發(fā)現(xiàn)asp在某些方面功能不強,甚至不借助服務器端組件就很難實現(xiàn)某些功能,例如:數(shù)據(jù)庫操作(我們通常使用ADO,ADO就是一個組件),郵件功能,文件系統(tǒng)操作,圖形功能.但是幸運的是我們可以找到很多組件來提高ASP編程應用能力,下面對ASP內(nèi)置組件作簡單的介紹。 AD ROTATOR組件廣告輪顯組件屬性: Border,Clickable,TargetFarms方法: GetAdvertisement FILE ACCESS組件文件操作組件FileSystemObject 對象方法: CreateTextFile , OpenTestFile , CopyFile , DeleteFile, FileExists , GetExtensionName , GetFile , GetFileName , MoveFile ,CopyFolder , GetParentFolderName , GetSpecialFolder , GetTempName ,GetDrive , GetDriveName , DriveExists , Drives ,GetAbsolutePathName ,GetBaseName. CONTENT LINKING組件此組件主要用于管理網(wǎng)頁網(wǎng)址間的超文本鏈接方法: GetListCount , GetNextURL , GetPreviousDescription ,GetListIndex , GetNthDescription , GetPreviousURL ,GetNextDescription , GetNthURL. BROWER CAPABILITIES組件瀏覽器性能組件屬性: browser,version,majorver,minorver,beta,Platform, ActiveXControls,backgroundsounds,Cookies,Frames,Javaapplets ,Tables,Vbscript,Javascript,cdf.建立方法Set BrowerType = Server.CreateObject(MSWC.BrowserType)3.3 SQL語言在ASP中的應用數(shù)據(jù)庫查詢語言(SQL)是使用于關系數(shù)據(jù)庫的標準語言,被很多類型的數(shù)據(jù)庫所支持。下面簡單介紹我們平時使用最頻繁,也是本系統(tǒng)所使用的主要語句:SELECT 的語法以及使用。 語句的語法如下:SELECT all | * | distinct column1, column2FROM table1, table2WHERE condition1 | expression1 AND condition2 | rxpression2 在上面的語法中,外的語句是必須的,而內(nèi)的是可選的,對于以 | 分割的操作符,則表明語法中必須從| 分割的操作符中選擇一個。下面的語法描述同上。在SELECT.FROM.WHERE語句中其中SELECT指定需要檢索的字段,F(xiàn)ROM指定要查詢的表,WHERE指定選擇紀錄的條件,另外還可以包含ORDER BY語句來制定排序紀錄。語法如下:ORDER BY column1 | Integer ASC | DESC其中column1制定排序的字段,也可以使用Integer指定的字段索引來排序,ASC為升序、DESC為降序。在SELECT語句的WHERE中,我們可以使用操作符號 來比較大小以及使用LIKE進行匹配。在WHERE語句中,可以使用的操作符有以下幾類:1、比較操作符 包含 =、=、 #1980-10-01#而在使用通配符和LIKE操作符時,需要使用引號而不是#號,例如 WHERE BirthDay LIKE 1990-01-*。引號告訴數(shù)據(jù)庫引擎將日期當字符串處理,而#號告訴數(shù)據(jù)庫引擎將日期當數(shù)字處理。4 成教管理信息系統(tǒng)設計4.1 成教管理系統(tǒng)數(shù)據(jù)庫設計4.1.1 概念設計在概念設計階段中,應該從用戶的角度看待數(shù)據(jù)及處理要求和約束,產(chǎn)生一個反映用戶觀點的概念模式。然后再把概念模式轉(zhuǎn)換成邏輯模式。將概念設計從設計過程中獨立開來,使各階段的任務相對單一化,設計復雜程度大大降低,不受特定DBMS的限制。利用ER方法進行數(shù)據(jù)庫的概念設計,可分成三步進行:首先設計局部ER模式,然后把各局部ER模式綜合成一個全局模式,最后對全局ER模式進行優(yōu)化,得到最終的模式,即概念模式。(1)設計局部ER模式(如圖4.1)實體和屬性的定義:學生id (自動編號)、stu_name (姓名)、stu_pw (密碼)、stu_sex(性別)、stu_card(身份證號)、stu_id(準考證號)、spe_name (專業(yè))、stu_style(學習形式)、stu_mz(民族)、stu_jg(籍貫)、stu_xh(學號)、stu_zz (政治面貌)、stu_jk(健康狀況)、stu_hf(婚否)、stu_cjgz(參加工作時間)、stu_xl(入學前最高學歷)、stu_rxsj(入學時間)、stu_now_name(現(xiàn)在工作單位名稱)、stu_now_address(詳細地址)、stu_now_tel(聯(lián)系電話)、stu_now_post(郵政編碼)、stu_home(家庭地址)、stu_resume(簡歷)、stu_shgx(社會關系)、stu_jysj(結(jié)業(yè)時間)、stu_byzh(畢業(yè)證編號)、stu_xjbd(學籍變動情況)、stu_date(注冊日期)管理員表(超級管理員、班主任)id (自動編號)、admin_name (管理員名)、admin_pw (管理員密碼)、check (檢查是否為超級管理員) spe_name (專業(yè)名)學生成績表stu_xh(學生學號)、 cou_id(課程編號)、stu_cj_1(學生第一次成績)stu_cj_2(學生補考成績)、stu_cj_3(學生最終成績)畢業(yè)設計表stu_xh(學生學號)、 gra_title(畢業(yè)論文題目)、gra_teacher(指導老師)、gra_db(答辯負責人)、gra_cj(答辯成績)獎懲情況表stu_xh(學生學號)、 stu_award(獎懲情況)課程表cou_id(課程編號)、cou_name(課程名)、cou_teacher(開課教師)、cou_term(開課學期)專業(yè)表spe_name (專業(yè)名)spe_teacher(班主任)學 生學 號姓 名性 別密 碼 身份證號專業(yè)地址準考證號簡 歷畢業(yè)證編號結(jié)業(yè)時間其它圖4.1 局部ER圖的設計示例 (部分屬性未列出)學 生成 績課 程專 業(yè)來、擁 有學 生MNN1專 業(yè)擁 有課 程NM圖4.2 聯(lián)系定義ER模型的“聯(lián)系”用于刻畫實體之間的關聯(lián)。一種完整的方式是對局部結(jié)構(gòu)中任意兩個實體類型,依據(jù)需求分析的結(jié)果,考察局部結(jié)構(gòu)中任意兩個實體類型之間是否存在聯(lián)系。若有聯(lián)系,進一步確定是1:N,M:N,還是1:1等。還要考察一個實體類型內(nèi)部是否存在聯(lián)系,兩個實體類型之間是否存在聯(lián)系,多個實體類型之間是否存在聯(lián)系,等等。聯(lián)系定義如圖4.2所示。解釋如下:u 一個學生可以選擇多門課程學習,而一門課程有多個學生學習;u 一個專業(yè)可以擁有多名學生,而一名學生只能選擇一個專業(yè);u 一個專業(yè)可以擁有多門課程,而一門課程也可在不同的專業(yè)講授。(2)設計全局ER模式所有局部ER模式都設計好了后,接下來就是把它們綜合成單一的全局概念結(jié)構(gòu)。全局概念結(jié)構(gòu)不僅要支持所有局部ER模式,而且必須合理地表示一個完整、一致的數(shù)據(jù)庫概念結(jié)構(gòu)。專 業(yè)班 主 任專 業(yè) 名 1擁 有學生學號 N學 生 1課程編號 M第一次成績擁 有成 績最終成績 N課 程 N開課學期開課教師課程編號課 程 名圖4.3 “成教管理系統(tǒng)”的全局ER模式(1)確定公共實體類型為了給多個局部ER模式的合并提供開始合并的基礎,首先要確定各局部結(jié)構(gòu)中的公共實體類型。在這一步中我們僅根據(jù)實體類型名和鍵來認定公共實體類型。一般把同名實體類型作為公共實體類型的一類候選,把具有相同鍵的實體類型作為公共實體類型的另一類候選。(2)局部ER模式的合并合并的原則是:首先進行兩兩合并;先和合并那些現(xiàn)實世界中有聯(lián)系的局部結(jié)構(gòu);合并從公共實體類型開始,最后再加入獨立的局部結(jié)構(gòu)。(3)消除沖突沖突分為三類:屬性沖突、結(jié)構(gòu)沖突、命名沖突。設計全局ER模式的目的不在于把若干局部ER模式形式上合并為一個ER模式,而在于消除沖突,使之成為能夠被所有用戶共同理解和接受的同一的概念模型。(4)全局ER模式的優(yōu)化在得到全局ER模式后,為了提高數(shù)據(jù)庫系統(tǒng)的效率,還應進一步依據(jù)處理需求對ER模式進行優(yōu)化。一個好的全局ER模式,除能準確、全面地反映用戶功能需求外,還應滿足下列條件:實體類型的個數(shù)要盡可能的少;實體類型所含屬性個數(shù)盡可能少;實體類型間聯(lián)系無冗余。綜上所述,“成教管理系統(tǒng)”的全局ER模式圖4.3所示。4.1.2 數(shù)據(jù)庫的實現(xiàn)本系統(tǒng)選用了SQL2000數(shù)據(jù)庫來進行數(shù)據(jù)庫的邏輯設計。首先創(chuàng)建一個數(shù)據(jù)庫:huoyan、然后建立七個基本數(shù)據(jù)庫表如表4.1-表4.7所示。表4.1 學生基本信息表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明Stu_idint4是是自動編號stu_namenvarchar50否是學生姓名stu_pwnvarchar50否是密碼stu_sexnvarchar50否是性別stu_cardnumeric9否是身份證號stu_idnumeric9否否準考證號spe_namenvarchar50否是專業(yè) stu_stylenvarchar50否是學習形式stu_mznvarchar50否是民族stu_jgnvarchar50否是籍貫stu_xhnumeric9是否學號stu_zznvarchar50否是政治面貌stu_jknvarchar50否是健康狀況stu_hfnvarchar50否是婚否stu_cjgzdatetime8否否參加工作時間stu_xlnvarchar50否是放學前最高學歷stu_rxsjdatetime8否是入學時間stu_now_namenvarchar50否否現(xiàn)在工作單位stu_now_addressnvarchar50否是詳細地址stu_now_telnumeric9否是聯(lián)系電話stu_now_postnumeric9否是郵政編碼stu_homenvarchar50否是家庭地址stu_resumentext16否是簡歷stu_shgxntext16否是社會關系stu_jysjdatetime8否否結(jié)業(yè)時間stu_byzhnumeric9否否畢業(yè)證編號stu_datedatetime8否是注冊日期stu_xjbdnvarchar50否否學籍變動情況表4.2 學生成績表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idint4是是自動編號stu_xhnumeric9是是學生學號cou_idnumeric9是是課程編號stu_cj_1numeric9否是學生第一次成績stu_cj_2numeric9否否學生補考成績stu_cj_3numeric9否是學生最終成績表4.3 課程表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idint4是是自動編號Cou_idnumeric9是是課程編號Spe_namenvarchar9否是所屬專業(yè)名cou_namenvarchar50否是課程名cou_teachernvarchar50否是開課教師cou_termnvarchar50否是開課學期表4.4 專業(yè)表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idint4是是自動編號spe_namenvarchar50是是專業(yè)名teacher_pwnvarchar50否是班主任密碼spe_teachernvarchar50否是班主任表4.5 畢業(yè)設計表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idint4是是自動編號stu_xhnumeric15是是學生學號gra_titlenvarchar30否是畢業(yè)論文題目gra_teachernvarchar15否是指導老師gra_dbnvarchar15否是答辯負責人gra_cjnumeric10否是答辯成績表4.6 管理員表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idint4是是自動編號Admin_checknvarchar50否否是否為超級管理員Spe_namenvarchar50否是專業(yè)名admin_namenvarchar50否是管理員名admin_pwnvarchar50否是管理員密碼表4.7 新聞表的結(jié)構(gòu)字段名數(shù)據(jù)類型長度是否關鍵字必填說明idnumeric15是是自動編號News_datedatetime50否是添加/修改日期News_titlenvarchar50否是新聞名News_ contentntext16否是新聞內(nèi)容4.2 學籍管理模塊的實現(xiàn)學籍管理模塊分成學生前臺注冊,管理員后員添加、修改、刪除兩個板塊。學生前臺注冊不包括學號、畢業(yè)證號等學生無權填寫的項目。stu_reg.asp文件包含script腳本語言對輸入數(shù)據(jù)進行檢查,若不允許為空的字段未輸入數(shù)據(jù),則提示錯誤。對于學號等數(shù)字類型字段,由stu_reg_save.asp進行驗證,若這些字段為非數(shù)字類型,則定義SESSION(ERROR)=YES,并response.Redirect(stu_reg.asp) 跳轉(zhuǎn)到stu_reg.asp文件,由if語句判斷并輸出出錯信息“sorry!身份證號、準考證號、學號、電話、郵編、畢業(yè)證編號必須為數(shù)字!”。若所有輸入都正確,則連接數(shù)據(jù)庫huoyan,查詢并打開student表,用addnew方法將發(fā)出請求的數(shù)據(jù)錄入數(shù)據(jù)庫,并跳轉(zhuǎn)到成功頁面ok.htm。Stu_reg.asp報錯程序流程圖見圖4.4IF判斷否是Stu_reg_save.asp錄 入判斷輸入是否完整Student 表判斷學號等字段輸入是否正確是否IF判斷刪除Stu_edit.asp修改Stu_del.asp搜索Stu_search.asp圖4.4

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論