【正文】
his 緒 論本畢業(yè)論文是以學(xué)校學(xué)生管理信息系統(tǒng)建設(shè)中的成績管理系統(tǒng)的開發(fā)為背景,論述了管理信息系統(tǒng)的概念、結(jié)構(gòu)及系統(tǒng)開發(fā)的基本原理和方法,全文共分為緒論、系統(tǒng)分析、概要設(shè)計、詳細設(shè)計、開發(fā)總結(jié)、致謝、參考文獻、附錄等。網(wǎng)絡(luò)技術(shù)的應(yīng)用使得計算機之間通信、信息共享成為可能,而數(shù)據(jù)庫技術(shù)的應(yīng)用則為人們提供了數(shù)據(jù)存儲、信息檢索、信息分析等功能,從而使得工作更高效地進行。數(shù)據(jù)庫技術(shù)體現(xiàn)了當(dāng)代先進的數(shù)據(jù)管理方法,使計算機的應(yīng)用真正滲透到國民經(jīng)濟各個部門,在數(shù)據(jù)處理領(lǐng)域發(fā)揮著越來越大的作用?;ヂ?lián)網(wǎng)技術(shù)與數(shù)據(jù)庫技術(shù)的結(jié)合為計算的在人類生活中的應(yīng)用帶來了巨大的影響。在我國,教育是一個影響著國富民強的重要行業(yè),隨著改革開放和市場經(jīng)濟的發(fā)展根據(jù)中國特有的國情發(fā)展,教育得到了國家的大力扶持與社會各界的高度重視,從而使教育業(yè)向規(guī)范性與現(xiàn)代化的方向高速發(fā)展,但是同發(fā)達國家相比,我國的教育行業(yè)的信息技術(shù)的應(yīng)用程度還很低,只有在大城市中發(fā)展較早、規(guī)模較大的院校中才使用計算機進行大規(guī)模操作,從各方面提高工作效率,取得良好的社會和經(jīng)濟效益,而一些新興的、規(guī)模較小的教育機構(gòu)還沒有全部具備這種功能。在我國,各大中小學(xué)校的各類信息管理系統(tǒng)并非一個新的課題,但也有的學(xué)校根本就沒有信息任何管理系統(tǒng),所有的工作幾乎還是手工操作來完成。隨著社會的發(fā)展,信息化是社會進程的必然趨勢,學(xué)校管理只有只有快,準(zhǔn),精才能發(fā)揮其價值。人工操作必將被計算機代替。還有,有的系統(tǒng)很不完善到處是漏洞,可以說是千瘡百孔,這樣極不完善的系統(tǒng)對管理來說是沒有任何保障的。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮更大的作用,實現(xiàn)工作過程的計算機化,提高工作效率和工作質(zhì)量,現(xiàn)提出如下的系統(tǒng)開發(fā)目標(biāo):、可靠性和適用性,同時注意到先進性。具有數(shù)據(jù)備份和恢復(fù)的功能。:在各大中小學(xué)校,用計算機管理學(xué)校的信息已經(jīng)越來越普遍了。提高了學(xué)校的管理能力,為此,用計算機來管理學(xué)校的信息,是非常必要的。 經(jīng)濟上可行性:現(xiàn)在,計算機的價格已經(jīng)十分低廉,性能卻有了長足的進步。所以,本系統(tǒng)在經(jīng)濟上是可行的。學(xué)校校園網(wǎng)的建設(shè)也為新系統(tǒng)服務(wù)器/客戶端的結(jié)構(gòu)提供了硬件的支持。綜上所述,本系統(tǒng)的設(shè)計與開發(fā)在技術(shù)上和硬件設(shè)備上的條件都是滿足的,因此,它在技術(shù)上是可行的。第二章 需求分析 21世紀(jì)以來,人類經(jīng)濟高速發(fā)展,人們發(fā)生了日新月異的變化,特別是計算機的應(yīng)用及普及到經(jīng)濟和社會生活的各個領(lǐng)域。許多人還停留在以前的手工操作。為了適應(yīng)現(xiàn)代社會人們高度強烈的時間觀念,學(xué)校信息管理系統(tǒng)軟件為學(xué)校辦公室?guī)砹藰O大的方便。新的學(xué)年,教務(wù)人員首先加入年級信息,然后編排班級,再對來校學(xué)生進行基本的信息錄入,新生入學(xué)后由教務(wù)人員在學(xué)籍系統(tǒng)中完成新學(xué)生信息的維護。并對各科老師進行安排。班主任對本班的成績匯總。教務(wù)處、年級組長、班主任及任課老師跟據(jù)實際情況對錄入的成績進行維護,各位同學(xué)對以上錄入的信息可以跟據(jù)自己的需要進行適當(dāng)?shù)牟樵?。任課老師:輸入并維護所教科目的學(xué)生成績,計算本科的成績排名、本科成績在班上的排名。班主任:輸入并維護本班的基本信息,對本班的各科成績匯總,計算各科成績的總分,排名,本班平均分等需求。教務(wù)處: 學(xué)校全體成員的信息管理,對考試科目,時間及對所考科目的編號等進行具體的管理,并對任課老師,班主任等輸入的信息進行存庫,對學(xué)生的信息進行必要的維護,可打印學(xué)生的所有信息。系統(tǒng)就滿足學(xué)校的需求,例如學(xué)生信息的錄入、查詢、更新等。系統(tǒng)就具備數(shù)據(jù)庫維護功能,及時根據(jù)用戶需求進行數(shù)據(jù)添加、刪除、修改等操作。課程管理:用于對各學(xué)期課程的開設(shè)和修改。學(xué)生信息管理:添加,刪除,修改學(xué)生信息等。學(xué)生信息查詢: 對學(xué)生成績等信息的查詢,查詢方式為模糊,且具有多條件組合查詢功能。本系統(tǒng)性能力求易于使用,具體有較高的擴展性和可維護性??煞譃槠胀ㄓ脩簦话阌脩?,超級用戶。錄入功能:為一般用戶提供相應(yīng)的錄入功能,為超級用戶提供對所有信息的錄入功能。維護功能:為一般用戶提供查詢及相應(yīng)的修改,刪除功能,為超級用戶提供對所有信息的修改刪除功能。 學(xué)生學(xué)籍系統(tǒng)的目標(biāo) 節(jié)約資源,提高學(xué)籍信息的精確度本系統(tǒng)能減少很多不必要的資源,不用象以前那樣用冗余的紙張式的管理。并且計算機的存儲與快速查詢功能大大提高了學(xué)籍管理的效率,并且還提高了學(xué)籍信息管理的精確度。為學(xué)校增加了財富。 基于B/S結(jié)構(gòu)技術(shù)的應(yīng)用 B/S結(jié)構(gòu)技術(shù)發(fā)展簡述隨著IT技術(shù)的高速發(fā)展, 互聯(lián)網(wǎng)幾乎已經(jīng)滲透到人們生活的每一個角落?;ヂ?lián)網(wǎng)的發(fā)展應(yīng)用促使網(wǎng)頁技術(shù)的產(chǎn)生。此后,隨著技術(shù)日新月異的發(fā)展,相斷出現(xiàn)了ASP,PHP,JSP等網(wǎng)站開發(fā)技術(shù),它們給網(wǎng)站開發(fā)帶來了一陣狂潮。PHP是一種跨平臺的服務(wù)器端嵌入式腳本語言。JSP是Sun公司推出的新一代網(wǎng)站開發(fā)語言,具有很強的多平臺支持和極大的伸縮能力,JSP可在Serverlet和JavaBean的支持下,建立功能強大的Web應(yīng)用程序。在這之后,它并不是ASP的簡單升級,而是全新的一個動態(tài)網(wǎng)頁實現(xiàn)體系。 動態(tài)網(wǎng)站開發(fā)技術(shù)比較現(xiàn)在,在互聯(lián)網(wǎng)中流行著多種動態(tài)網(wǎng)頁實現(xiàn)技術(shù),例如ASP、JSP、CGI、PHP等。而對于這些實現(xiàn)動態(tài)網(wǎng)頁的技術(shù)。WEB開發(fā)與數(shù)據(jù)庫是密不可分的。 Web開發(fā)最受青睞的是Microsoft公司的SQL Server 2003。在這種方式下,HTML代碼主要負責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送到瀏覽器。(2)ASP,JSP,PHP的平臺支撐區(qū)別ASP是微軟公司開發(fā)的動態(tài)網(wǎng)頁語言,也繼承了其產(chǎn)品一貫的傳統(tǒng),只能執(zhí)行于微軟的服務(wù)器產(chǎn)品IIS或者PWS上。PHP3可以在Windows,UNIX,Linux的WEB服務(wù)器上正常運行,還支持IIS,Apache等一般的Web服務(wù)器,有相當(dāng)好的跨平臺性。JSP技術(shù)基于平臺和服務(wù)器的相互獨立,技術(shù)支持由廣泛的,專門的各種工具包,服務(wù)器的組件和數(shù)據(jù)庫產(chǎn)品開發(fā)商提供,相比之下,ASP技術(shù)則主要是靠Microsoft的支持。(3)ASP,JSP,PHP的應(yīng)用情況 PHP存在著缺乏規(guī)模支持,缺乏多層結(jié)構(gòu)和提供的數(shù)據(jù)庫接口支持不統(tǒng)一等缺點,因此PHP不適合應(yīng)用于大型電子商務(wù)站點或者大型的基于B/S結(jié)構(gòu)的應(yīng)用程序,其適合應(yīng)用在一些小型的商業(yè)站點。目前國內(nèi)ASP與PHP應(yīng)用最為廣泛,尤其是ASP。(4)由于ASP的核心編輯語言為VB Script或JavaScript等腳本語言,這決定了ASP先天不足,它無法進行象傳統(tǒng)編程語言那樣的底層操作,所以如果需要進行一些諸如socket,文件等的操作時不得不借助于其它傳統(tǒng)語言。另外,ASP與PHP等都屬于解釋型的編輯架構(gòu),其運行是邊解釋邊執(zhí)行的,因此在運行效率上會有很大的損失。:(1)強大的動態(tài)Web支持:ASP雖有較大的靈活性,但效率不高,且缺乏面向?qū)ο蟮脑O(shè)計,從頁導(dǎo)致ASP代碼比較凌亂,開發(fā)維護都相對困難。(2)高效的數(shù)據(jù)訪問技術(shù):。另外,.Net內(nèi)置了XML的支持,可以處理從非Windows平臺導(dǎo)入或者導(dǎo)出的數(shù)據(jù)。(4)面向?qū)ο蟮木幊蹋?Framework中,.NET Framework及其推薦采用的語言C是完全基于面向?qū)ο蟮?。這說明語言可以用從前未有的方式交互操作。(7)可運用C:C。 三層模式是在兩層模式的基礎(chǔ)上,增加了新的一級。客戶顯示層是為客戶提供應(yīng)用服務(wù)的圖形界面,有助于用戶理解和高效的定位應(yīng)用服務(wù),負責(zé)處理用戶的輸入和向用戶的輸出,但并不負責(zé)解釋其含義(出于效率的考慮,它可能在向上傳輸用戶輸入前進行合法性驗證),這一層通常用前端工具(VB,VC,ASP等)開發(fā);業(yè)務(wù)邏輯層位于顯示層和數(shù)據(jù)層之間,專門為實現(xiàn)企業(yè)的業(yè)務(wù)邏輯提供了一個明確的層次,在這個層次封裝了與系統(tǒng)關(guān)聯(lián)的應(yīng)用模型,并把用戶表示層和數(shù)據(jù)庫代碼分開。數(shù)據(jù)層是三層模式中最底層,他用來定義、維護、訪問和更新數(shù)據(jù)并管理和滿足應(yīng)用服務(wù)對數(shù)據(jù)的請求。對于環(huán)境和應(yīng)用條件經(jīng)常變動的情況,只要對應(yīng)用層實施相應(yīng)的改變,就能夠達到目的。單個應(yīng)用服務(wù)器可以為處于不同平臺的客戶應(yīng)用程序提供服務(wù),在很大程度上節(jié)省了開發(fā)時間和資金投入;③較好的安全性。④增強了企業(yè)對象的重復(fù)可用性。隨著組件技術(shù)的發(fā)展,這種可重用的組件模式越來越為軟件開發(fā)所接受。⑥三層模式可以將服務(wù)集中在一起管理,統(tǒng)一服務(wù)于客戶端,從而具備了良好的容錯能力和負載平衡能力。它可以使程序具有更好的擴展性,靈活性,安全性,平臺無關(guān)性以及可維護性。前端為HTML,asp,aspx等,,.,后面為數(shù)據(jù)庫服務(wù)器。學(xué)生成績管理信息系統(tǒng)是由 Web后臺進行統(tǒng)一管理,所有業(yè)務(wù)邏輯都集中在Web應(yīng)用程序中管理和制定,具有數(shù)據(jù)的錄入和查詢統(tǒng)計等功能,客戶端的分布廣泛,數(shù)據(jù)集中處理,因此在設(shè)計時充分考慮各種體系結(jié)構(gòu)的優(yōu)缺點,選擇三層WEB模式進行開發(fā)實現(xiàn)。面向?qū)ο缶幊叹邆淞藥讉€優(yōu)點,比如:代碼維護方便、可擴展性好、支持代碼重用技術(shù)等等。下面我們就來談?wù)劽嫦驅(qū)ο蠹夹g(shù)的這些優(yōu)點:(1)可管理性 維護簡單對于面向過程的開發(fā)來說,版本管理主要是管理函數(shù)以及全程變量,而函數(shù)可以有很大的變動,同樣,全程變量也可以有較大的變動,但是,對于面向?qū)ο蟪绦蛟O(shè)計來講,一個系統(tǒng)是有對象來組成的,而對象是由類生成的,因此只需管理類就行,一個系統(tǒng)中,類是相對穩(wěn)定的,因此便于管理.(2)模塊化是面向?qū)ο缶幊讨械囊粋€特征。(3)可擴充性是對現(xiàn)代應(yīng)用軟件提出的又一個重要要求,即要求應(yīng)用軟件能夠很方便,容易的進行擴充和修改,這種擴充和修改的范圍不但涉及到軟件的內(nèi)容,。,沒有必要進行作大的改動,可以利用繼承,在征求用戶的意見,在加入新的類,以及類的方法與屬性等.(4)代碼重用,封裝,繼承,多態(tài)的四大特點都無一例外,,并且類是作為一個獨立實體而存在的,提供一個類庫就非常簡單了。更令人高興的是,我們可以通過提供符合需求的類來擴充這些功能。Visual 是一套完整的開發(fā)工具,用于生成 ASP Web 應(yīng)用程序、XML Web services、桌面應(yīng)用程序和移動應(yīng)用程序。另外, Framework 的功能,此框架提供對簡化 ASP Web 應(yīng)用程序和 XML Web services 開發(fā)的關(guān)鍵技術(shù)的訪問。Visual Studio 包含基于組件的開發(fā)工具(如 Visual C、Visual J、Visual Basic 和 Visual C++),以及許多用于簡化基于小組的解決方案的設(shè)計、開發(fā)和部署的其他技術(shù)。(2) Active Server Page(ASP)的下一個版本,而且是一種建立在通用語言上的程序構(gòu)架,能被用于一臺Web服務(wù)器來建立強大的Web應(yīng)用程序。不像以前的ASP即時解釋程序,而是將程序在服務(wù)器端首次運行時進行編譯,這樣的執(zhí)行效果,當(dāng)然比一條一條的解釋強很多。強大性和適應(yīng)性,所以它的強大性和適應(yīng)性,可以使它運行在Web應(yīng)用軟件開發(fā)者的幾乎全部的平臺上(筆者到現(xiàn)在為止只知道它只能用在Windows 2000 Server上)。所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經(jīng)支持的有C(C++和Java的結(jié)合體),VB,Jscript。簡單性和易學(xué)性、分布系統(tǒng)和網(wǎng)站配置變得非常簡單。另外,通用語言簡化開發(fā)使把代碼結(jié)合成軟件簡單的就像裝配電腦。因為配置信息都保存在簡單文本中,新的設(shè)置有可能都不需要啟動本地的管理員工具就可以實現(xiàn)。不需要系統(tǒng)的重新啟動,一切就是這么簡單。將來多處理器運行時不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點。這與原來的包含關(guān)系不同。安全性基于Windows認證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時絕對安全的??梢酝ㄟ^在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 功能,隨時增強 ASP 應(yīng)用程序的功能。將程序在服務(wù)器端首次運行時進行編譯, 兼容的語言(包括 Visual 、C 和 .)創(chuàng)作應(yīng)用程序。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點,其中包括托管的公共語言運行庫環(huán)境、類型安全、繼承等等。這不僅使得 Web 開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點,包括開發(fā)人員可以用來將服務(wù)器控件拖放到 Web 頁的 GUI 和完全集成的調(diào)試支持。每個功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗證方案,緩存經(jīng)常使用的數(shù)據(jù), 數(shù)據(jù)庫系統(tǒng)選擇 本系統(tǒng)將采用Microsoft SQL Server2000作為系統(tǒng)的DBMS支撐,SQL Server2000是能夠支持企業(yè)級關(guān)系型數(shù)據(jù)庫的管理系統(tǒng),它能與Windows操作系統(tǒng)緊密集成,具有方便易用的圖形管理界面,其用戶界面風(fēng)格與Windows一樣非常友好。而其相對Oracle,DB/2等大型數(shù)據(jù)庫來說,學(xué)習(xí)更為容易,應(yīng)用成本也相對較低。SQL Server2000的新特點:動態(tài)的自我管理:SQL Server2000運行時動態(tài)配置運行環(huán)境,優(yōu)化并簡化了許多服務(wù)器配置選項,可隨用戶增多或者減少動態(tài)地請求追加或者釋放資源,并可隨數(shù)據(jù)的增減自動改變數(shù)據(jù)庫大小。系統(tǒng)管理員可以在運行SQL Server Enterprise Manager的中央控制臺上,管理和監(jiān)視服務(wù)器運行性能和企業(yè)數(shù)據(jù)庫。也可以使用SQLDMO為不同站點的通用的管理任務(wù)建立應(yīng)用程序。同時其還具有動態(tài)自我調(diào)解的特性,能有效地在筆記本或者PC上運行。系統(tǒng)訪問Internet集成:SQL Server 2000與其他產(chǎn)品一起為Internet或Intranet系統(tǒng)形成一個穩(wěn)定的安全的數(shù)據(jù)存儲;可為運行在IIS下的Web應(yīng)用程序提供一個高性能的數(shù)據(jù)存儲服務(wù);此外,SQL Server2000數(shù)據(jù)庫引擎還包括了對XML的本地支持,TransactSQL結(jié)果可以作為XML文檔返回給使用OLEBD和ADO API的應(yīng)用程序,XML文檔還可以添加到SQL Server 2000中。 開發(fā)方法的選擇在開發(fā)方法的選擇上,選擇了演繹式原型法與生命周期法相結(jié)合的方法。系統(tǒng)完成什么功能,分成哪幾個部分,各個部分又有哪幾個模塊,都已理解掌握,且以后不需要做更大的變動,只是具體到每個模塊,還沒有全部實現(xiàn)。信息系統(tǒng)的開發(fā)是一項比較復(fù)雜的工作,我們必須選用科學(xué)的有效的開發(fā)方法。那么根據(jù)本系統(tǒng)開發(fā)的要求,本系統(tǒng)選擇了生命周期法和原型法相結(jié)合的方