


摘要:重點圍繞傳統方法學與面向對象方法學,提出了項目驅動下軟件工程課程案例式教學內容設計過程;基于所設計案例式教學內容,研究分段式情景教學方式,并提出分段式情景教學過程管理的系統框架;最后給出針對項目驅動的軟件工程課程案例式分段情景教學研究的若干思考及建議。
關鍵詞:項目驅動;軟件工程;課程案例;情景教學
文章編號:1672-5913(2013)03-0077-03
中圖分類號:G642
0 引言
“軟件工程”是一門理論與實踐并重的計算機軟件專業基礎課程,從工程意義上講是指軟件開發、維護、管理等,從學科意義上講是指軟件開發相關的理論、原理、方法、技術等,所涉及的知識點和重點內容都很多。軟件工程課程的教學方式方法改革是計算機現代教學研究中一個重要課題。目前軟件工程課程教學中存在的主要問題有:文字性內容及說明指導性的教學內容過多,教學過程比較枯燥,教學過程脫離實際應用,實踐環節薄弱,學生反映課堂上講授時能聽懂,但課后遇到實際問題時往往無從下手等。因此有必要進一步探索新的教學方式方法改革,以尋找創新人才培養新路。
劉強等人針對軟件工程課程的培養目標和教學實施中的關鍵問題,提出了該課程的教學實施方案。通過一個具有一定規模的軟件項目開發全過程,培養學生掌握扎實的軟件工程基礎知識,具備應用所學技術解決真實問題的能力。陳長清等人以企業實際軟件項目貫穿軟件工程的相關課程,引入企業工程師,合作組建課程教學團隊,將企業的真實要求和企業文化融入到日常教學中。由文獻分析可知,當前軟件工程課程教學研究中盡管引入了項目開發,但僅通過讓學生參加項目來學習軟件工程課程知識,還不足以快速掌握軟件工程的技術與原理,需要對項目開發中的一些隱性知識進行顯性化,以加快學生掌握軟件工程課程知識的速度。如何使軟件工程項目開發中的隱性知識顯性化是一個值得研究的問題,為此,本文研究項目驅動下的軟件工程課程教學,結合軟件工程知識點,對項目驅動的軟件工程課程教學內容進行案例式組織,從而實現對項目開發過程進行知識顯性化處理,以克服傳統的軟件工程課程教學內容的抽象性和枯燥性,增強軟件工程的知識可見性、具體性、生動性和針對性。
1 項目驅動下軟件工程課程案例式教學內容設計
在項目驅動下,通過案例設計來突出每堂課的教學重點非常重要,因此針對選取的具體項目,如何設計典型案例來組織教學內容是要解決的關鍵問題。針對該問題,本文采用的解決辦法是:首先收集軟件開發所需要的項目信息,然后針對項目軟件生命周期的各階段(如問題定義、可行性研究、需求分析、概要設計、詳細設計、編碼與單元測試、集成測試、運行與維護),結合學生接受知識的課堂教學時長,分段式選擇和設計項目軟件生命周期各階段的案例,借助UML、Visio圖形、圖表和動畫等方式予以表達,并存儲于案例庫中。針對目前比較流行的兩種方法學:傳統的方法學和面向對象的方法學進行教學內容設計,如圖1所示。
在圖1中,由于傳統的方法學和面向對象的方法學各有優勢、各有側重,在項目驅動下,需要以這兩種方法學為主線,并以軟件工程的過程模型(由于兩種方法學的模型又分成多種,因此需要根據項目的需求來選擇合適的過程模型。圖1中主要給出了傳統方法學的瀑布模型和面向對象方法學的RUP模型)作為設計案例的基礎依據,借助各模型體現的軟件生命周期的各個階段,分階段設計案例以組織、聯系軟件工程課程的重要知識點。針對兩種方法學所采用的不同技術、工具和方法,可以針對相同的項目內容,設計不同的案例,重點突出兩種方法學各自的特點。
2 項目驅動下軟件工程課程分段情景教學方式研究
為提高軟件工程課程講授的效果,達到項目驅動下軟件工程課程分段情景教學,需要把軟件工程知識體系和教學對象的實際情況有機結合。首先,針對學生掌握軟件工程知識的程度和教學計劃進度,從項目庫中選擇合適的項目,并選擇針對該項目而設計的相應案例;其次,通過基于案例的分段情景教學,使學生容易理解并掌握項目設計和開發過程中的軟件工程化方法,通過情景教學增加交互性,促進學生理論知識和動手能力的提高。
項目驅動下軟件工程課程分段情景教學過程如圖2所示。教學過程中,選擇并圍繞所設計的案例式教學內容,設計分段情景教學的指導、控制與交流腳本,對分段情景教學進行編排,包括組織小型項目研究團隊、從團隊管理者和團隊成員的不同角色設計情景會話、教學過程模擬項目開發的實際場景等。通過研究項目驅動的軟件工程課程分段情景教學方式,借助所設計的案例進行分段情景模擬,增加團隊成員間的情景會話,加強該課程的易學性、趣味性,調動學生學習積極性和自主性,達到“練中學”的效果。項目驅動的軟件工程課程分段情景教學可以培養軟件工程專業人才扎實的實用實踐技能,鍛煉學生獨立勝任項目小組成員角色的能力,并能獨擋一面地完成一個具有一定規模的軟件項目角色任務。另外,針對課堂上的分段情景教學內容,課后組織學生以組建團隊形式進行項目軟件的分段式實踐開發,讓學生通過理論聯系實踐的方式掌握軟件工程化開發方法。
3 項目驅動下軟件工程課程分段情景教學過程管理
項目驅動下軟件工程課程分段情景教學過程管理包括對教學計劃的制定、項目的選定、案例的設置、分段情景教學過程的控制(包括教學內容的選定、案例的選定、角色的安排、任務的安排、時間的安排、教學效果反饋)等內容進行管理。為對項目驅動的軟件工程課程分段情景教學過程進行連續有序管理,學院依托信息技術開發相關管理軟件,實現對教學過程和課后實踐的有效控制和管理,尤其是促進了個性發展,擴大了學生自主選擇空間。項目驅動下軟件工程課程分段情景教學過程管理系統的框架圖如圖3所示。
在圖3中,教師角色和學生角色通過人機交互界面訪問和使用該過程管理系統的功能。圖3中所示的功能主要包括:項目的選取并添加到項目庫、項目驅動的案例式教學內容的設計、情景教學和實踐環節的過程管理、教學效果的評價和信息反饋等。開發該過程管理系統的關鍵是底層的項目庫、案例庫及教學資源庫等基礎資源的建設,其中,項目庫和案例庫的建設來自項目驅動下軟件工程課程案例式教學內容設計部分。
4 結語
1)通過項目驅動的軟件工程課程教學,及時把科研成果轉化為教學內容,促進科研與教學互動,促使軟件工程課程的教學內容與時俱進,跟進時代的發展和社會需求,從而避免軟件工程教學內容與社會需求相脫節。
2)通過項目驅動的案例式課堂教學內容的組織,圍繞軟件的生命周期和軟件工程課程教學,為教學過程提供直觀、生動、具體的案例式教學材料。基于案例,采用分段情景教學,不僅使學生掌握軟件工程學科的基本概念、原理和理論,也使學生在實際項目的“做”和“練”中運用軟件工程的思想和技術解決實際軟件開發中遇到的問題。
3)為切實加強項目驅動的軟件工程課程案例式分段情景教學效果,不僅要加強過程管理,開發過程管理軟件,還需要編寫相應的軟件工程教材,尤其是實踐性教學教材。
(見習編輯:劉麗麗;編輯:郭田珍)