霍緯綱
(中國民航大學 計算機科學與技術學院,天津 300300)
自2005年教育部開展工程教育認證工作以來,工程教育認證的產出導向、學生中心、持續(xù)改進等先進理念有力地推動了我國工程教育專業(yè)的教學改革[1]。產出導向要求專業(yè)要根據(jù)學校定位、社會需求、利益相關者的期望確定學生畢業(yè)5年左右的培養(yǎng)目標,由培養(yǎng)目標確定學生畢業(yè)要求,由畢業(yè)要求確定專業(yè)課程體系,課程體系的每門課程都要以畢業(yè)要求的能力產出為教學目標。以學生為中心的教學理念強調教學設計要考慮學生學什么、怎么學、學得怎么樣,教學過程注重激發(fā)學生興趣和潛能。持續(xù)改進是指專業(yè)要在合理評價專業(yè)實施效果的基礎上持續(xù)改進課程體系、畢業(yè)要求及培養(yǎng)目標。因此,工程教育認證的理念對于提升專業(yè)層面和課程層面的建設質量都具有積極的指導意義。
軟件建模與分析是計算機科學與技術專業(yè)軟件方向選修課,在學生具備了一定的面向對象程序設計編程能力的基礎上,進一步培養(yǎng)學生面向對象的思維方式,使其在實際軟件項目開發(fā)時,能給出良好的設計方案。對照工程教育認證要求,課程存在的主要問題如下。
(1)課程的教學目標定位不清,與畢業(yè)要求或專業(yè)培養(yǎng)目標沒有明確的支撐關系。由于課程目標過于籠統(tǒng)抽象,導致沒有實施教學目標的有效方式和方法。
(2)教學過程強調以知識傳授為主,以軟件建模與分析相關知識點講解的完整性和清晰度為目標,沒有針對學生的軟件分析設計能力設計教學活動。
(3)課程考核方式單一,無法科學量化評價教學效果。目前本課程的考核采用筆試閉卷考核方式,這種方式只能考查學生的理論知識掌握情況,無法考核學生是否具備軟件分析與設計的具體能力。
根據(jù)工程教育認證標準和學院計算機科學與計算機專業(yè)的畢業(yè)要求指標點分解情況,選取的畢業(yè)要求指標見表1。由表1中計算機科學與技術專業(yè)畢業(yè)要求指標點,軟件建模與分析課程教學具體目標可確定如下。
目標1:理解面向對象技術的基本概念和核心特征(支撐畢業(yè)要求2.1)。
目標2:掌握UML中用例圖、類圖、順序圖、狀態(tài)圖、活動圖的相關概念,能使用這些圖表述軟件建模問題(支撐畢業(yè)要求2.1)。
表1 與本課程相關的畢業(yè)要求指標點
目標3:能編撰軟件需求規(guī)格說明書的相關內容(支撐畢業(yè)要求2.1)。
目標4:能針對特定的軟件需求進行領域分析,抽象領域概念、領域概念之間的關系,并能以領域模型的方式表達分析結果(支撐畢業(yè)要求3.1)。
目標5:能基于領域模型設計軟件類,定義軟件類之間的關系,給軟件類分配職責(支撐畢業(yè)要求3.1)。
目標6:理解基本的軟件設計模式、面向對象設計的基本原則,能使用這些原理分析軟件設計方案的合理性(支撐畢業(yè)要求3.1)。
目標7:能夠與團隊合作完成課程項目需求分析及建模任務(支撐畢業(yè)要求9.1)。
由既定的教學目標確定教學活動內容,包括課堂講授、課外作業(yè)、課內實驗、課程項目共4個教學環(huán)節(jié)。各教學環(huán)節(jié)內容、學時及其與課程目標的對應關系見表2。課堂教學內容系統(tǒng)講解統(tǒng)一建模語言UML和面向對象分析與設計的基本概念和方法,使學生具備面向對象分析設計的基礎知識。
表2 課程教學內容、學時與教學目標對應關系
教學方式采用多媒體與傳統(tǒng)板書相結合,增加教學信息量和直觀性。使用Rational Rose工具當場操作演示UML各種圖的繪制使用方法,如在講用例實現(xiàn)時采用啟發(fā)式教學方法,一邊閱讀用例描述一邊引導學生抽象實體類、邊界類、控制類,在此基礎上繪制順序圖實現(xiàn)用例。這種授課方式活躍了課堂氛圍,有助于強化學生的實踐技能。
教學手段采用以案例驅動的啟發(fā)式和討論式教學,激發(fā)學生的學習興趣。一個好的案例應該能覆蓋課程教學中足夠多的知識點,并具有一定的復雜度,案例的業(yè)務背景也要易于學生理解??梢圆捎脠D書借閱系統(tǒng)[2]和NextGen POS系統(tǒng)[3],這兩個案例均能滿足上述案例選擇的原則。圖書借閱系統(tǒng)案例包含從需求分析、類建模、交互建模的詳細分析設計結果。NextGen POS系統(tǒng)全面展示了基于領域模型、系統(tǒng)順序圖、操作契約、通用軟件職責分配原則的面向對象分析設計方法,而且以偽代碼形式作為分析設計結果,讓學生感覺到軟件建模“立竿見影”的效果。
此外,根據(jù)課程教學目標設置4次作業(yè),作業(yè)類型以分析題、應用題為主,考查學生對面向對象技術中類、對象、多態(tài)、封裝、軟件職責分配原則等重要知識點的理解和掌握程度;通過學校BB學習平臺、課程微信群方式,及時解決學生學習過程中的問題,鼓勵學生以中國大學MOOC平臺中相關視頻資源輔助學習。
新布盧姆教育目標模型把認知過程分為記憶、理解、應用、分析、評價、創(chuàng)造6個維度,其中記憶與理解是認知過程的基本階段,應用、分析、評價和創(chuàng)造是對知識的遷移、加工和應用,使學習者獲得解決問題的能力。課堂教學與作業(yè)環(huán)節(jié)主要讓學生實現(xiàn)知識的記憶和理解,而為了達到應用、分析、評價和創(chuàng)造則需要通過實踐教學環(huán)節(jié)實現(xiàn)[4]。為此,筆者設置了用例圖建模、類圖建模、順序圖建模、狀態(tài)圖與活動圖建模共計8學時的課內實驗環(huán)節(jié),旨在使學生應用及理解課堂教學UML相關知識點。同時為使學生具備軟件建模分析能力,還設置了課程項目分析與設計環(huán)節(jié),目前提供3個課程設計建模題目:大學選課系統(tǒng)、倉庫管理系統(tǒng)、航空公司訂票系統(tǒng)。每個題目都提供了具體的建模要求,也給學生留有一定的發(fā)揮空間,要求學生以小組為單位完成課程項目,每個小組3~5人。每個小組須提交涉及需求到分析設計的文檔:愿景、用例模型(包括用例模型中每個用例的描述)、補充性規(guī)格說明、詞匯表(數(shù)據(jù)字典)、業(yè)務規(guī)則、用例實現(xiàn)文檔,包括順序圖和VOPC(View Of Participating Class)圖。另外,要求組內的每位學生至少要建模實現(xiàn)用例模型中的一個用例。
根據(jù)工程教育認證標準,課程教學過程中的每個教學活動都需要有具體可操作的評價方法,科學合理的課程評價方法能反映教學中的問題,為教學內容、教學方法的持續(xù)改進提供依據(jù)。課程達成度評價是以評價學生能力產出為主要目的,以考查學生對知識點的理解和應用能力為重要內容。由此,根據(jù)3.2節(jié)設計的教學活動,設置了期末考試、課程項目、作業(yè)、實驗4個評價環(huán)節(jié)?;?個評價環(huán)節(jié)對課程教學目標的貢獻度[5],設置的各評價環(huán)節(jié)在課程達成度評價中的權重分別為0.5、0.2、0.25、0.05。各評價環(huán)節(jié)與課程教學目標的支撐關系及目標分值見表3。
根據(jù)表3的目標分值分配結果,各評價環(huán)節(jié)均設有若干考查點??荚嚟h(huán)節(jié)的4個考查點A-1、A-2、A-3、A-4分別對應課程目標2、4、5、6??荚嚟h(huán)節(jié)各考查點的分數(shù)由考題評分標準計算。課程項目的3個考查點B-1、B-2、B-3分別對應課程目標3、5、7。課程項目各考查點的分數(shù)由表4所示的量規(guī)表計算。作業(yè)環(huán)節(jié)的4個考查點C-1、C-2,、C-3、C-4分別對應課程目標1、4、5、6。每個考查點的得分從作業(yè)完成進度及完整性、作業(yè)內容準確性、能否對作業(yè)問題提出新穎的解決方法等3個方面計算。實驗環(huán)節(jié)的考查點D對應教學目標2。學生實驗的得分從實驗報告的完整性及規(guī)范性、實驗報告內容準確性、報告真實性等3個方面計算。作業(yè)和實驗環(huán)節(jié)的主觀性評價部分均設計有量規(guī)表,限于篇幅略去。由表3中每個課程目標的總目標分值,計算分配各評價環(huán)節(jié)每個考查點占整個評價環(huán)節(jié)目標分值的比例,具體見表5。由表5計算出每個學生對應于每個課程目標的得分及其達成度。據(jù)此,可以算出教學班內所有學生對于每個課程目標的平均得分及平均達成度。
以學院2016級軟件建模與分析教學班的課程目標平均達成度計算結果為例說明教學改革實踐結果。課程目標4、5、6的平均達成度分別為0.64、0.63、0.61,該3項課程目標達成度較低,結果表明學生在領域模型分析、軟件類定義及職責分配、基本設計模式應用等能力方面尚有欠缺。為此,在下一輪教學過程中,課程組可以適度增加這3項課程目標涉及的知識點的講解學時,在作業(yè)環(huán)節(jié)新增領域模型、軟件類職責分配等知識點的應用題目。課程目標1、2的平均達成度分別為0.67、0.73,結果表明學生可以較好地理解面向對象技術的核心特征和概念,能掌握UML的用例圖、狀態(tài)圖等核心圖形的知識點及其應用。下次教學過程可以考慮增加課程目標1、2的考核難度。課程目標3、7的平均達成度為0.73、0.84,說明學生能較好地撰寫軟件需求規(guī)格說明書,并且在課程項目設計過程中有較好的團隊協(xié)作能力。但這兩項目標的考核標準需要進一步修訂,以便更好地反映出學生能力水平。
表3 課程目標的達成度評價環(huán)節(jié)及目標分值
表4 課程項目量規(guī)表
表5 課程目標的達成度評價計算方法
中國民航大學計算機學院為提高計算機科學與技術專業(yè)的培養(yǎng)水平,于2018年著手開展了工程教育認證的準備工作,依據(jù)認證標準要求對專業(yè)培養(yǎng)方案進行了修訂,筆者按照培養(yǎng)方案的要求對軟件建模與分析課程進行了改革實踐。以工程教育專業(yè)認證的學生為中心、以產出為導向的教育理念為指導,設計的軟件建模與分析教學改革方案基于計算機科學與技術專業(yè)的畢業(yè)要求,設置了軟件建模與分析的具體教學目標,構建了與教學目標相適應的教學活動內容、教學方式方法、考評環(huán)節(jié)及課程目標達成度計算方法。實踐結果表明,面向工程教育認證的軟件建模與分析課程改革能發(fā)現(xiàn)課程教學過程中的“短板”,有助于實現(xiàn)該課程教學水平的持續(xù)改進,持續(xù)提升該課程的教學質量。