段俐敏
(安徽信息工程學(xué)院 藝術(shù)設(shè)計(jì)系,安徽 蕪湖 241000)
隨著我國(guó)軟件行業(yè)的快速發(fā)展,對(duì)軟件設(shè)計(jì)人才的需求持續(xù)增加,為了緩解軟件人才供需矛盾,形成我國(guó)軟件人才的良性循環(huán),必須加強(qiáng)在校大學(xué)生涉軟專業(yè)學(xué)生的軟件課程系統(tǒng)化、實(shí)戰(zhàn)化訓(xùn)練.網(wǎng)頁(yè)設(shè)計(jì)作為軟件行業(yè)的基礎(chǔ)性課程,對(duì)于從基礎(chǔ)上培養(yǎng)學(xué)生的項(xiàng)目開發(fā)意識(shí)、提高學(xué)生的軟件從業(yè)知識(shí)具有重要作用[1-3].傳統(tǒng)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)大多采用“理論灌輸+驗(yàn)證性實(shí)驗(yàn)”的教學(xué)模式,一方面,該模式理論教學(xué)內(nèi)容單一、枯燥,學(xué)生接受度較低、教學(xué)效果較差;另一方面,該模式實(shí)驗(yàn)教學(xué)采用基于已知實(shí)驗(yàn)效果的驗(yàn)證性實(shí)驗(yàn),不能很好地激發(fā)學(xué)生的創(chuàng)新創(chuàng)業(yè)能力且實(shí)驗(yàn)內(nèi)容較為孤立[4],缺乏針對(duì)性,無(wú)法形成系統(tǒng)完整的體系架構(gòu),對(duì)提高學(xué)生的實(shí)踐能力意義不大.在此背景下,提出了一種基于能力層次遞進(jìn)項(xiàng)目教學(xué)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)法,該方法根據(jù)教學(xué)進(jìn)度和學(xué)生能力反饋,系統(tǒng)而完整地選取具有明顯難度差異的實(shí)際工程項(xiàng)目對(duì)學(xué)生進(jìn)行工程訓(xùn)練[5-7],再根據(jù)訓(xùn)練效果反饋調(diào)整項(xiàng)目難度,從而形成良性循環(huán),力求系統(tǒng)而完整地培養(yǎng)學(xué)生的實(shí)踐與創(chuàng)新能力.基于上述工作,開發(fā)了對(duì)應(yīng)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)系統(tǒng),系統(tǒng)內(nèi)置K-means聚類算法進(jìn)行數(shù)據(jù)無(wú)監(jiān)督聚類,可以挖掘內(nèi)在教學(xué)規(guī)律,為下一步的教學(xué)計(jì)劃制定提供數(shù)據(jù)支撐.
基于能力層次遞進(jìn)項(xiàng)目教學(xué)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)法主要完成具有明顯難度差異的實(shí)際工程項(xiàng)目設(shè)計(jì)、實(shí)施與能力層次遞進(jìn)效果反饋.如圖1所示,具有明顯難度差異的實(shí)際工程項(xiàng)目設(shè)計(jì)子模塊主要完成項(xiàng)目的設(shè)計(jì)并基于效果反饋優(yōu)化項(xiàng)目設(shè)計(jì),實(shí)際工作中需要遵循以下原則:S1:項(xiàng)目設(shè)計(jì)符合新形勢(shì)下的教學(xué)改革趨勢(shì);S2:項(xiàng)目設(shè)計(jì)要與教學(xué)大綱相契合;S3:項(xiàng)目設(shè)計(jì)要有系統(tǒng)性.項(xiàng)目實(shí)施子模塊主要實(shí)現(xiàn)項(xiàng)目、教師、學(xué)生三者之間的協(xié)調(diào)交互,明確實(shí)施目標(biāo),設(shè)定實(shí)施任務(wù),確保項(xiàng)目實(shí)施效果.項(xiàng)目能力層次遞進(jìn)效果反饋?zhàn)幽K主要用來(lái)采集項(xiàng)目實(shí)施過(guò)程中出現(xiàn)的問(wèn)題、實(shí)施進(jìn)度、學(xué)生能力遞進(jìn)情況等并反饋給項(xiàng)目設(shè)計(jì)子模塊,形成良性循環(huán).
圖1 基于能力層次遞進(jìn)項(xiàng)目教學(xué)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)法邏輯示意圖
與基于能力層次遞進(jìn)項(xiàng)目教學(xué)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)法邏輯示意圖相對(duì)應(yīng),其實(shí)際運(yùn)行流程如下:S1:錄入教學(xué)大綱,根據(jù)大綱和設(shè)計(jì)原則進(jìn)行項(xiàng)目設(shè)計(jì)并根據(jù)反饋結(jié)果進(jìn)行項(xiàng)目?jī)?yōu)化;S2:對(duì)設(shè)計(jì)完成的項(xiàng)目進(jìn)行規(guī)范化檢查并進(jìn)行實(shí)驗(yàn)班級(jí)小規(guī)模試用;S3:根據(jù)試用結(jié)果決定是否全校推廣,如果試用結(jié)果支持推廣,則啟用項(xiàng)目反饋機(jī)制,從學(xué)生能力遞進(jìn)等方面進(jìn)行信息采集與反饋,否則返回第一步;S4:周期性的進(jìn)行專家審核,確保項(xiàng)目始終符合設(shè)計(jì)初衷.基于C++語(yǔ)言,在VS2012環(huán)境下實(shí)現(xiàn)的核心代碼如下:
std::string CStudent:: getXinxi() const { return xinxi; } %獲取項(xiàng)目信息
void CStudent::XiugaiXinxi (std::string val) { xinxi = val; } %修改項(xiàng)目信息
void CMainView:: findStuAtView(const std::map
system("cls"); %項(xiàng)目實(shí)施
std::cout<<"請(qǐng)輸入要查找項(xiàng)目的id"< int id; std::cin>>id; CStudentMg cStuMg; %項(xiàng)目反饋 CStudent cStu; cStu = cStuMg.findById(m1,id); 一定數(shù)量級(jí)的一線教學(xué)反饋數(shù)據(jù)具有十分重要的意義,這些數(shù)據(jù)往往存在一定的潛在規(guī)律性,可以很大程度上真實(shí)反映項(xiàng)目教學(xué)法的效果,為下一步教學(xué)項(xiàng)目的設(shè)計(jì)優(yōu)化、教學(xué)方法的改進(jìn)、學(xué)生能力的遞進(jìn)情況等提供數(shù)據(jù)保證.基于上述背景,根據(jù)反饋數(shù)據(jù)類型,提出了一種基于K-means 聚類算法的教學(xué)反饋數(shù)據(jù)無(wú)監(jiān)督聚類分析算法,可以通過(guò)均值對(duì)數(shù)據(jù)點(diǎn)進(jìn)行聚類,并通過(guò)劃分后的均值迭代優(yōu)化獲得最優(yōu)的聚類結(jié)果.選取我國(guó)中部某省屬理工類本科院校應(yīng)用本系統(tǒng)9個(gè)月后產(chǎn)生的反饋數(shù)據(jù)為例進(jìn)行分析,首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,采用Canopy算法進(jìn)行初始聚類并分別選取K值,然后求解K-means的初始聚類中心點(diǎn),最后采用顯著差異符號(hào)在聚類圖中標(biāo)出聚類中心位置,最終聚類結(jié)果如圖2所示.為了提高編程效率,快捷的尋找最佳有效的能量梯度函數(shù),采用動(dòng)態(tài)規(guī)劃的方法實(shí)現(xiàn),核心代碼如下: %得出有效的K值 n<-length(x) seed<-round(runif(1,1,n)) for ( i in 1:k){ if(i==1){ seed[i]<- round(runif(1,1,N)) }%選用k個(gè)初始點(diǎn) dd<-0 rst <- sapply(K, function(i){ print(paste("K=",i)) mean(sapply(1:round,function(r)% 避免局部最優(yōu) { print(paste("Round",r)) result <- kmeans(norm.data, i) stats <- cluster.stats(dist(norm.data), result$cluster) } 圖2 基于K-means聚類算法的教學(xué)反饋數(shù)據(jù)無(wú)監(jiān)督聚類分析效果圖 圖3 系統(tǒng)功能模塊組成示意圖 基于系統(tǒng)實(shí)際需求,如圖3所示,系統(tǒng)核心模塊由項(xiàng)目設(shè)計(jì)與優(yōu)化模塊、學(xué)生實(shí)訓(xùn)與評(píng)價(jià)模塊、學(xué)生能力遞進(jìn)跟蹤模塊、教學(xué)反饋數(shù)據(jù)聚類分析模塊等組成,各個(gè)模塊的具體功能如下:項(xiàng)目設(shè)計(jì)與優(yōu)化模塊是整個(gè)系統(tǒng)的基礎(chǔ),負(fù)責(zé)設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目,根據(jù)反饋結(jié)果優(yōu)化項(xiàng)目等;學(xué)生實(shí)訓(xùn)與評(píng)價(jià)模塊是系統(tǒng)的核心模塊,負(fù)責(zé)項(xiàng)目與學(xué)生的交互、學(xué)生實(shí)訓(xùn)效果的提報(bào)等;學(xué)生能力遞進(jìn)跟蹤模塊主要用于學(xué)生實(shí)訓(xùn)效果與項(xiàng)目難度之間的信息交互,主要負(fù)責(zé)學(xué)生實(shí)訓(xùn)效果的記錄、跟蹤、整改等;教學(xué)反饋數(shù)據(jù)聚類分析模塊主要對(duì)某個(gè)周期內(nèi)的一線教學(xué)反饋數(shù)據(jù)進(jìn)行聚類分析,繼而為教學(xué)項(xiàng)目的設(shè)計(jì)優(yōu)化等提供數(shù)據(jù)保證. 由于教學(xué)系統(tǒng)總體業(yè)務(wù)流程受諸多因素的影響,不同學(xué)生個(gè)體、不同專業(yè)學(xué)生等業(yè)務(wù)流程有較大差別,本文以我國(guó)中部某省屬理工類本科院校軟件工程專業(yè)為例說(shuō)明系統(tǒng)的總體業(yè)務(wù)流程.如圖4所示,在確定好使用對(duì)象之后,進(jìn)行系統(tǒng)初始化操作,主要完成平臺(tái)初始信息的錄入并對(duì)系統(tǒng)數(shù)據(jù)倉(cāng)庫(kù)寫入初始值,進(jìn)行初始化并審核初始信息的規(guī)范性;檢測(cè)是否有項(xiàng)目設(shè)計(jì)發(fā)起,如果有,啟動(dòng)施工文件項(xiàng)目專家審核機(jī)制;如果審核通過(guò),則按照教學(xué)計(jì)劃進(jìn)行,跟蹤記錄每個(gè)學(xué)生個(gè)體的實(shí)訓(xùn)效果數(shù)據(jù);固定周期內(nèi),聚類分析教學(xué)數(shù)據(jù)并反饋給項(xiàng)目設(shè)計(jì)子流程. 圖4 系統(tǒng)總體業(yè)務(wù)流程示意圖 為了提高系統(tǒng)的可擴(kuò)展性,系統(tǒng)各個(gè)模塊對(duì)自身要發(fā)揮的功能進(jìn)行數(shù)據(jù)處置,不同的模塊也能夠進(jìn)行合作交流,使系統(tǒng)運(yùn)行的效率更高.根據(jù)本系統(tǒng)在實(shí)際操作實(shí)現(xiàn)階段,當(dāng)注冊(cè)用戶登錄系統(tǒng)時(shí),系統(tǒng)會(huì)對(duì)登錄的相關(guān)角色進(jìn)行特定的判斷,同時(shí)根據(jù)角色的不同為用戶展現(xiàn)出具有差異性的視圖[8],借助此類方法能夠使系統(tǒng)降低對(duì)于授權(quán)表的訪問(wèn),而對(duì)于RBAC訪問(wèn)系統(tǒng)主要是作用于管理員以及用戶之間展現(xiàn)出特定的功能,以此來(lái)減少對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)次數(shù).對(duì)于RBAC訪問(wèn)控制系統(tǒng)模型如圖5所示. 為了實(shí)際驗(yàn)證上文所提方法的有效性和實(shí)用性,本文在vs2012環(huán)境下通過(guò)調(diào)用動(dòng)態(tài)鏈接庫(kù)文件(.dll文件)的形式開發(fā)了一款通用網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)系統(tǒng),該系統(tǒng)可以實(shí)現(xiàn)通用網(wǎng)頁(yè)設(shè)計(jì)實(shí)訓(xùn)項(xiàng)目的設(shè)計(jì)與優(yōu)化、學(xué)生個(gè)體實(shí)訓(xùn)效果的跟蹤記錄、固定周期內(nèi)的教學(xué)效果數(shù)據(jù)聚類分析等功能.本文主要利用的是Windows 7操作系統(tǒng)平臺(tái),采用的硬件設(shè)備CPU為英特爾酷睿i7,主頻3.8 GHz.系統(tǒng)運(yùn)行內(nèi)存為32 GB,存儲(chǔ)空間4 TB,網(wǎng)絡(luò)帶寬15 M獨(dú)享.系統(tǒng)實(shí)際運(yùn)行界面如圖6所示. 圖5 基于RBAC的訪問(wèn)控制模型圖 圖6 通用網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)系統(tǒng)界面示意圖 為了進(jìn)一步驗(yàn)證系統(tǒng)在某些非正常環(huán)境下的性能,在MI公司的winload軟件環(huán)境下,采用邊界值分析法對(duì)系統(tǒng)進(jìn)行黑盒測(cè)試(主要進(jìn)行服務(wù)器端壓力性能測(cè)試).測(cè)試方法如下:首先確定服務(wù)器端并發(fā)服務(wù)客戶端數(shù)量的上限邊界,然后按照上限邊界的0.3倍、0.6倍、1倍、1.2倍進(jìn)行服務(wù)器端并發(fā)服務(wù)測(cè)試,最后根據(jù)測(cè)試結(jié)果進(jìn)行對(duì)應(yīng)的優(yōu)化.基于上述工作,以我國(guó)中部某省屬理工類本科院校標(biāo)準(zhǔn)化機(jī)房(客戶端200臺(tái),服務(wù)器采用DELL公司的PowerEdge T30微塔式服務(wù)器)為例進(jìn)行測(cè)試,則實(shí)驗(yàn)結(jié)果如表1所示.測(cè)試結(jié)果表明,系統(tǒng)運(yùn)行穩(wěn)定,服務(wù)器端并發(fā)服務(wù)滿足實(shí)際要求. 表1 服務(wù)器端并發(fā)服務(wù)測(cè)試結(jié)果表 針對(duì)傳統(tǒng)網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)模式存在的教學(xué)內(nèi)容單一、枯燥,學(xué)生接受度較低、教學(xué)效果較差、實(shí)驗(yàn)內(nèi)容較為孤立,缺乏針對(duì)性,無(wú)法形成系統(tǒng)完整的體系架構(gòu)等劣勢(shì),為適應(yīng)新形勢(shì)下的教學(xué)改革趨勢(shì),提出了一種基于能力層次遞進(jìn)項(xiàng)目教學(xué)的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)法,并集成基于K-means聚類算法的教學(xué)反饋數(shù)據(jù)無(wú)監(jiān)督聚類分析算法,設(shè)計(jì)并實(shí)現(xiàn)了一款新型的網(wǎng)頁(yè)設(shè)計(jì)課程教學(xué)系統(tǒng).通過(guò)實(shí)際測(cè)試表明,系統(tǒng)在功能上對(duì)打破傳統(tǒng)教學(xué)模式,提高學(xué)生的實(shí)際項(xiàng)目經(jīng)驗(yàn)具有積極意義.在性能上運(yùn)行穩(wěn)定,功能模塊之間劃分合理,較好地完成了預(yù)期設(shè)計(jì)目的,具有一定的實(shí)際推廣價(jià)值.2 基于K-means 聚類算法的教學(xué)反饋數(shù)據(jù)無(wú)監(jiān)督聚類分析
3 系統(tǒng)設(shè)計(jì)
3.1 系統(tǒng)組成
3.2 總體業(yè)務(wù)流程
3.3 系統(tǒng)訪問(wèn)控制模型設(shè)計(jì)
4 系統(tǒng)實(shí)現(xiàn)與測(cè)試
5 結(jié)論