吳紹根
文章編號:1672-5913(2009)07-0104-03
摘要:項目開發綜合實訓是軟件開發教學中的一個重要環節。本文介紹了基于案例再現實訓的教學模式,重點對案例設計一般原則、一般方法和案例再現實訓的考核方式作了介紹。實踐證明,該模式的應用能取得比較好的效果。
關鍵詞:案例再現;軟件技術;實訓
中圖分類號:G642
文獻標識碼:A
1引言
項目開發綜合實訓作為軟件技術教學中的一個重要環節,在貫通學期課程知識和使學生學會如何應用所學知識解決實際問題方面起到很大的作用。各個高職院校也越來越重視項目實訓在教學中的作用。通過我們對每學期末實訓效果的調查發現,有高達90%的學生通過了學期末的綜合實訓,學生理解更掌握了在學習過程中曾經模糊的知識,認為通過綜合實訓能將所學知識應用到未來的項目開發實踐中。
要達到預期的實訓效果,設計有效的實訓項目是一個關鍵問題,實訓項目設計的優劣和項目描述清晰程度會直接影響實訓效果。在軟件技術的教學實踐中,我們采用“案例再現”的方式來設計實訓項目。所謂“案例在現”指的是在實訓開始之前,教師將之前已經完成的實訓項目運行給學生看,讓學生對實訓項目的結果有一個感性認識,同時,在實訓項目指導書中,對項目的功能、性能提出進一步的要求,學生可以參考運行項目的外觀和功能特性,對項目進行改觀、優化和創新。教師則以學生對項目的功能完成情況、性能指標達到情況、項目外觀改觀情況、優化情況和創新情況作為實訓結果的考核指標對學生的實訓結果進行考核。
采用基于案例再現的實訓思想展開學期項目實訓,學生不再對項目實訓感到無所適從,而是可以從已有的項目中去感知、升華、創新已有的項目,學生可以盡其所能地應用所學知識、通過貫通各門課程知識來完成實訓項目,實訓效果很好,部分學生能有非常好的發揮,為學生的下一步學習建立了信心。
本文從基于案例再現實訓項目設計的一般原則、一般方法和實訓結果的考核幾個方面對基于案例再現實訓項目的設計作了介紹,然后給出一個具體的案例再現的例子。
2案例再現實訓項目設計的一般原則
由于實訓課程一般都集中安排在學期末的幾個星期,其目的在于通過實訓,使學生可以綜合應用已學知識來解決實際問題,是對學期知識的綜合、升華和運用,因此,在案例設計中需要遵循以下基本原則:
(1) 綜合性。所設計案例要能夠綜合學期課程知識,除了綜合本學期課程以外,還要貫通本學期相關課程的知識和以前學習的知識。例如,在對“Java程序設計”課程進行實訓時,由于在同一學期同步學習了“數據庫設計”課程,因此,在設計“Java程序設計”實訓項目時,需要同時考慮綜合“Java程序設計”和“數據庫設計”課程知識,需要在實訓項目中將這兩門課程知識貫通起來,使學生可以通過實訓綜合運用這兩門課程知識解決實際問題,達到對所學知識的提升和升華的目的。
(2) 典型性。所設計的案例要能代表課程的任務目標,能代表課程的應用方向。例如,對“Java程序設計”這門課程,由于Java語言主要用于開發基于網絡的應用,包括小應用程序Applet和應用程序Application,因此,所設計的實訓項目應涵蓋這兩方面的知識和技術的應用案例。
(3) 趣味性。如果讓學生做他們愿意去做的事情,他們會投入十二分的努力去做,實訓也是一樣。如果實訓項目有趣的話,學生會通過各種方式解決實訓中所遇到的問題,并以自己解決了困難問題而感到驕傲和自豪。
(4) 挑戰性。由于學生在學習效果上存在差異,因此,在設計實訓案例時應當考慮到各種層次的學生情況。將案例要求根據學生的情況分為三個層次,包括:基本要求部分、擴展要求部分和可選要求部分。其中,基本要求部分要求所有的學生必須完成,如果沒有完成則實訓成績不達標,擴展要求部分是大部分學生通過努力可以完成的部分,而對于可選部分,學生可以根據自身的情況選擇做或不做。通過這種方式,在實訓案例中兼顧了各種層次的學生,同時為學習較為優秀的學生提出了挑戰,也為暫時后進的學生設定了目標。
(5) 規范性。文檔的編寫也是軟件技術課程中的重要教學內容,實訓過程的每個階段工作都應在文檔中體現出來, 對文檔寫作有嚴格的標準和規范,因此可設計和選取一些與此有關的案例進行分析,如可設計需求規格說明書、概要設計說明書、詳細設計說明書的文檔案例。
3案例再現實訓項目設計的一般方法
首先根據案例再現實訓項目設計的一般原則挑選或構思實訓案例,在條件允許的情況下,建議從合作的企業項目中抽取實際的項目案例進行適當的裁剪后作為實訓案例的原型。在確定案例后,可參考如下的方式進行案例再現設計:
(1) 編寫實訓指導書。這是任何方式的實訓都必須具備的基本實訓文件,在實訓指導書中根據實訓大綱的要求明確實訓目的、實訓內容、實訓組織方式、參考指南和實訓考核方式等重要內容,學生在實訓指導書的指導下具體實施實訓。
(2) 展示再現實訓項目的運行框架。這是基于案例再現實訓的核心部分,通過展示實訓案例的運行框架,可以使學生對實訓項目有一個總體的、感性的認識,對實訓項目的功能、性能有一個初步的了解,對實訓項目的操作過程和邏輯有一個初步的把握。通過展示實訓項目的運行框架,學生思考所展示項目存在的問題,可以較快地切入項目,進而可以改進、提升和優化項目的功能和性能,為學生開發更優的項目奠定基礎。
(3) 在框架程序中預設問題。這是基于案例再現實訓的關鍵部分。在實訓之前展示實訓項目的運行框架,并不是預先實現項目的所有部分,而是將學生必須要掌握的知識部分和通過學生查閱資料可以解決的問題部分,在所展示的項目中將其空出來,并以文字的形式注明學生必須自行完成該部分的設計和編碼。在展示實訓項目時,可以有意識的將問題分類,例如,分類為一般難度、中難度和高難度的問題,并對不同難度的問題在考核評分時賦予不同的分值,這樣,可以督促學生解決預設,同時還可以激發較為優秀的學生解決高難度的問題的欲望,進而使得各種層次的學生在實訓時都能有所作為。
(4) 強調對項目設計創新的支持。在實訓之前所展示的運行框架不能限制學生的個人發揮,應明確指出學生可以徹底地推翻示例框架,可以按自己的設想重新設計,同時,可以在案例實現中添加任何合理的項目元素使項目的運行更加生動、合理,并在考核標準中增加對創新元素的評分,這樣,學生可以盡其可能的利用已學知識、甚至通過各種渠道來創新項目元素,激發學生的創新潛能。
4案例再現實訓項目的結果考核方式
不同于傳統的實訓考核方式,基于案例再現實訓的考核從以下幾個方面進行,包括:項目組總體要求的達到程度、項目組文檔編寫清晰程度、項目組個人對預設問題的完成程度、項目組個人創新程度等方面進行考核。表1是案例再現實訓項目的考核指標和分值。
從表1中的評分標準可以看出,項目組作為一個整體必須完成基本的功能,使所設計的項目可以無故障的運行,這要求項目組必須協作,強調了團隊的作用,同時,對項目組的成員分別進行考核,視其對預設問題的完成情況和創新情況進行加分,使項目組成員的個人能力得到充分發揮,也可以拉開同一項目組成員的考核差距,使考核更具合理性。

5一個案例再現的例子
在學習“Java程序設計”和“數據庫程序設計”課程后,集中安排了4周的時間對學生進行實訓,我們采用了基于案例再現的方式進行實訓教學。為了增強實訓的趣味性,我們選擇了“坦克大戰”項目作為實訓項目,該項目包括游戲端程序和管理端程序,綜合了Java程序設計的知識內容和數據庫設計的知識內容。在實訓指導書中明確了實訓目標、實訓任務、實訓內容等,并展示了“坦克大戰”的運行框架,如圖1所示,學生通過運行所展示的框架,升華并創新了實訓項目,如圖2所示,對圖1和圖2的比較可以發現,學生所實現的項目已經從根本上改觀了所展示的項目。

6結語
本文介紹了基于案例再現的實訓教學。通過案例再現,首先給學生展示實訓項目的運行框架,可以使學生對實訓項目有一個感性的認識,對項目的功能、性能和操作邏輯均有一個初步的了解,為學生對實訓項目進行設計和對項目元素進行創新奠定了基礎,獲得了較好的效果。
參考文獻:
[1] 巫華芳. 軟件工程教學案例設計初探[J]. 教育與職業,2007,(9).
[2] 黃明,郭大偉. 案例教學中的案例選取與設計[J]. 教育探索,2006,(3).
[3] 李斌. 案例教學過程的設計與評價[J]. 教育與職業,2007,(1).
Comprehensive Software Development Practice Based on Project Replay
WU Shao-gen
(Department of computer engineering, Guangdong industry technical college, Guangzhou 510300, China)
Abstract: Comprehensive software development is an important phase in software education. Based on project replay, a new method about software development practice is introduced in this paper. It emphasizes on the basic principle, basic method and inspection of project design. A project example is also illustrated in this paper. Practice showed that software development practice education in this way is efficient and helpful.
Keywords: project replay; software technology; practice