商鵬
【摘 要】UML課程是軟件工程課程體系中一門重要課程,傳統的教學難以體現課程的實踐作用和應用價值,無法調動學生的學習積極性。本文對UML課程教學提出了實踐化的改革方案,從教學目標、教學方式、考核方式、聯系實踐、與其他課程結合等方面進行了探索,著重強調實踐在教學中的地位。實踐證明,對學生學習積極性和實踐應用能力提高有明顯作用。
【關鍵詞】UML;軟件工程;實踐化;教學改革
中圖分類號: X820.3-4 文獻標識碼: A 文章編號: 2095-2457(2017)17-0089-002
Research on the Practical Teaching Reform of UML
SHANG Peng
(College of Computer Science and Technology, ShanDong University of Technology,Zibo Shandong 255049,China)
【Abstract】UML is an important course in software engineering Curriculum system. The traditional teaching is difficult to embody the practice and application value of the course,and the students' learning initiative cannot be mobilized.This paper proposes a practical reform plan for UML teaching,from teaching objectives,teaching methods, assessment methods,contact practice,integration with other courses,etc,emphasis on the status of the practice in teaching. It has been proved that it has obvious effect on students' learning enthusiasm and practical application ability.
【Key words】UML;Software engineering;Practice;Teaching reform
0 引言
統一建模語言(Unified Modeling Language,UML)是一種可以對軟件密集型系統產品進行可視化、詳細描述、構造和文檔化的標準語言。UML已經有效地應用于企業信息系統、銀行與金融服務、醫療電子和科學等領域[1]。截至目前,已經有很多高校和職業院校開設了UML或軟件建模課程,但在開課過程中存在很多問題,無法引起學生的興趣,教學效果一般,學生很難將理論知識與實踐應用相結合,迫切需要教學和實踐的改革,將實踐更好的引入教學,提高學生的學習興趣和實踐能力。
1 課程教學的現狀和問題
UML課程屬于軟件工程課程系列,需要學生掌握多種模型元素,并針對系統的結構和行為應用模型元素建立各種模型圖,對系統進行可視化、文檔化的表現。課程內容信息量大,細節知識繁多,較為抽象,所需關聯知識較多[2],且各種模型相對獨立,給學生的感覺是內容復雜散亂,知識枯燥乏味。目前的UML教學大多以知識點教授為主,與其他知識聯系不緊密,普遍存在理論與實踐脫節的現象[3],學生感受不到課程與軟件開發實踐的聯系,難以理解UML的實際應用價值,難以在特定的情境下應用UML知識解讀問題[4],因此大多學習積極性不高,實踐能力不強,學習效果差。
2 教學改革的目的和意義
鑒于目前的課程教學存在上述問題,迫切需要對目前的教學方式和教學方法進行改革,將實踐能力的培養帶入課堂教學、實驗教學和學生自主學習,將知識應用帶入軟件開發的環境甚至日常生活情境,引導學生利用UML的模型解決日常問題和常見的軟件開發問題, 提高學生的學習興趣和學習主動性,加強學生的實踐應用能力。
3 教學改革探索
為了提升課程的教學效果,提高學生的學習積極性,加強學生的實踐能力,推進課程的實踐化進度,在教學中進行了實踐化教學改革,從課程目標、教學過程、聯系實踐和考核改革等方面進行了實施。
3.1 明確學習目標
由于UML課程以模型為主,各個模型除了具有公共的特性之外,還具有各自的模型元素、建模原則和應用目的,當學生學習了多種模型后,容易產生混亂,無法正確區別各種模型的作用,會使用一種錯誤的模型去解決問題。因此,在每一部分課程內容講授前,明確這一部分內容的課程目標就顯得很有必要。讓學生在學習某個模型之前,了解這部分內容解決什么問題,在什么情境下使用,實踐應用中的哪些方面需要用該模型去表達,減少錯用或亂用模型的情況。
3.2 教學過程案例化、實驗過程實踐化
UML的學習包括教學和實驗兩部分,在教學過程以案例貫穿,讓學生在案例中學習知識,了解應用;在實驗過程,采用由簡到難、多層次、推進式的項目設計、開放性實驗,使學生掌握應用。
在明確學習目標的前提下,重新對教學內容進行組織和設計,精簡繁瑣的細枝末節的講解,從案例入手分析模型的構成元素、構建方法和建模目標,使學生在分析實例中自然掌握模型的原理和構成;然后,由案例展開,引導學生參與案例的分析和構建,使學生在分析中掌握模型元素在案例中的含義,如何使用,模型如何有效表現案例的相關內容;最后,讓學生獨立完成一個案例,鞏固加強并歸納總結對知識的應用。以案例貫穿教學的方式,避免了學生坐在課堂枯燥學習復雜的知識點,用生動的實踐案例集中學生的學習精力,調動學生的興趣和積極性,在案例分析的輕松氣氛下,自然掌握模型的應用,并能利用模型解決相關問題。
課程實驗注重實踐化和開放性。UML的實驗設計以學生為主導,以教師命題和自主選題為方式,采用循序漸進的模式,引導學生自主完成從初期建立單一模型到后期針對項目和系統建立綜合模型的實驗過程。課程實驗前期以鞏固所學知識為主,教師會給予一些生活實際問題和軟件開發過程中的分析設計問題,讓學生嘗試使用UML知識解決,并為之建立相應的UML模型。此階段主要鞏固課堂教學成果,加強學生對單一模型的分析和應用能力。課程實驗后期設立開放性實驗,將學生進行分組,自主選擇項目,綜合應用課程知識進行完整的項目分析設計。由于UML的課程特點,學生可以展開深入的討論和分析,教師進行必要的思路和分析指導,旨在培養學生自主動手能力,提高學生知識應用和實踐應用的能力。
3.3 密切聯系實踐應用
UML在軟件開發中的應用有很多。WEB建??梢允褂肬ML對WEB元素應用及其關系建立模型,數據庫的分析與設計中可以使用UML對象模型作為依據,建立模型到數據庫的映射并分析數據的持久化,嵌入式軟件系統可以利用UML進行系統建模等等。
在教學中,鼓勵學生多接觸UML在實踐中的各種應用,使學生了解UML不是僅僅畫模型圖,在軟件開發的很多領域都有應用,幫助學生更好的認識到課程的重要性,為后續的軟件開發實踐奠定基礎。
3.4 與其他課程緊密結合
UML作為軟件工程系列課程的核心課程之一,與系列中的其他課程有著緊密聯系。拋掉這些聯系,將UML作為單獨的一門課程來看待,就丟掉了其原有的特點,減弱了應用性。因此,需要重視課程間的聯系和滲透。對于《軟件工程》課程,面向對象的分析和設計大量使用到UML模型;對于《軟件測試》課程,UML模型是軟件測試的基礎和依據,并存在基于UML模型的軟件測試方法;對于《設計模式》課程,UML本身就支持設計模式的表達,使用參數化協作描述模式。另外,UML與非軟件工程系列課程也有很多聯系,對于編程類課程,UML模型提供編程的依據,UML工具提供模型到代碼框架的映射;對于關系型數據庫類課程,UML模型提供到數據庫的結構映射和功能映射。由此看出,在教學中UML跟其他課程緊密聯系,相互滲透。
在其他的課程中使用UML技術,在UML課程中學習其在其他課程中的應用,不僅可以為UML課程提供更多的應用案例,使學生更了解UML的廣泛應用,而且加強了課程間的聯系,幫助學生更好的理解和學習其他課程。
3.5 考核方式改革
目前大多院校的UML考試仍以筆試模式為主,筆試模式的優勢是可以很好的考查學生對基礎知識的掌握程度,缺點是對學生的綜合實踐應用能力評定無法實現。采用“筆試+實踐考查”的考核方式,可以更全面的了解學生的學習情況。保留筆試,但不再考查學生的基礎知識,而是以簡單的實踐題目為主,針對不同類型的模型設計不同的題目,考查學生對某一類模型的基礎建模能力;實踐考查設計為團隊綜合項目,以個人或團隊為單位,完成對完整項目或開放性課題的分析、設計、建模等全過程,考查學生對模型的綜合應用能力和分析解決問題的能力。
“筆試+實踐考查”的考核方式,既可以考核到學生對基礎應用的掌握能力,又可以了解到學生的綜合應用能力,同時有利于學生個性化的發揮和創造力的培養。
4 總結
UML課程實踐化改革在本院實施已見成效,學生的學習積極性提高了,實踐積極性加強了,能夠主動地針對題目進行討論,主動參與到模型的思考和建立,主動參與項目的分析和設計。實踐化改革擯棄了以往以知識講授為主的教學模式,著重實踐在課程中的體現,重視與其他課程的結合,解決了很多實踐類課程教學中存在的問題,提高了課程的教學效果,推動了軟件工程體系課程工程化的腳步。
【參考文獻】
[1]邵維忠,麻志毅,馬浩海,劉輝,譯.UML用戶指南[M].第二版.北京:人民郵電出版社,2013:9-12.
[2]張麗平,李松,郝曉紅.結合案例和任務驅動的UML教學方法研究[J].黑龍江教育學院學報,2012,31(3):50-52.
[3]周春雷.UML課程教學效果提升策略研究[J].電腦知識與技術,2011,7(13):3202-3203.
[4]徐立新,付曉琳,劉鋼.UML課程教學的改革與實踐[J].電腦知識與技術,2014,10(12):2807-2810.