前言:想要寫出一篇引人入勝的文章?我們特意為您整理了軟件工程實踐課程教學(xué)模式優(yōu)化分析范文,希望能給你帶來靈感和參考,敬請閱讀。
[摘要]軟件工程實踐課程對學(xué)生專業(yè)技能要求較高,如軟件需求分析、軟件架構(gòu)設(shè)計、軟件升級維護等內(nèi)容,都直接關(guān)系學(xué)生未來能否勝任就業(yè)崗位,能否在工作中順利解決實際問題?;诖耍恼聫能浖こ虒嵺`課程教學(xué)模式入手,就當(dāng)前軟件工程教學(xué)中存在的問題提出改進和優(yōu)化方案,目的在于提升學(xué)生的計算機綜合實踐能力。
[關(guān)鍵詞]高職;軟件工程;實踐課程;應(yīng)用研究
一、引言
軟件工程實踐課程具有較強的理論性,而在專業(yè)技能上又表現(xiàn)出更高的操作性。從學(xué)科特色來看,軟件工程是計算機科學(xué)與技術(shù)專業(yè)的融合,其內(nèi)容圍繞軟件需求、系統(tǒng)分析、軟件設(shè)計、技術(shù)實踐等環(huán)節(jié),強調(diào)高素質(zhì)技能型人才的培養(yǎng)質(zhì)量。然而,傳統(tǒng)的軟件工程實踐課程教學(xué)效果并不理想,教學(xué)內(nèi)容往往單一、枯燥,學(xué)生的學(xué)習(xí)積極性受到抑制。如軟件開發(fā)中的數(shù)據(jù)流程無法提供應(yīng)用環(huán)節(jié),學(xué)生難以從中發(fā)現(xiàn)數(shù)據(jù)關(guān)聯(lián)性問題,導(dǎo)致執(zhí)行效率較低;在現(xiàn)代軟件開發(fā)環(huán)境下,難以滿足多層分布式架構(gòu)設(shè)計要求。
二、軟件工程實踐課程內(nèi)容的拓展
(一)軟件工程建模應(yīng)用設(shè)計
傳統(tǒng)教學(xué)中軟件工程實踐課程建模設(shè)計,主要采用數(shù)據(jù)流程圖方式,其優(yōu)勢在于從數(shù)據(jù)流程圖的繪制上展現(xiàn)軟件設(shè)計過程。然而,在繪制軟件設(shè)計流程圖過程中,往往導(dǎo)致學(xué)生產(chǎn)生畏難心理。同時,由于對整個軟件需求、軟件功能分析不到位,導(dǎo)致數(shù)據(jù)來源不統(tǒng)一、數(shù)據(jù)需求不清晰、數(shù)據(jù)存儲出現(xiàn)異常、數(shù)據(jù)冗余度等問題,也在一定程度上影響了學(xué)生對知識和技能的掌握。所以,有必要改進軟件工程實踐課程的教學(xué)模式,有針對性地拓寬教學(xué)方案,特別是在流程圖設(shè)計分析上,需要從軟件工程分析、軟件數(shù)據(jù)分析、軟件功能分析等方面適當(dāng)延伸和拓展。如在軟件功能分析上,需要借助于軟件數(shù)據(jù)流程圖進行頂層設(shè)計,抽象出各軟件功能子系統(tǒng)及相關(guān)單元的功能;在軟件數(shù)據(jù)分析上,需要區(qū)分軟件實體、屬性及關(guān)聯(lián)性,并對相關(guān)數(shù)據(jù)庫進行識別,引導(dǎo)學(xué)生理解和應(yīng)用不同的數(shù)據(jù)信息結(jié)構(gòu)建立E-R模型。
(二)軟件工程建模設(shè)計拓展
傳統(tǒng)建模設(shè)計主要從系統(tǒng)功能上確定不同的模塊,比較適宜面向過程的設(shè)計環(huán)境。但對于面向可視化、面向?qū)ο蟆⒚嫦蚴录?qū)動下的程序設(shè)計環(huán)境,則顯得不相適宜。因此,需要從建模設(shè)計上進行擴展,保留原來軟件過程類模塊設(shè)計的主要內(nèi)容,圍繞軟件結(jié)構(gòu)、軟件數(shù)據(jù)、軟件界面等進行擴展。如在系統(tǒng)結(jié)構(gòu)設(shè)計上,可以采用集中式結(jié)構(gòu)、分布式結(jié)構(gòu),還可以采用集中-分布式結(jié)構(gòu);在確定軟件應(yīng)用模式上,可以采用B/S結(jié)構(gòu),也可以采用C/S結(jié)構(gòu);在確定數(shù)據(jù)設(shè)計上,可以采用邏輯數(shù)據(jù)集關(guān)系進行規(guī)范化處理,也可以采用物理數(shù)據(jù)集關(guān)系進行編碼和命名;在界面設(shè)計上,根據(jù)軟件功能及業(yè)務(wù)需求,來組織輸入、輸出,從而滿足不同軟件設(shè)計的開發(fā)需要。
三、軟件工程類課程實踐教學(xué)模式
軟件工程類課程實踐教學(xué)模式的重點,在于從教學(xué)內(nèi)容的組織與優(yōu)化上,聯(lián)系軟件工程設(shè)計實際,突出教學(xué)方法的創(chuàng)新性、實踐性、應(yīng)用性。根據(jù)軟件工程類課程特點,在改革實踐教學(xué)模式上,圍繞實踐教學(xué)綱要目標(biāo),融入多種實踐教學(xué)方法。如案例驅(qū)動教學(xué)法、任務(wù)驅(qū)動教學(xué)法、典型案例分析法等,逐漸深入、細(xì)化軟件工程理論知識與應(yīng)用的展開。
(一)進銷存C/S案例分析與應(yīng)用
C/S軟件結(jié)構(gòu)基于客戶、服務(wù)器關(guān)系,適用于業(yè)務(wù)流程復(fù)雜、對軟件響應(yīng)速度較高的軟件開發(fā)項目。在C/S結(jié)構(gòu)中,用戶根據(jù)角色權(quán)限來操作相應(yīng)功能模塊,并實現(xiàn)進貨、銷貨、庫存匯總及各類報表的輸出功能。在數(shù)據(jù)庫設(shè)計上,要從軟件執(zhí)行效率、處理異常及滿足業(yè)務(wù)需求等方面,設(shè)計系統(tǒng)數(shù)據(jù)庫表、E-R圖和數(shù)據(jù)視圖。在數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計中,根據(jù)不同數(shù)據(jù)字段項的使用特點,來優(yōu)化系統(tǒng)后臺數(shù)據(jù)庫結(jié)構(gòu)。如在SQLServer2008數(shù)據(jù)庫中,可以定義員工名稱表、商品基本信息表、客戶基本信息表、倉庫部門信息表、進貨商品信息表、用戶權(quán)限表、退貨商品信息表、銷售商品信息表、庫存信息表等,以滿足進銷存管理系統(tǒng)設(shè)計中不同業(yè)務(wù)信息的統(tǒng)計與關(guān)聯(lián)。在數(shù)據(jù)庫視圖設(shè)計上,常用的有標(biāo)準(zhǔn)視圖、索引視圖、分區(qū)視圖三種,利用Select語句進行視圖檢索,確定入庫視圖v-GoodIn、v-ReGoods、v-UserSell、v-Use-rView基本視圖。針對C/S結(jié)構(gòu)中軟件表單編碼的設(shè)計,要從信息交換、處理、傳輸、共享等方面來優(yōu)化編碼規(guī)則。如在進貨商品基本信息格式上,以“系統(tǒng)當(dāng)前日期+‘JH’+7位數(shù)字編碼”為規(guī)則,來提升商品信息識別效率。在系統(tǒng)觸發(fā)器設(shè)計上,要保證商品信息數(shù)量一致性。如在t-Goods觸發(fā)器設(shè)計上,對于某商品信息沒有歷史記錄者,則觸發(fā)入庫信息表tb-Stock;若該商品在庫存信息表中,則將該余量進行及時相加,保障庫存信息實時更新。
(二)進銷存B/S模型設(shè)計與應(yīng)用
B/S模式是基于多層應(yīng)用結(jié)構(gòu),將原來的表示層、業(yè)務(wù)邏輯層進行分離,便于開發(fā)人員提供簡潔的功能操作界面。下面以ASP•Net為例來探討軟件工程實踐教學(xué)。ASP•Net三層應(yīng)用結(jié)構(gòu)中,第一層是用戶表示層USL,封裝了人機交互的表單與組件,滿足業(yè)務(wù)邏輯層與系統(tǒng)用戶之間的信息傳輸需要,并通過簡單的校驗后傳送給瀏覽器進行顯示。第二層是業(yè)務(wù)邏輯層BLL,主要是對不同應(yīng)用業(yè)務(wù)規(guī)則和邏輯的封裝,便于用戶通過業(yè)務(wù)邏輯層進行多種功能的調(diào)用,以及訪問數(shù)據(jù)庫等;第三層是數(shù)據(jù)訪問層DAL,通過與數(shù)據(jù)庫進行交互來獲取查詢記錄、插入、修改、刪除數(shù)據(jù)庫記錄等操作。在B/S軟件工程模型中,數(shù)據(jù)訪問包括業(yè)務(wù)實體訪問和數(shù)據(jù)操作兩部分,業(yè)務(wù)實體是反映現(xiàn)實生活的各類業(yè)務(wù)數(shù)據(jù),而數(shù)據(jù)操作是基于對數(shù)據(jù)庫的檢索來完成的信息傳輸服務(wù)。Model業(yè)務(wù)實體層主要存儲與業(yè)務(wù)實體相關(guān)的數(shù)據(jù)屬性值;DBUtility公共類主要是從Web.congfig配置信息庫中獲取類庫,滿足對數(shù)據(jù)庫相應(yīng)操作的訪問;DAL數(shù)據(jù)訪問層主要是記錄數(shù)據(jù)庫的表結(jié)構(gòu),滿足增刪、修改等功能;BLL業(yè)務(wù)邏輯層主要是滿足創(chuàng)建數(shù)據(jù)庫類,以及對數(shù)據(jù)庫進行訪問調(diào)用。
四、軟件工程實踐課程案例實施要點
軟件工程實踐課程在案例教學(xué)實踐中還要注意幾個問題。一是對于典型案例的選擇與應(yīng)用,要貼近軟件工程實踐需求,特別是接近行業(yè)軟件開發(fā)現(xiàn)狀,體現(xiàn)案例的實踐性、應(yīng)用性。二是在引入典型案例進行講授與實踐操作時,要注意多種教學(xué)方法的統(tǒng)合。如對于一些結(jié)構(gòu)化程序設(shè)計方法,可以選擇面向?qū)ο蟮木C合性案例,讓學(xué)生能夠從結(jié)構(gòu)化模型分析中,了解和認(rèn)識不同功能模塊的設(shè)計要求和方法;還可以讓學(xué)生從項目討論中,自己動手來設(shè)計程序,激發(fā)學(xué)生的創(chuàng)新意識和探索精神。三是要優(yōu)化典型案例的教學(xué)方案,不同案例的導(dǎo)入要與教學(xué)目標(biāo)相適應(yīng)。要讓學(xué)生從案例實踐中,明確為什么這樣設(shè)計,懂得為什么要撰寫不同的設(shè)計任務(wù),根據(jù)軟件工程生命周期來細(xì)化程序設(shè)計要求,解決什么樣的問題,具備什么樣的功能等,多從程序設(shè)計案例分析上加深理解。四是案例分析要融入師生互動與參與,特別是通過對程序設(shè)計不同功能、不同環(huán)境的變化,如何從運行時效性上來優(yōu)化程序設(shè)計;通過分組探討等方式,來共同編寫執(zhí)行程序,來對各小組程序進行分析,讓學(xué)生參與提問與改進,從具體的程序設(shè)計開發(fā)中積累經(jīng)驗,增強學(xué)生的合作意識、團隊協(xié)作能力。五是強調(diào)案例導(dǎo)入分析與總結(jié)歸納,特別是教師要鼓勵學(xué)生在案例分析中,對錯誤和不解進行歸納,來分析成因和問題所在,積極總結(jié)改進思路和方法,尊重學(xué)生的獨特見解,引領(lǐng)學(xué)生創(chuàng)新意識的培養(yǎng)。另外,軟件工程類課程實踐教學(xué)具有特色性,不同教學(xué)內(nèi)容、不同課程在實踐應(yīng)用中還有差異。如對于當(dāng)前流行的軟件開發(fā)語言及程序設(shè)計,NET與J2EE架構(gòu)具有相似性與差異性,在典型案例導(dǎo)入中,要結(jié)合企業(yè)需求、教學(xué)分析、學(xué)生實際來選擇,體現(xiàn)軟件工程類課程實踐教學(xué)的可操作性,滿足學(xué)生從案例分析到職場應(yīng)用的有效過渡。
五、結(jié)語
高職軟件工程實踐課程教學(xué),是增強畢業(yè)生軟件應(yīng)用能力的必然選擇。面對人才市場需求的變化,應(yīng)該從軟件工程類課程實踐教學(xué)體系建設(shè)上,把握好“教”與“學(xué)”的關(guān)系,激發(fā)學(xué)生的軟件應(yīng)用熱情和主動性,著力以典型案例導(dǎo)入與具體程序設(shè)計任務(wù)驅(qū)動,鍛煉學(xué)生的動手能力、實踐能力、應(yīng)用能力、創(chuàng)新能力,真正為社會、為企業(yè)培養(yǎng)高素質(zhì)的軟件設(shè)計人才。
參考文獻:
[1]陳中育,呂振洪,葉榮華等.軟件工程專業(yè)課程建設(shè)的思考與實踐[J].計算機教育,2013(10):48-51.
[2]李凈,郭洪禹,紅春.程序開發(fā)類課程群框架下“數(shù)據(jù)結(jié)構(gòu)與算法分析”實踐教學(xué)研究[J].工業(yè)和信息化教育,2016(11):61-65.
[3]陸璐,張新紅.《JSP動態(tài)網(wǎng)站設(shè)計》項目化教學(xué)模式的研究與實施[J].鄭州鐵路職業(yè)技術(shù)學(xué)院學(xué)報,2016(1):63-65,68.
作者:張銳 單位:駐馬店職業(yè)技術(shù)學(xué)院信息工程系