




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
PAGEPAGE33畢業(yè)設(shè)計(jì)(論文)說明書題目:學(xué)生成績管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)作者:系院:專業(yè):計(jì)算機(jī)班級:指導(dǎo)老師:摘要本系統(tǒng)依據(jù)開發(fā)要求主要應(yīng)用于教育系統(tǒng),完成對日常的教育工作中學(xué)生成績檔案的數(shù)字化管理。開發(fā)本系統(tǒng)可使學(xué)院教職員工減輕工作壓力,比較系統(tǒng)地對教務(wù)、教學(xué)上的各項(xiàng)服務(wù)和信息進(jìn)行管理,同時(shí),可以減少勞動力的使用,加快查詢速度、加強(qiáng)管理,以及國家各部門關(guān)于信息化的步伐,使各項(xiàng)管理更加規(guī)范化。目前,學(xué)校工作繁雜、資料重多,雖然各類管理信息系統(tǒng)已進(jìn)入高校,但還未普及,而對于學(xué)生成績管理來說,目前還沒有一套完整的、統(tǒng)一的系統(tǒng)。因此,開發(fā)一套適和大眾的、兼容性好的系統(tǒng)是很有必要的。本系統(tǒng)在開發(fā)過程中,注意使其符合操作的業(yè)務(wù)流程,并力求系統(tǒng)的全面性、通用性,使得本系統(tǒng)不只適用于一家教育機(jī)構(gòu)。在開發(fā)方法的選擇上,選擇了生命周期法與原型法相結(jié)合的方法,遵循系統(tǒng)調(diào)查研究、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)和系統(tǒng)實(shí)施四個(gè)主要階段進(jìn)行設(shè)計(jì),而在具體的設(shè)計(jì)上,采取了演化式原型法,隨著用戶的使用及對系統(tǒng)了解的不斷加深,對某一部分或幾部分進(jìn)行重新分析、設(shè)計(jì)、實(shí)施。本論文主要從系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施與使用等幾個(gè)方面進(jìn)行介紹。
學(xué)生信息管理系統(tǒng)是典型的信息管理系統(tǒng),經(jīng)過分析,我們使用MICROSOFT公司的VISUALBASIC開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具,尤其首先在短時(shí)間內(nèi)建立系統(tǒng)應(yīng)用原型,然后,對初始原型系統(tǒng)進(jìn)行需求迭代,不斷修正和改進(jìn),直到形成用戶滿意的可行系統(tǒng)。本系統(tǒng)主要用于學(xué)生成績管理,總體任務(wù)是實(shí)現(xiàn)學(xué)生成績信息的系統(tǒng)化、規(guī)范化和自動化。其主要任務(wù)是用計(jì)算機(jī)對學(xué)生各科成績進(jìn)行管理,如修改、增加、刪除,另外還考慮到學(xué)生名次的排序等,針對這些要求設(shè)計(jì)了學(xué)生成績管理系統(tǒng)。
【關(guān)鍵詞】成績管理信息系統(tǒng)信息化數(shù)據(jù)庫A第一章緒論本次論文是以學(xué)校學(xué)生管理信息系統(tǒng)建設(shè)中的成績管理系統(tǒng)的開發(fā)為背景,論述了管理信息系統(tǒng)的概念、結(jié)構(gòu)及系統(tǒng)開發(fā)的基本原理和方法,全文共分為緒論、系統(tǒng)分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、開發(fā)總結(jié)、致謝、參考文獻(xiàn)、附錄等。
1.1問題的提出隨著計(jì)算機(jī)技術(shù)的發(fā)展,特別是計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)與數(shù)據(jù)庫技術(shù)的發(fā)展,使用人們的生活與工作方式發(fā)生了很大的改觀。網(wǎng)絡(luò)技術(shù)的應(yīng)用使得計(jì)算機(jī)之間通信、信息共享成為可能,而數(shù)據(jù)庫技術(shù)的應(yīng)用則為人們提供了數(shù)據(jù)存儲、信息檢索、信息分析等功能,從而使得工作更高效地進(jìn)行。數(shù)據(jù)庫始于20世紀(jì)60年代,經(jīng)過40多年的發(fā)展,現(xiàn)在已經(jīng)形成了理論體系,成為計(jì)算機(jī)軟件的一個(gè)重要分支。數(shù)據(jù)庫技術(shù)體現(xiàn)了當(dāng)代先進(jìn)的數(shù)據(jù)管理方法,使計(jì)算機(jī)的應(yīng)用真正滲透到國民經(jīng)濟(jì)各個(gè)部門,在數(shù)據(jù)處理領(lǐng)域發(fā)揮著越來越大的作用。而互聯(lián)網(wǎng)技術(shù)的出現(xiàn),更是進(jìn)一步豐富的人類生活,數(shù)字化生存已經(jīng)一步步走進(jìn)我們的生活與工作?;ヂ?lián)網(wǎng)技術(shù)與數(shù)據(jù)庫技術(shù)的結(jié)合為計(jì)算的在人類生活中的應(yīng)用帶來了巨大的影響。產(chǎn)業(yè)信息化,管理現(xiàn)代化,科學(xué)化已經(jīng)成為行業(yè)發(fā)展的重要課題,這不僅是企業(yè)提高自身競爭力,甚至是國家提高綜合國力,走向國民富強(qiáng)的重要手段。在我國,教育是一個(gè)影響著國富民強(qiáng)的重要行業(yè),隨著改革開放和市場經(jīng)濟(jì)的發(fā)展根據(jù)中國特有的國情發(fā)展,教育得到了國家的大力扶持與社會各界的高度重視,從而使教育業(yè)向規(guī)范性與現(xiàn)代化的方向高速發(fā)展,但是同發(fā)達(dá)國家相比,我國的教育行業(yè)的信息技術(shù)的應(yīng)用程度還很低,只有在大城市中發(fā)展較早、規(guī)模較大的院校中才使用計(jì)算機(jī)進(jìn)行大規(guī)模操作,從各方面提高工作效率,取得良好的社會和經(jīng)濟(jì)效益,而一些新興的、規(guī)模較小的教育機(jī)構(gòu)還沒有全部具備這種功能。因此可見,隨著我國教育的迅速發(fā)展,信息技術(shù)在其上的應(yīng)用會更加廣泛和深地入。
1.2現(xiàn)有系統(tǒng)存在問題的分析在我國,各大中小學(xué)校的各類信息管理系統(tǒng)并非一個(gè)新的課題,但也有的學(xué)校根本就沒有信息任何管理系統(tǒng),所有的工作幾乎還是手工操作來完成。計(jì)算機(jī)技術(shù)在日新月異的發(fā)展,但是有的很多學(xué)校,特別是在西部貧困地區(qū),學(xué)校的種類管理都依然由手工操作來完成,這十分落后,效率極低,成本很大,而且極異出錯(cuò)。隨著社會的發(fā)展,信息化是社會進(jìn)程的必然趨勢,學(xué)校管理只有只有快,準(zhǔn),精才能發(fā)揮其價(jià)值。所以機(jī)器代替人力是必然的歷史發(fā)展趨勢,只有領(lǐng)導(dǎo)的重視和支持才能從人工操作改為計(jì)算機(jī)的自動化系統(tǒng)。人工操作必將被計(jì)算機(jī)代替。有些學(xué)校雖使用了計(jì)算機(jī),甚至管理系統(tǒng),但是仍然存在很多問題,問題一日不解決,效率就一日提不上去。還有,有的系統(tǒng)很不完善到處是漏洞,可以說是千瘡百孔,這樣極不完善的系統(tǒng)對管理來說是沒有任何保障的。1.3系統(tǒng)開發(fā)目標(biāo)與意義1.3.1系統(tǒng)開發(fā)目標(biāo)本系統(tǒng)是將現(xiàn)代化的計(jì)算機(jī)技術(shù)和傳統(tǒng)的教學(xué)、教務(wù)工作相結(jié)合,按照學(xué)院的工作流程設(shè)計(jì)完成的。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮更大的作用,實(shí)現(xiàn)工作過程的計(jì)算機(jī)化,提高工作效率和工作質(zhì)量,現(xiàn)提出如下的系統(tǒng)開發(fā)目標(biāo):1.系統(tǒng)應(yīng)具有實(shí)用性、可靠性和適用性,同時(shí)注意到先進(jìn)性。2.對各個(gè)數(shù)據(jù)庫進(jìn)行動態(tài)管理,防止混亂。3.能夠按照用戶選擇的不同的條件進(jìn)行簡單查詢和復(fù)合查詢。4.能夠?qū)Σ樵兘Y(jié)果進(jìn)行分類匯總,實(shí)現(xiàn)報(bào)表打印。5.注意數(shù)據(jù)的安全性,具有數(shù)據(jù)備份和恢復(fù)的功能。6.方便用戶的操作,盡量減少用戶的操作。1.3.2意義在各大中小學(xué)校,用計(jì)算機(jī)管理學(xué)校的信息已經(jīng)越來越普遍了。用計(jì)算機(jī)不但可以提高工作效率,而且還節(jié)省了許多人力物力,增強(qiáng)了學(xué)校資料的安全性。提高了學(xué)校的管理能力,為此,用計(jì)算機(jī)來管理學(xué)校的信息,是非常必要的。
1.4可行性分析可行性研究的目的是用最小的代價(jià)在盡可能的時(shí)間內(nèi)確定問題是否能夠解決。1.4.1經(jīng)濟(jì)上可行性現(xiàn)在,計(jì)算機(jī)的價(jià)格已經(jīng)十分低廉,性能卻有了長足的進(jìn)步。而本系統(tǒng)的開發(fā),為學(xué)校的工作效率帶來了一個(gè)質(zhì)的飛躍,為此主要表現(xiàn)有以下幾個(gè)方面:第一,本系統(tǒng)的運(yùn)行可以代替人工進(jìn)行許多繁雜的勞動;第二,本系統(tǒng)的運(yùn)行可以節(jié)省許多資源;第三,本系統(tǒng)的運(yùn)行可以大大的提高學(xué)校的工作效率;第四,本系統(tǒng)可以使敏感文檔更加安全,等等。所以,本系統(tǒng)在經(jīng)濟(jì)上是可行的。1.4.2技術(shù)上可行性本系統(tǒng)的開發(fā)利用MicrosoftSQLServer2000作為本系統(tǒng)的數(shù)據(jù)庫,它是一個(gè)支持多用戶的新型數(shù)據(jù)庫,適用于大中規(guī)模的數(shù)據(jù)量需求。學(xué)校校園網(wǎng)的建設(shè)也為新系統(tǒng)服務(wù)器/客戶端的結(jié)構(gòu)提供了硬件的支持。使用VisualS作為系統(tǒng)開發(fā)的開發(fā)環(huán)境,它提供完善的指令控制語句、類與對象的支持及豐富的數(shù)據(jù)類型,給開發(fā)高性能系統(tǒng)提供的保障為開發(fā)滿足客戶要求的系統(tǒng),保證了代碼的模塊化要求,而代碼模塊化的提高,非常有利于以后對新系統(tǒng)的擴(kuò)展與修改。綜上所述,本系統(tǒng)的設(shè)計(jì)與開發(fā)在技術(shù)上和硬件設(shè)備上的條件都是滿足的,因此,它在技術(shù)上是可行的。1.4.3運(yùn)行上可行性本系統(tǒng)為一個(gè)小型的學(xué)生信息管理系統(tǒng),所耗費(fèi)的資源非常的小,學(xué)校的電腦無論是硬件還是軟件都能夠滿足條件,因此,本系統(tǒng)在運(yùn)行上是可行的。
第二章需求分析21世紀(jì)以來,人類經(jīng)濟(jì)高速發(fā)展,人們發(fā)生了日新月異的變化,特別是計(jì)算機(jī)的應(yīng)用及普及到經(jīng)濟(jì)和社會生活的各個(gè)領(lǐng)域。使原本的舊的管理方法越來越不適應(yīng)現(xiàn)在社會的發(fā)展。許多人還停留在以前的手工操作。這大大地阻礙了人類經(jīng)濟(jì)的發(fā)展。為了適應(yīng)現(xiàn)代社會人們高度強(qiáng)烈的時(shí)間觀念,學(xué)校信息管理系統(tǒng)軟件為學(xué)校辦公室?guī)砹藰O大的方便。管理信息系統(tǒng)就是我們常說的MIS(ManagementInformationSystem),是集成了計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、信息處理技術(shù),對信息進(jìn)行收集處理、傳輸及存儲,進(jìn)行事務(wù)管理的一種人機(jī)交互的智能化計(jì)算機(jī)系統(tǒng)。軟件工程是一門旨在研究計(jì)算機(jī)軟件開發(fā)與維護(hù)的普遍原理和技術(shù)的工程學(xué)科。它的研究范圍涉及到技術(shù)方法、軟件工具、科學(xué)管理等諸多方面。實(shí)踐證明:在軟件的設(shè)計(jì)和開發(fā)過程中,運(yùn)用軟件工程的方法,可以大大提高軟件開發(fā)的成功率,能夠顯著減少軟件開發(fā)和維護(hù)中的問題。學(xué)生成績管理系統(tǒng)的設(shè)計(jì)和開發(fā)是一個(gè)較為龐大的系統(tǒng)工程,應(yīng)以軟件工程的思想和方法為指導(dǎo),進(jìn)行設(shè)計(jì)和開發(fā)。軟件工程理論對本系統(tǒng)的指導(dǎo),主要表現(xiàn)在:幫助我們理清思路,建立較為科學(xué)的結(jié)構(gòu)和開發(fā)制作流程方面。上述的各種理論,對我們設(shè)計(jì)和開發(fā)學(xué)生成績管理系統(tǒng)提供了重要的理論基礎(chǔ),同時(shí)也為我們?nèi)绾芜M(jìn)行具體的設(shè)計(jì)和開發(fā)工作,提供了必要的思路和方法。2.1教育系統(tǒng)學(xué)生管理現(xiàn)狀分析2.1.1學(xué)校工作流程分析學(xué)校工作總體規(guī)劃由教務(wù)人員在學(xué)生信息管理系統(tǒng)中完成對運(yùn)行教務(wù)處所需的基本數(shù)據(jù)的維護(hù),包括這些信息的增加、修改及對各項(xiàng)信息的變動都將在這進(jìn)行操作。新的學(xué)年,教務(wù)人員首先加入年級信息,然后編排班級,再對來校學(xué)生進(jìn)行基本的信息錄入,新生入學(xué)后由教務(wù)人員在學(xué)籍系統(tǒng)中完成新學(xué)生信息的維護(hù)。在每個(gè)學(xué)期開始,教務(wù)處根據(jù)班級的情況,以班為單位,為每個(gè)班級安排一個(gè)班主任及對此年級安排一個(gè)年級組長。并對各科老師進(jìn)行安排。每舉行一次考試后由任課老師對成績進(jìn)行錄入。班主任對本班的成績匯總。并進(jìn)行排名,然后年級組長再進(jìn)行匯總,并對本年級各科成績及總成績進(jìn)行排名。教務(wù)處、年級組長、班主任及任課老師跟據(jù)實(shí)際情況對錄入的成績進(jìn)行維護(hù),各位同學(xué)對以上錄入的信息可以跟據(jù)自己的需要進(jìn)行適當(dāng)?shù)牟樵儭?.1.2學(xué)校具體需求分析學(xué)生:對各科成績的查詢及查看本班成績排名等情況。任課老師:輸入并維護(hù)所教科目的學(xué)生成績,計(jì)算本科的成績排名、本科成績在班上的排名。輸出本班科目的成績及排名情況。班主任:輸入并維護(hù)本班的基本信息,對本班的各科成績匯總,計(jì)算各科成績的總分,排名,本班平均分等需求。輸出學(xué)生的基本信息,各科的成績及各科成績的部分,各科成績的排名,總分的排名情況。教務(wù)處:學(xué)校全體成員的信息管理,對考試科目,時(shí)間及對所考科目的編號等進(jìn)行具體的管理,并對任課老師,班主任等輸入的信息進(jìn)行存庫,對學(xué)生的信息進(jìn)行必要的維護(hù),可打印學(xué)生的所有信息。2.1.3系統(tǒng)設(shè)計(jì)思想1.采用現(xiàn)有的資源,先進(jìn)的管理系統(tǒng)開發(fā)方案,充分利用學(xué)?,F(xiàn)有的資源,減少開發(fā)中的時(shí)間和財(cái)力、物力、提高系統(tǒng)開發(fā)的水平和應(yīng)用效果。2.系統(tǒng)就滿足學(xué)校的需求,例如學(xué)生信息的錄入、查詢、更新等。學(xué)生錄入與排名。3.系統(tǒng)就具備數(shù)據(jù)庫維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)行數(shù)據(jù)添加、刪除、修改等操作。2.1.4系統(tǒng)設(shè)計(jì)分析本系統(tǒng)適用于中小學(xué)校,其功能主要分為六大類:用戶管理:用于對用戶的添加,賦于不同權(quán)限及對用戶的修改及查詢。課程管理:用于對各學(xué)期課程的開設(shè)和修改。成績管理:用于對成績的輸入、修改、匯總及排名。學(xué)生信息管理:添加,刪除,修改學(xué)生信息等。授課信息管理:對授課教師,課程號,學(xué)時(shí)數(shù),班級等信息的添加,維護(hù)等。學(xué)生信息查詢:對學(xué)生成績等信息的查詢,查詢方式為模糊,且具有多條件組合查詢功能。學(xué)生成績統(tǒng)計(jì):統(tǒng)計(jì)本科的總分,平均分等信息。本系統(tǒng)性能力求易于使用,具體有較高的擴(kuò)展性和可維護(hù)性。2.1.5系統(tǒng)功能分析
權(quán)限功能:系統(tǒng)具有動態(tài)的權(quán)限分配功能,可按用戶權(quán)限對用戶進(jìn)行分組??煞譃槠胀ㄓ脩簦话阌脩?,超級用戶。普通用戶只是查詢不能修改,一般用戶只能對授權(quán)范圍內(nèi)進(jìn)行相應(yīng)修改及刪除,超級用戶能修改、刪除所有信息。錄入功能:為一般用戶提供相應(yīng)的錄入功能,為超級用戶提供對所有信息的錄入功能。查詢功能:為所有用戶提供查詢的功能,可查詢允許范圍內(nèi)的所有信息。維護(hù)功能:為一般用戶提供查詢及相應(yīng)的修改,刪除功能,為超級用戶提供對所有信息的修改刪除功能。退出功能:結(jié)束并關(guān)閉系統(tǒng)。2.1.6學(xué)生學(xué)籍系統(tǒng)的目標(biāo)節(jié)約資源,提高學(xué)籍信息的精確度
本系統(tǒng)能減少很多不必要的資源,不用象以前那樣用冗余的紙張式的管理。大節(jié)省了學(xué)校能源。并且計(jì)算機(jī)的存儲與快速查詢功能大大提高了學(xué)籍管理的效率,并且還提高了學(xué)籍信息管理的精確度。方便快速操作,精減人員,節(jié)約開支方便快速的操作,可減少學(xué)籍信息管理的漏洞,又減少因工作的冗余出現(xiàn)的錯(cuò)誤,并且操作非常簡單,可減少許多不很必要的人員,這無論從物質(zhì)上還是工作人員的工資上都為學(xué)校節(jié)約了開支。為學(xué)校增加了財(cái)富。數(shù)據(jù)庫分析
用戶需求具體有學(xué)籍管理系統(tǒng)提供保存、更新、查詢、維護(hù)和打印,這就需求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入與輸出,實(shí)現(xiàn)有組織地、動態(tài)地存儲大量關(guān)聯(lián)數(shù)據(jù),方便用戶訪問系統(tǒng)中的數(shù)據(jù),它與文件系統(tǒng)的重要區(qū)別是數(shù)據(jù)的充分共享,交叉訪問,與應(yīng)用程序的高度獨(dú)立性。2.2
基于B/S結(jié)構(gòu)技術(shù)的應(yīng)用2.2.1
B/S結(jié)構(gòu)技術(shù)發(fā)展簡述隨著IT技術(shù)的高速發(fā)展,互聯(lián)網(wǎng)幾乎已經(jīng)滲透到人們生活的每一個(gè)角落。而網(wǎng)絡(luò)技術(shù)與數(shù)據(jù)庫技術(shù)的應(yīng)用,則大大改變的人們的學(xué)習(xí)、生活與工作的方式,提高并豐富了人類生活。互聯(lián)網(wǎng)的發(fā)展應(yīng)用促使網(wǎng)頁技術(shù)的產(chǎn)生。但在不久后,人們對靜態(tài)頁面并不滿足,隨后出現(xiàn)了采用CGI(CommonGatewayInterface通用網(wǎng)關(guān)接口)和ISAPI(InternetServerApplicationProgramInterface互聯(lián)網(wǎng)服務(wù)器應(yīng)用程序接口)來編寫網(wǎng)頁,但它們的編程比較復(fù)雜,用Perl或者是VC進(jìn)行編寫,將HTML標(biāo)識嵌入代碼中,維護(hù)相當(dāng)困難。此后,隨著技術(shù)日新月異的發(fā)展,相斷出現(xiàn)了ASP,PHP,JSP等網(wǎng)站開發(fā)技術(shù),它們給網(wǎng)站開發(fā)帶來了一陣狂潮。ASP是一個(gè)Web服務(wù)器端的開發(fā)環(huán)境,利用它可以產(chǎn)生和執(zhí)行動態(tài)的、互動的、高性能的Web服務(wù)應(yīng)用程序,ASP支持VBScript,JavaScript等多種腳本語言。PHP是一種跨平臺的服務(wù)器端嵌入式腳本語言。其大量地借用C,Java和Perl語言的語法,并耦合PHP自身的特性,使Web開發(fā)者能夠快速地生成動態(tài)頁面,PHP是完全免費(fèi)的,而且可以不受限制地獲得源代碼,甚至可以按用戶需要進(jìn)行個(gè)性化設(shè)計(jì)。JSP是Sun公司推出的新一代網(wǎng)站開發(fā)語言,具有很強(qiáng)的多平臺支持和極大的伸縮能力,JSP可在Serverlet和JavaBean的支持下,建立功能強(qiáng)大的Web應(yīng)用程序。在推出ASP之后,微軟于1998年又發(fā)布了ASP2.0,其與ASP1.0的主要區(qū)別是ASP1.0外部的組件需要實(shí)例化。在這之后,Microsoft又推出了ASP.Net,它并不是ASP的簡單升級,而是全新的一個(gè)動態(tài)網(wǎng)頁實(shí)現(xiàn)體系。ASP.Net是微軟發(fā)展的新的體系結(jié)構(gòu).NET的一部分,其策略是將互聯(lián)網(wǎng)本身作為構(gòu)建新一代操作系統(tǒng)的基礎(chǔ),對互聯(lián)網(wǎng)和操作系統(tǒng)的設(shè)計(jì)思想進(jìn)行合理延伸,這樣開發(fā)將可創(chuàng)建出擺脫設(shè)備硬件束縛的應(yīng)用程序,輕松實(shí)現(xiàn)互聯(lián)網(wǎng)連接。2.2.2動態(tài)網(wǎng)站開發(fā)技術(shù)比較現(xiàn)在,在互聯(lián)網(wǎng)中流行著多種動態(tài)網(wǎng)頁實(shí)現(xiàn)技術(shù),例如ASP、JSP、CGI、PHP等。對應(yīng)于這些動態(tài)網(wǎng)頁技術(shù),也存在有多種多樣的Web服務(wù)器系統(tǒng),例如MicrosoftIIS、Apache、ColdFusion等。而對于這些實(shí)現(xiàn)動態(tài)網(wǎng)頁的技術(shù),ASP.NET技術(shù)可以說是現(xiàn)在最為流行和應(yīng)用最為廣泛的一種。ASP.NET向世界展現(xiàn)了一種更為領(lǐng)先的技術(shù),這正是它推出不久就深受開發(fā)人員青睞的原因。WEB開發(fā)與數(shù)據(jù)庫是密不可分的。目前流行的數(shù)據(jù)庫有Microsoft公司的SQLServer2003,IBM公司的DB2,開源的MySQL,以及Oracle公司的Oracle9i等。在ASP.NETWeb開發(fā)最受青睞的是Microsoft公司的SQLServer2003。動態(tài)網(wǎng)站語言及技術(shù)比較:(1)ASP,JSP,PHP共同點(diǎn)都提供在HTML代碼中混合某種程序代碼,由語言引擎解釋執(zhí)行程序代碼的能力。在這種方式下,HTML代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴于Web服務(wù)器,而ASP,PHP,JSP頁面則需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送到瀏覽器。都是面向WEB服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。(2)ASP,JSP,PHP的平臺支撐區(qū)別ASP是微軟公司開發(fā)的動態(tài)網(wǎng)頁語言,也繼承了其產(chǎn)品一貫的傳統(tǒng),只能執(zhí)行于微軟的服務(wù)器產(chǎn)品IIS或者PWS上。雖然在UNIX下也有ChiliSoft的組件來支持ASP,但是因?yàn)锳SP本身的功能有限,所以必須通過ASP+COM的群組合來擴(kuò)充。PHP3可以在Windows,UNIX,Linux的WEB服務(wù)器上正常運(yùn)行,還支持IIS,Apache等一般的Web服務(wù)器,有相當(dāng)好的跨平臺性。JSP與ASP在技術(shù)方面有很多相似之處,都是基于WEB應(yīng)用實(shí)現(xiàn)動態(tài)交互網(wǎng)站的技術(shù)環(huán)境,但也有很多不同之處,兩者的本質(zhì)區(qū)別在于來源于不同的技術(shù)規(guī)范組織,其實(shí)現(xiàn)的基礎(chǔ)――Web服務(wù)器平臺要求不同。JSP技術(shù)基于平臺和服務(wù)器的相互獨(dú)立,技術(shù)支持由廣泛的,專門的各種工具包,服務(wù)器的組件和數(shù)據(jù)庫產(chǎn)品開發(fā)商提供,相比之下,ASP技術(shù)則主要是靠Microsoft的支持。Jsp可支持任何Web服務(wù)器,包括Apache,IIS等,并技術(shù)絕大多數(shù)的流行平臺,包括Solaris操作系統(tǒng),Windows操作系統(tǒng),MACOS,Linux及其他NUIX系列平臺。(3)ASP,JSP,PHP的應(yīng)用情況PHP存在著缺乏規(guī)模支持,缺乏多層結(jié)構(gòu)和提供的數(shù)據(jù)庫接口支持不統(tǒng)一等缺點(diǎn),因此PHP不適合應(yīng)用于大型電子商務(wù)站點(diǎn)或者大型的基于B/S結(jié)構(gòu)的應(yīng)用程序,其適合應(yīng)用在一些小型的商業(yè)站點(diǎn)。ASP和JSP則沒有以上缺陷,ASP可通過COM/DCOM獲得ActiveX規(guī)模支持,通過DCOM和TransactionServer獲得結(jié)構(gòu)支持;JSP則可通過JavaClass和EJB獲得規(guī)模支持,通過EJB/CORBA以及眾多廠商的ApplicationServer獲得結(jié)構(gòu)支持。目前國內(nèi)ASP與PHP應(yīng)用最為廣泛,尤其是ASP。而JSP則在國外非常流行,國外電子商務(wù)類的網(wǎng)站許多都采用JSP。(4)ASP.Net全新的Web開發(fā)理念與技術(shù)由于ASP的核心編輯語言為VBScript或JavaScript等腳本語言,這決定了ASP先天不足,它無法進(jìn)行象傳統(tǒng)編程語言那樣的底層操作,所以如果需要進(jìn)行一些諸如socket,文件等的操作時(shí)不得不借助于其它傳統(tǒng)語言。而PHP則存在著缺乏規(guī)模支持,缺乏多層結(jié)構(gòu)和提供的數(shù)據(jù)庫接口支持不統(tǒng)一等缺點(diǎn),只適合應(yīng)用于一些小型商務(wù)網(wǎng)站或者業(yè)務(wù)處理系統(tǒng)。另外,ASP與PHP等都屬于解釋型的編輯架構(gòu),其運(yùn)行是邊解釋邊執(zhí)行的,因此在運(yùn)行效率上會有很大的損失。所以,在開發(fā)本系統(tǒng)的時(shí)候,我選擇了微軟新一代的Web開發(fā)技術(shù)――ASP.Net。ASP.Net有以下幾個(gè)重要的優(yōu)點(diǎn):(1)強(qiáng)大的動態(tài)Web支持:ASP雖有較大的靈活性,但效率不高,且缺乏面向?qū)ο蟮脑O(shè)計(jì),從頁導(dǎo)致ASP代碼比較凌亂,開發(fā)維護(hù)都相對困難。ASP.Net為Web頁面提供了一種集成式的支持。使用ASP.Net,可以編譯頁面中的代碼,而這些代碼可以運(yùn)用高級語言來編寫,因此易于實(shí)現(xiàn)并有較高的運(yùn)行效率。(2)高效的數(shù)據(jù)訪問技術(shù):ASP.Net中可以運(yùn)用ADO.NET。ADO.NET提供了對關(guān)系數(shù)據(jù)庫和各種數(shù)據(jù)源的高效訪問。這些組件甚至可以訪問文件系統(tǒng)和目錄。另外,.Net內(nèi)置了XML的支持,可以處理從非Windows平臺導(dǎo)入或者導(dǎo)出的數(shù)據(jù)。(3)代碼共享:ASP.Net沿用.Net中引入的程序集概念,替代了傳統(tǒng)的DLL,可較好的實(shí)現(xiàn)代碼在應(yīng)用程序之間的共享方式。(4)面向?qū)ο蟮木幊蹋篈SP.Net處于.NETFramework中,.NETFramework及其推薦采用的語言C#是完全基于面向?qū)ο蟮摹?5)語言的無關(guān)性:在.NET中,VB.Net,C#,J#和ManagedC++等語言都可以編譯為通用的中間語言(IL)。這說明語言可以用從前未有的方式交互操作。(6)增強(qiáng)的安全性:每個(gè)程序集可以包含內(nèi)置的安全信息,這樣就可以非常準(zhǔn)確的控制程序集的使用方式。(7)可運(yùn)用C#:C#是.Net的一種面向?qū)ο蟮男抡Z言。這種企業(yè)編程語言帶有下一代編程語言服務(wù)運(yùn)行時(shí)(NGWSRuntime):NGWSRuntime是一個(gè)不僅管理執(zhí)行代碼、同時(shí)也提供使編程更加容易的動態(tài)環(huán)境.編譯器產(chǎn)生受管代碼以指向這種受管理執(zhí)行環(huán)境.你獲得跨平臺語言集成、跨平臺語言異常處理、增強(qiáng)安全性、版本控制、安排支持和查錯(cuò)服務(wù).支持NGWSRuntime的主要語言是C#.支持NGWS框架的很多程序是用C#寫的,C#語言借鑒了C++,但是具備現(xiàn)代化和新增的類型安全——使C#成為企業(yè)解決方案的首選語言.在企業(yè)計(jì)算領(lǐng)域,C#將會變成為用于編寫"下一代窗口服務(wù)"(NextGenerationWindowsServices,簡寫為NGWS)應(yīng)用程序的主要語言.基于C#具有如此多的優(yōu)良特性,而且又是.net開發(fā)的首選語言,因此,在開發(fā)本系統(tǒng)時(shí)我選擇了它作為開發(fā)語言。2.2.3本系統(tǒng)的開發(fā)采用Asp.Net一種全新的設(shè)計(jì)模式A之三層WEB結(jié)構(gòu)及其優(yōu)點(diǎn)三層模式是在兩層模式的基礎(chǔ)上,增加了新的一級。這種模式在邏輯上將應(yīng)用功能分為三層:客戶顯示層、業(yè)務(wù)邏輯層、數(shù)據(jù)層。客戶顯示層是為客戶提供應(yīng)用服務(wù)的圖形界面,有助于用戶理解和高效的定位應(yīng)用服務(wù),負(fù)責(zé)處理用戶的輸入和向用戶的輸出,但并不負(fù)責(zé)解釋其含義(出于效率的考慮,它可能在向上傳輸用戶輸入前進(jìn)行合法性驗(yàn)證),這一層通常用前端工具(VB,VC,ASP等)開發(fā);業(yè)務(wù)邏輯層位于顯示層和數(shù)據(jù)層之間,專門為實(shí)現(xiàn)企業(yè)的業(yè)務(wù)邏輯提供了一個(gè)明確的層次,在這個(gè)層次封裝了與系統(tǒng)關(guān)聯(lián)的應(yīng)用模型,并把用戶表示層和數(shù)據(jù)庫代碼分開。其主要功能是執(zhí)行應(yīng)用策略和封裝應(yīng)用模式,并將封裝的模式呈現(xiàn)給客戶應(yīng)用程序,它是上下兩層的紐帶,它建立實(shí)際的數(shù)據(jù)庫連接,根據(jù)用戶的請求生成SQL語句檢索或更新數(shù)據(jù)庫,并把結(jié)果返回給客戶端,這一層通常以動態(tài)鏈接庫的形式存在并注冊到服務(wù)器的注冊簿(Registry)中,它與客戶端通訊的接口符合某一特定的組件標(biāo)準(zhǔn)(如COM,CORBA),可以用任何支持這種標(biāo)準(zhǔn)的工具開發(fā);數(shù)據(jù)層是三層模式中最底層,他用來定義、維護(hù)、訪問和更新數(shù)據(jù)并管理和滿足應(yīng)用服務(wù)對數(shù)據(jù)的請求。三層模式的主要優(yōu)點(diǎn)為:①良好的靈活性和可擴(kuò)展性。對于環(huán)境和應(yīng)用條件經(jīng)常變動的情況,只要對應(yīng)用層實(shí)施相應(yīng)的改變,就能夠達(dá)到目的。②可共享性。單個(gè)應(yīng)用服務(wù)器可以為處于不同平臺的客戶應(yīng)用程序提供服務(wù),在很大程度上節(jié)省了開發(fā)時(shí)間和資金投入;③較好的安全性。在這種結(jié)構(gòu)中,客戶應(yīng)用程序不能直接訪問數(shù)據(jù),應(yīng)用服務(wù)器不僅可控制哪些數(shù)據(jù)被改變和被訪問,而且還可控制數(shù)據(jù)的改變和訪問方式。④增強(qiáng)了企業(yè)對象的重復(fù)可用性?!捌髽I(yè)對象”是指封裝了企業(yè)邏輯程序代碼,能夠執(zhí)行特定功能的對象。隨著組件技術(shù)的發(fā)展,這種可重用的組件模式越來越為軟件開發(fā)所接受。⑤三層模式成為真正意義上的“瘦客戶端”,從而具備了很高的穩(wěn)定性、延展性和執(zhí)行校率。⑥三層模式可以將服務(wù)集中在一起管理,統(tǒng)一服務(wù)于客戶端,從而具備了良好的容錯(cuò)能力和負(fù)載平衡能力。ASP.Net的運(yùn)用可以輕松地使用近年流行的三層結(jié)構(gòu)模式開發(fā)WEB站點(diǎn)或基于B/S結(jié)構(gòu)的應(yīng)用程序。它可以使程序具有更好的擴(kuò)展性,靈活性,安全性,平臺無關(guān)性以及可維護(hù)性。ASP.Net的三層結(jié)構(gòu)開發(fā)方法思想與Java類似:Java中的三層架構(gòu)為前端的HTML,JSP,Serverlet,中間層為JavaBean,EJB,后面為數(shù)據(jù)器庫服務(wù)器。而在ASP.Net中,前端為HTML,asp,aspx等,中間層為擴(kuò)展名是.vb,.cs等文件編譯而成的.dll控件,后面為數(shù)據(jù)庫服務(wù)器。多層結(jié)構(gòu)的應(yīng)用正是在對C/S結(jié)構(gòu)的總結(jié)基礎(chǔ)上產(chǎn)生的,并且也已經(jīng)擴(kuò)展到了B/S應(yīng)用開發(fā)領(lǐng)域。學(xué)生成績管理信息系統(tǒng)是由Web后臺進(jìn)行統(tǒng)一管理,所有業(yè)務(wù)邏輯都集中在Web應(yīng)用程序中管理和制定,具有數(shù)據(jù)的錄入和查詢統(tǒng)計(jì)等功能,客戶端的分布廣泛,數(shù)據(jù)集中處理,因此在設(shè)計(jì)時(shí)充分考慮各種體系結(jié)構(gòu)的優(yōu)缺點(diǎn),選擇三層WEB模式進(jìn)行開發(fā)實(shí)現(xiàn)。2.2.4面向?qū)ο蟮拈_發(fā)過程面向?qū)ο蟮能浖_發(fā)和相應(yīng)的面向?qū)ο蟮膯栴}求解是當(dāng)今計(jì)算機(jī)技術(shù)發(fā)展的重要成果和趨勢之一,C#是一種面向?qū)ο蟮恼Z言。面向?qū)ο缶幊叹邆淞藥讉€(gè)優(yōu)點(diǎn),比如:代碼維護(hù)方便、可擴(kuò)展性好、支持代碼重用技術(shù)等等。這些優(yōu)點(diǎn)是過程編程語言所不具備的。下面我們就來談?wù)劽嫦驅(qū)ο蠹夹g(shù)的這些優(yōu)點(diǎn):
(1)可管理性維護(hù)簡單對于面向過程的開發(fā)來說,版本管理主要是管理函數(shù)以及全程變量,而函數(shù)可以有很大的變動,同樣,全程變量也可以有較大的變動,但是,對于面向?qū)ο蟪绦蛟O(shè)計(jì)來講,一個(gè)系統(tǒng)是有對象來組成的,而對象是由類生成的,因此只需管理類就行,一個(gè)系統(tǒng)中,類是相對穩(wěn)定的,因此便于管理.
(2)模塊化
是面向?qū)ο缶幊讨械囊粋€(gè)特征。實(shí)體被表示為類和同一名字空間中具有相同功能的類,我們可以在名字空間中添加一個(gè)類而不會影響該名字空間的其他成員。
(3)可擴(kuò)充性
是對現(xiàn)代應(yīng)用軟件提出的又一個(gè)重要要求,即要求應(yīng)用軟件能夠很方便,容易的進(jìn)行擴(kuò)充和修改,這種擴(kuò)充和修改的范圍不但涉及到軟件的內(nèi)容,也涉及到軟件的形式和工作機(jī)制.面向?qū)ο缶幊虖谋举|(zhì)上支持?jǐn)U充性。如果有一個(gè)具有某種功能的類,就可以很快地?cái)U(kuò)充這個(gè)類,創(chuàng)建一個(gè)具有擴(kuò)充的功能的類。
面向?qū)ο蟮某绦蛟O(shè)計(jì)可以用很好的可擴(kuò)充性.這是由于類可以根據(jù)人對事物的理解而進(jìn)行豐富,沒有必要進(jìn)行作大的改動,可以利用繼承,對新的類添加屬性和方法.用它可以生成系統(tǒng)的簡單雛形,在征求用戶的意見,在加入新的類,以及類的方法與屬性等.(4)代碼重用
可重用性是面向?qū)ο筌浖_發(fā)的一個(gè)核心思路.面向?qū)ο蟪绦蛟O(shè)計(jì)的抽象,封裝,繼承,多態(tài)的四大特點(diǎn)都無一例外,或多或少的圍繞著可重用性這個(gè)核心并為之服務(wù).由于功能是被封裝在類中的,并且類是作為一個(gè)獨(dú)立實(shí)體而存在的,提供一個(gè)類庫就非常簡單了。事實(shí)上,任何一個(gè).NETFramework編程語言的程序員都可以使用.NETFramework類庫,.NETFramework類庫提供了很多的功能。更令人高興的是,我們可以通過提供符合需求的類來擴(kuò)充這些功能。
可重用性體現(xiàn)在兩個(gè)方面:(1)開發(fā)的類可以被別人以及別的項(xiàng)目使用(2)由于可以繼承,因此可以實(shí)現(xiàn)代碼級的重用.
2.2.5開發(fā)工具的選擇(1)在開發(fā)工具上,我選擇VisualStudio.NET。VisualStudio.NET是一套完整的開發(fā)工具,用于生成ASPWeb應(yīng)用程序、XMLWebservices、桌面應(yīng)用程序和移動應(yīng)用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成開發(fā)環(huán)境(IDE),該環(huán)境允許它們共享工具并有助于創(chuàng)建混合語言解決方案。另外,這些語言利用了.NETFramework的功能,此框架提供對簡化ASPWeb應(yīng)用程序和XMLWebservices開發(fā)的關(guān)鍵技術(shù)的訪問。VisualStudio.NET是用于快速生成企業(yè)級ASP.NETWeb應(yīng)用程序和高性能桌面應(yīng)用程序的工具。VisualStudio包含基于組件的開發(fā)工具(如VisualC#、VisualJ#、VisualBasic和VisualC++),以及許多用于簡化基于小組的解決方案的設(shè)計(jì)、開發(fā)和部署的其他技術(shù)。VisualStudio支持Microsoft.NETFramework,該框架提供公共語言運(yùn)行庫和統(tǒng)一編程類;ASP.NET使用這些組件來創(chuàng)建ASP.NETWeb應(yīng)用程序和XMLWebservices。(2)ASP.net不僅僅是ActiveServerPage(ASP)的下一個(gè)版本,而且是一種建立在通用語言上的程序構(gòu)架,能被用于一臺Web服務(wù)器來建立強(qiáng)大的Web應(yīng)用程序。ASP.net提供許多比現(xiàn)在的Web開發(fā)模式強(qiáng)大的的優(yōu)勢。執(zhí)行效率的大幅提高ASP.net是把基于通用語言的程序在服務(wù)器上運(yùn)行。不像以前的ASP即時(shí)解釋程序,而是將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯,這樣的執(zhí)行效果,當(dāng)然比一條一條的解釋強(qiáng)很多。世界級的工具支持ASP.net構(gòu)架是可以用Microsoft(R)公司最新的產(chǎn)品VisualS開發(fā)環(huán)境進(jìn)行開發(fā),WYSIWYG(WhatYouSeeIsWhatYouGet所見即為所得)的編輯。這些僅是ASP.net強(qiáng)大化軟件支持的一小部分。強(qiáng)大性和適應(yīng)性因?yàn)锳SP.net是基于通用語言的編譯運(yùn)行的程序,所以它的強(qiáng)大性和適應(yīng)性,可以使它運(yùn)行在Web應(yīng)用軟件開發(fā)者的幾乎全部的平臺上(筆者到現(xiàn)在為止只知道它只能用在Windows2000Server上)。通用語言的基本庫,消息機(jī)制,數(shù)據(jù)接口的處理都能無縫的整合到ASP.net的Web應(yīng)用中。ASP.net同時(shí)也是language-independent語言獨(dú)立化的,所以,你可以選擇一種最適合你的語言來編寫你的程序,或者把你的程序用很多種語言來寫,現(xiàn)在已經(jīng)支持的有C#(C++和Java的結(jié)合體),VB,Jscript。將來,這樣的多種程序語言協(xié)同工作的能力保護(hù)您現(xiàn)在的基于COM+開發(fā)的程序,能夠完整的移植向ASP.net。簡單性和易學(xué)性ASP.net是運(yùn)行一些很平常的任務(wù)如表單的提交客戶端的身份驗(yàn)證、分布系統(tǒng)和網(wǎng)站配置變得非常簡單。例如ASP.net頁面構(gòu)架允許你建立你自己的用戶分界面,使其不同于常見的VB-Like界面。另外,通用語言簡化開發(fā)使把代碼結(jié)合成軟件簡單的就像裝配電腦。高效可管理性ASP.net使用一種字符基礎(chǔ)的,分級的配置系統(tǒng),使你服務(wù)器環(huán)境和應(yīng)用程序的設(shè)置更加簡單。因?yàn)榕渲眯畔⒍急4嬖诤唵挝谋局校碌脑O(shè)置有可能都不需要啟動本地的管理員工具就可以實(shí)現(xiàn)。這種被稱為"ZeroLocalAdministration"的哲學(xué)觀念使A的基于應(yīng)用的開發(fā)更加具體,和快捷。一個(gè)ASP.net的應(yīng)用程序在一臺服務(wù)器系統(tǒng)的安裝只需要簡單的拷貝一些必須得文件,不需要系統(tǒng)的重新啟動,一切就是這么簡單。多處理器環(huán)境的可靠性ASP.net已經(jīng)被刻意設(shè)計(jì)成為一種可以用于多處理器的開發(fā)工具,它在多處理器的環(huán)境下用特殊的無縫連接技術(shù),將很大的提高運(yùn)行速度。即使你現(xiàn)在的ASP.net應(yīng)用軟件是為一個(gè)處理器開發(fā)的,將來多處理器運(yùn)行時(shí)不需要任何改變都能提高他們的效能,但現(xiàn)在的ASP確做不到這一點(diǎn)。自定義性,和可擴(kuò)展性ASP.net設(shè)計(jì)時(shí)考慮了讓網(wǎng)站開發(fā)人員可以在自己的代碼中自己定義"plug-in"的模塊。這與原來的包含關(guān)系不同,ASP.net可以加入自己定義的如何組件。網(wǎng)站程序的開發(fā)從來沒有這么簡單過。安全性基于Windows認(rèn)證技術(shù)和每應(yīng)用程序配置,你可以確性你的原程序時(shí)絕對安全的。ASP.NET的語法在很大程度上與ASP兼容,同時(shí)它還提供一種新的編程模型和結(jié)構(gòu),可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序,并提供更好的安全保護(hù)。可以通過在現(xiàn)有ASP應(yīng)用程序中逐漸添加ASP.NET功能,隨時(shí)增強(qiáng)ASP應(yīng)用程序的功能。ASP.NET是一個(gè)已編譯的、基于.NET的環(huán)境,把基于通用語言的程序在服務(wù)器上運(yùn)行。將程序在服務(wù)器端首次運(yùn)行時(shí)進(jìn)行編譯,比ASP即時(shí)解釋程序速度上要快很多.而且是可以用任何與.NET兼容的語言(包括VisualBasic.NET、C#和JScript.NET.)創(chuàng)作應(yīng)用程序。另外,任何ASP.NET應(yīng)用程序都可以使用整個(gè).NETFramework。開發(fā)人員可以方便地獲得這些技術(shù)的優(yōu)點(diǎn),其中包括托管的公共語言運(yùn)行庫環(huán)境、類型安全、繼承等等。ASP.NET可以無縫地與WYSIWYGHTML編輯器和其他編程工具(包括MicrosoftVisualStudio.NET)一起工作。這不僅使得Web開發(fā)更加方便,而且還能提供這些工具必須提供的所有優(yōu)點(diǎn),包括開發(fā)人員可以用來將服務(wù)器控件拖放到Web頁的GUI和完全集成的調(diào)試支持。當(dāng)創(chuàng)建ASP.NET應(yīng)用程序時(shí),開發(fā)人員可以使用Web窗體或XMLWebservices,或以他們認(rèn)為合適的任何方式進(jìn)行組合。每個(gè)功能都能得到同一結(jié)構(gòu)的支持,使您能夠使用身份驗(yàn)證方案,緩存經(jīng)常使用的數(shù)據(jù),或者對應(yīng)用程序的配置進(jìn)行自定義.2.2.6數(shù)據(jù)庫系統(tǒng)選擇本系統(tǒng)將采用MicrosoftSQLServer2000作為系統(tǒng)的DBMS支撐,SQLServer2000是能夠支持企業(yè)級關(guān)系型數(shù)據(jù)庫的管理系統(tǒng),它能與Windows操作系統(tǒng)緊密集成,具有方便易用的圖形管理界面,其用戶界面風(fēng)格與Windows一樣非常友好。SQLServer2000在存儲大容量數(shù)據(jù)方面,在數(shù)據(jù)的安全性和完整性方面,在分布式處理等都是適合于企業(yè)級應(yīng)用的。而其相對Oracle,DB/2等大型數(shù)據(jù)庫來說,學(xué)習(xí)更為容易,應(yīng)用成本也相對較低。采用SQLServer2000+ASP.Net開發(fā)本系統(tǒng)是一個(gè)較為理想的組合。SQLServer2000的新特點(diǎn):動態(tài)的自我管理:SQLServer2000運(yùn)行時(shí)動態(tài)配置運(yùn)行環(huán)境,優(yōu)化并簡化了許多服務(wù)器配置選項(xiàng),可隨用戶增多或者減少動態(tài)地請求追加或者釋放資源,并可隨數(shù)據(jù)的增減自動改變數(shù)據(jù)庫大小。豐富的管理工具:SQLServer2000提供了許多數(shù)據(jù)庫系統(tǒng)管理工具。系統(tǒng)管理員可以在運(yùn)行SQLServerEnterpriseManager的中央控制臺上,管理和監(jiān)視服務(wù)器運(yùn)行性能和企業(yè)數(shù)據(jù)庫??删幊痰墓芾恚篠QL分布式對象可用于編寫應(yīng)用程序,這就可以使應(yīng)用程序數(shù)據(jù)包透明地將SQLServer2000嵌入應(yīng)用程序中。也可以使用SQL-DMO為不同站點(diǎn)的通用的管理任務(wù)建立應(yīng)用程序。可能收縮性和高可能性:SQLServer2000數(shù)據(jù)庫引擎可以幾乎所有Windows平臺上運(yùn)行,是可管理上千萬個(gè)用戶的大型數(shù)據(jù)庫。同時(shí)其還具有動態(tài)自我調(diào)解的特性,能有效地在筆記本或者PC上運(yùn)行。支持?jǐn)?shù)據(jù)倉庫:SQLServer2000支持?jǐn)?shù)據(jù)倉庫。系統(tǒng)訪問Internet集成:SQLServer2000與其他產(chǎn)品一起為Internet或Intranet系統(tǒng)形成一個(gè)穩(wěn)定的安全的數(shù)據(jù)存儲;可為運(yùn)行在IIS下的Web應(yīng)用程序提供一個(gè)高性能的數(shù)據(jù)存儲服務(wù);此外,SQLServer2000數(shù)據(jù)庫引擎還包括了對XML的本地支持,Transact-SQL結(jié)果可以作為XML文檔返回給使用OLEBD和ADOAPI的應(yīng)用程序,XML文檔還可以添加到SQLServer2000中。綜上所述,在開發(fā)空警管理信息系統(tǒng)時(shí),采用SQLServer2000作為數(shù)據(jù)庫管理系統(tǒng)。2.2.7開發(fā)方法的選擇在開發(fā)方法的選擇上,選擇了演繹式原型法與生命周期法相結(jié)合的方法。具體來說,就是在系統(tǒng)開發(fā)之前對系統(tǒng)有一個(gè)總體框架設(shè)想,各功能單元的結(jié)構(gòu)和功能也比較清楚,但是還沒有具體實(shí)現(xiàn)。系統(tǒng)完成什么功能,分成哪幾個(gè)部分,各個(gè)部分又有哪幾個(gè)模塊,都已理解掌握,且以后不需要做更大的變動,只是具體到每個(gè)模塊,還沒有全部實(shí)現(xiàn)。具體地設(shè)計(jì)可能是完全實(shí)現(xiàn)一個(gè)模塊,也可能是用一個(gè)效率高地模塊代替一個(gè)舊模塊。信息系統(tǒng)的開發(fā)是一項(xiàng)比較復(fù)雜的工作,我們必須選用科學(xué)的有效的開發(fā)方法。近年來,國內(nèi)外已逐步總結(jié)出一些開發(fā)信息系統(tǒng)的方法和技術(shù),但是,從目前的情況來看,系統(tǒng)的開發(fā)技術(shù)仍是一個(gè)比較薄弱的環(huán)節(jié)。那么根據(jù)本系統(tǒng)開發(fā)的要求,本系統(tǒng)選擇了生命周期法和原型法相結(jié)合的方法?,F(xiàn)具體介紹如下:生命周期這個(gè)概念源于系統(tǒng)工程方法。廣義地說,任何系統(tǒng)均有其發(fā)生、發(fā)展、成熟、消亡或更新?lián)Q代的過程,這個(gè)過程稱為系統(tǒng)的生命周期。主要包括系統(tǒng)調(diào)查階段、系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)施及系統(tǒng)維護(hù)與評價(jià)五個(gè)部分。根據(jù)系統(tǒng)設(shè)計(jì)而對整個(gè)系統(tǒng)實(shí)施,包括物理實(shí)施,程序設(shè)計(jì),調(diào)試等。實(shí)施是最后的一步,關(guān)系著最后的成功。在建筑學(xué)和機(jī)械設(shè)計(jì)學(xué)中,“原型”指的是其結(jié)構(gòu)、大小和功能都與某個(gè)物體相類似的模擬該物體的原始模型。在管理信息系統(tǒng)開發(fā)中,用“原型”來形象地表示系統(tǒng)的一個(gè)早期可運(yùn)行版本,它能反映新系統(tǒng)的部分重要功能和特征?!霸头椒ā眲t是利用原型輔助開發(fā)系統(tǒng)的一種新方法。原型方法要求在獲得一組基本的用戶需求后,快速地實(shí)現(xiàn)新系統(tǒng)的一個(gè)“原型”,用戶、開發(fā)者及其他有關(guān)人員在試用原型的過程中,加強(qiáng)通信和反饋,通過反復(fù)評價(jià)和反復(fù)修改原型系統(tǒng),逐步確定各種需求的細(xì)節(jié),適應(yīng)需求的變化,從而最終提高新系統(tǒng)的質(zhì)量。因此可以認(rèn)為原型方法確定用戶需求的策略,它對用戶需求的定義采用啟發(fā)的方式,引導(dǎo)用戶在對系統(tǒng)逐漸加深理解的過程中作出響應(yīng)。原型法主要包括確定系統(tǒng)基本需求階段、構(gòu)造初始原型階段、原型的使用評價(jià)階段、修改原型階段和確定模型后的處理階段。原型法的基本思想是:憑借著系統(tǒng)分析人員對用戶要求的理解,在強(qiáng)有力的軟件環(huán)境支持下,快速地給出一個(gè)實(shí)實(shí)在在的模型(或稱原型、雛形),然后與用戶反復(fù)協(xié)商修改,最終形成實(shí)際系統(tǒng)。在本系統(tǒng)中選擇了演化型(EvolutionaryPrototying)原型法,其目的不在于改進(jìn)規(guī)格說明和用戶需求,而是將系統(tǒng)改造得易于變化,在改進(jìn)原型的過程中將原型演化成最終系統(tǒng)。它將原型方法的思想貫穿到系統(tǒng)開發(fā)全過程,對滿足需求的改動較為適合。2.2.8開發(fā)本系統(tǒng)的意義學(xué)生成績管理是學(xué)校管理中異常重要的一個(gè)環(huán)節(jié),作為學(xué)校,除了育人,就是育知,學(xué)生成績管理的計(jì)算機(jī)化是整個(gè)學(xué)校教務(wù)管理中的重要一部分,能否實(shí)現(xiàn)這一步關(guān)系到學(xué)校辦學(xué)整體效率的高低,介與它的重要性,學(xué)生成績管理系統(tǒng)的開發(fā)與應(yīng)用就逐漸提入議程,并占著越來越重要的份量。運(yùn)用學(xué)生成績管理系統(tǒng)可以減輕學(xué)院教學(xué)人員的工作量,縮小開支,提高工作效率與準(zhǔn)確率,能夠合理安排時(shí)間,能夠盡快的知道自己的考試成績,投入新的課程的學(xué)習(xí)或復(fù)習(xí)這次沒有考過的課程。而學(xué)生成績管理系統(tǒng)的應(yīng)用也為今天的民辦教育在未來市場的競爭力有所提高。從大的方向說,就是為了加速我國四化建設(shè)的發(fā)展,實(shí)現(xiàn)全部的自動化,使我國發(fā)展成為通訊網(wǎng)絡(luò)化,決策科學(xué)化,辦公自動化的國家。在現(xiàn)代,高科技的飛躍發(fā)展,人們工作習(xí)慣的改變,特別是電腦的大量普及,人們生活節(jié)奏越來越快,怎樣提高工作效率是人們首先考慮的問題。學(xué)生成績管理是一個(gè)非常繁瑣與復(fù)雜的一項(xiàng)工作,一個(gè)原因就是工作量大,不好管。對于一個(gè)學(xué)校而言,更應(yīng)該運(yùn)用一些本地資源,提高管理的力度,對學(xué)生負(fù)責(zé),對國家負(fù)責(zé)。2.2.9本文檔編寫目的本文檔為定義項(xiàng)目的需求,以軟件工程學(xué)的思想來組織管理并展開本次畢業(yè)設(shè)計(jì)課題的研究,以指導(dǎo)后期的系統(tǒng)分析與設(shè)計(jì),并為系統(tǒng)用戶與開發(fā)者提供參考標(biāo)準(zhǔn)。本文檔力求準(zhǔn)確,清晰地表達(dá)項(xiàng)目需求與開發(fā)過程,以保證開發(fā)過程滿足項(xiàng)目需求的正確方向進(jìn)行。Web應(yīng)用具體項(xiàng)目的確立是建立在各種條件、環(huán)境及需求之上的,通常情況下項(xiàng)目的開發(fā)與應(yīng)用,運(yùn)營的參與者擁有不同的知識結(jié)構(gòu)體系,因此,所有人員對項(xiàng)目的理解程度很大程度上決定的項(xiàng)目的建設(shè)成敗。因此,需要對系統(tǒng)之間的關(guān)系進(jìn)行詳細(xì)的設(shè)計(jì)分析說明。2.2.10定義軟件需求:IEEE軟件工程標(biāo)準(zhǔn)詞匯表(1997年)中定義軟件需求為:(1)用戶解決問題或達(dá)到目標(biāo)所需的條件或權(quán)能(Capability)。(2)系統(tǒng)或部件要滿足標(biāo)準(zhǔn)、規(guī)范或其它正式規(guī)定文檔所需具有的條件或權(quán)能。(3)一種反映上面(1)或(2)所描述的條件或權(quán)能的文檔說明同工作,以及相互之間進(jìn)行有效的交流和溝通。
第三章學(xué)生成績管理系統(tǒng)概要設(shè)計(jì)3.1系統(tǒng)設(shè)計(jì)圖例說明l.本系統(tǒng)流程圖基本圖形元素如下所示:開始與結(jié)束決策過程數(shù)據(jù)程序流向
2.程序邏輯結(jié)構(gòu)描述圖例(1)
順序結(jié)構(gòu):一個(gè)命令接一個(gè)地執(zhí)行;(2)選擇結(jié)構(gòu):(或IF-THEN-ELSE)當(dāng)一個(gè)決定有多種不同執(zhí)行結(jié)果時(shí);(3)
循環(huán)結(jié)構(gòu):只要條件成立就一直執(zhí)行.3.2系統(tǒng)設(shè)計(jì)業(yè)務(wù)目標(biāo)(業(yè)務(wù)邏輯層)3.2.1系統(tǒng)設(shè)計(jì)目標(biāo)概述成績管理信息系統(tǒng)的業(yè)務(wù)總體目標(biāo)是建立一個(gè)先進(jìn)、高效、安全、可靠的能被有效和應(yīng)用于學(xué)生成績管理的信息化數(shù)據(jù)庫管理系統(tǒng)。該系統(tǒng)基于B/S結(jié)構(gòu),即采用瀏覽器/服務(wù)器模式,服務(wù)器端由運(yùn)行ASP.Net的Web應(yīng)用程序及運(yùn)行MicrosoftSQLServer2000的數(shù)據(jù)庫服務(wù)器組成,客戶端可以InternetExplorer,F(xiàn)ireFox訪問系統(tǒng)。本信息系統(tǒng)體現(xiàn)了學(xué)生成績管理的業(yè)務(wù)邏輯行為、大大簡化了相關(guān)工作的煩瑣流程,同時(shí)為管理層提供有力的決策支持。3.2.2用戶(角色)本系統(tǒng)用戶角色主要有兩類:系統(tǒng)管理員與普通用戶。其中系統(tǒng)管理員可進(jìn)行用戶管理。普通用戶可分為學(xué)生,老師,教務(wù)處等用戶。系統(tǒng)管理員:可進(jìn)行用戶管理,組權(quán)限分配,信息查詢等工作。教師:可進(jìn)行學(xué)生信息管理,課程信息管理,成績管理,授課信息管理,信息查詢,成績統(tǒng)計(jì)等工作。學(xué)生:可進(jìn)行成績查詢等操作。3.2.3假定假定分為用戶假定和系統(tǒng)環(huán)境假定。用戶假定:系統(tǒng)管理員及普通用戶假定,即假定為具有一定的計(jì)算機(jī)操作基礎(chǔ),能熟練使用各種網(wǎng)絡(luò)軟件以及Windows操作系統(tǒng)、InternetExplorer瀏覽器等。環(huán)境假定:系統(tǒng)運(yùn)行環(huán)境假定為可建行萬維網(wǎng)信息平臺的搭建,如:互聯(lián)網(wǎng)網(wǎng)絡(luò)接入,Web服務(wù)器架設(shè)。管理功能結(jié)構(gòu)圖:
系統(tǒng)管理員功能模塊管理組權(quán)限管理記錄添加,刪除,修改
學(xué)生信息管理教師功能結(jié)構(gòu)圖:
記錄添加,刪除,修改學(xué)生成績統(tǒng)計(jì)
老師課程信息管理學(xué)生成績管理授課信息管理學(xué)生信息查詢
學(xué)生功能結(jié)構(gòu)圖:
學(xué)生成績查詢
3.3技術(shù)總體目標(biāo)3.3.1系統(tǒng)技術(shù)性能要求學(xué)生成績管理信息系統(tǒng)的技術(shù)總體目標(biāo)是應(yīng)用先進(jìn)的計(jì)算機(jī)網(wǎng)絡(luò)與數(shù)據(jù)技術(shù)為教學(xué)工作中的成績管理提供穩(wěn)定、安全、可靠信息化服務(wù),具體技術(shù)上將達(dá)到如下要求:(1)先進(jìn)性采用先進(jìn)、成熟的計(jì)算機(jī)軟硬件技術(shù),保障系統(tǒng)能夠最大限度的適應(yīng)今后技術(shù)和業(yè)務(wù)發(fā)展的需要。軟件結(jié)構(gòu)應(yīng)實(shí)現(xiàn)層次化、模塊化、平臺化,統(tǒng)一規(guī)范,同時(shí)采用先進(jìn)的現(xiàn)代管理技術(shù),以保證系統(tǒng)的科學(xué)性。(2)開放性系統(tǒng)將采用具備優(yōu)良性價(jià)比的開放式軟硬件平臺;網(wǎng)絡(luò)體系結(jié)構(gòu)支持多種通訊協(xié)議、數(shù)據(jù)庫;采用C#等通用開發(fā)語言工具;對用戶操作平臺采用主流的B/S結(jié)構(gòu)。(3)可靠性可靠性包括系統(tǒng)的穩(wěn)定性和數(shù)據(jù)的可靠性。系統(tǒng)的穩(wěn)定性需求包括:滿足7*24小時(shí)的運(yùn)行需要,發(fā)生局部硬件、網(wǎng)絡(luò)和軟件故障時(shí)有相應(yīng)的旁路技術(shù)和容錯(cuò)技術(shù),任意單點(diǎn)故障都不影響整個(gè)系統(tǒng)的運(yùn)行。數(shù)據(jù)可靠性需求包括:保證本地備份數(shù)據(jù)和實(shí)時(shí)交易數(shù)據(jù)的一致性,發(fā)生局部故障時(shí),數(shù)據(jù)不損失,發(fā)生重大事故時(shí),備份數(shù)據(jù)可以在規(guī)定的時(shí)限內(nèi)恢復(fù)。(4)高效性系統(tǒng)的設(shè)計(jì)要具有大規(guī)模的業(yè)務(wù)并發(fā)處理能力,數(shù)據(jù)的處理和傳送也可采用批量處理的形式。即使在日終數(shù)據(jù)備份和批量處理的時(shí)候也可以照常辦理業(yè)務(wù)。(5)可用性可用性包括系統(tǒng)正常情況下的可用性和系統(tǒng)發(fā)生改變時(shí)的可用性。正常情況下應(yīng)用軟件應(yīng)安裝簡單、易于操作、界面友好,數(shù)據(jù)處理工作簡單、方便、快捷。業(yè)務(wù)流程清晰,符合習(xí)慣,系統(tǒng)維護(hù)方便,備份及數(shù)據(jù)恢復(fù)快捷簡單。同時(shí)要在對硬件、軟件及應(yīng)用進(jìn)行調(diào)整時(shí)不影響原有業(yè)務(wù)的實(shí)現(xiàn)。(6)可擴(kuò)展性高可擴(kuò)展性指兩方面:一方面通過擴(kuò)充主機(jī)、CPU、磁盤、內(nèi)存等硬件可以提高性能指標(biāo),通過擴(kuò)充網(wǎng)絡(luò)可以排除阻塞、擁擠和超時(shí);另一方面通過系統(tǒng)開放式體系架構(gòu)、模塊化、參數(shù)化以及組件技術(shù),對業(yè)務(wù)量、業(yè)務(wù)種類的擴(kuò)展、與其他機(jī)構(gòu)連接的擴(kuò)展、系統(tǒng)功能擴(kuò)展等都能提供足夠的支持,縮短系統(tǒng)實(shí)施周期。(7)可管理性高可管理性包括正常情況下的可管理性和系統(tǒng)發(fā)生改變時(shí)的可管理性??晒芾硇灾赶到y(tǒng)應(yīng)具備對主機(jī)、網(wǎng)絡(luò)、數(shù)據(jù)庫、應(yīng)用等情況進(jìn)行監(jiān)控、管理和調(diào)度;對系統(tǒng)自身所有的和流經(jīng)系統(tǒng)的信息、參數(shù)、文件進(jìn)行統(tǒng)一的管理和控制。(8)安全性安全性指系統(tǒng)具有數(shù)據(jù)傳輸?shù)募用?解密、用戶身份認(rèn)證、權(quán)限確認(rèn)、日志記錄等安全控制功能。具體包括:數(shù)據(jù)保密性、傳輸安全性、訪問安全性、安全審計(jì)、網(wǎng)絡(luò)安全和系統(tǒng)安全等。系統(tǒng)安全性要求包括基于用戶的系統(tǒng)操作權(quán)限控制、某些數(shù)據(jù)的加密保護(hù)、身份鑒別。安全性能:(1)訪問者用戶驗(yàn)證方式采用基于MD5加密的用戶Form驗(yàn)證(2)定期備份數(shù)據(jù)庫以預(yù)防系統(tǒng)故障時(shí)及時(shí)恢復(fù)(3)系統(tǒng)硬件與網(wǎng)絡(luò)結(jié)構(gòu)應(yīng)滿足web應(yīng)用程序安全穩(wěn)定地運(yùn)行的需求。以達(dá)到信息的及時(shí)準(zhǔn)確處理,數(shù)據(jù)安全等??煽紤]運(yùn)用硬件防火墻及支撐軟件來預(yù)防來自網(wǎng)絡(luò)的攻擊,并采用備份服務(wù)器來備份重要數(shù)據(jù)及程序,以便出現(xiàn)故障時(shí)能及時(shí)恢復(fù)系統(tǒng)。下面是建議采用的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)示意圖:系統(tǒng)網(wǎng)絡(luò)拓?fù)鋱D個(gè)人用戶BB主應(yīng)用服務(wù)器主數(shù)據(jù)庫服務(wù)器交換機(jī)交換機(jī)內(nèi)網(wǎng)防火墻外網(wǎng)防火墻WEB服務(wù)器WEB服務(wù)器廣域網(wǎng)路由器internet個(gè)人用戶系統(tǒng)管理員
3.3.2精度系統(tǒng)精度主要包括兩個(gè)方面:系統(tǒng)信息流轉(zhuǎn)的正確性系統(tǒng)信息流轉(zhuǎn)的完整性3.3.3數(shù)據(jù)管理能力要求系統(tǒng)內(nèi)數(shù)據(jù)保存具有持久不丟失性,數(shù)據(jù)的安全保證要能防止病毒和網(wǎng)絡(luò)上非法用戶如黑客的獲取。這些可以通過對Web服務(wù)器的維護(hù)管理和各種殺毒與網(wǎng)絡(luò)安全系統(tǒng)來提供保證,不屬于本系統(tǒng)數(shù)據(jù)安全性要求范圍內(nèi)。3.3.4時(shí)間特性要求系統(tǒng)的時(shí)間性能規(guī)定要求系統(tǒng)的大部分操作在用戶視覺延遲時(shí)間范圍之內(nèi)。對某些檢索和其它涉及復(fù)雜計(jì)算的操作系統(tǒng)響應(yīng)也應(yīng)保持在3-5倍用戶視覺延遲時(shí)間范圍內(nèi)。連接性能:為保證系統(tǒng)可能存在的大量的并發(fā)連接數(shù),因此需要保證用戶在其網(wǎng)絡(luò)正常情況下可訪問站點(diǎn)數(shù)據(jù)。數(shù)據(jù)庫檢索性能:由于系統(tǒng)需要檢索大量用戶數(shù)據(jù),因此在數(shù)據(jù)庫檢索性能上需要采取一定的優(yōu)化措施以提高檢索性能,降低數(shù)據(jù)庫及網(wǎng)絡(luò)傳輸消耗。3.3.5故障處理要求本系統(tǒng)在按運(yùn)行環(huán)境所要求的系統(tǒng)平臺(包括操作系統(tǒng)、數(shù)據(jù)庫系統(tǒng)和網(wǎng)絡(luò)環(huán)境)正常情況下不會發(fā)生嚴(yán)重的系統(tǒng)故障如系統(tǒng)崩潰等。對除此之外的系統(tǒng)故障應(yīng)是在簡單的配置和調(diào)整后及時(shí)恢復(fù)。3.3.6UI要求設(shè)計(jì)要求UI設(shè)計(jì)是系統(tǒng)具有良好的易用性的一個(gè)重要因素,基于本系統(tǒng)的特殊應(yīng)用范圍考慮,本系統(tǒng)的UI設(shè)計(jì)主要從兩個(gè)方面去考慮:一是功能,二是風(fēng)格。針對頁面功能上的要求是:應(yīng)具有可方便檢索,瀏覽站內(nèi)信息,具備良好的導(dǎo)航性;針對頁面風(fēng)格上的要求是:體現(xiàn)美觀、簡約、現(xiàn)代、友好易用等設(shè)計(jì)元素。因此,本系統(tǒng)UI設(shè)計(jì)應(yīng)該遵循以下幾個(gè)原則:瀏覽界面友好,美觀,大方欄目內(nèi)風(fēng)格統(tǒng)一,讓訪問者能快速熟悉網(wǎng)站的設(shè)計(jì)結(jié)構(gòu),信息顯示一目了然風(fēng)格簡約,突出功能與重點(diǎn)易用性強(qiáng),便于操作與查找相關(guān)內(nèi)容良好的伸縮性,易于在將來的運(yùn)營過程中增減模塊或內(nèi)容站點(diǎn)結(jié)構(gòu)清晰科學(xué),便于管理維護(hù)3.3.7開發(fā)與運(yùn)行環(huán)境規(guī)定該運(yùn)行環(huán)境的規(guī)定是保證本需求說明的功能得到實(shí)際真正體現(xiàn)的基礎(chǔ)。(1)服務(wù)器端運(yùn)行環(huán)境支持軟件
服務(wù)器端軟件:Windows2000Server或更高版本的操作系統(tǒng),推薦Windows2003EnterpriseEdition數(shù)據(jù)庫系統(tǒng):SQLServer2000或更高版本的數(shù)據(jù)服務(wù)器Web服務(wù)器:Microsoft
IIS
6.0NETFrameworkv1.1或更高版本的Web應(yīng)用支持企業(yè)殺毒軟件(2)用戶端PC軟件Windows98或更高版本操作系統(tǒng)(安裝有IE5.0以上版本)或其它98年以后發(fā)布的帶有Internet瀏覽器軟件的圖形UI操作系統(tǒng)操作系統(tǒng):windows,Linux等瀏覽器:InternetExplorer、Maxthon、MozillaFirefox、MozillaFirefox推薦使用:InternetExplorer、Maxthon、(3)開發(fā)環(huán)境:操作系統(tǒng):Windows2003EnterpriseEdition開發(fā)工具:MicrosoftVisualStudio.NET2003,AdobePhotoshopCS,DreamweaverMX2004數(shù)據(jù)庫系統(tǒng):MicrosoftSqlServer2000Web服務(wù)器:MicrosoftIIS6.0CPU:IntelPentium(R)42.8CHz內(nèi)存:512MB第四章設(shè)計(jì)過程及體會軟件工程是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)實(shí)踐性非常強(qiáng)的課程,實(shí)踐教學(xué)環(huán)節(jié)的組織是教學(xué)的重要組成部分,直接關(guān)系到學(xué)生對知識的掌握與應(yīng)用能力。課程設(shè)計(jì)作為實(shí)現(xiàn)實(shí)踐教學(xué)的一種重要形式,已經(jīng)在越來越多的計(jì)算機(jī)專業(yè)課程中得到應(yīng)用。軟件工程課程設(shè)計(jì)的目的,是讓學(xué)生在掌握軟件工程知識的基礎(chǔ)上提高實(shí)踐動手能力,熟悉軟件開發(fā)過程,掌握常用軟件工程工具的使用,學(xué)會撰寫軟件開發(fā)各個(gè)階段的規(guī)范文檔,提高團(tuán)隊(duì)協(xié)作能力,為將來從事軟件開發(fā)工作打下良好基礎(chǔ)。1軟件工程設(shè)計(jì)的組織形式不同院校實(shí)踐教學(xué)的組織主要有3種形式:1)將軟件工程設(shè)計(jì)作為一門課程。在軟件工程課程后開設(shè),許多有軟件工程專業(yè)的學(xué)校這樣做。2)將軟件工程設(shè)計(jì)作為軟件工程課程的一個(gè)教學(xué)環(huán)節(jié),但是不占用課堂教學(xué)時(shí)間,由學(xué)生在課余時(shí)間完成,教師進(jìn)行指導(dǎo),學(xué)生以大作業(yè)提交成果。3)將軟件工程設(shè)計(jì)作為軟件工程課程的一個(gè)教學(xué)環(huán)節(jié),同時(shí)安排一定的時(shí)間集中進(jìn)行。我校電子信息專業(yè)基本上采用第3種形式,在軟件工程課程結(jié)束前幾周專門安排一周的時(shí)間進(jìn)行集中的設(shè)計(jì),教師對學(xué)生進(jìn)行集中的輔導(dǎo)與檢查。2軟件工程設(shè)計(jì)的主要環(huán)節(jié)(1)軟件工程設(shè)計(jì)的準(zhǔn)備。1)知識準(zhǔn)備:除了軟件工程理論知識之外,在軟件工程設(shè)計(jì)時(shí)還需要其他知識,較為重要的是CASE工具的使用。在講授需求分析時(shí),教師可以介紹畫圖與建模工具Visio、數(shù)據(jù)庫建模工具PowerDesigner;在講授軟件測試時(shí),教師可以介紹單元測試工具JUnit、缺陷管理工具TestDirector。介紹這些CASE工具時(shí),教師只需畫龍點(diǎn)睛,著重介紹軟件的使用流程,至于軟件的具體使用,則引導(dǎo)學(xué)生在課余時(shí)間自學(xué)掌握。2)題目選擇:軟件工程設(shè)計(jì)集中進(jìn)行的時(shí)間不長,因此不宜選擇難度較大的題目,要讓學(xué)生能夠理解。我們選擇的題目有與學(xué)校管理相關(guān)的,比如學(xué)生檔案管理、學(xué)生成績管理等;有與中小企業(yè)管理相關(guān)的,如進(jìn)銷存管理、工資管理等;簡單Web應(yīng)用系統(tǒng),如在線考試、在線招聘等;還有一些小游戲,如連連看、24點(diǎn)紙牌等。針對題目,教師要花一定的時(shí)間給出簡要的需求陳述,如果只提供一個(gè)題目,學(xué)生基本沒有項(xiàng)目開發(fā)經(jīng)驗(yàn),可能無從入手。3)學(xué)生分組:成功的軟件項(xiàng)目大都是團(tuán)隊(duì)開發(fā)的成果,應(yīng)該對學(xué)生進(jìn)行分組,以培養(yǎng)學(xué)生的團(tuán)隊(duì)協(xié)作能力,一個(gè)班級可分為幾個(gè)到十幾個(gè)小組。4)教師安排:軟件工程設(shè)計(jì)的輔導(dǎo)教師主要是軟件工程課程的授課教師,有條件的學(xué)校可以聘請IT公司有經(jīng)驗(yàn)的系統(tǒng)分析師、軟件工程師擔(dān)任輔導(dǎo)工作。(2)軟件工程設(shè)計(jì)的實(shí)施。課程設(shè)計(jì)的實(shí)施是課程設(shè)計(jì)的主要階段,應(yīng)該遵循以學(xué)生為主體、教師為主導(dǎo)的方針。1)分組確定與題目安排。前幾年實(shí)施軟件工程設(shè)計(jì)時(shí),我們曾嘗試在學(xué)期初就把分組及題目安排好,讓學(xué)生邊學(xué)習(xí)邊進(jìn)行課程設(shè)計(jì),但我們忽視了學(xué)生沒有任何軟件工程經(jīng)驗(yàn),這樣大部分小組到了集中階段就是不斷地修改代碼和文檔。這一兩年,到了集中階段的前兩周,我們才把分組與題目安排好,分組采用學(xué)生先自行組合,教師再進(jìn)行調(diào)整的方式,使各個(gè)小組均達(dá)到較好的優(yōu)化組合。每個(gè)小組設(shè)一個(gè)組長,負(fù)責(zé)項(xiàng)目的總體協(xié)調(diào),確認(rèn)各個(gè)階段要提交的文檔,以及答辯時(shí)作為主講人。題目安排后,根據(jù)每個(gè)小組的實(shí)際情況,選擇采用傳統(tǒng)方法或面向?qū)ο蠓椒ā?)集中階段。集中階段的前一周,教師向?qū)W生介紹每天需要完成的工作及需要提交的文檔。集中階段的每一天,教師不是被動地等待學(xué)生的提問,而是每天上午主動對每個(gè)小組進(jìn)行半個(gè)小時(shí)的檢查與輔導(dǎo),檢查上一天的成果,解決學(xué)生遇到的困難,并給出下一階段的要求。下午,教師的工作相對靈活些,可以隨時(shí)查看學(xué)生的進(jìn)度,檢查學(xué)生已經(jīng)提交的文檔,針對個(gè)別小組進(jìn)行輔導(dǎo)或者對一些典型的問題進(jìn)行統(tǒng)一講解等,各天安排如下:第1天,確定需求。要求學(xué)生在第一天來時(shí)提交一份初步的需求規(guī)格說明書,教師根據(jù)這份說明書與學(xué)生溝通,幫助學(xué)生確認(rèn)需求,理清系統(tǒng)涉及的主要業(yè)務(wù)流程。對采用傳統(tǒng)方法學(xué)的小組,要求畫出各級數(shù)據(jù)流圖及給出相應(yīng)的數(shù)據(jù)字典,涉及數(shù)據(jù)庫的要給出E-R圖,可以借助Visio和PowerDesigner完成這些工作;對采用面向?qū)ο蠓椒▽W(xué)的小組,要求畫出用例圖以及主要用例相應(yīng)的活動圖或狀態(tài)圖,另外還要給出領(lǐng)域模型,用類圖表示,可以借助RationalRose完成這些工作。教師檢查學(xué)生所做的上述工作,一定要糾正學(xué)生錯(cuò)誤并且指出原因,要求學(xué)生修改與完善說明書,同時(shí)提出總體設(shè)計(jì)需要做的工作。學(xué)生可以根據(jù)與教師的溝通繼續(xù)后續(xù)的工作,教師則進(jìn)入下一小組的輔導(dǎo)工作。以后每天都要重復(fù)這項(xiàng)工作,每個(gè)小組與教師的溝通為半小時(shí)左右,雖然存在一定的時(shí)間差,但對總體的工作影響不會太大。第2天,總體設(shè)計(jì)。經(jīng)過第一天的工作,各個(gè)小組都提交了比較規(guī)范的需求規(guī)格說明書。教師再次進(jìn)行最后的檢查,再根據(jù)各小組總體設(shè)計(jì)的情況進(jìn)行檢查與交流。對采用傳統(tǒng)方法學(xué)的小組,檢查從數(shù)據(jù)流圖映射出的功能模塊是否正確,幫助學(xué)生進(jìn)行功能模塊的調(diào)整,涉及數(shù)據(jù)庫設(shè)計(jì)的,幫助檢查數(shù)據(jù)庫的設(shè)計(jì)是否合理;對采用面向?qū)ο蠓椒▽W(xué)的小組,著重檢查細(xì)化后的類圖,類與類之間的關(guān)系及類中服務(wù)的設(shè)計(jì)是否合理,還要檢查主要流程的時(shí)序圖或協(xié)作圖是否正確。最后教師對詳細(xì)設(shè)計(jì)要做的工作提出要求。第3天,詳細(xì)設(shè)計(jì)。這一天,教師還是先檢查總體設(shè)計(jì)提交的一些文檔,要求學(xué)生作最后的修改及調(diào)整。接著針對詳細(xì)設(shè)計(jì)進(jìn)行檢查與交流,對采用傳統(tǒng)方法學(xué)的小組,主要檢查各個(gè)功能模塊的程序流程圖(或PAD圖或偽代碼)是否正確,并且對人機(jī)界面設(shè)計(jì)提出建議;對采用面向?qū)ο蠓椒▽W(xué)的小組,主要檢查構(gòu)件圖以及類中服務(wù)的詳細(xì)設(shè)計(jì),同樣也要對人機(jī)界面設(shè)計(jì)提出建議。最后教師對程序設(shè)計(jì)提出要求。第4天,程序設(shè)計(jì)。經(jīng)過前幾天的工作,系統(tǒng)離實(shí)現(xiàn)越來越接近,這一天教師對詳細(xì)設(shè)計(jì)提交的文檔作最后檢查。在程序設(shè)計(jì)階段,主要檢查代碼的規(guī)范以及一些關(guān)鍵代碼的編寫。安排輔導(dǎo)教師時(shí),可以根據(jù)教師對某種編程技術(shù)的熟悉程度。這一天,教師還要對軟件測試提出一些要求。第5天,測試調(diào)試。這是集中階段的最后一天,教師先檢查程序設(shè)計(jì)的進(jìn)行情況,提出一些要求,建議學(xué)生先采用手工測試的方式,手工設(shè)計(jì)測試用例并且執(zhí)行這些測試用例,這樣可以掌握測試的流程,也有利于今后進(jìn)一步掌握一些測試工具。教師還可通過運(yùn)行程序檢查最后的實(shí)現(xiàn)結(jié)果是否與前面的設(shè)計(jì)相符,如果不相符,要幫助學(xué)生找出原因。5天的集中時(shí)間相對一個(gè)軟件的完整開發(fā)周期來說偏短,也沒有把大部分的CASE工具都用到,但經(jīng)過這段時(shí)間,學(xué)生經(jīng)歷了一次強(qiáng)化的軟件開發(fā)訓(xùn)練,對軟件的開發(fā)流程有一個(gè)整體認(rèn)識,同時(shí)在文檔的規(guī)范、CASE工具的使用及團(tuán)隊(duì)合作等方面都有所收獲。3軟件工程設(shè)計(jì)對課程教學(xué)的啟示1)在課程教學(xué)學(xué)期初,教師要強(qiáng)調(diào)軟件開發(fā)各個(gè)階段的重要性和連續(xù)性。在剛開始進(jìn)行課程設(shè)計(jì)時(shí),一些小組因?yàn)槔碚撝R掌握得不太好,對自己做的項(xiàng)目沒有信心,但隨著課程設(shè)計(jì)的進(jìn)展,他們最終取得了一定的成果。教師可以通過向?qū)W生介紹一些成功與失敗的軟件開發(fā)案例來向?qū)W生強(qiáng)調(diào)這一點(diǎn),學(xué)生的學(xué)習(xí)目的性在一開始就可以得到強(qiáng)化。2)教師在講授一些工具的使用時(shí),應(yīng)該多采用案例教學(xué),并且讓學(xué)生多練習(xí)。比如數(shù)據(jù)流圖,基本畫法并不復(fù)雜,但在課程設(shè)計(jì)時(shí),卻幾乎沒有一組學(xué)生能夠畫得全對,而且有一些是明顯的錯(cuò)誤,教師在講授數(shù)據(jù)流圖時(shí),若能多講解一些案例,同時(shí)多布置一些題目讓學(xué)生練習(xí),學(xué)生的掌握情況就會好得多。3)教師本身要加強(qiáng)自身的軟件開發(fā)能力訓(xùn)練。課程設(shè)計(jì)的集中階段輔導(dǎo)教師要對學(xué)生進(jìn)行全方位的指導(dǎo),這對輔導(dǎo)教師本身的素質(zhì)提出了很高的要求。教師在平時(shí)若能參與實(shí)際項(xiàng)目的開發(fā),或到正規(guī)軟件公司進(jìn)行學(xué)習(xí)與交流,在輔導(dǎo)學(xué)生時(shí)就可應(yīng)付自如。4結(jié)語軟件工程設(shè)計(jì)是軟件工程實(shí)踐教學(xué)的重要組成部分,合理的組織,精心的準(zhǔn)備,加上有序的實(shí)施,可以取得良好的教學(xué)效果,使學(xué)生的實(shí)踐能力得到很大的提高,同時(shí)培養(yǎng)他們的團(tuán)隊(duì)精神,增強(qiáng)他們的學(xué)習(xí)自信心,并為畢業(yè)后從事相關(guān)工作打下良好基礎(chǔ)參考文獻(xiàn)(1)信息技術(shù)軟件生存期過程》(GB/T8566-1995)(2)《計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南》(GB8567-88)(3)《軟件工程術(shù)語》(GB/T11457-1995)(4)IEEE軟件工程標(biāo)準(zhǔn)詞匯表(1997年)(5)王晟編著《VisualBasic.NET數(shù)據(jù)庫開發(fā)經(jīng)典案例解析》清華大學(xué)出版社2005(6)DavidSceppa編著梁超張莉等譯《ADO.NET技術(shù)內(nèi)幕》清華大學(xué)出版社2003(7)趙慧勤等編著《SQLServer2000實(shí)例教程》電子工業(yè)出版社2001附錄項(xiàng)目開發(fā)計(jì)劃人張文摘要緒論.需求分析葉萌萌需求分析孫黎黎需求分析.學(xué)生成績管理系統(tǒng)概要設(shè)計(jì)劉丹設(shè)計(jì)過程與體會基于C8051F單片機(jī)直流電動機(jī)反饋控制系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的嵌入式Web服務(wù)器的研究MOTOROLA單片機(jī)MC68HC(8)05PV8/A內(nèi)嵌EEPROM的工藝和制程方法及對良率的影響研究基于模糊控制的電阻釬焊單片機(jī)溫度控制系統(tǒng)的研制基于MCS-51系列單片機(jī)的通用控制模塊的研究基于單片機(jī)實(shí)現(xiàn)的供暖系統(tǒng)最佳啟停自校正(STR)調(diào)節(jié)器單片機(jī)控制的二級倒立擺系統(tǒng)的研究基于增強(qiáng)型51系列單片機(jī)的TCP/IP協(xié)議棧的實(shí)現(xiàn)基于單片機(jī)的蓄電池自動監(jiān)測系統(tǒng)基于32位嵌入式單片機(jī)系統(tǒng)的圖像采集與處理技術(shù)的研究基于單片機(jī)的作物營養(yǎng)診斷專家系統(tǒng)的研究基于單片機(jī)的交流伺服電機(jī)運(yùn)動控制系統(tǒng)研究與開發(fā)基于單片機(jī)的泵管內(nèi)壁硬度測試儀的研制基于單片機(jī)的自動找平控制系統(tǒng)研究基于C8051F040單片機(jī)的嵌入式系統(tǒng)開發(fā)基于單片機(jī)的液壓動力系統(tǒng)狀態(tài)監(jiān)測儀開發(fā)模糊Smith智能控制方法的研究及其單片機(jī)實(shí)現(xiàn)一種基于單片機(jī)的軸快流CO〈,2〉激光器的手持控制面板的研制基于雙單片機(jī)沖床數(shù)控系統(tǒng)的研究基于CYGNAL單片機(jī)的在線間歇式濁度儀的研制基于單片機(jī)的噴油泵試驗(yàn)臺控制器的研制基于單片機(jī)的軟起動器的研究和設(shè)計(jì)基于單片機(jī)控制的高速快走絲電火花線切割機(jī)床短循環(huán)走絲方式研究基于單片機(jī)的機(jī)電產(chǎn)品控制系統(tǒng)開發(fā)基于PIC單片機(jī)的智能手機(jī)充電器基于單片機(jī)的實(shí)時(shí)內(nèi)核設(shè)計(jì)及其應(yīng)用研究基于單片機(jī)的遠(yuǎn)程抄表系統(tǒng)的設(shè)計(jì)與研究基于單片機(jī)的煙氣二氧化硫濃度檢測儀的研制基于微型光譜儀的單片機(jī)系統(tǒng)單片機(jī)系統(tǒng)軟件構(gòu)件開發(fā)的技術(shù)研究基于單片機(jī)的液體點(diǎn)滴速度自動檢測儀的研制基于單片機(jī)系統(tǒng)的多功能溫度測量儀的研制基于PIC單片機(jī)的電能采集終端的設(shè)計(jì)和應(yīng)用基于單片機(jī)的光纖光柵解調(diào)儀的研制氣壓式線性摩擦焊機(jī)單片機(jī)控制系統(tǒng)的研制基于單片機(jī)的數(shù)字磁通門傳感器基于單片機(jī)的旋轉(zhuǎn)變壓器-數(shù)字轉(zhuǎn)換器的研究基于單片機(jī)的光纖Bragg光柵解調(diào)系統(tǒng)的研究單片機(jī)控制的便攜式多功能乳腺治療儀的研制基于C8051F020單片機(jī)的多生理信號檢測儀基于單片機(jī)的電機(jī)運(yùn)動控制系統(tǒng)設(shè)計(jì)Pico專用單片機(jī)核的可測性設(shè)計(jì)研究基于MCS-51單片機(jī)的熱量計(jì)基于雙單片機(jī)的智能遙測微型氣象站MCS-51單片機(jī)構(gòu)建機(jī)器人的實(shí)踐研究基于單片機(jī)的輪軌力檢測基于單片機(jī)的GPS定位儀的研究與實(shí)現(xiàn)基于單片機(jī)的電液伺服控制系統(tǒng)用于單片機(jī)系統(tǒng)的MMC卡文件系統(tǒng)研制基于單片機(jī)的時(shí)控和計(jì)數(shù)系統(tǒng)性能優(yōu)化的研究基于單片機(jī)和CPLD的粗光柵位移測量系統(tǒng)研究單片機(jī)控制的后備式方波UPS提升高職學(xué)生單片機(jī)應(yīng)用能力的探究基于單片機(jī)控制的自動低頻減載裝置研究基于單片機(jī)控制的水下焊接電源的研
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年安康職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫一套
- 預(yù)防未成年人性侵宣傳
- 智能手術(shù)縫合線材料行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 自住商品房AI應(yīng)用行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 小學(xué)美術(shù)教育中藝術(shù)表現(xiàn)力的培養(yǎng)研究論文
- 2025-2031年中國微短劇行業(yè)發(fā)展前景預(yù)測及投資方向研究報(bào)告
- 2025-2031年中國大飛機(jī)項(xiàng)目行業(yè)市場競爭格局及發(fā)展趨勢預(yù)測研究報(bào)告
- 2025-2031年中國土壤銅污染治理行業(yè)發(fā)展前景預(yù)測及投資方向研究報(bào)告
- 2025-2031年中國企業(yè)IT服務(wù)行業(yè)發(fā)展運(yùn)行現(xiàn)狀及發(fā)展趨勢預(yù)測報(bào)告
- 2025-2031年中國中藥材銀杏葉行業(yè)市場深度分析及投資策略咨詢報(bào)告
- 《民航客艙設(shè)備操作與管理》課件-項(xiàng)目三 客艙應(yīng)急設(shè)備
- 平安銀行的混沌工程實(shí)踐
- 2024醫(yī)療機(jī)構(gòu)重大事故隱患判定清單(試行)學(xué)習(xí)課件
- 學(xué)校體育學(xué)(唐炎-劉昕版)重點(diǎn)、知識點(diǎn)
- 數(shù)字電子技術(shù)(山東工商學(xué)院)智慧樹知到期末考試答案2024年
- 江蘇省徐州市2023-2024學(xué)年八年級下學(xué)期期中語文試題
- 債務(wù)清償協(xié)議書
- 燙傷的護(hù)理課件
- 順豐社招人才在線測評題庫
- 《無人機(jī)概論》第2章 無人機(jī)結(jié)構(gòu)與系統(tǒng)
- 初中數(shù)學(xué)二元一次方程組作業(yè)設(shè)計(jì)
評論
0/150
提交評論