蔣國清
摘 要 文章詳細地闡述面向?qū)ο蠹夹g(shù)中的UML的概念,并介紹了目前面向?qū)ο蠹夹g(shù)UML統(tǒng)一建模語言課程教學(xué)中存在的問題,并在課程整合、教學(xué)資源建設(shè)和教學(xué)案例設(shè)計和選取等方面進行了創(chuàng)新的教學(xué)探索,實踐表明,此方法能激發(fā)學(xué)生的學(xué)習(xí)興趣,并能有效提高學(xué)生的軟件分析和設(shè)計能力。
關(guān)鍵詞 UML面向?qū)ο蠓治鲈O(shè)計 課程教學(xué) 創(chuàng)新研究
中圖分類號:G424文獻標識碼:A
Innovation Research on "UML Object-Oriented
Analysis and Design" Courses Teaching
JIANG Guoqing
(Institute of Software, Changsha Social Work College, Changsha, Hu'nan 410004)
Abstract This article describes in detail the UML object-oriented technology concepts and describes the current Unified Modeling Language Teaching UML in object-oriented technology problems and curriculum integration, teaching resources construction and design and selection of teaching cases and other aspects of the explore innovative teaching, practice shows that this method can stimulate students' interest in learning, and can effectively improve students' software analysis and design capabilities.
Key words "UML Object-Oriented Analysis and Design"; course teaching; innovation research
1 概述
1.1 UML的概念
UML是面向?qū)ο蟮姆治雠c設(shè)計方法不斷向前發(fā)展的產(chǎn)物,最早出現(xiàn)在20世紀80年代末至90年代中。到現(xiàn)在,UML已經(jīng)統(tǒng)一為大眾所接受的標準建模語言,是OMG的一個標準,它是一個支持軟件開發(fā)中模型化和圖形化的語言,在軟件開發(fā)的每一個階段,從需求分析、規(guī)格,一直到構(gòu)造和配置,UML都能夠為之提供模型化和可視化支持。
1.2 學(xué)習(xí)UML的必要性
在軟件開發(fā)生命周期的各個階段,都可以用UML來為開發(fā)人員來描述其模型。只不過描述的重點根據(jù)生命周期各階段的任務(wù)不同而不同,這些各個階段的模型UML用不同的圖來體現(xiàn);并且各階段的模型都是相輔相成的,每個階段的模型描述都是根據(jù)前一個模型的描述而來,彼此相互關(guān)聯(lián)。所以系統(tǒng)分析員在做需求分析時,用UML用例圖來體現(xiàn)業(yè)務(wù)模型,這個模型是系統(tǒng)設(shè)計師做進一步的軟件設(shè)計的重要參考依據(jù);在系統(tǒng)設(shè)計階段,前一階段系統(tǒng)架構(gòu)師或系統(tǒng)設(shè)計師所做的用UML描述的架構(gòu)設(shè)計或概要設(shè)計模型是系統(tǒng)設(shè)計師做詳細設(shè)計的基礎(chǔ);在詳細設(shè)計階段設(shè)計師根據(jù)概要設(shè)計來進行詳細設(shè)計,并且用UML 來描述詳細的對象模型,這個對象模型市編程者編寫代碼的依據(jù)。由此使用UML可以很清楚地描述軟件開發(fā)各個階段的模型,用各種圖描述的模型有機地將軟件開發(fā)技術(shù)和面向?qū)ο蟮乃枷虢Y(jié)合在一起,極大地提高了軟件生產(chǎn)工業(yè)的效率,因此,作為計算機軟件工程專業(yè)的學(xué)生,掌握UML建模技術(shù)極其必要。
2 現(xiàn)階段UML教學(xué)中的特點和不足
2.1 現(xiàn)階段UML教學(xué)中的特點
UML教學(xué)的目的是要讓學(xué)生理解相關(guān)的理論知識,并以此為指導(dǎo),學(xué)會在軟件開發(fā)的各個階段使用UML來建立模型,并且能提高面向?qū)ο筌浖_發(fā)的動手能力和創(chuàng)新能力。UML面向?qū)ο蠓治鲈O(shè)計課程教學(xué)的基礎(chǔ)由課堂教學(xué)和實踐教學(xué)兩部分組成。傳統(tǒng)的教學(xué)中,使用比較多的教學(xué)方法就是講授法,同時利用上機實訓(xùn)操作來復(fù)習(xí)和鞏固課堂中所學(xué)的知識,因此在教學(xué)上要解決三方面的問題:首先時基礎(chǔ)理論知識,然后是工具的操作和應(yīng)用。最后是學(xué)生全面理解并掌握UML,還要能使用UML來進行面向?qū)ο蟮姆椒▉磉M行軟件開發(fā)。目前,該門課程中通常使用案例進行教學(xué),教材編排有序合理。
2.2 現(xiàn)階段UML教學(xué)中的不足
實踐環(huán)節(jié)過少,這門課教學(xué)的內(nèi)容較多,理論教學(xué)占據(jù)了大量的課時,沒有足夠的實訓(xùn),使得課堂顯得呆板、枯燥,無法激發(fā)學(xué)生的學(xué)習(xí)興趣,無法培養(yǎng)學(xué)生的實際操作水平,從而無法提高綜合分析能力及創(chuàng)新能力。
教材案例不夠經(jīng)典?,F(xiàn)有教材上的課例雖然豐富,但是,比較傳統(tǒng)簡單,且連貫性不夠,還沒有形成一個有機的整體,不能很好地把各章節(jié)知識點前后貫穿,導(dǎo)致學(xué)生不能學(xué)以致用,在一個具體項目的分析、設(shè)計和開發(fā)之中,學(xué)生感覺無法系統(tǒng)地應(yīng)用UML 技術(shù)。
3 UML建模語言教學(xué)的創(chuàng)新研究
3.1 用項目驅(qū)動課程體系整合課程
為了讓學(xué)生學(xué)以致用,將UML的建模技術(shù)熟練的應(yīng)用到實踐中,迅速適應(yīng)軟件開發(fā)的工作,我們采取項(下轉(zhuǎn)第138頁)(上接第128頁)目驅(qū)動的教學(xué)方式。整個教學(xué)中選擇一個合理的項目,把這個的項目開發(fā)和整個專業(yè)課程的教學(xué)過結(jié)合起來;將項目開發(fā)的生命周期的各階段內(nèi)容(如需求分析、概要設(shè)計、詳細設(shè)計、編碼實施、軟件測試等)貫穿到開發(fā)課程的各個理論知識點上;專業(yè)課程教學(xué)內(nèi)容根據(jù)這個項目開發(fā)的不同階段來進行組織,這樣軟開專業(yè)課程的理論內(nèi)容和這個項目的開發(fā)實現(xiàn)了完美的整合。
具體實施模式如下:(1)運用用公司模式設(shè)計,完成項目驅(qū)動的UML和軟件開發(fā)的教學(xué)的無縫結(jié)合;其次,分配項目階段,明確整個專業(yè)課的學(xué)習(xí)過程在項目不同階段的分配;(2)明確預(yù)期目標,在進行項目的需求分析時,要明確項目是屬于哪個領(lǐng)域及其相關(guān)業(yè)務(wù)流程,要了解目前所面臨的問題、理清本項目需要解決哪些問題、項目的預(yù)期目標和最后的成果是什么;(3)及時作出評估,對項目開發(fā)的技術(shù)以及方法進行評估并確定其關(guān)鍵技術(shù)與技術(shù)路線;(4)對項目進行劃分,得到相應(yīng)的子系統(tǒng),在明確現(xiàn)狀及其開發(fā)條件后制定具體的方案,并對技術(shù)方案進行可行性的論證。(5)對項目實施分工計劃,根據(jù)項目的劃分安排項目人員,明確每個人在開發(fā)團隊中的職責(zé),同時制定詳細的進度計劃,根據(jù)進度計劃遞交相應(yīng)的成果。
3.2 建立教學(xué)兼顧的大學(xué)城資源庫
基于云計算的大學(xué)城空間拓展了學(xué)生學(xué)習(xí)的渠道,同時也打破單一、枯燥的,灌輸式的統(tǒng)教教學(xué)的模式,給學(xué)校教育提供了很好的技術(shù)平臺。為此依托大學(xué)城建立UML建模的教學(xué)資源庫,包括:電子教案、授課課件、課程授課計劃、教學(xué)大綱和實訓(xùn)大綱等;布置的習(xí)題、復(fù)習(xí)題,單元測驗題,期中期末考試題、項目實訓(xùn)題;建立的交流群組,發(fā)表的文章、論壇;圖片、視頻等資源;教師根據(jù)授課要求,通過打碎,重構(gòu)、泛在等手段進行資源整合或再組合,成為適合自己模式的教學(xué)資源。這樣教師的空間可建設(shè)成為學(xué)生快捷、高效、方便的教學(xué)課堂。
大學(xué)城可以建立師生交流的空間,便于學(xué)生答疑,從而得到提升。大學(xué)城在教與學(xué)中的使用用打破了時間和空間上的限制。在真實的課堂之外,有構(gòu)建了一個功能強大的虛擬學(xué)習(xí)環(huán)境,教師和學(xué)生利用新興的通信技術(shù)(如微信、QQ等)進行交流互動,教學(xué)也變得靈活,教師利用教師空間可根據(jù)每次課程的教學(xué)要求編制好電子表格化教案和該課堂所需的教學(xué)資源,這些資源要進行打碎重組。這樣,教學(xué)手段不再單一,教學(xué)過程不再枯燥。
3.3 精心設(shè)計適合的教學(xué)項目(案例)
優(yōu)質(zhì)的案例教學(xué)應(yīng)該能夠很好地幫助學(xué)生提高掌握和理解課程知識的能力,激發(fā)學(xué)生的學(xué)習(xí)積極性,從而提高教學(xué)效果。針對傳統(tǒng)案例設(shè)計存在的問題,如:場景簡單、單一,不能貫穿于整個系統(tǒng)建模,缺乏延續(xù)性。為此,本文提出了教學(xué)案例的設(shè)計原則:同一個案例應(yīng)貫穿于整個課程,并且案例背景學(xué)生熟悉;案例的內(nèi)容涵蓋課程所有知識點;最好是設(shè)計兩個案例,分別用于用于課堂教學(xué)和上機實驗。課程主案例應(yīng)該具有一定的復(fù)雜度;案例的內(nèi)容要能覆蓋課程的全部知識點,而且盡可能要貼近實際,選擇常用的或者是學(xué)生較為熟悉的業(yè)務(wù)背景,特別是學(xué)生經(jīng)常接觸的,有利于易于學(xué)生對案例和知識點的理解,如學(xué)生管理系統(tǒng)、教務(wù)管理系統(tǒng)、圖書管理系統(tǒng)等。這樣的系統(tǒng)也具有一定的難度,符合上述案例設(shè)計要求。
4 結(jié)束語
UML面向?qū)ο蠓治鲈O(shè)計是軟件開發(fā)專業(yè)的重要課程,本文針對當(dāng)前該課程的特點和傳統(tǒng)教學(xué)中的問題,提出了基于項目驅(qū)動的教學(xué)內(nèi)容的整合,精心設(shè)計用以貫徹整個課程和軟件開發(fā)課程的教學(xué)案例,實訓(xùn)該課程和軟件開發(fā)課程同步,同時充分利用大學(xué)城空間,建設(shè)該課程的學(xué)習(xí)資源庫,方便學(xué)生的自主學(xué)習(xí)。實踐表明,上述該思路充分地提高了學(xué)生的學(xué)習(xí)興趣,同時借助大學(xué)城空間,增進師生的交流與溝通,明顯改善教學(xué)效果,提高了學(xué)生分析問題和解決問題的能力。當(dāng)然,此方案也會有期待更加完善的地方,還會有進一步研究和探討的空間,對此,我們在以后的研究中將繼續(xù)完善。
參考文獻
[1] 李楠.基于UML和關(guān)系模型的時態(tài)數(shù)據(jù)庫設(shè)計方法研究[D].武漢理工大學(xué),2010.
[2] 周春雷.UML課程教學(xué)效果提升策略研究[J].電腦知識與技術(shù),2011(13).
[3] 許波,陳曉龍.UML結(jié)合軟件工程教學(xué)改革探討[J].計算機教育,2011(2).
[4] 陳昊,明仲,彭小剛.在UML課程的實踐教學(xué)中實施CDIO的探討[J].計算機教育,2010(14).