學(xué)生成績(jī)信息管理系統(tǒng)_第1頁(yè)
學(xué)生成績(jī)信息管理系統(tǒng)_第2頁(yè)
學(xué)生成績(jī)信息管理系統(tǒng)_第3頁(yè)
學(xué)生成績(jī)信息管理系統(tǒng)_第4頁(yè)
學(xué)生成績(jī)信息管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

課程論文軟件工程題目:學(xué)生成績(jī)信息管理系統(tǒng)學(xué)院〔系〕:信息工程學(xué)院專業(yè)班級(jí):學(xué)生姓名:指導(dǎo)教師:魏洪濤摘要隨著Internet的開展,管理軟件在各行各業(yè)得到重用。學(xué)生管理系統(tǒng)是一個(gè)教育單位不可缺少的局部,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來說都至關(guān)重要,其中學(xué)生成績(jī)管理系統(tǒng)可以使管理人員方便地完成學(xué)生注冊(cè)、成績(jī)登記、修改、打印等功能,而學(xué)生也可以通過該系統(tǒng)查詢自己的成績(jī)。本文采用結(jié)構(gòu)化方法學(xué)對(duì)學(xué)生成績(jī)信息管理系統(tǒng)進(jìn)行分析、設(shè)計(jì)。在需求分析,建立三大分析模型,即數(shù)據(jù)模型、功能模型、行為模型;概要設(shè)計(jì)階段用結(jié)構(gòu)圖表達(dá);詳細(xì)設(shè)計(jì)階段的關(guān)鍵模塊用流程圖表達(dá)。關(guān)鍵詞:成績(jī)管理系統(tǒng)模型分析目錄摘要1目錄11前言〔或“緒論〞〕11.1設(shè)計(jì)任務(wù)11.1.1需求說明11.2設(shè)計(jì)內(nèi)容12需求分析12.1數(shù)據(jù)模型22.2功能模型32.3行為模型53概要設(shè)計(jì)64詳細(xì)設(shè)計(jì)95體會(huì)136參考文獻(xiàn)141前言〔或“緒論〞〕1.1設(shè)計(jì)任務(wù)1.1.1需求說明通過一個(gè)學(xué)期的學(xué)習(xí),我認(rèn)為要學(xué)好C語(yǔ)言程序這門課程,不僅要認(rèn)真閱讀課本知識(shí),更重要的是要通過上機(jī)實(shí)踐才能增強(qiáng)和穩(wěn)固我的知識(shí)。特別是作為高職生,更要注重實(shí)踐這一環(huán)節(jié),只有這樣我們才能成為合格的計(jì)算機(jī)人材。21世紀(jì)以來了,人類經(jīng)濟(jì)高速開展,人們發(fā)生了日新月異的變化,特別是計(jì)算機(jī)的應(yīng)用及普及到經(jīng)濟(jì)和社會(huì)生活的各個(gè)領(lǐng)域,使原本的舊的管理方法越來越不適應(yīng)現(xiàn)在社會(huì)的開展。許多人還停留在以前的手工操作。這大大地阻礙了人類經(jīng)濟(jì)的開展。為了適應(yīng)現(xiàn)代社會(huì)人們高度強(qiáng)烈的時(shí)間觀念,學(xué)校信息管理系統(tǒng)軟件為學(xué)校辦公室?guī)砹藰O大地方便。1.2設(shè)計(jì)內(nèi)容〔1〕建立需求分析階段三個(gè)模型〔2〕概要設(shè)計(jì)階段具體到結(jié)構(gòu)圖〔3〕詳細(xì)設(shè)計(jì)可以只針對(duì)局部關(guān)鍵的局部或模塊進(jìn)行,用流程圖表達(dá)〔4〕體會(huì)2需求分析學(xué)生成績(jī)管理是高等學(xué)校教務(wù)管理的重要組成局部,其內(nèi)容較多,為了簡(jiǎn)化設(shè)計(jì),要求設(shè)計(jì)的管理系統(tǒng)能夠完成以下幾種功能:〔1〕學(xué)生注冊(cè)登記;〔2〕登記學(xué)生成績(jī);〔3〕修改學(xué)生成績(jī);〔4〕打印一個(gè)班級(jí)學(xué)生的單科成績(jī);〔5〕求出每個(gè)學(xué)生一學(xué)期中各科的平均成績(jī);〔6〕打印某一課程成績(jī)處于指定分?jǐn)?shù)段內(nèi)的學(xué)生名單;〔7〕學(xué)生可以查詢自己的成績(jī)。2.1數(shù)據(jù)模型數(shù)據(jù)模型的三個(gè)因素為數(shù)據(jù)對(duì)象、屬性以及關(guān)系。用實(shí)體-關(guān)系圖來建立數(shù)據(jù)模型。確定系統(tǒng)實(shí)體:首先分析"學(xué)生成績(jī)管理系統(tǒng)"的用戶要求,找出該系統(tǒng)應(yīng)該包括的實(shí)體。顯然,學(xué)生、課程和成績(jī)都是系統(tǒng)的實(shí)體,并且可以初步定義它們的屬性。管理員雖然是系統(tǒng)的用戶,但其信息與系統(tǒng)處理無關(guān),因此不用作為實(shí)體。另外,由于成績(jī)信息包含了選課信息,因此選課信息不用單獨(dú)記錄。最終,確定系統(tǒng)的實(shí)體是學(xué)生、課程和成績(jī)。接著,我們分析這些實(shí)體之間的關(guān)聯(lián)關(guān)系。從實(shí)際情況得知,一個(gè)學(xué)生可以選多門課程,一門課程也可以有多個(gè)學(xué)生選修,但每個(gè)學(xué)生選一門課程必須有一個(gè)成績(jī)。根據(jù)上述分析,我們得到如下圖的實(shí)體關(guān)系圖。實(shí)體屬性定義: 學(xué)生:學(xué)號(hào)、姓名、性別、出生年月、名族、入學(xué)年月、班級(jí) 課程:課程編號(hào)、課程名稱、課程學(xué)分、課程類別、課程學(xué)時(shí) 成績(jī):學(xué)號(hào)、課程編號(hào)、分?jǐn)?shù)、考核日期圖2-1學(xué)生實(shí)體屬性圖2-2課程實(shí)體屬性圖2-3成績(jī)實(shí)體屬性圖2-4實(shí)體-關(guān)系圖2.2功能模型用數(shù)據(jù)流圖來建立功能模型。本系統(tǒng)涉及到的業(yè)務(wù)工作主要是:學(xué)生管理、系別管理、成績(jī)管理和課程管理等方面,系統(tǒng)界面可以分為管理員界面和普通用戶界面,整個(gè)系統(tǒng)劃分為下面的信息:學(xué)生根本信息〔學(xué)號(hào),姓名,性別,出生年月等〕;學(xué)生成績(jī)〔學(xué)號(hào),姓名,各科成績(jī)等〕;學(xué)生課程信息〔學(xué)號(hào),姓名,考試課程名〕。教務(wù)人員或管理員進(jìn)入管理界面后,可以輸入學(xué)生的根本信息、成績(jī)和課程信息,而學(xué)生進(jìn)入普通用戶界面后可以查詢自己的成績(jī),整體數(shù)據(jù)流圖如圖2-5所示圖2-5整體數(shù)據(jù)流圖對(duì)上面的學(xué)生成績(jī)管理模塊展開如下列圖2-6所示。圖2-6學(xué)生成績(jī)管理展開后的數(shù)據(jù)流圖對(duì)查詢學(xué)生成績(jī)展開如下列圖。圖2-7查詢局部的數(shù)據(jù)流圖繪制第0層DFD的時(shí)候,將整個(gè)系統(tǒng)看成一個(gè)加工,然后找出作用于該加工的外部實(shí)體,以及相應(yīng)的數(shù)據(jù)輸入和輸出。對(duì)于"學(xué)生成績(jī)管理系統(tǒng)"而言,整個(gè)系統(tǒng)就是一個(gè)加工"學(xué)生成績(jī)管理"。從用戶的需求描述可知,"教務(wù)人員"是數(shù)據(jù)的源點(diǎn),"學(xué)生"是數(shù)據(jù)的終點(diǎn)。另外,教務(wù)人員需要錄入學(xué)生信息、課程信息和成績(jī),說明"學(xué)生信息"、"課程信息"和"成績(jī)"是數(shù)據(jù)流;同樣,"查詢請(qǐng)求"和"查詢結(jié)果"也是數(shù)據(jù)流。根據(jù)上述分析,得到如下圖的第0層DFD。

繪制下一層數(shù)據(jù)流圖時(shí),細(xì)化第0層的加工"學(xué)生成績(jī)管理",從而描述系統(tǒng)的主要功能。從第0層DFD得知,"學(xué)生信息"是教務(wù)人員需要錄入的一個(gè)信息,因此參加一個(gè)加?quot;錄入學(xué)生信息",同樣得到"錄入課程信息"、"登記成績(jī)"兩個(gè)加工。另外,數(shù)據(jù)流"查詢請(qǐng)求"和"查詢結(jié)果"應(yīng)該由加工"查詢成績(jī)"來完成。這樣,我們用"錄入學(xué)生信息"、"錄入課程信息"、"登記學(xué)生成績(jī)"和"查詢學(xué)生成績(jī)"四個(gè)加工代替第0層的"學(xué)生成績(jī)管理",同時(shí)增加這些數(shù)據(jù)流對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ),即"學(xué)生"、"課程"和"成績(jī)",最后得到如下圖的第1層DFD。

為了繼續(xù)進(jìn)行分解,我們分析第1層DFD中的加工"查詢學(xué)生成績(jī)"。學(xué)生查詢成績(jī)時(shí)需要提供合法性檢查,因此,"查詢學(xué)生成績(jī)"可以分解為"合法性檢查"和"查詢成績(jī)"兩個(gè)處理步驟,從而形成如下圖的第2層DFD。2.3行為模型用狀態(tài)轉(zhuǎn)換圖來建立行為模型。在"學(xué)生成績(jī)管理"系統(tǒng)中,學(xué)生成績(jī)信息需要采取平安措施,我們可以采取登錄方法防止非法使用系統(tǒng)。這樣,該系統(tǒng)存在"登錄"、"正常"和"出錯(cuò)"等狀態(tài)的轉(zhuǎn)換。啟動(dòng)系統(tǒng)之后,系統(tǒng)處于"登錄"狀態(tài)。在這種狀態(tài)下,學(xué)生或管理員可以進(jìn)行登錄或取消登錄。如果取消登錄,系統(tǒng)直接退出;如果登錄失敗,系統(tǒng)進(jìn)入"出錯(cuò)處理"狀態(tài),在顯示錯(cuò)誤信息后,又重新回到"登錄"狀態(tài);如果登錄成功,系統(tǒng)進(jìn)入"正常"狀態(tài),即顯示操作界面〔管理員操作界面或普通用戶操作界面〕,當(dāng)用戶退出。系統(tǒng)整體的狀態(tài)轉(zhuǎn)換圖如圖2-8所示。圖2-8狀態(tài)轉(zhuǎn)換圖3概要設(shè)計(jì)1.學(xué)生成績(jī)管理軟件的數(shù)據(jù)結(jié)構(gòu)學(xué)生成績(jī)一般都是以班級(jí)為單位進(jìn)行管理的,一個(gè)班級(jí)用一個(gè)結(jié)點(diǎn)來表示??紤]到插入和刪除的方便,這些以班級(jí)為單位的結(jié)點(diǎn)用鏈表方式組成一個(gè)主目錄。每個(gè)結(jié)點(diǎn)有四個(gè)域:〔1〕班級(jí)代號(hào);〔2〕課程情況;〔3〕學(xué)生情況;〔4〕班級(jí)順序鏈。課程情況應(yīng)能反映出大專生所學(xué)過的全部課程。因課程是逐年增多的,所以采用鏈表結(jié)構(gòu)以便能不斷插入新的課程。該班學(xué)過的課程構(gòu)成一個(gè)課程鏈表,所以班級(jí)結(jié)點(diǎn)中的課程情況用課程鏈表表示。學(xué)生情況主要反映學(xué)生的學(xué)號(hào),姓名,每學(xué)期學(xué)生的成績(jī)情況。因?yàn)閷W(xué)號(hào)總是順序排列的,所以選用一個(gè)結(jié)構(gòu)體數(shù)組作為反映學(xué)生情況的登陸記表。該數(shù)組的下標(biāo)值接上班級(jí)結(jié)點(diǎn)中的班級(jí)號(hào)就是學(xué)號(hào)。例如,設(shè)每班學(xué)生數(shù)不超過40個(gè)人,班級(jí)號(hào)為9612,某學(xué)生在登記表中相應(yīng)分量的下標(biāo)值為26,那么該學(xué)生的學(xué)號(hào)為961226。另外,學(xué)生成績(jī)管理要分6個(gè)學(xué)期,所以在學(xué)生登記表中,開設(shè)6個(gè)指針域,每個(gè)指針指向該生某學(xué)期某門課程學(xué)成績(jī)的結(jié)點(diǎn)。各結(jié)點(diǎn)結(jié)構(gòu)如下所示:〔1〕主目錄中班級(jí)的結(jié)點(diǎn)為:班級(jí)號(hào)課程鏈班級(jí)順序鏈學(xué)生登記表〔2〕課程鏈表中的結(jié)點(diǎn):課程代號(hào)學(xué)期號(hào)二叉樹鏈課程順序鏈〔3〕分?jǐn)?shù)鏈表中的結(jié)點(diǎn)為:左鏈學(xué)號(hào)課程代號(hào)成績(jī)分?jǐn)?shù)順序右鏈為了便于登記和查詢學(xué)生的成績(jī),選擇二叉排序來存放學(xué)生的成績(jī)。每個(gè)班級(jí)的每門課程對(duì)應(yīng)一棵二叉樹。通過主目錄中班級(jí)結(jié)點(diǎn)的課程鏈找到指定的課程結(jié)點(diǎn),再通過課程結(jié)點(diǎn)中的二叉樹指針指向該門課程的成績(jī)二叉排序樹。另外通過主目錄中班級(jí)結(jié)點(diǎn)的學(xué)生登記表中的學(xué)期指針,指向該學(xué)生本學(xué)期某門課程的分?jǐn)?shù)結(jié)點(diǎn),并以分?jǐn)?shù)結(jié)點(diǎn)的分安數(shù)順序鏈勾鏈該生各門課程的成績(jī)。在登記成績(jī)和查詢分?jǐn)?shù)時(shí),都要用到課程代號(hào)。課程代號(hào)和課程名稱是一一對(duì)應(yīng)的。為了簡(jiǎn)化程序,課程名稱和代號(hào)對(duì)照表設(shè)計(jì)為一個(gè)向量,向量的下標(biāo)值就作為課程代號(hào),而向量中的元素就是課程名稱,這樣可以省去代號(hào)域。1.各模塊的功能和實(shí)現(xiàn)學(xué)生成績(jī)管理的相關(guān)功能由對(duì)應(yīng)的函數(shù)來實(shí)現(xiàn)?!?〕用戶登陸用戶進(jìn)入登陸界面后,輸入賬號(hào)密碼,系統(tǒng)會(huì)連接到數(shù)據(jù)庫(kù)進(jìn)行驗(yàn)證,假設(shè)為管理員,那么進(jìn)入管理員界面,執(zhí)行相應(yīng)的操作;假設(shè)為普通用戶〔學(xué)生〕,那么進(jìn)入普通用戶界面。〔2〕學(xué)生注冊(cè)登記學(xué)生入學(xué)后,首先應(yīng)是注冊(cè)登記。從登陸界面可以進(jìn)入注冊(cè)界面,注冊(cè)時(shí)應(yīng)先檢查該學(xué)生所在班級(jí)是否已經(jīng)登入主目錄,未登入那么假設(shè)調(diào)用新結(jié)點(diǎn)后登陸入主目錄。然后將新調(diào)入的班級(jí)結(jié)點(diǎn)中對(duì)應(yīng)域賦初值,最后再讀入學(xué)生的學(xué)號(hào)和姓名并一一填入學(xué)生登記表。這樣就完成了一個(gè)班級(jí)的注冊(cè)和登記工作?!?〕登記學(xué)生成績(jī)學(xué)生注冊(cè)后才可以登記成績(jī),所以先要檢查這個(gè)班級(jí)是否已經(jīng)注冊(cè),班級(jí)中是否有這個(gè)學(xué)生。在確認(rèn)有此學(xué)生后,登記該生成績(jī)。這時(shí)需完成兩個(gè)操作。一個(gè)查詢課程代號(hào),另一個(gè)是將成績(jī)填入二叉樹。這兩個(gè)操作分別用兩個(gè)函數(shù)來實(shí)現(xiàn):①查詢課程代號(hào);②插入二叉排序樹。有了這兩個(gè)函數(shù),登記學(xué)生成績(jī)的工作可以很方便地完成。首先查處課程代號(hào),調(diào)用課程結(jié)點(diǎn),填入課程代號(hào)和學(xué)期號(hào);再在二叉樹鏈域中置初值為NULL,將課程結(jié)點(diǎn)插入為課程鏈表的頭結(jié)點(diǎn)。接著讀入每個(gè)學(xué)生的學(xué)號(hào)和成績(jī),每個(gè)學(xué)生的每門課程都生成一分?jǐn)?shù)結(jié)點(diǎn)插入到相應(yīng)課程的二叉樹中。同時(shí),還要將該分?jǐn)?shù)結(jié)點(diǎn)鏈入該生這學(xué)期各科成績(jī)的分?jǐn)?shù)鏈表中。學(xué)生登記表中的學(xué)期指針域中存放該分?jǐn)?shù)鏈表的頭結(jié)點(diǎn)地址。〔4〕修改學(xué)生成績(jī)假設(shè)登記的學(xué)生成績(jī)有錯(cuò)誤,那么調(diào)用修改學(xué)生成績(jī)的函數(shù)便可以加以修改。修改時(shí)從主目錄出發(fā),查到班級(jí),再?gòu)膶W(xué)生登記表中查對(duì)學(xué)號(hào)和姓名,再在與學(xué)期匹配的學(xué)期指針域中取得該生的學(xué)生鏈表的頭指針,然后搜索分?jǐn)?shù)鏈表,查到指定課程的分?jǐn)?shù)結(jié)點(diǎn),就可修改成績(jī)?!?〕打印一個(gè)班級(jí)學(xué)生的單科成績(jī)由于學(xué)生成績(jī)是用二叉樹排序樹來存儲(chǔ)的,所以采用中序遍歷的方法就可以按次序打印出學(xué)姓名和成績(jī)。在打印了程序中,從主目錄開始查到班級(jí)號(hào),就可以從課程結(jié)點(diǎn)的二叉樹鏈域中取得成績(jī)二叉排序樹的頭指針;然后調(diào)用中序遍歷了程序就可進(jìn)行打印,同時(shí)可求出平均成績(jī)和各個(gè)分?jǐn)?shù)段的人數(shù)。①求出每個(gè)學(xué)生一學(xué)期中各科的平均成績(jī)此了程序從主目錄查對(duì)班級(jí)號(hào)開始,通過學(xué)生登記表中每個(gè)學(xué)生的學(xué)期指針取得各自的分?jǐn)?shù)鏈表的頭指針。順著分?jǐn)?shù)鏈就可求出該生本學(xué)期各科的平均成績(jī)。②打印某一課程成績(jī)處于指定分?jǐn)?shù)段內(nèi)的學(xué)生名單對(duì)二叉樹序樹進(jìn)行中序遍歷,但遍歷時(shí)應(yīng)判斷當(dāng)前成績(jī)是否處于分?jǐn)?shù)段內(nèi)而決定是否打印?!?〕學(xué)生查詢成績(jī)學(xué)生從登陸界面輸入賬號(hào)密碼后,系統(tǒng)連接到數(shù)據(jù)庫(kù)檢查該用戶是否注冊(cè)等信息,假設(shè)信息正確,那么進(jìn)入普通用戶界面,然后調(diào)用查詢函數(shù)即可查看成績(jī)。由以上分析,學(xué)生成績(jī)管理系統(tǒng)可以分為三個(gè)模塊:用戶登錄及注冊(cè)模塊、普通用戶功能模塊、管理員功能模塊,如圖3-1所示,管理員可以完成學(xué)生成績(jī)的登記、修改、打印功能,而學(xué)生可以完成成績(jī)的查詢功能。圖3-1系統(tǒng)總體結(jié)構(gòu)圖4詳細(xì)設(shè)計(jì)系統(tǒng)總體流程圖如圖4-1所示。圖4-1系統(tǒng)總體流程圖系統(tǒng)的局部模塊設(shè)計(jì)流程圖如下,其中矩形代表“處理〞,菱形代表“選擇〞,箭頭代表“控制流〞,圓代表“連接〞。圖4-2登錄模塊流程圖圖4-3登記成績(jī)模塊流程圖圖4-4修改模塊流程圖圖4-5學(xué)生查詢模塊流程圖圖4-6打印模塊流程圖5體會(huì)以前上課的時(shí)候,覺得老師講的內(nèi)容都聽得懂,所以系統(tǒng)設(shè)計(jì)應(yīng)該是件很容易的事,但當(dāng)自己親自動(dòng)手去分析設(shè)計(jì)每一步時(shí),才覺得自己有很多東西沒有理解透徹,比方說建立實(shí)體關(guān)系圖時(shí),就要仔細(xì)分析哪些是有實(shí)體,哪些是沒有必要作為實(shí)體的,實(shí)體的屬性應(yīng)該考慮哪些以及實(shí)體間的

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論