999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件工程課程設計中的幾點思考

2009-06-18 05:05:14
計算機教育 2009年15期
關鍵詞:實踐

高 禹 李 鑫

摘要:本文探討了軟件工程課程設計中要注意的幾個問題,這些問題包括:合理選擇課程設計題目、擺正編寫程序工作的位置、培養整體觀念和全局意識、熟悉常用技術和工具、學習和運用新知識、提升綜合素質。

關鍵詞:軟件工程;課程設計;實踐;指導

中圖分類號:G642 文獻標識碼:B

軟件工程是計算機科學與技術本科專業一門重要的專業課。一般在軟件工程課程結束后,會安排一些時間讓學生做軟件工程課程設計。軟件工程課程設計的內容是讓學生運用軟件工程的知識設計一個應用軟件系統,并寫出相關的設計文檔材料。

做軟件工程課程設計的目的,是讓學生加深對軟件工程知識的理解,訓練學生的動手能力,讓學生學會開發軟件的常用方法,熟悉軟件開發的過程,熟悉各種軟件開發文檔材料的寫作,積累軟件開發的實踐經驗,為將來從事軟件開發工作打下良好基礎。

在指導學生做軟件工程課程設計時,以下幾個問題應該引起指導教師的注意。

1合理選擇課程設計的題目

由于該課程設計與軟件工程課程內容密切相關,選題工作可以在軟件工程課程開始講授時布置下去,讓學生有充足的時間思考,思考成熟后,在指導教師幫助下,將課程設計題目確定下來。然后學生一邊學習軟件工程課程內容,一邊著手收集課程設計所需的有關資料,做好課程設計的準備工作。

課程設計題目所涉及的問題規模和難度應該比較小。因為課程設計不同于畢業設計,加上課程設計安排的時間比較少,學生投入的精力也有限,所以要控制規模和難度。

指導教師在幫助學生選擇題目時,可以選擇學生比較熟悉的問題,如圖書資料管理系統、學生成績管理系統、人力資源管理系統等等,或者選擇學生很快就能熟悉的一些問題。

2擺正程序編寫工作在軟件工程中的位置

學生在做軟件工程課程設計之前,已經做過一些課程設計。比如在學習C、C++或Java之后,利用C、C++或Java所做的課程設計。那些課程設計內容是使用高級語言設計和編寫小軟件,在那些課程設計中,程序編寫是一項非常重要的工作,因為那些課程設計是以熟練應用某高級語言為目的。而在軟件工程課程設計中,編寫程序工作與需求分析、總體設計和詳細設計等工作相比較,重要程度降低了。因為軟件工程課程設計不是以熟練運用某高級語言為目的,而是以熟悉和運用軟件工程知識為目的。實際上,按照開發軟件的過程,當需求分析、總體設計和詳細設計等開發過程完成后,用哪種高級語言來實現軟件系統已經不是重要問題了。

學生往往認為程序編寫工作重要,而認為需求分析、總體設計和詳細設計等工作無關緊要,這是沒有領會軟件工程思想的表現。當確定課程設計題目后,有些學生不認真作需求分析、總體設計和詳細設計等工作,匆匆忙忙開始編寫程序,這種行為與軟件工程課程設計的目的不相符。指導教師要引導學生明確軟件工程課程設計的目的,使學生清楚程序編寫工作與其他軟件開發工作的關系,讓學生擺正編寫程序工作在軟件工程課程設計中的位置;告訴學生不能只重視編寫程序工作而輕視其他工作;更不能不經過需求分析、總體設計和詳細設計等階段而直接開始程序編寫工作。歷史上,軟件危機產生的原因之一就是錯誤地認為開發軟件就是編寫程序、程序就是軟件,而忽視了程序編寫之外的其他各項軟件開發工作。現在要通過做軟件工程課程設計引導學生擺正程序編寫工作的位置,用軟件工程理論指導實踐,防止過去的錯誤再出現。

3培養整體觀念和全局意識

我們培養的計算機專業的本科生,將來不僅僅是做程序員,還要做系統分析師、軟件設計師,而系統分析師、軟件設計師必須有整體觀念和全局意識。開設軟件工程課要為培養系統分析師、軟件設計師打下基礎,而做軟件工程課程設計是培養學生整體觀念和全局意識的一個好機會。

面對一個被開發的軟件系統,如何培養學生的整體觀念和全局意識呢?

可以通過制訂軟件開發計劃來培養學生的整體觀念和全局意識。在軟件工程課程設計開始時,指導教師要按照軟件工程的理論要求,指導學生制訂一個軟件開發計劃。對于軟件開發過程中的每個階段,從可行性研究到需求分析,從總體設計到詳細設計,從編碼到測試,讓學生站在整體和全局的角度,考慮和分配各階段所用時間和各種資源。通過這個計劃的制訂,訓練學生樹立從整體出發來思考軟件系統開發過程的觀念,引導學生學會從全局的角度來合理規劃軟件開發的各項工作,熟悉軟件開發的整體過程。

還可以通過做總體設計來培養學生的整體觀念和全局意識。總體設計是軟件工程課程設計的一項重要內容,總體設計是在搞清軟件系統的需求之后,概括性地回答軟件系統如何實現的問題。總體設計從宏觀上對軟件系統進行設計,將軟件系統劃分成若干個模塊,確定每個模塊應實現的功能以及各模塊間的結構關系。從總體設計應該完成的任務可以看出,做總體設計必須具有整體觀念和全局意識,要考慮到被開發系統的每個方面的問題。指導教師要讓學生在規定的時間內做出總體設計方案,然后指導教師對學生做出的總體設計方案進行審查,審查通過之后,再讓學生做后面的工作。

4熟悉常用技術和工具

按照軟件工程課程設計的要求,學生在課程設計結束時,要完成全部的軟件設計開發任務,不但要交出一個能運行的軟件,還要交出設計過程中所形成的文檔材料,包括需求分析材料、總體設計材料、詳細設計材料、測試材料等。要做好這些文檔材料,需要在課程設計中引導學生熟悉軟件工程中常用技術和工具的使用方法。

例如,在制作需求分析材料時,涉及到實體關系圖、數據流圖、狀態轉換圖、IPO圖的使用;在制作總體設計材料時,涉及到模塊化技術和層次結構圖的使用;在制作詳細設計材料時,涉及到傳統流程圖、盒圖、PAD圖、判定表、判定樹的使用;在制作測試材料時,涉及到白盒技術、黑盒技術的使用。如果采用面向對象方法進行系統分析和設計,則要涉及到UML中的用例圖、類和對象圖、順序圖、活動圖、協作圖、構件圖、部署圖的使用。

上面提到的一些常用的技術和工具,在軟件工程授課過程中,教師雖然講過,但由于沒有真正使用過,所以學生不熟悉。指導教師要引導學生利用課程設計來熟悉這些常用技術和工具。因為學生畢業后,既要會做程序編寫工作,也要會做需求分析、總體設計、詳細設計、測試等工作,熟悉這些常用技術和工具的使用方法,并且認真完成課程設計各項文檔材料的制作,可以為畢業后從事相關的軟件開發工作奠定良好的基礎。

5學習和運用新知識

軟件工程教材中介紹了開發軟件各階段所用的知識,但是教材往往受篇幅所限,對一些新知識介紹得不詳細,再加上知識更新的速度比較快,有些新知識教材中可能沒有介紹。做軟件工程課程設計是一個非常好的學習和運用新知識的機會,指導教師可以有意識地引導學生學習和運用軟件工程新知識。

例如敏捷(Agile)軟件開發方法,該方法是針對傳統軟件開發方法過程復雜繁瑣、產生并且維護大量文檔、缺乏對開發過程中各種變化的有效和及時的反應等問題而提出的一類新的軟件開發方法。該類方法對軟件生產率高度重視,適用于需求模糊或快速變化的情況,適用于一些小型軟件項目的開發。XP(極限編程)是敏捷方法的典型代表,XP將開發過程分為計劃、設計、編碼和測試四個階段,XP強調4條核心價值:溝通、反饋、簡單、勇氣,XP建立了系統比擬、小交付、簡潔設計、結對開發、代碼共享等多項核心實踐準則,XP是應用最多的一種敏捷方法。自從2001年2月敏捷聯盟成立之后,敏捷方法發展迅速,該方法的實用價值逐漸被人們所認識,越來越多的人開始應用該方法開發軟件。

對于像敏捷方法這樣的可以用在軟件工程課程設計中的新知識,軟件工程任課教師可以通過多種途徑將新知識介紹給學生,讓學生在做軟件工程課程設計之前了解新知識的內容。對于準備采用新知識做軟件工程課程設計的學生,指導教師要組織他們深入學習討論新知識,讓他們在做課程設計之前熟悉新知識,指導他們做好根據新知識進行課程設計的計劃,鼓勵他們使用新知識,拓寬知識面。

6提升綜合素質

具有良好的綜合素質是事業成功的重要因素,為了提升計算機專業學生的綜合素質,為社會提供優秀的軟件人才,要充分進行好軟件工程課程設計。

能與他人和諧地進行溝通和協作的團隊精神,是從事軟件開發工作不可缺少的良好素質之一。早期軟件作坊式的個體化軟件開發方式,造成開發者隨心所欲,結果為軟件危機的產生埋下了禍根。現在的軟件規模比較大,各項性能要求比較高,開發時間比較短,軟件作坊的生產方式已經無法適應這種新情況了,因此必須依靠團隊的力量,大家齊心合力、分工合作,才能完成軟件開發任務。指導教師可以通過設立開發小組的形式,培養學生與他人和諧地進行溝通和協作的團隊精神。根據課程設計題目的內容,將參加課程設計的學生劃分為若干個開發小組,組內采用民主制組織方式,組內學生通過互相溝通、協商來制訂開發方案,通過分工合作來解決開發中的問題。開發小組可以采用敏捷軟件開發方法進行課程設計,因為敏捷方法特別強調人與人之間的交流與合作,有利于團隊精神的培養。

認真做事、細心做事的負責精神,是從事軟件開發工作不可缺少的良好素質之一。軟件開發活動由多階段構成,按順序分階段進行開發活動,各階段密切相關,某一階段出現錯誤,將會傳導至下一階段,還會在傳導過程中將錯誤放大。由于開發者馬虎大意、出現錯誤,造成損失的例子歷史上很多。指導教師可以通過將一些典型錯誤實例介紹給學生,引起學生對負責精神的重視;還可以安排時間讓學生對設計內容進行自查和互查,以檢驗認真細心做事的情況。還可以通過測試和調試活動來培養認真做

事、細心做事的負責精神,因為如果沒有認真做事、細心做事的負責精神,很難完成測試和調試工作任務。

此外,熟練地寫作應用文檔材料的能力、勇于創新和勇于改正錯誤的精神,都是從事軟件開發工作應具備的良好素質,這些都可以通過軟件工程課程設計活動加以培養。充分利用好軟件工程課程設計,對于提升學生綜合素質會起到一個很好的推動作用。

參考文獻:

[1] Roger S.Pressman.軟件工程:實踐者的研究方法[M].梅宏,譯.北京:機械工業出版社,2002.

[2] 郭寧.軟件工程實用教程[M].北京:人民郵電出版社,2006.

[3] 高禹,馮相忠.C語言課程設計與發展學生思維[J].高等理科教育,2006(5):77-79.

[4] 張海藩.軟件工程導論[M].4版. 北京:清華大學出版社,2003:3-5.

[5] 陸惠恩.軟件工程基礎[M].北京:人民郵電出版社,2005:29-80,128-138.

[6] 張敬周,錢樂秋,朱三元.Agile方法研究綜述[J].計算機應用與軟件,2002(6):1-9,54.

[7] 李航.敏捷軟件開發方法與極限編程概述[J].計算機工程與設計,2003(10):116-118,121.

猜你喜歡
實踐
合作學習模式應用于初中數學教學實踐探究
基于微課的翻轉課堂研究與實踐
項目教學法在微電影制作教學中的應用
中國市場(2016年35期)2016-10-19 03:02:20
會計預算控制現狀及方法
環境生態類專業大學生創新創業能力培養體系的構建與實踐
大學教育(2016年9期)2016-10-09 08:38:54
語文教學要在不斷的反思中成長
考試周刊(2016年76期)2016-10-09 08:35:30
高校全員育人的三級管理體系新探
大學教育(2016年9期)2016-10-09 08:15:31
后進生轉化和提升的實踐與思考
成才之路(2016年26期)2016-10-08 11:59:08
初中政治教學中強化新八德教育探討
成才之路(2016年26期)2016-10-08 11:14:30
體驗式學習在數學教學中的應用研究
成才之路(2016年25期)2016-10-08 10:50:54
主站蜘蛛池模板: 亚洲精品第一页不卡| 国产新AV天堂| 日日噜噜夜夜狠狠视频| 亚洲视屏在线观看| 婷婷久久综合九色综合88| 亚洲人成色在线观看| 999精品视频在线| 亚洲人成影院在线观看| 2021国产精品自产拍在线观看| 蜜桃视频一区二区| 欧美午夜在线视频| 国产经典在线观看一区| www.99在线观看| 一级爆乳无码av| 欧美啪啪一区| 日韩在线网址| 久久亚洲天堂| 国产第一福利影院| 亚洲无码精品在线播放| 免费高清自慰一区二区三区| 亚洲视频影院| 亚洲精品波多野结衣| 免费人成在线观看视频色| 久久中文字幕2021精品| 国产美女免费网站| 狼友av永久网站免费观看| 国产精品手机在线观看你懂的| av手机版在线播放| 婷婷五月在线视频| 国产成人精品免费av| 99久久精品免费看国产免费软件| 精品無碼一區在線觀看 | 丁香亚洲综合五月天婷婷| 日本伊人色综合网| 国产网站免费| 国产网友愉拍精品| 亚洲无码高清一区| 亚洲成人福利网站| 999精品视频在线| 免费日韩在线视频| 亚洲制服丝袜第一页| 国产香蕉一区二区在线网站| 国产精品美女在线| 欧美一区精品| 国产人碰人摸人爱免费视频| 亚洲91精品视频| 精品福利视频导航| 国产91在线|中文| 国产激爽大片高清在线观看| 国产精品深爱在线| 国产在线第二页| 五月婷婷综合网| 国产欧美日韩免费| 精品人妻AV区| 国产日韩久久久久无码精品| 国产在线精品99一区不卡| 欧美精品影院| 欧美性猛交一区二区三区| 无码中文字幕精品推荐| 国产正在播放| 欧美午夜视频在线| 成人免费午夜视频| 黄色三级网站免费| 美臀人妻中出中文字幕在线| 久久99精品久久久久久不卡| 91午夜福利在线观看精品| 人人澡人人爽欧美一区| 欧美日韩亚洲综合在线观看| 手机永久AV在线播放| 国产女人喷水视频| 米奇精品一区二区三区| 九九九精品成人免费视频7| 国内老司机精品视频在线播出| 国产v欧美v日韩v综合精品| 久久精品中文字幕免费| 成人自拍视频在线观看| 99re视频在线| 亚洲国产综合精品一区| 91丝袜乱伦| 亚洲中文字幕久久无码精品A| 久久精品国产亚洲麻豆| 国产欧美日韩综合在线第一|