時間:2022-05-10 03:16:39
序論:在您撰寫軟件工程畢業(yè)設(shè)計論文時,參考他人的優(yōu)秀作品可以開闊視野,小編為您整理的1篇范文,希望這些建議能夠激發(fā)您的創(chuàng)作熱情,引導(dǎo)您走向新的創(chuàng)作高度。
在學(xué)生的畢業(yè)設(shè)計中以軟件工程的思想為主線,從軟件工程的角度去指導(dǎo)學(xué)生進行畢業(yè)設(shè)計,挖掘軟件工程在系統(tǒng)開發(fā)過程中的價值,解決畢業(yè)設(shè)計中存在的一些問題,既有助于學(xué)生更好地理解軟件工程的方法、技術(shù)和思想,更有助于提高軟件類畢業(yè)設(shè)計的質(zhì)量。
1畢業(yè)設(shè)計中存在的問題
筆者在指導(dǎo)學(xué)生軟件開發(fā)類畢業(yè)設(shè)計過程中發(fā)現(xiàn),畢業(yè)設(shè)計存在著選題難、任務(wù)重、重視編碼、輕過程、項目無法完成等現(xiàn)象。設(shè)計過程中沒有嚴格地遵循軟件工程的開發(fā)方法,沒有規(guī)范的軟件設(shè)計過程,項目能否成功主要依賴于個人能力和個人努力,這種不正確的開發(fā)方法帶來了嚴重的后果。在項目開發(fā)的過程中常常存在以下幾個方面問題:
1.1選題的盲目性
選題是畢業(yè)設(shè)計過程中的一個初始環(huán)節(jié),選題恰當(dāng)是做好畢業(yè)設(shè)計的前提,但選題不當(dāng)?shù)那闆r仍然時有發(fā)生。學(xué)生沒有認識到畢業(yè)設(shè)計的重要性,純粹是為了完成學(xué)業(yè)而做畢業(yè)設(shè)計,選題沒有一個確切的目標,往往是隨便選一個題目,造成選題的盲目性,出現(xiàn)了選題陳舊、選題范圍狹窄、選題偏大等問題,使學(xué)生抄襲、完成不了畢業(yè)設(shè)計的情況時有發(fā)生。
1.2缺少軟件的系統(tǒng)分析
軟件開發(fā)過程的第一個階段是系統(tǒng)分析,用來確定軟件開發(fā)要解決的問題是什么?估算完成該項目需要的資源和成本,確定目標系統(tǒng)應(yīng)該具備哪些功能,主要經(jīng)歷問題的定義、可行性分析和需求分析三個階段。軟件的系統(tǒng)分析確定了用戶需求,同時對目標系統(tǒng)提出完整、具體的要求,引導(dǎo)開發(fā)者正確地構(gòu)建系統(tǒng)。因此,對用戶需求做出全面、正確的分析,對于最終軟件開發(fā)類畢業(yè)設(shè)計的成敗起著至關(guān)重要的作用。然而在完成畢業(yè)設(shè)計過程中,學(xué)生往往認為代碼編寫最重要,對軟件開發(fā)過程中的可行性分析和需求分析階段不重視,甚至沒有系統(tǒng)分析,對整個畢業(yè)設(shè)計的完成造成了影響。
1.3軟件設(shè)計過程雜亂無章
軟件設(shè)計一般都要經(jīng)歷可行性分析、需求分析、總體設(shè)計、詳細設(shè)計、編碼和測試階段。而部分學(xué)生在畢業(yè)設(shè)計開發(fā)的過程中,缺乏軟件工程設(shè)計思想,跨越需求分析、概要設(shè)計、詳細設(shè)計和功能模塊設(shè)計,直接進行代碼的撰寫;或者從代碼反推出模塊設(shè)計;甚至在軟件開發(fā)過程中,一邊寫程序,一邊了解需求,程序完成了需求才確定。這種無序的軟件設(shè)計過程,導(dǎo)致最終設(shè)計的系統(tǒng)雜亂無章、代碼的重復(fù)率高、潛在?Bug多、系統(tǒng)的可集成性非常差、不能在規(guī)定時間內(nèi)完成設(shè)計或者系統(tǒng)無法運行。
1.4開發(fā)過程中文檔不完備
根據(jù)軟件工程學(xué)的基本原理,軟件=程序+文檔,可見軟件文檔是軟件開發(fā)過程中不可缺少的組成部分。軟件文檔貫穿于軟件開發(fā)的各個階段,是提高軟件產(chǎn)品開發(fā)效率、規(guī)范軟件產(chǎn)品開發(fā)過程、保證軟件產(chǎn)品質(zhì)量的關(guān)鍵。但在實際畢業(yè)設(shè)計中,很多同學(xué)認為把程序代碼編出來了,畢業(yè)設(shè)計也就完成了,提交的畢業(yè)設(shè)計論文就是系統(tǒng)代碼的復(fù)制,即只做出一個可演示可操作的系統(tǒng),而忽略了軟件開發(fā)的完整性、系統(tǒng)性。完整的畢業(yè)設(shè)計不僅包括可操作的系統(tǒng),還包括在開發(fā)系統(tǒng)的過程中所產(chǎn)生的各個文檔資料。文檔的缺失會降低軟件開發(fā)的效率、影響整個軟件的開發(fā)、使用和維護。以上問題的存在,嚴重影響了畢業(yè)設(shè)計的進度和質(zhì)量,沒有達到畢業(yè)設(shè)計的目標要求。針對當(dāng)前畢業(yè)設(shè)計的現(xiàn)狀和存在不足,筆者認為應(yīng)用軟件工程學(xué)的思想指導(dǎo)畢業(yè)設(shè)計,對促進學(xué)生綜合素質(zhì)與工程實踐能力培養(yǎng)具有積極意義。
2用軟件工程思想指導(dǎo)學(xué)生進行畢業(yè)設(shè)計
2.1以可行性研究指導(dǎo)選題
可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。畢業(yè)設(shè)計題目的選擇,應(yīng)立足于解決工程實際問題,可由指導(dǎo)教師提供符合相關(guān)專業(yè)畢業(yè)設(shè)計要求的題目,也可以鼓勵學(xué)生自己到社會、生產(chǎn)企業(yè)中尋求研究課題,培養(yǎng)他們自主學(xué)習(xí)的意識。選題過程以可行性研究為指導(dǎo),從課題規(guī)模大小、難易程度、學(xué)生自己的研究方向、愛好、學(xué)生的知識層面和能力等多個方面進行考慮,對于選擇的題目是否能夠解決,確定在規(guī)定的時間內(nèi)完成畢業(yè)設(shè)計的可行性。指導(dǎo)教師可根據(jù)學(xué)生選報的題目來指導(dǎo)學(xué)生對該選題進行調(diào)查研究,明確課題要解決的問題是什么,簡要地寫出關(guān)于問題性質(zhì)、項目目標和項目規(guī)模的書面報告。可行性研究來指導(dǎo)畢業(yè)設(shè)計的選題,實質(zhì)上是簡化了系統(tǒng)分析和設(shè)計的過程,也是在較高層次上以較抽象的方式進行的系統(tǒng)分析和設(shè)計的過程,使學(xué)生對于課題的設(shè)計有個清晰的思路,為及時完成畢業(yè)設(shè)計提供了可能。
2.2重視軟件的需求分析
需求分析的基本任務(wù)是準確地回答“系統(tǒng)必須做什么”,即確定系統(tǒng)必須完成哪些工作,也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求,不僅指明了系統(tǒng)設(shè)計時必須要實現(xiàn)的目標,也是軟件設(shè)計、實現(xiàn)、測試和維護階段的主要參考標準。用戶需求的獲取是軟件開發(fā)中最重要、難度最大的工作,它貫穿于整個軟件設(shè)計過程,不僅要涉及到軟件開發(fā)方面的知識、應(yīng)用領(lǐng)域方面的知識,還涉及到與用戶溝通的能力。在進行需求獲取和分析時,為了及時、準確地獲取,可采用軟件工程中比較成熟的方法,例如訪談、實際調(diào)查、UML的用例技術(shù)等。需求分析在軟件系統(tǒng)分析與設(shè)計階段起著橋梁的作用,確定了系統(tǒng)的需求,才能制定出軟件設(shè)計的框架,保證畢業(yè)設(shè)計循序漸進、有條不紊地進行,避免后期開發(fā)過程的頻繁返工,進而按時完成最終的任務(wù)。
2.3規(guī)范畢業(yè)設(shè)計過程
軟件開發(fā)類畢業(yè)設(shè)計一般是開發(fā)一個軟件系統(tǒng),實現(xiàn)一定的功能?!奥槿鸽m小,五臟俱全”,無論軟件規(guī)模的大小、功能的多少,都應(yīng)該嚴格按照軟件工程中軟件生命周期每個階段的步驟完成各項任務(wù)。要培養(yǎng)學(xué)生把軟件工程的概念貫穿于整個畢業(yè)設(shè)計過程,也就是說,讓學(xué)生把開發(fā)軟件的過程看成是蓋一棟大樓,修一條公路的實際工程,用工程化的思想指導(dǎo)畢業(yè)設(shè)計,確定完成課題的各項任務(wù)的工作步驟,注重軟件類畢業(yè)設(shè)計的過程,而不是學(xué)生所認為的畢業(yè)設(shè)計就是編程序,代碼調(diào)試通過即可。通過工程的概念規(guī)范畢業(yè)設(shè)計過程,讓學(xué)生明白開發(fā)一個軟件系統(tǒng)一般經(jīng)過系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施三個階段,必須嚴格遵循軟件生命周期的規(guī)律,完成各個階段的任務(wù),才能最終提高畢業(yè)設(shè)計的質(zhì)量。
2.4重視文檔的寫作
軟件工程中的瀑布模型嚴格地規(guī)定了在整個軟件生命周期的各個階段,都要提交相應(yīng)的文檔。文檔不僅記錄軟件開發(fā)過程中的大量信息,在軟件的開發(fā)、維護過程中也起著重要的作用。在指導(dǎo)學(xué)生畢業(yè)設(shè)計時,要求學(xué)生遵照軟件工程的思想,把文檔作為整個設(shè)計的指揮棒,記載設(shè)計過程的每一階段完成的目標、任務(wù)及技術(shù)手段,建立健全畢業(yè)設(shè)計文檔制度,確保畢業(yè)設(shè)計過程中的文獻綜述、譯文、任務(wù)書、開題報告、選題審題表、中期檢查表、設(shè)計(論文)正文、答辯記錄等各環(huán)節(jié)教學(xué)資料檔案完善、規(guī)范,實現(xiàn)對畢業(yè)設(shè)計的全程監(jiān)控。
3結(jié)束語
軟件工程是軟件開發(fā)工程化、規(guī)范化的具體實施方法,將其應(yīng)用到畢業(yè)設(shè)計中,不僅有助于學(xué)生對軟件開發(fā)相關(guān)知識的鞏固和實踐,而且對解決目前軟件開發(fā)類畢業(yè)設(shè)計中存在的問題,提高學(xué)生畢業(yè)設(shè)計質(zhì)量,具有極大的促進作用。
作者:王 曉 王長波 單位:湖北醫(yī)藥學(xué)院 公共管理學(xué)院計算機教研室
一、利用多方資源做好畢業(yè)設(shè)計選題與立題工作
恰當(dāng)?shù)倪x題是做好畢業(yè)設(shè)計的必要條件和前提。近年來,隨著信息技術(shù)高速發(fā)展,國家對高素質(zhì)軟件工程人才需求十分旺盛,并有逐年擴大的趨勢。同時各個高校軟件工程專業(yè)的招生數(shù)量也在逐年增加,從目前全國319所設(shè)有軟件工程專業(yè)的學(xué)??矗?013年該專業(yè)平均招生300人左右。專業(yè)招生人數(shù)的增多給畢業(yè)設(shè)計選題帶來了帶來巨大挑戰(zhàn):一方面軟件工程專業(yè)的畢業(yè)設(shè)計選題要求具有一定的應(yīng)用價值、創(chuàng)新性,同時還要與行業(yè)需求相吻合;另一方面要保證選題的唯一性,不僅要避免學(xué)生之間的題目重復(fù),還要避免與之前畢業(yè)生的題目重復(fù),因為重復(fù)的選題會使學(xué)生產(chǎn)生投機的心理,導(dǎo)致“打醬油”現(xiàn)象。針對上述問題,黑龍江大學(xué)軟件學(xué)院主要采取了以下幾個措施:
1.充分利用企業(yè)資源
對一部分在企業(yè)實習(xí)的學(xué)生采取“三位一體”的雙導(dǎo)師指導(dǎo)模式。即企業(yè)項目為載體,學(xué)生為主體的模式,校內(nèi)和校外導(dǎo)師為主導(dǎo)。這部分學(xué)生一般是在大三下學(xué)期暑假就已經(jīng)進入企業(yè)實習(xí),而我們每年畢業(yè)設(shè)計選題工作是在十一月末,也就是學(xué)生進入企業(yè)實習(xí)后三到四個月的時間,學(xué)生經(jīng)過企業(yè)階段的培訓(xùn),對企業(yè)的生產(chǎn)過程、企業(yè)文化有了一定的了解。此時,學(xué)院組織校內(nèi)外導(dǎo)師和學(xué)生共同協(xié)商,以企業(yè)項目或子項目為學(xué)生確定畢業(yè)設(shè)計選題。
2.充分發(fā)揮導(dǎo)師的資源優(yōu)勢
學(xué)院大部分教師都有自己的科研課題,這些科研課題有些是直接來源于企業(yè)的橫向課題,還有一些是信息技術(shù)領(lǐng)域的應(yīng)用研究課題,我們鼓勵教師從這些課題中提取出一些子項目讓學(xué)生實踐,作為畢業(yè)設(shè)計的選題。
3.充分挖掘?qū)W生的專業(yè)技術(shù)特長和興趣點并結(jié)合學(xué)生的擇業(yè)傾向
確定最能發(fā)揮自身優(yōu)勢和潛能的選題。畢業(yè)設(shè)計的選題不僅要與實際需求相結(jié)合,更重要的是應(yīng)該結(jié)合學(xué)生自身的技術(shù)優(yōu)勢和興趣。只有學(xué)生對選題有興趣,他們才能盡早地進入狀態(tài),發(fā)揮自己的創(chuàng)造能力和積極主動意識。所以,選題階段導(dǎo)師和學(xué)生的溝通交流就顯得尤為重要,通過溝通導(dǎo)師可以了解學(xué)生的能力、興趣和擇業(yè)傾向,學(xué)生也可以對選題,有進一步的認識,對于不感興趣的選題學(xué)生也可以通過與導(dǎo)師進一步的探討進行題目的修訂。
二、注重環(huán)節(jié)審查
加強過程監(jiān)管雖然“好的開始是成功的一半”,但是如果缺乏中間環(huán)節(jié)的監(jiān)管,仍然不能保證好的效果。因此,為保證畢業(yè)設(shè)計(論文)的質(zhì)量,我們制定了明確的質(zhì)量標準、管理條例,并由院長、學(xué)術(shù)委員會、系主任和教務(wù)辦主任組成畢業(yè)設(shè)計(論文)工作委員會,負責(zé)畢業(yè)設(shè)計(論文)工作的組織、評定和監(jiān)管,同時保證管理條例的嚴格落實及各個環(huán)節(jié)工作的正常進行。為健全畢業(yè)設(shè)計(論文)的監(jiān)管機制,學(xué)院先后規(guī)范和完善了《畢業(yè)設(shè)計(論文)工作管理辦法和實施細則》《開題報告》《開題評分標準》《中期報告》《中期檢查標準》《畢業(yè)設(shè)計(論文)撰寫規(guī)范及模版》《畢業(yè)設(shè)計(論文)盲審表》《答辯程序和評分標準》等一系列管理辦法和文檔標準,使畢業(yè)設(shè)計工作在制度和規(guī)范下能順利有效地進行。每年畢業(yè)設(shè)計工作之初,我們都要給學(xué)生開一個動員會,在會上闡明畢業(yè)設(shè)計(論文)的重要性,以及畢業(yè)設(shè)計對他們未來工作的影響,調(diào)動他們學(xué)習(xí)的主動性、積極性和創(chuàng)造性。此外,系主任還要向?qū)W生介紹學(xué)院畢業(yè)設(shè)計(論文)管理辦法和實施細則,各階段的工作要求和時間節(jié)點,以及各環(huán)節(jié)檢查的內(nèi)容、需要提交的文檔,使學(xué)生在畢業(yè)設(shè)計開始時能做到心中有數(shù)。同時,我們也要求指導(dǎo)教師隨時解答學(xué)生的問題,堅持每周開例會,檢查學(xué)生的工作完成情況,并提出一些有技術(shù)含量和理論深度的問題啟發(fā)他們思考,激發(fā)他們的學(xué)習(xí)熱情,并與學(xué)生一起確定后續(xù)任務(wù)。此外我們組織開題檢查、中期檢查,對開題檢查成績后30%的學(xué)生,不但檢查中期報告,還要現(xiàn)場檢查程序。對于中期檢查不合格的學(xué)生,要求限期整改,如果仍然不合格則取消答辯資格。在答辯之前,我們還要對論文進行盲審,盲審不合格的學(xué)生不允許答辯,對有異議的論文要提交學(xué)術(shù)委員會做最后論證。雖然學(xué)院對畢業(yè)設(shè)計(論文)工作在各個環(huán)節(jié)上的審查都非常嚴格,但我們鼓勵學(xué)生之間進行研討交流,博采眾長,相互提高,因為我們的目的不是抓出多少不合格的學(xué)生,而是想通過大學(xué)階段最后的綜合性實踐教學(xué)環(huán)節(jié)訓(xùn)練,培養(yǎng)學(xué)生的學(xué)習(xí)能力、知識的綜合運用能力、分析解決問題能力和溝通交流等綜合素質(zhì)。
三、嚴把答辯關(guān),保證畢業(yè)設(shè)計質(zhì)量
答辯是畢業(yè)設(shè)計(論文)考核階段的最后環(huán)節(jié),這個環(huán)節(jié)既是學(xué)院對學(xué)生畢業(yè)設(shè)計的驗收和鑒定,同時也是學(xué)生對自己工作的總結(jié)和匯報。通過答辯,學(xué)生不僅展示了畢業(yè)設(shè)計工作的效果,更展示了自己的專業(yè)知識、技術(shù)水平和綜合素質(zhì)。作為教師,每年都要指導(dǎo)多個畢業(yè)設(shè)計(論文),而學(xué)生一生只能經(jīng)歷一次本科畢業(yè)設(shè)計,而且畢業(yè)設(shè)計答辯能否順利通過,直接關(guān)系到學(xué)生畢業(yè)及學(xué)位資格的認定。因此對學(xué)生來講,畢業(yè)答辯至關(guān)重要。這有點像外科醫(yī)生與患者的關(guān)系:醫(yī)生每年要做很多手術(shù),對他們而言手術(shù)已是司空見慣,但對于患者本人,可能一輩子才上一次手術(shù)臺,而且生命攸關(guān)。所以,我們要在畢業(yè)設(shè)計指導(dǎo)過程中,認真對待每一位學(xué)生。同時在畢業(yè)答辯中嚴格把關(guān),保證質(zhì)量,更要秉承“公開“”公正”“公平”的原則。我們的畢業(yè)設(shè)計(論文)答辯采用小組面試形式,每組由四位副高職以上教師組成。答辯當(dāng)天向?qū)W生公布成績,畢業(yè)設(shè)計(論文)總成績由開題成績(10%)、中期成績(10%)、指導(dǎo)教師成績(10%)、答辯成績(70%)構(gòu)成。對于優(yōu)秀的和不及格的學(xué)生,我們還會重新組建答辯組進行二次答辯。這是考慮到答辯組之間認同度的差異而導(dǎo)致評分標準出現(xiàn)偏差,可能有些答辯組打分會偏低,有的組打分會偏高,即各個答辯組評分信度不能達到一致。二次答辯可以有效地消減組間評分差異,從而使申報校優(yōu)秀論文人選和未通過人選的確定做到公正、公平和有效。針對軟件行業(yè)特點,我們通過強化實踐教學(xué)環(huán)節(jié),合理利用多方資源拓寬畢業(yè)設(shè)計(論文)選題途徑、健全和完善畢業(yè)設(shè)計(論文)的監(jiān)管機制等手段,確保了畢業(yè)論文質(zhì)量的穩(wěn)步提高。幾年來,黑龍江大學(xué)軟件學(xué)院的畢業(yè)設(shè)計(論文)質(zhì)量受到校內(nèi)外專家的一致好評,獲校優(yōu)秀論文比率一直位于學(xué)校前列。實踐證明,加強畢業(yè)設(shè)計(論文)質(zhì)量的監(jiān)管,不但提高了學(xué)生工程實踐能力、獨立科研能力和創(chuàng)新意識,為學(xué)生進入工作崗位打下了良好的基礎(chǔ),進而也提升了學(xué)生的就業(yè)率。
作者:任美睿 金英 郭龍江 單位:黑龍江大學(xué)
規(guī)模使得精細化指導(dǎo)與管理變得困難原有畢業(yè)設(shè)計環(huán)節(jié)管理由于參與指導(dǎo)的教師人數(shù)相對較少,每名教師指導(dǎo)的學(xué)生也不多,而且所有教師均為本系教師,大家彼此非常熟悉,在一起教學(xué)研討的時間也很多,所以大家對各環(huán)節(jié)的要求及約定比較容易統(tǒng)一,對每個學(xué)生的指導(dǎo)時間也較多。但隨著參與指導(dǎo)畢業(yè)設(shè)計教師數(shù)量的提升,指導(dǎo)學(xué)生數(shù)的增加,特別是聘請了外系教師的支援,原有會議討論式、心理記憶式的約定及規(guī)則已經(jīng)不能適應(yīng)管理要求。這就必然要求規(guī)范畢業(yè)設(shè)計環(huán)節(jié)的管理,統(tǒng)一考核指標,讓大家在一個統(tǒng)一的框架下實施畢業(yè)設(shè)計的指導(dǎo)與考核。
軟件過程及評價主觀性強軟件及開發(fā)是個主觀性強,知識、勞動密集型工作,同一個項目或任務(wù),由于每個人項目經(jīng)歷、經(jīng)驗的不同,不同的人所得出的滿足需求的合格產(chǎn)品是肯定有區(qū)別的,但在質(zhì)量、靈活性、可擴充性方面可能存在很大差別。同時,對于軟件產(chǎn)品,不同人會有不同的評價,具有強主觀性的特點。這種強主觀性使得對畢業(yè)設(shè)計的評價難以用客觀的量化的評價指標和體系進行度量,對教師間把握統(tǒng)一的考核尺度制造了困難。
師生面對面交流機會越來越少由于就業(yè)形式的變化,各本科院校的培養(yǎng)模式也作了一定的改變,為了讓學(xué)生能更方便的外出找工作,更早的接觸社會,大部分高校第八學(xué)期除了畢業(yè)設(shè)計,基本上就沒有其他的教學(xué)任務(wù)。重慶理工大學(xué)也存在類似情況,在第八學(xué)期,大部分學(xué)生沒有待在學(xué)校,有的在外聯(lián)系工作單位,有的提前到單位實習(xí),甚至有的以在外找工作為借口待在家里,學(xué)生的分散性使得教師和學(xué)生之間面對面交流的機會少之又少,給畢業(yè)設(shè)計環(huán)節(jié)的指導(dǎo)和管理工作帶來了難度。
選題類型趨于多樣性為了培養(yǎng)學(xué)生層次、方向的多樣化,軟件工程專業(yè)的畢業(yè)設(shè)計不僅只有傳統(tǒng)的系統(tǒng)分析、設(shè)計與開發(fā)類的題目,還涉及論文類及算法類等類別。根據(jù)對前幾屆畢業(yè)設(shè)計環(huán)節(jié)的綜合統(tǒng)計,系統(tǒng)分析設(shè)計開發(fā)類選題所占分量最多,占70以上。由于不同題型的畢業(yè)設(shè)計需要應(yīng)用的知識、實施過程、考核重點都存在很大差異,不同題型之間的考核沒有對比性,因此需要針對不同的選題類型制定相應(yīng)的考核指標和評價標準。
現(xiàn)有管理中存在的問題
畢業(yè)設(shè)計是一次綜合鍛煉學(xué)生應(yīng)用所學(xué)知識解決問題能力的過程,涉及的環(huán)節(jié)比較多,存在的問題也不少[3-4]。綜合分析,存在以下三個典型問題:
1歷史題目重復(fù)率高,抄襲現(xiàn)象難以控制
每年都有幾個班的學(xué)生畢業(yè),畢業(yè)設(shè)計都要實施。在紙質(zhì)時代,抄襲成本大,抄襲源也比較難找到,因此抄襲現(xiàn)象相對較少,不同屆學(xué)生的題目相同并不會影響畢業(yè)設(shè)計質(zhì)量。然而,隨著互聯(lián)網(wǎng)技術(shù)在給廣大民眾帶來方便的同時,也給學(xué)生的偷懶提供了契機。由于大部分學(xué)生在外實習(xí),教師很難有效的監(jiān)督學(xué)生,有相當(dāng)一部分學(xué)生考慮到自己畢業(yè)后不從事軟件開發(fā)等相關(guān)工作或工作比較忙,不愿意投入時間好好地完成畢業(yè)設(shè)計,而是從互聯(lián)網(wǎng)抄襲,甚至通過互聯(lián)網(wǎng)購買。
2學(xué)生對考核的公正性存在質(zhì)疑
由于參與綜合實踐環(huán)節(jié)的學(xué)生人數(shù)和指導(dǎo)教師規(guī)模越來越大,綜合實踐環(huán)節(jié)在進行質(zhì)量考核時必然要進行分組。由于大家沒有統(tǒng)一的考核指標體系及標準,同一水平的畢業(yè)設(shè)計處于不同考核小組,可能得出截然不同的成績;甚至有指導(dǎo)教師認為較好的論文在答辯時被判為不及格現(xiàn)象。造成的嚴重后果是學(xué)生對論文評審、答辯過程公平性的質(zhì)疑,對學(xué)校的聲譽帶來不良影響。其原因是由于不同教師間、各不同小組之間缺乏一個統(tǒng)一的評判標準,分組的不均勻分布而導(dǎo)致了評審的不公平性。
3學(xué)生難以獲取實際需求
由于學(xué)生人數(shù)眾多,只有少部分學(xué)生能參與到教師的實際科研項目中,大部分學(xué)生只能以虛構(gòu)的題目為背景,沒有具體的企業(yè)為依托。因此,很獲取項目的具體而詳細的需求,學(xué)生所完成的也只能是一些通用功能的系統(tǒng),系統(tǒng)業(yè)務(wù)邏輯比較簡單,甚至基本沒有業(yè)務(wù)邏輯,僅僅是簡單增加、刪除、修改等功能的拼湊,不能真正體會到系統(tǒng)分析和設(shè)計的內(nèi)涵。
軟件專業(yè)畢業(yè)設(shè)計管理對策
軟件工程專業(yè)畢業(yè)設(shè)計管理是很多高校都比較棘手的問題,也有不少教師已提出了一些很好的策略[5-7]。根據(jù)對多年畢業(yè)設(shè)計執(zhí)行情況的分析與總結(jié),作者認為軟件工程專業(yè)畢業(yè)設(shè)計管理和考核中存在眾多問題的主要原因有以下三點:重結(jié)果輕過程的考核方法;缺乏統(tǒng)一的考核評價體系;管理過程不規(guī)范,隨意性大。因此,本文主要從建立量化考核指標體系、規(guī)范畢業(yè)設(shè)計過程管理和其他一些輔助策略進行探討。
1建立量化考核指標體系
建立量化考核指標體系包括細化考核指標和建立考核評價體系兩部分??己酥笜梭w系是一把雙刃劍,它除了可以對學(xué)生的畢業(yè)設(shè)計過程和結(jié)果進行考核外,也給學(xué)生提供了完成畢業(yè)設(shè)計目標的指導(dǎo)。在實際操作中,將對畢業(yè)設(shè)計的考核從過程檢查、評閱、答辯等幾個環(huán)節(jié)進行考慮,各環(huán)節(jié)又有細分指標,如論文選題、工作量、分析設(shè)計,程序運行、系統(tǒng)界面、論文結(jié)構(gòu)、熟悉程度等,用權(quán)重表示指標的重要性程度,每個指標有幾個不同得分等級,每個等級對應(yīng)一個可參考的評判標準,從而將以前的主觀考核變?yōu)楦鶕?jù)指標進行量化計算,有效地減少人為因素對評價的影響。
2規(guī)范畢業(yè)設(shè)計過程管理
傳統(tǒng)的考評方式重視對結(jié)果的考核,缺少對過程的考核,大多數(shù)學(xué)生在進行實踐環(huán)節(jié)任務(wù)時,沒有一個良好的系統(tǒng)分析、設(shè)計、開發(fā)習(xí)慣,完全是“靈感觸發(fā)”式的完成的,因此最終提交的往往是低劣的文檔或代碼。軟件產(chǎn)品是知識密集性產(chǎn)品,實踐證明,有效的過程管理是生產(chǎn)出好產(chǎn)品的一個必要條件。因此,必須規(guī)范畢業(yè)設(shè)計的課程管理,借助于1節(jié)建立的考核體系,對過程中的開題、需求文檔、設(shè)計文檔等關(guān)鍵環(huán)節(jié)進行考核,使學(xué)生在完成畢業(yè)設(shè)計的每一步時有明確目標的指導(dǎo),通過過程的管理促使學(xué)生完成高質(zhì)量的畢業(yè)設(shè)計成果。為了減少人為因素的影響,有必要建立畢業(yè)設(shè)計過程管理及控制系統(tǒng)[8-9],用管理信息系統(tǒng)規(guī)范畢業(yè)設(shè)計的過程管理。
3采用團隊培養(yǎng)模式
系統(tǒng)分析與設(shè)計的能力是軟件工程專業(yè)學(xué)生需要培養(yǎng)的一項最主要能力,而簡單的系統(tǒng)開發(fā)或項目由于功能簡單、業(yè)務(wù)單一,對鍛煉學(xué)生的系統(tǒng)分析和設(shè)計能力作用不大。因此,可以采用多名學(xué)生組團共同完成一項較復(fù)雜系統(tǒng)的方式,每名學(xué)生負責(zé)其中的一部分,學(xué)生之間通過對復(fù)雜點的業(yè)務(wù)邏輯的討論來提高系統(tǒng)分析和設(shè)計的能力,通過團隊合作來了解項目管理與軟件工程方法的精髓。
4與企業(yè)合作指導(dǎo)
由于企業(yè)面對的都是實實在在的項目,有自我學(xué)習(xí)的環(huán)境氛圍和壓力,在培養(yǎng)學(xué)生動手實踐能力方面有其獨特的優(yōu)勢。在企業(yè),每天都有相應(yīng)的任務(wù),在完成任務(wù)過程中,必然會碰到各種類型的問題,會尋求問題的解決方法,在解決問題的過程中很自然地就提升了自己的能力。這種任務(wù)驅(qū)動的學(xué)習(xí)方法和實際項目環(huán)境下的壓力在學(xué)校是很難提供的。近些年來,學(xué)院也在加強與企業(yè)的合作,在有條件的情況下盡量派學(xué)生深入到公司、企業(yè)進行實習(xí),已簽約的學(xué)生也可以提前到簽約企業(yè)工作,以企業(yè)的項目來完成其畢業(yè)設(shè)計環(huán)節(jié),實現(xiàn)企業(yè)、學(xué)校共同指導(dǎo)的方式。
結(jié)束語
畢業(yè)設(shè)計環(huán)節(jié)由于實踐性、綜合性強,涉及知識點多,其管理與考核一直是讓人頭疼的問題。論文描述了重慶理工大學(xué)軟件工程專業(yè)畢業(yè)設(shè)計環(huán)節(jié)的背景和現(xiàn)狀,指出了軟件工程專業(yè)畢業(yè)設(shè)計質(zhì)量難于管理和考核的特點。通過對近幾年畢業(yè)設(shè)計開展情況的總結(jié)與分析,發(fā)現(xiàn)了畢業(yè)設(shè)計質(zhì)量難于考核和控制的具體原因,并指出當(dāng)前畢業(yè)設(shè)計管理和考核所存在的問題,最后提出了解決這些問題的一些具體實施策略。結(jié)果表明,策略的實施對畢業(yè)設(shè)計過程的管理及考核答辯工作有較大的作用,學(xué)生畢業(yè)設(shè)計質(zhì)量有了顯著的提高。
作者:劉智王森閆河單位:重慶理工大學(xué)計算機科學(xué)與工程學(xué)院
一、利用多方資源做好畢業(yè)設(shè)計選題與立題工作
恰當(dāng)?shù)倪x題是做好畢業(yè)設(shè)計的必要條件和前提。近年來,隨著信息技術(shù)高速發(fā)展,國家對高素質(zhì)軟件工程人才需求十分旺盛,并有逐年擴大的趨勢。同時各個高校軟件工程專業(yè)的招生數(shù)量也在逐年增加,從目前全國319所設(shè)有軟件工程專業(yè)的學(xué)校看,2013年該專業(yè)平均招生300人左右。專業(yè)招生人數(shù)的增多給畢業(yè)設(shè)計選題帶來了帶來巨大挑戰(zhàn)[3]:一方面軟件工程專業(yè)的畢業(yè)設(shè)計選題要求具有一定的應(yīng)用價值、創(chuàng)新性,同時還要與行業(yè)需求相吻合;另一方面要保證選題的唯一性,不僅要避免學(xué)生之間的題目重復(fù),還要避免與之前畢業(yè)生的題目重復(fù),因為重復(fù)的選題會使學(xué)生產(chǎn)生投機的心理,導(dǎo)致“打醬油”現(xiàn)象。針對上述問題,黑龍江大學(xué)軟件學(xué)院主要采取了以下幾個措施:1.充分利用企業(yè)資源,對一部分在企業(yè)實習(xí)的學(xué)生采取“三位一體”的雙導(dǎo)師指導(dǎo)模式。即企業(yè)項目為載體,學(xué)生為主體的模式,校內(nèi)和校外導(dǎo)師為主導(dǎo)。這部分學(xué)生一般是在大三下學(xué)期暑假就已經(jīng)進入企業(yè)實習(xí),而我們每年畢業(yè)設(shè)計選題工作是在十一月末,也就是學(xué)生進入企業(yè)實習(xí)后三到四個月的時間,學(xué)生經(jīng)過企業(yè)階段的培訓(xùn),對企業(yè)的生產(chǎn)過程、企業(yè)文化有了一定的了解。此時,學(xué)院組織校內(nèi)外導(dǎo)師和學(xué)生共同協(xié)商,以企業(yè)項目或子項目為學(xué)生確定畢業(yè)設(shè)計選題。2.充分發(fā)揮導(dǎo)師的資源優(yōu)勢,學(xué)院大部分教師都有自己的科研課題,這些科研課題有些是直接來源于企業(yè)的橫向課題,還有一些是信息技術(shù)領(lǐng)域的應(yīng)用研究課題,我們鼓勵教師從這些課題中提取出一些子項目讓學(xué)生實踐,作為畢業(yè)設(shè)計的選題。3.充分挖掘?qū)W生的專業(yè)技術(shù)特長和興趣點并結(jié)合學(xué)生的擇業(yè)傾向,確定最能發(fā)揮自身優(yōu)勢和潛能的選題。畢業(yè)設(shè)計的選題不僅要與實際需求相結(jié)合,更重要的是應(yīng)該結(jié)合學(xué)生自身的技術(shù)優(yōu)勢和興趣。只有學(xué)生對選題有興趣,他們才能盡早地進入狀態(tài),發(fā)揮自己的創(chuàng)造能力和積極主動意識。所以,選題階段導(dǎo)師和學(xué)生的溝通交流就顯得尤為重要,通過溝通導(dǎo)師可以了解學(xué)生的能力、興趣和擇業(yè)傾向,學(xué)生也可以對選題,有進一步的認識,對于不感興趣的選題學(xué)生也可以通過與導(dǎo)師進一步的探討進行題目的修訂。
二、注重環(huán)節(jié)審查,加強過程監(jiān)管
雖然“好的開始是成功的一半”,但是如果缺乏中間環(huán)節(jié)的監(jiān)管,仍然不能保證好的效果[4]。因此,為保證畢業(yè)設(shè)計(論文)的質(zhì)量,我們制定了明確的質(zhì)量標準、管理條例,并由院長、學(xué)術(shù)委員會、系主任和教務(wù)辦主任組成畢業(yè)設(shè)計(論文)工作委員會,負責(zé)畢業(yè)設(shè)計(論文)工作的組織、評定和監(jiān)管,同時保證管理條例的嚴格落實及各個環(huán)節(jié)工作的正常進行。為健全畢業(yè)設(shè)計(論文)的監(jiān)管機制,學(xué)院先后規(guī)范和完善了《畢業(yè)設(shè)計(論文)工作管理辦法和實施細則》《開題報告》《開題評分標準》《中期報告》《中期檢查標準》《畢業(yè)設(shè)計(論文)撰寫規(guī)范及模版》《畢業(yè)設(shè)計(論文)盲審表》《答辯程序和評分標準》等一系列管理辦法和文檔標準,使畢業(yè)設(shè)計工作在制度和規(guī)范下能順利有效地進行。每年畢業(yè)設(shè)計工作之初,我們都要給學(xué)生開一個動員會,在會上闡明畢業(yè)設(shè)計(論文)的重要性,以及畢業(yè)設(shè)計對他們未來工作的影響,調(diào)動他們學(xué)習(xí)的主動性、積極性和創(chuàng)造性。此外,系主任還要向?qū)W生介紹學(xué)院畢業(yè)設(shè)計(論文)管理辦法和實施細則,各階段的工作要求和時間節(jié)點,以及各環(huán)節(jié)檢查的內(nèi)容、需要提交的文檔,使學(xué)生在畢業(yè)設(shè)計開始時能做到心中有數(shù)。同時,我們也要求指導(dǎo)教師隨時解答學(xué)生的問題,堅持每周開例會,檢查學(xué)生的工作完成情況,并提出一些有技術(shù)含量和理論深度的問題啟發(fā)他們思考,激發(fā)他們的學(xué)習(xí)熱情,并與學(xué)生一起確定后續(xù)任務(wù)。此外我們組織開題檢查、中期檢查,對開題檢查成績后30%的學(xué)生,不但檢查中期報告,還要現(xiàn)場檢查程序。對于中期檢查不合格的學(xué)生,要求限期整改,如果仍然不合格則取消答辯資格。在答辯之前,我們還要對論文進行盲審,盲審不合格的學(xué)生不允許答辯,對有異議的論文要提交學(xué)術(shù)委員會做最后論證。雖然學(xué)院對畢業(yè)設(shè)計(論文)工作在各個環(huán)節(jié)上的審查都非常嚴格,但我們鼓勵學(xué)生之間進行研討交流,博采眾長,相互提高,因為我們的目的不是抓出多少不合格的學(xué)生,而是想通過大學(xué)階段最后的綜合性實踐教學(xué)環(huán)節(jié)訓(xùn)練,培養(yǎng)學(xué)生的學(xué)習(xí)能力、知識的綜合運用能力、分析解決問題能力和溝通交流等綜合素質(zhì)。
三、嚴把答辯關(guān),保證畢業(yè)設(shè)計質(zhì)量
答辯是畢業(yè)設(shè)計(論文)考核階段的最后環(huán)節(jié),這個環(huán)節(jié)既是學(xué)院對學(xué)生畢業(yè)設(shè)計的驗收和鑒定,同時也是學(xué)生對自己工作的總結(jié)和匯報。通過答辯,學(xué)生不僅展示了畢業(yè)設(shè)計工作的效果,更展示了自己的專業(yè)知識、技術(shù)水平和綜合素質(zhì)。作為教師,每年都要指導(dǎo)多個畢業(yè)設(shè)計(論文),而學(xué)生一生只能經(jīng)歷一次本科畢業(yè)設(shè)計,而且畢業(yè)設(shè)計答辯能否順利通過,直接關(guān)系到學(xué)生畢業(yè)及學(xué)位資格的認定。因此對學(xué)生來講,畢業(yè)答辯至關(guān)重要。這有點像外科醫(yī)生與患者的關(guān)系:醫(yī)生每年要做很多手術(shù),對他們而言手術(shù)已是司空見慣,但對于患者本人,可能一輩子才上一次手術(shù)臺,而且生命攸關(guān)。所以,我們要在畢業(yè)設(shè)計指導(dǎo)過程中,認真對待每一位學(xué)生。同時在畢業(yè)答辯中嚴格把關(guān),保證質(zhì)量,更要秉承“公開”“公正”“公平”的原則。我們的畢業(yè)設(shè)計(論文)答辯采用小組面試形式,每組由四位副高職以上教師組成,答辯流程如圖1所示。答辯當(dāng)天向?qū)W生公布成績,畢業(yè)設(shè)計(論文)總成績由開題成績(10%)、中期成績(10%)、指導(dǎo)教師成績(10%)、答辯成績(70%)構(gòu)成。對于優(yōu)秀的和不及格的學(xué)生,我們還會重新組建答辯組進行二次答辯。這是考慮到答辯組之間認同度的差異而導(dǎo)致評分標準出現(xiàn)偏差,可能有些答辯組打分會偏低,有的組打分會偏高,即各個答辯組評分信度不能達到一致。二次答辯可以有效地消減組間評分差異,從而使申報校優(yōu)秀論文人選和未通過人選的確定做到公正、公平和有效。針對軟件行業(yè)特點,我們通過強化實踐教學(xué)環(huán)節(jié),合理利用多方資源拓寬畢業(yè)設(shè)計(論文)選題途徑、健全和完善畢業(yè)設(shè)計(論文)的監(jiān)管機制等手段,確保了畢業(yè)論文質(zhì)量的穩(wěn)步提高。幾年來,黑龍江大學(xué)軟件學(xué)院的畢業(yè)設(shè)計(論文)質(zhì)量受到校內(nèi)外專家的一致好評,獲校優(yōu)秀論文比率一直位于學(xué)校前列。實踐證明,加強畢業(yè)設(shè)計(論文)質(zhì)量的監(jiān)管,不但提高了學(xué)生工程實踐能力、獨立科研能力和創(chuàng)新意識,為學(xué)生進入工作崗位打下了良好的基礎(chǔ),進而也提升了學(xué)生的就業(yè)率。
作者:任美睿 金英 郭龍江 單位:黑龍江大學(xué)
1軟件工程在畢業(yè)設(shè)計中的作用
軟件工程不僅是計算機科學(xué)與技術(shù)專業(yè)、軟件工程專業(yè)的一門專業(yè)基礎(chǔ)核心課程,也是其他相關(guān)專業(yè),如信息工程、系統(tǒng)工程、信息與計算機科學(xué)、信息管理與信息系統(tǒng)等專業(yè)的重要應(yīng)用技術(shù)課程。對于這些專業(yè)的學(xué)生來說,畢業(yè)設(shè)計多是以軟件開發(fā)類項目為主,整個畢業(yè)設(shè)計就是開發(fā)一個軟件。為了更好地完成軟件開發(fā)類畢業(yè)設(shè)計,提高學(xué)生畢業(yè)設(shè)計的質(zhì)量,進一步規(guī)范畢業(yè)設(shè)計中的軟件開發(fā)過程是必需的。軟件工程的思想正是用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件。按照軟件工程思想,軟件開發(fā)的生命周期分為可行性分析、需求分析、總體設(shè)計、詳細設(shè)計、編碼實現(xiàn)、軟件測試和軟件維護幾個階段。在學(xué)生的畢業(yè)設(shè)計中以軟件工程的思想為主線,從軟件工程的角度去指導(dǎo)學(xué)生進行畢業(yè)設(shè)計,挖掘軟件工程在系統(tǒng)開發(fā)過程中的價值,解決畢業(yè)設(shè)計中存在的一些問題,既有助于學(xué)生更好地理解軟件工程的方法、技術(shù)和思想,更有助于提高軟件類畢業(yè)設(shè)計的質(zhì)量。
2畢業(yè)設(shè)計中存在的問題
筆者在指導(dǎo)學(xué)生軟件開發(fā)類畢業(yè)設(shè)計過程中發(fā)現(xiàn),畢業(yè)設(shè)計存在著選題難、任務(wù)重、重視編碼、輕過程、項目無法完成等現(xiàn)象。設(shè)計過程中沒有嚴格地遵循軟件工程的開發(fā)方法,沒有規(guī)范的軟件設(shè)計過程,項目能否成功主要依賴于個人能力和個人努力,這種不正確的開發(fā)方法帶來了嚴重的后果。在項目開發(fā)的過程中常常存在以下幾個方面問題:
2.1選題的盲目性
選題是畢業(yè)設(shè)計過程中的一個初始環(huán)節(jié),選題恰當(dāng)是做好畢業(yè)設(shè)計的前提,但選題不當(dāng)?shù)那闆r仍然時有發(fā)生。學(xué)生沒有認識到畢業(yè)設(shè)計的重要性,純粹是為了完成學(xué)業(yè)而做畢業(yè)設(shè)計,選題沒有一個確切的目標,往往是隨便選一個題目,造成選題的盲目性,出現(xiàn)了選題陳舊、選題范圍狹窄、選題偏大等問題,使學(xué)生抄襲、完成不了畢業(yè)設(shè)計的情況時有發(fā)生。
2.2缺少軟件的系統(tǒng)分析
軟件開發(fā)過程的第一個階段是系統(tǒng)分析,用來確定軟件開發(fā)要解決的問題是什么?估算完成該項目需要的資源和成本,確定目標系統(tǒng)應(yīng)該具備哪些功能,主要經(jīng)歷問題的定義、可行性分析和需求分析三個階段。軟件的系統(tǒng)分析確定了用戶需求,同時對目標系統(tǒng)提出完整、具體的要求,引導(dǎo)開發(fā)者正確地構(gòu)建系統(tǒng)。因此,對用戶需求做出全面、正確的分析,對于最終軟件開發(fā)類畢業(yè)設(shè)計的成敗起著至關(guān)重要的作用。然而在完成畢業(yè)設(shè)計過程中,學(xué)生往往認為代碼編寫最重要,對軟件開發(fā)過程中的可行性分析和需求分析階段不重視,甚至沒有系統(tǒng)分析,對整個畢業(yè)設(shè)計的完成造成了影響。
2.3軟件設(shè)計過程雜亂無章
軟件設(shè)計一般都要經(jīng)歷可行性分析、需求分析、總體設(shè)計、詳細設(shè)計、編碼和測試階段。而部分學(xué)生在畢業(yè)設(shè)計開發(fā)的過程中,缺乏軟件工程設(shè)計思想,跨越需求分析、概要設(shè)計、詳細設(shè)計和功能模塊設(shè)計,直接進行代碼的撰寫;或者從代碼反推出模塊設(shè)計;甚至在軟件開發(fā)過程中,一邊寫程序,一邊了解需求,程序完成了需求才確定。這種無序的軟件設(shè)計過程,導(dǎo)致最終設(shè)計的系統(tǒng)雜亂無章、代碼的重復(fù)率高、潛在?Bug多、系統(tǒng)的可集成性非常差、不能在規(guī)定時間內(nèi)完成設(shè)計或者系統(tǒng)無法運行。
2.4開發(fā)過程中文檔不完備
根據(jù)軟件工程學(xué)的基本原理,軟件=程序+文檔,可見軟件文檔是軟件開發(fā)過程中不可缺少的組成部分。軟件文檔貫穿于軟件開發(fā)的各個階段,是提高軟件產(chǎn)品開發(fā)效率、規(guī)范軟件產(chǎn)品開發(fā)過程、保證軟件產(chǎn)品質(zhì)量的關(guān)鍵。但在實際畢業(yè)設(shè)計中,很多同學(xué)認為把程序代碼編出來了,畢業(yè)設(shè)計也就完成了,提交的畢業(yè)設(shè)計論文就是系統(tǒng)代碼的復(fù)制,即只做出一個可演示可操作的系統(tǒng),而忽略了軟件開發(fā)的完整性、系統(tǒng)性。完整的畢業(yè)設(shè)計不僅包括可操作的系統(tǒng),還包括在開發(fā)系統(tǒng)的過程中所產(chǎn)生的各個文檔資料。文檔的缺失會降低軟件開發(fā)的效率、影響整個軟件的開發(fā)、使用和維護。以上問題的存在,嚴重影響了畢業(yè)設(shè)計的進度和質(zhì)量,沒有達到畢業(yè)設(shè)計的目標要求。針對當(dāng)前畢業(yè)設(shè)計的現(xiàn)狀和存在不足,筆者認為應(yīng)用軟件工程學(xué)的思想指導(dǎo)畢業(yè)設(shè)計,對促進學(xué)生綜合素質(zhì)與工程實踐能力培養(yǎng)具有積極意義。
3用軟件工程思想指導(dǎo)學(xué)生進行畢業(yè)設(shè)計
3.1以可行性研究指導(dǎo)選題
可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。畢業(yè)設(shè)計題目的選擇,應(yīng)立足于解決工程實際問題,可由指導(dǎo)教師提供符合相關(guān)專業(yè)畢業(yè)設(shè)計要求的題目,也可以鼓勵學(xué)生自己到社會、生產(chǎn)企業(yè)中尋求研究課題,培養(yǎng)他們自主學(xué)習(xí)的意識。選題過程以可行性研究為指導(dǎo),從課題規(guī)模大小、難易程度、學(xué)生自己的研究方向、愛好、學(xué)生的知識層面和能力等多個方面進行考慮,對于選擇的題目是否能夠解決,確定在規(guī)定的時間內(nèi)完成畢業(yè)設(shè)計的可行性。指導(dǎo)教師可根據(jù)學(xué)生選報的題目來指導(dǎo)學(xué)生對該選題進行調(diào)查研究,明確課題要解決的問題是什么,簡要地寫出關(guān)于問題性質(zhì)、項目目標和項目規(guī)模的書面報告??尚行匝芯縼碇笇?dǎo)畢業(yè)設(shè)計的選題,實質(zhì)上是簡化了系統(tǒng)分析和設(shè)計的過程,也是在較高層次上以較抽象的方式進行的系統(tǒng)分析和設(shè)計的過程,使學(xué)生對于課題的設(shè)計有個清晰的思路,為及時完成畢業(yè)設(shè)計提供了可能。
3.2重視軟件的需求分析
需求分析的基本任務(wù)是準確地回答“系統(tǒng)必須做什么”,即確定系統(tǒng)必須完成哪些工作,也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求,不僅指明了系統(tǒng)設(shè)計時必須要實現(xiàn)的目標,也是軟件設(shè)計、實現(xiàn)、測試和維護階段的主要參考標準。用戶需求的獲取是軟件開發(fā)中最重要、難度最大的工作,它貫穿于整個軟件設(shè)計過程,不僅要涉及到軟件開發(fā)方面的知識、應(yīng)用領(lǐng)域方面的知識,還涉及到與用戶溝通的能力。在進行需求獲取和分析時,為了及時、準確地獲取,可采用軟件工程中比較成熟的方法,例如訪談、實際調(diào)查、UML的用例技術(shù)等。需求分析在軟件系統(tǒng)分析與設(shè)計階段起著橋梁的作用,確定了系統(tǒng)的需求,才能制定出軟件設(shè)計的框架,保證畢業(yè)設(shè)計循序漸進、有條不紊地進行,避免后期開發(fā)過程的頻繁返工,進而按時完成最終的任務(wù)。
3.3規(guī)范畢業(yè)設(shè)計過程
軟件開發(fā)類畢業(yè)設(shè)計一般是開發(fā)一個軟件系統(tǒng),實現(xiàn)一定的功能。“麻雀雖小,五臟俱全”,無論軟件規(guī)模的大小、功能的多少,都應(yīng)該嚴格按照軟件工程中軟件生命周期每個階段的步驟完成各項任務(wù)。要培養(yǎng)學(xué)生把軟件工程的概念貫穿于整個畢業(yè)設(shè)計過程,也就是說,讓學(xué)生把開發(fā)軟件的過程看成是蓋一棟大樓,修一條公路的實際工程,用工程化的思想指導(dǎo)畢業(yè)設(shè)計,確定完成課題的各項任務(wù)的工作步驟,注重軟件類畢業(yè)設(shè)計的過程,而不是學(xué)生所認為的畢業(yè)設(shè)計就是編程序,代碼調(diào)試通過即可。通過工程的概念規(guī)范畢業(yè)設(shè)計過程,讓學(xué)生明白開發(fā)一個軟件系統(tǒng)一般經(jīng)過系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施三個階段,必須嚴格遵循軟件生命周期的規(guī)律,完成各個階段的任務(wù),才能最終提高畢業(yè)設(shè)計的質(zhì)量。
3.4重視文檔的寫作
軟件工程中的瀑布模型嚴格地規(guī)定了在整個軟件生命周期的各個階段,都要提交相應(yīng)的文檔。文檔不僅記錄軟件開發(fā)過程中的大量信息,在軟件的開發(fā)、維護過程中也起著重要的作用。在指導(dǎo)學(xué)生畢業(yè)設(shè)計時,要求學(xué)生遵照軟件工程的思想,把文檔作為整個設(shè)計的指揮棒,記載設(shè)計過程的每一階段完成的目標、任務(wù)及技術(shù)手段,建立健全畢業(yè)設(shè)計文檔制度,確保畢業(yè)設(shè)計過程中的文獻綜述、譯文、任務(wù)書、開題報告、選題審題表、中期檢查表、設(shè)計(論文)正文、答辯記錄等各環(huán)節(jié)教學(xué)資料檔案完善、規(guī)范,實現(xiàn)對畢業(yè)設(shè)計的全程監(jiān)控。
4結(jié)束語
軟件工程是軟件開發(fā)工程化、規(guī)范化的具體實施方法,將其應(yīng)用到畢業(yè)設(shè)計中,不僅有助于學(xué)生對軟件開發(fā)相關(guān)知識的鞏固和實踐,而且對解決目前軟件開發(fā)類畢業(yè)設(shè)計中存在的問題,提高學(xué)生畢業(yè)設(shè)計質(zhì)量,具有極大的促進作用。
作者:王曉 王長波 單位:湖北醫(yī)藥學(xué)院 公共管理學(xué)院計算機教研室
一、利用多方資源做好畢業(yè)設(shè)計選題與立題工作
恰當(dāng)?shù)倪x題是做好畢業(yè)設(shè)計的必要條件和前提。近年來,隨著信息技術(shù)高速發(fā)展,國家對高素質(zhì)軟件工程人才需求十分旺盛,并有逐年擴大的趨勢。同時各個高校軟件工程專業(yè)的招生數(shù)量也在逐年增加,從目前全國319所設(shè)有軟件工程專業(yè)的學(xué)??矗?013年該專業(yè)平均招生300人左右。專業(yè)招生人數(shù)的增多給畢業(yè)設(shè)計選題帶來了帶來巨大挑戰(zhàn):一方面軟件工程專業(yè)的畢業(yè)設(shè)計選題要求具有一定的應(yīng)用價值、創(chuàng)新性,同時還要與行業(yè)需求相吻合;另一方面要保證選題的唯一性,不僅要避免學(xué)生之間的題目重復(fù),還要避免與之前畢業(yè)生的題目重復(fù),因為重復(fù)的選題會使學(xué)生產(chǎn)生投機的心理,導(dǎo)致“打醬油”現(xiàn)象。針對上述問題,黑龍江大學(xué)軟件學(xué)院主要采取了以下幾個措施:1.充分利用企業(yè)資源,對一部分在企業(yè)實習(xí)的學(xué)生采取“三位一體”的雙導(dǎo)師指導(dǎo)模式。即企業(yè)項目為載體,學(xué)生為主體的模式,校內(nèi)和校外導(dǎo)師為主導(dǎo)。這部分學(xué)生一般是在大三下學(xué)期暑假就已經(jīng)進入企業(yè)實習(xí),而我們每年畢業(yè)設(shè)計選題工作是在十一月末,也就是學(xué)生進入企業(yè)實習(xí)后三到四個月的時間,學(xué)生經(jīng)過企業(yè)階段的培訓(xùn),對企業(yè)的生產(chǎn)過程、企業(yè)文化有了一定的了解。此時,學(xué)院組織校內(nèi)外導(dǎo)師和學(xué)生共同協(xié)商,以企業(yè)項目或子項目為學(xué)生確定畢業(yè)設(shè)計選題。2.充分發(fā)揮導(dǎo)師的資源優(yōu)勢,學(xué)院大部分教師都有自己的科研課題,這些科研課題有些是直接來源于企業(yè)的橫向課題,還有一些是信息技術(shù)領(lǐng)域的應(yīng)用研究課題,我們鼓勵教師從這些課題中提取出一些子項目讓學(xué)生實踐,作為畢業(yè)設(shè)計的選題。3.充分挖掘?qū)W生的專業(yè)技術(shù)特長和興趣點并結(jié)合學(xué)生的擇業(yè)傾向,確定最能發(fā)揮自身優(yōu)勢和潛能的選題。畢業(yè)設(shè)計的選題不僅要與實際需求相結(jié)合,更重要的是應(yīng)該結(jié)合學(xué)生自身的技術(shù)優(yōu)勢和興趣。只有學(xué)生對選題有興趣,他們才能盡早地進入狀態(tài),發(fā)揮自己的創(chuàng)造能力和積極主動意識。所以,選題階段導(dǎo)師和學(xué)生的溝通交流就顯得尤為重要,通過溝通導(dǎo)師可以了解學(xué)生的能力、興趣和擇業(yè)傾向,學(xué)生也可以對選題,有進一步的認識,對于不感興趣的選題學(xué)生也可以通過與導(dǎo)師進一步的探討進行題目的修訂。
二、注重環(huán)節(jié)審查,加強過程監(jiān)管
雖然“好的開始是成功的一半”,但是如果缺乏中間環(huán)節(jié)的監(jiān)管,仍然不能保證好的效果[4]。因此,為保證畢業(yè)設(shè)計(論文)的質(zhì)量,我們制定了明確的質(zhì)量標準、管理條例,并由院長、學(xué)術(shù)委員會、系主任和教務(wù)辦主任組成畢業(yè)設(shè)計(論文)工作委員會,負責(zé)畢業(yè)設(shè)計(論文)工作的組織、評定和監(jiān)管,同時保證管理條例的嚴格落實及各個環(huán)節(jié)工作的正常進行。為健全畢業(yè)設(shè)計(論文)的監(jiān)管機制,學(xué)院先后規(guī)范和完善了《畢業(yè)設(shè)計(論文)工作管理辦法和實施細則》《開題報告》《開題評分標準》《中期報告》《中期檢查標準》《畢業(yè)設(shè)計(論文)撰寫規(guī)范及模版》《畢業(yè)設(shè)計(論文)盲審表》《答辯程序和評分標準》等一系列管理辦法和文檔標準,使畢業(yè)設(shè)計工作在制度和規(guī)范下能順利有效地進行。每年畢業(yè)設(shè)計工作之初,我們都要給學(xué)生開一個動員會,在會上闡明畢業(yè)設(shè)計(論文)的重要性,以及畢業(yè)設(shè)計對他們未來工作的影響,調(diào)動他們學(xué)習(xí)的主動性、積極性和創(chuàng)造性。此外,系主任還要向?qū)W生介紹學(xué)院畢業(yè)設(shè)計(論文)管理辦法和實施細則,各階段的工作要求和時間節(jié)點,以及各環(huán)節(jié)檢查的內(nèi)容、需要提交的文檔,使學(xué)生在畢業(yè)設(shè)計開始時能做到心中有數(shù)。同時,我們也要求指導(dǎo)教師隨時解答學(xué)生的問題,堅持每周開例會,檢查學(xué)生的工作完成情況,并提出一些有技術(shù)含量和理論深度的問題啟發(fā)他們思考,激發(fā)他們的學(xué)習(xí)熱情,并與學(xué)生一起確定后續(xù)任務(wù)。此外我們組織開題檢查、中期檢查,對開題檢查成績后30%的學(xué)生,不但檢查中期報告,還要現(xiàn)場檢查程序。對于中期檢查不合格的學(xué)生,要求限期整改,如果仍然不合格則取消答辯資格。在答辯之前,我們還要對論文進行盲審,盲審不合格的學(xué)生不允許答辯,對有異議的論文要提交學(xué)術(shù)委員會做最后論證。雖然學(xué)院對畢業(yè)設(shè)計(論文)工作在各個環(huán)節(jié)上的審查都非常嚴格,但我們鼓勵學(xué)生之間進行研討交流,博采眾長,相互提高,因為我們的目的不是抓出多少不合格的學(xué)生,而是想通過大學(xué)階段最后的綜合性實踐教學(xué)環(huán)節(jié)訓(xùn)練,培養(yǎng)學(xué)生的學(xué)習(xí)能力、知識的綜合運用能力、分析解決問題能力和溝通交流等綜合素質(zhì)。
三、嚴把答辯關(guān),保證畢業(yè)設(shè)計質(zhì)量
答辯是畢業(yè)設(shè)計(論文)考核階段的最后環(huán)節(jié),這個環(huán)節(jié)既是學(xué)院對學(xué)生畢業(yè)設(shè)計的驗收和鑒定,同時也是學(xué)生對自己工作的總結(jié)和匯報。通過答辯,學(xué)生不僅展示了畢業(yè)設(shè)計工作的效果,更展示了自己的專業(yè)知識、技術(shù)水平和綜合素質(zhì)。作為教師,每年都要指導(dǎo)多個畢業(yè)設(shè)計(論文),而學(xué)生一生只能經(jīng)歷一次本科畢業(yè)設(shè)計,而且畢業(yè)設(shè)計答辯能否順利通過,直接關(guān)系到學(xué)生畢業(yè)及學(xué)位資格的認定。因此對學(xué)生來講,畢業(yè)答辯至關(guān)重要。這有點像外科醫(yī)生與患者的關(guān)系:醫(yī)生每年要做很多手術(shù),對他們而言手術(shù)已是司空見慣,但對于患者本人,可能一輩子才上一次手術(shù)臺,而且生命攸關(guān)。所以,我們要在畢業(yè)設(shè)計指導(dǎo)過程中,認真對待每一位學(xué)生。同時在畢業(yè)答辯中嚴格把關(guān),保證質(zhì)量,更要秉承“公開“”公正”“公平”的原則。我們的畢業(yè)設(shè)計(論文)答辯采用小組面試形式,每組由四位副高職以上教師組成,答辯流程如圖1所示。答辯當(dāng)天向?qū)W生公布成績,畢業(yè)設(shè)計(論文)總成績由開題成績(10%)、中期成績(10%)、指導(dǎo)教師成績(10%)、答辯成績(70%)構(gòu)成。對于優(yōu)秀的和不及格的學(xué)生,我們還會重新組建答辯組進行二次答辯。這是考慮到答辯組之間認同度的差異而導(dǎo)致評分標準出現(xiàn)偏差,可能有些答辯組打分會偏低,有的組打分會偏高,即各個答辯組評分信度不能達到一致。二次答辯可以有效地消減組間評分差異,從而使申報校優(yōu)秀論文人選和未通過人選的確定做到公正、公平和有效。針對軟件行業(yè)特點,我們通過強化實踐教學(xué)環(huán)節(jié),合理利用多方資源拓寬畢業(yè)設(shè)計(論文)選題途徑、健全和完善畢業(yè)設(shè)計(論文)的監(jiān)管機制等手段,確保了畢業(yè)論文質(zhì)量的穩(wěn)步提高。幾年來,黑龍江大學(xué)軟件學(xué)院的畢業(yè)設(shè)計(論文)質(zhì)量受到校內(nèi)外專家的一致好評,獲校優(yōu)秀論文比率一直位于學(xué)校前列。實踐證明,加強畢業(yè)設(shè)計(論文)質(zhì)量的監(jiān)管,不但提高了學(xué)生工程實踐能力、獨立科研能力和創(chuàng)新意識,為學(xué)生進入工作崗位打下了良好的基礎(chǔ),進而也提升了學(xué)生的就業(yè)率。
作者:任美睿 金英 郭龍江 單位:黑龍江大學(xué)
1軟件工程在畢業(yè)設(shè)計中的作用
軟件工程不僅是計算機科學(xué)與技術(shù)專業(yè)、軟件工程專業(yè)的一門專業(yè)基礎(chǔ)核心課程,也是其他相關(guān)專業(yè),如信息工程、系統(tǒng)工程、信息與計算機科學(xué)、信息管理與信息系統(tǒng)等專業(yè)的重要應(yīng)用技術(shù)課程。對于這些專業(yè)的學(xué)生來說,畢業(yè)設(shè)計多是以軟件開發(fā)類項目為主,整個畢業(yè)設(shè)計就是開發(fā)一個軟件。為了更好地完成軟件開發(fā)類畢業(yè)設(shè)計,提高學(xué)生畢業(yè)設(shè)計的質(zhì)量,進一步規(guī)范畢業(yè)設(shè)計中的軟件開發(fā)過程是必需的。軟件工程的思想正是用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件。按照軟件工程思想,軟件開發(fā)的生命周期分為可行性分析、需求分析、總體設(shè)計、詳細設(shè)計、編碼實現(xiàn)、軟件測試和軟件維護幾個階段。在學(xué)生的畢業(yè)設(shè)計中以軟件工程的思想為主線,從軟件工程的角度去指導(dǎo)學(xué)生進行畢業(yè)設(shè)計,挖掘軟件工程在系統(tǒng)開發(fā)過程中的價值,解決畢業(yè)設(shè)計中存在的一些問題,既有助于學(xué)生更好地理解軟件工程的方法、技術(shù)和思想,更有助于提高軟件類畢業(yè)設(shè)計的質(zhì)量。
2畢業(yè)設(shè)計中存在的問題
筆者在指導(dǎo)學(xué)生軟件開發(fā)類畢業(yè)設(shè)計過程中發(fā)現(xiàn),畢業(yè)設(shè)計存在著選題難、任務(wù)重、重視編碼、輕過程、項目無法完成等現(xiàn)象。設(shè)計過程中沒有嚴格地遵循軟件工程的開發(fā)方法,沒有規(guī)范的軟件設(shè)計過程,項目能否成功主要依賴于個人能力和個人努力,這種不正確的開發(fā)方法帶來了嚴重的后果。在項目開發(fā)的過程中常常存在以下幾個方面問題:
2.1選題的盲目性
選題是畢業(yè)設(shè)計過程中的一個初始環(huán)節(jié),選題恰當(dāng)是做好畢業(yè)設(shè)計的前提,但選題不當(dāng)?shù)那闆r仍然時有發(fā)生。學(xué)生沒有認識到畢業(yè)設(shè)計的重要性,純粹是為了完成學(xué)業(yè)而做畢業(yè)設(shè)計,選題沒有一個確切的目標,往往是隨便選一個題目,造成選題的盲目性,出現(xiàn)了選題陳舊、選題范圍狹窄、選題偏大等問題,使學(xué)生抄襲、完成不了畢業(yè)設(shè)計的情況時有發(fā)生。
2.2缺少軟件的系統(tǒng)分析
軟件開發(fā)過程的第一個階段是系統(tǒng)分析,用來確定軟件開發(fā)要解決的問題是什么?估算完成該項目需要的資源和成本,確定目標系統(tǒng)應(yīng)該具備哪些功能,主要經(jīng)歷問題的定義、可行性分析和需求分析三個階段。軟件的系統(tǒng)分析確定了用戶需求,同時對目標系統(tǒng)提出完整、具體的要求,引導(dǎo)開發(fā)者正確地構(gòu)建系統(tǒng)。因此,對用戶需求做出全面、正確的分析,對于最終軟件開發(fā)類畢業(yè)設(shè)計的成敗起著至關(guān)重要的作用。然而在完成畢業(yè)設(shè)計過程中,學(xué)生往往認為代碼編寫最重要,對軟件開發(fā)過程中的可行性分析和需求分析階段不重視,甚至沒有系統(tǒng)分析,對整個畢業(yè)設(shè)計的完成造成了影響。
2.3軟件設(shè)計過程雜亂無章
軟件設(shè)計一般都要經(jīng)歷可行性分析、需求分析、總體設(shè)計、詳細設(shè)計、編碼和測試階段。而部分學(xué)生在畢業(yè)設(shè)計開發(fā)的過程中,缺乏軟件工程設(shè)計思想,跨越需求分析、概要設(shè)計、詳細設(shè)計和功能模塊設(shè)計,直接進行代碼的撰寫;或者從代碼反推出模塊設(shè)計;甚至在軟件開發(fā)過程中,一邊寫程序,一邊了解需求,程序完成了需求才確定。這種無序的軟件設(shè)計過程,導(dǎo)致最終設(shè)計的系統(tǒng)雜亂無章、代碼的重復(fù)率高、潛在?Bug多、系統(tǒng)的可集成性非常差、不能在規(guī)定時間內(nèi)完成設(shè)計或者系統(tǒng)無法運行。
2.4開發(fā)過程中文檔不完備
根據(jù)軟件工程學(xué)的基本原理,軟件=程序+文檔,可見軟件文檔是軟件開發(fā)過程中不可缺少的組成部分。軟件文檔貫穿于軟件開發(fā)的各個階段,是提高軟件產(chǎn)品開發(fā)效率、規(guī)范軟件產(chǎn)品開發(fā)過程、保證軟件產(chǎn)品質(zhì)量的關(guān)鍵。但在實際畢業(yè)設(shè)計中,很多同學(xué)認為把程序代碼編出來了,畢業(yè)設(shè)計也就完成了,提交的畢業(yè)設(shè)計論文就是系統(tǒng)代碼的復(fù)制,即只做出一個可演示可操作的系統(tǒng),而忽略了軟件開發(fā)的完整性、系統(tǒng)性。完整的畢業(yè)設(shè)計不僅包括可操作的系統(tǒng),還包括在開發(fā)系統(tǒng)的過程中所產(chǎn)生的各個文檔資料。文檔的缺失會降低軟件開發(fā)的效率、影響整個軟件的開發(fā)、使用和維護。以上問題的存在,嚴重影響了畢業(yè)設(shè)計的進度和質(zhì)量,沒有達到畢業(yè)設(shè)計的目標要求。針對當(dāng)前畢業(yè)設(shè)計的現(xiàn)狀和存在不足,筆者認為應(yīng)用軟件工程學(xué)的思想指導(dǎo)畢業(yè)設(shè)計,對促進學(xué)生綜合素質(zhì)與工程實踐能力培養(yǎng)具有積極意義。
3用軟件工程思想指導(dǎo)學(xué)生進行畢業(yè)設(shè)計
3.1以可行性研究指導(dǎo)選題
可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。畢業(yè)設(shè)計題目的選擇,應(yīng)立足于解決工程實際問題,可由指導(dǎo)教師提供符合相關(guān)專業(yè)畢業(yè)設(shè)計要求的題目,也可以鼓勵學(xué)生自己到社會、生產(chǎn)企業(yè)中尋求研究課題,培養(yǎng)他們自主學(xué)習(xí)的意識。選題過程以可行性研究為指導(dǎo),從課題規(guī)模大小、難易程度、學(xué)生自己的研究方向、愛好、學(xué)生的知識層面和能力等多個方面進行考慮,對于選擇的題目是否能夠解決,確定在規(guī)定的時間內(nèi)完成畢業(yè)設(shè)計的可行性。指導(dǎo)教師可根據(jù)學(xué)生選報的題目來指導(dǎo)學(xué)生對該選題進行調(diào)查研究,明確課題要解決的問題是什么,簡要地寫出關(guān)于問題性質(zhì)、項目目標和項目規(guī)模的書面報告。可行性研究來指導(dǎo)畢業(yè)設(shè)計的選題,實質(zhì)上是簡化了系統(tǒng)分析和設(shè)計的過程,也是在較高層次上以較抽象的方式進行的系統(tǒng)分析和設(shè)計的過程,使學(xué)生對于課題的設(shè)計有個清晰的思路,為及時完成畢業(yè)設(shè)計提供了可能。
3.2重視軟件的需求分析
需求分析的基本任務(wù)是準確地回答“系統(tǒng)必須做什么”,即確定系統(tǒng)必須完成哪些工作,也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求,不僅指明了系統(tǒng)設(shè)計時必須要實現(xiàn)的目標,也是軟件設(shè)計、實現(xiàn)、測試和維護階段的主要參考標準。用戶需求的獲取是軟件開發(fā)中最重要、難度最大的工作,它貫穿于整個軟件設(shè)計過程,不僅要涉及到軟件開發(fā)方面的知識、應(yīng)用領(lǐng)域方面的知識,還涉及到與用戶溝通的能力。在進行需求獲取和分析時,為了及時、準確地獲取,可采用軟件工程中比較成熟的方法,例如訪談、實際調(diào)查、UML的用例技術(shù)等。需求分析在軟件系統(tǒng)分析與設(shè)計階段起著橋梁的作用,確定了系統(tǒng)的需求,才能制定出軟件設(shè)計的框架,保證畢業(yè)設(shè)計循序漸進、有條不紊地進行,避免后期開發(fā)過程的頻繁返工,進而按時完成最終的任務(wù)。
3.3規(guī)范畢業(yè)設(shè)計過程
軟件開發(fā)類畢業(yè)設(shè)計一般是開發(fā)一個軟件系統(tǒng),實現(xiàn)一定的功能?!奥槿鸽m小,五臟俱全”,無論軟件規(guī)模的大小、功能的多少,都應(yīng)該嚴格按照軟件工程中軟件生命周期每個階段的步驟完成各項任務(wù)。要培養(yǎng)學(xué)生把軟件工程的概念貫穿于整個畢業(yè)設(shè)計過程,也就是說,讓學(xué)生把開發(fā)軟件的過程看成是蓋一棟大樓,修一條公路的實際工程,用工程化的思想指導(dǎo)畢業(yè)設(shè)計,確定完成課題的各項任務(wù)的工作步驟,注重軟件類畢業(yè)設(shè)計的過程,而不是學(xué)生所認為的畢業(yè)設(shè)計就是編程序,代碼調(diào)試通過即可。通過工程的概念規(guī)范畢業(yè)設(shè)計過程,讓學(xué)生明白開發(fā)一個軟件系統(tǒng)一般經(jīng)過系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施三個階段,必須嚴格遵循軟件生命周期的規(guī)律,完成各個階段的任務(wù),才能最終提高畢業(yè)設(shè)計的質(zhì)量。
3.4重視文檔的寫作
軟件工程中的瀑布模型嚴格地規(guī)定了在整個軟件生命周期的各個階段,都要提交相應(yīng)的文檔。文檔不僅記錄軟件開發(fā)過程中的大量信息,在軟件的開發(fā)、維護過程中也起著重要的作用。在指導(dǎo)學(xué)生畢業(yè)設(shè)計時,要求學(xué)生遵照軟件工程的思想,把文檔作為整個設(shè)計的指揮棒,記載設(shè)計過程的每一階段完成的目標、任務(wù)及技術(shù)手段,建立健全畢業(yè)設(shè)計文檔制度,確保畢業(yè)設(shè)計過程中的文獻綜述、譯文、任務(wù)書、開題報告、選題審題表、中期檢查表、設(shè)計(論文)正文、答辯記錄等各環(huán)節(jié)教學(xué)資料檔案完善、規(guī)范,實現(xiàn)對畢業(yè)設(shè)計的全程監(jiān)控。
4結(jié)束語
軟件工程是軟件開發(fā)工程化、規(guī)范化的具體實施方法,將其應(yīng)用到畢業(yè)設(shè)計中,不僅有助于學(xué)生對軟件開發(fā)相關(guān)知識的鞏固和實踐,而且對解決目前軟件開發(fā)類畢業(yè)設(shè)計中存在的問題,提高學(xué)生畢業(yè)設(shè)計質(zhì)量,具有極大的促進作用。
作者:王曉王長波單位:湖北醫(yī)藥學(xué)院公共管理學(xué)院計算機教研室
摘要:針對地方應(yīng)用型本科高校計算機軟件類畢業(yè)設(shè)計質(zhì)量不高的問題,對畢業(yè)設(shè)計中存在的問題進行分析,并結(jié)合軟件工程的基礎(chǔ)理論,提出利用軟件工程思想對計算機軟件類畢業(yè)設(shè)計進行指導(dǎo),以提高地方應(yīng)用型普通本科高校畢業(yè)設(shè)計的質(zhì)量。
關(guān)鍵詞:軟件工程;畢業(yè)設(shè)計;應(yīng)用
一、引言
畢業(yè)設(shè)計是本科畢業(yè)生在校期間的最后實踐和綜合實訓(xùn)階段,是實現(xiàn)本科教育培養(yǎng)目標的重要組成部分,是深化、拓展、綜合應(yīng)用所學(xué)理論知識的重要過程;也是綜合素質(zhì)與工程實踐能力培養(yǎng)效果的全面檢驗;是學(xué)生畢業(yè)及學(xué)位資格認定的重要依據(jù);是衡量高等教育質(zhì)量和辦學(xué)效益的重要評價,是對專業(yè)理論知識和專業(yè)技術(shù)綜合應(yīng)用能力的強化訓(xùn)練和提升[1]。在畢業(yè)設(shè)計的過程中,學(xué)生利用所學(xué)專業(yè)理論知識,通過了解社會,分析社會需求,深入實踐,完成畢業(yè)設(shè)計的任務(wù)和撰寫畢業(yè)論文(設(shè)計)報告等各個環(huán)節(jié)的工作。對于地方應(yīng)用型普通本科高校而言,畢業(yè)設(shè)計就相當(dāng)于一般高等學(xué)校的畢業(yè)論文,但是畢業(yè)設(shè)計不同于畢業(yè)論文,它的組成部分不只是一篇學(xué)術(shù)論文。應(yīng)用型高校的畢業(yè)設(shè)計注重的是“應(yīng)用性”和“實踐性”,學(xué)生畢業(yè)設(shè)計要求學(xué)生針對某一課題,綜合運用本專業(yè)有關(guān)課程的理論和技術(shù),自己動手動腦做出解決實際問題的設(shè)計。目的是總結(jié)、檢查學(xué)生在校期間的學(xué)習(xí)成果,是評定畢業(yè)成績的重要依據(jù)。同時,通過畢業(yè)設(shè)計,可培養(yǎng)學(xué)生開發(fā)項目的基本綜合能力,為學(xué)生就業(yè)能力中的專業(yè)能力奠定堅實的基礎(chǔ);培養(yǎng)綜合運用已有知識獨立解決問題的能力,從而加強學(xué)生應(yīng)用能力的培養(yǎng),使學(xué)生能夠?qū)W以致用。
二、地方應(yīng)用型普通高校計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計的現(xiàn)狀
近幾年來,由于學(xué)校對畢業(yè)設(shè)計要求不斷提高,學(xué)生從選題到設(shè)計再到寫出畢業(yè)設(shè)計報告的過程中總存在這樣那樣的問題,最終有個別同學(xué)沒有順利通過畢業(yè)設(shè)計,沒有拿到畢業(yè)證和學(xué)位證的情況時有發(fā)生,并且大多數(shù)畢業(yè)設(shè)計的水平不高,達不到培養(yǎng)學(xué)生獨立解決問題和提高學(xué)生應(yīng)用能力的目的。因此,如何指導(dǎo)學(xué)生做好畢業(yè)設(shè)計,提高學(xué)生畢業(yè)設(shè)計水平和質(zhì)量,是地方應(yīng)用型普通高校面臨的一個重要問題。
(一)畢業(yè)設(shè)計選題現(xiàn)狀最近幾年,我校計算機相關(guān)專業(yè)畢業(yè)生自進入大四秋季學(xué)期開始,在進行畢業(yè)實習(xí)的同時,也進入了畢業(yè)設(shè)計準備階段:畢業(yè)設(shè)計選題,雖然畢業(yè)設(shè)計選題過程中,各級領(lǐng)導(dǎo)、指導(dǎo)教師和學(xué)生在態(tài)度是都很重視,但是在選題時也會存在很多的問題,主要有以下三個方面。1.選題不夠準確。部分學(xué)生選題未經(jīng)深思熟慮,所選畢業(yè)設(shè)計題目要實現(xiàn)的功能太多,在規(guī)定時間內(nèi)不能獨立完成,而最終只能實現(xiàn)部分功能,或部分模塊。
2.題目相似或重復(fù)雷同。學(xué)生選題存在渾水摸魚的思想,在畢業(yè)設(shè)計選題過程中不是根據(jù)自己的興趣愛好、專業(yè)知識學(xué)習(xí)情況等確定研究選題,而是選擇與他人類似或雷同的選題,甚至同一批畢業(yè)的許多學(xué)生選題一致。比如:“XX管理系統(tǒng)”等,除了可能冠以的系統(tǒng)名稱不同之外,其余基本相同。
3.應(yīng)用價值低。部分學(xué)生的選題是當(dāng)前十分成熟的項目,沒有研究的必要;有些選題已經(jīng)被淘汰,在實際生活和工作中沒有多大用途。
(二)畢業(yè)設(shè)計需求分析階段現(xiàn)狀
通過調(diào)查,許多學(xué)生選題完成后,沒有對自己所做畢業(yè)設(shè)計選題進行仔細了解、分析,他們認為在畢業(yè)設(shè)計中最重要的就是編程,其他方面一帶而過[2],從而造成畢業(yè)設(shè)計過程中主題經(jīng)常進行修改,最終使得整個系統(tǒng)雜亂無章,無法繼續(xù)進行下去。因此學(xué)生在畢業(yè)設(shè)計的需求分析階段主要有以下三個方面的問題。
1.選題后未進行實際調(diào)查研究,甚至未查找相應(yīng)的參考文獻。
2.需求分析進行得不徹底、不準確,即使選題后查找了參考文獻和資料的,也未做充分了解和分析。
3.在需求分析階段沒有寫出需求規(guī)格說明書或系統(tǒng)分析報告就匆忙進入系統(tǒng)設(shè)計階段,導(dǎo)致隨著系統(tǒng)設(shè)計的逐步深入,原來確定的需求不能滿足畢業(yè)設(shè)計的需要,正在進行的設(shè)計與開始的期望和設(shè)想又不相符。
(三)畢業(yè)設(shè)計系統(tǒng)設(shè)計階段現(xiàn)狀
在系統(tǒng)設(shè)計階段,普遍存在以下兩個方面問題。
1.由于需求的不明確,在進行系統(tǒng)設(shè)計時,修改隨意,沒有嚴格按照軟件開發(fā)的步驟進行。好多學(xué)生在進行系統(tǒng)設(shè)計時并沒有建出相應(yīng)的功能模型,不管是用例圖還是DFD圖都沒有,而且系統(tǒng)設(shè)計過程中功能隨意變換,并且各功能模塊的層次結(jié)構(gòu)不清晰,使得整個系統(tǒng)的功能模塊劃分凌亂,不符合軟件設(shè)計中“高內(nèi)聚,低耦合”的原則。
2.在軟件設(shè)計過程中,不先進行概要設(shè)計、詳細設(shè)計和模塊設(shè)計,沒有軟件的過程性描述,直接進行編碼,存在想到哪里就做到哪里,走到哪兒算哪兒的隨意思想[3],當(dāng)前內(nèi)容沒有做完便開始其他內(nèi)容,使得整個系統(tǒng)設(shè)計雜亂無章。在這樣的一種研究狀態(tài)下,即使完成了設(shè)計,效率也非常低下,軟件結(jié)構(gòu)混亂,功能實現(xiàn)不完全,降低了軟件設(shè)計的質(zhì)量。
(四)畢業(yè)設(shè)計實現(xiàn)階段現(xiàn)狀
通常把編碼和測試統(tǒng)稱為實現(xiàn)。在進行軟件設(shè)計后,就可以根據(jù)設(shè)計結(jié)果來實現(xiàn),將軟件的過程性描述編碼,得到計算機可以運行的源代碼。在實現(xiàn)階段主要有以下幾方面的問題。
1.編碼隨意。學(xué)生在編碼的過程中,不注意編程風(fēng)格的把握,導(dǎo)致程序的可讀性、可理解性、可修改性等較差,在答辨的過程中,要求指出某個功能模塊的代碼時,經(jīng)常要花費很多時間才找得到。
2.測試和調(diào)試可有可無。大部分學(xué)生在畢業(yè)設(shè)計的軟件編碼完成以后,從沒有想過進行完整的系統(tǒng)測試,或者只對個別功能進行測試或是隨意測試,沒有按照測試步驟逐步進行;基本沒有單元測試和集成測試,一般只是最終隨便輸入幾個數(shù)據(jù)簡單檢測一下,如果有錯,修改了就算完了;也沒有進行回歸測試,沒有測試計劃,沒有想過用什么測試技術(shù)來檢測某一類型的錯識,沒有相應(yīng)的測試用例,也沒有測試結(jié)果分析。由于學(xué)生畢業(yè)設(shè)計都是一人一題,基本上是一個人完成所有步驟,就算有測試,在測試階段也是自己進行測試,從心理學(xué)的角度來說,自己對自己開發(fā)的軟件進行測試是不可取的。由于前面階段的文檔不完善,也不重視測試過程,不清楚是否實現(xiàn)了系統(tǒng)最初設(shè)計的功能,是否達到相應(yīng)的性能要求,總以為程序做出來后畢業(yè)設(shè)計就完成了,使得畢業(yè)設(shè)計經(jīng)常在更換運行環(huán)境或答辯時發(fā)生錯誤和問題,從而使得設(shè)計得不到好評甚至無法通過。
(五)畢業(yè)設(shè)計應(yīng)用現(xiàn)狀
最近幾年,我校計算機相關(guān)專業(yè)畢業(yè)設(shè)計投入使用數(shù)量接近于零。究其原因主要是由于設(shè)計不完全,未進行測試和調(diào)試,存在的錯誤和缺陷較多,文檔和數(shù)據(jù)不完整,導(dǎo)致所開發(fā)的系統(tǒng)或軟件不能方便地轉(zhuǎn)讓、變更、修正、擴充和使用,也沒有為后期培訓(xùn)、維護留下完備的資料;因此,不能投入到真正的使用過程中,也不能實現(xiàn)系統(tǒng)或軟件產(chǎn)品的效益。
三、軟件工程思想的應(yīng)用
軟件工程(SoftwareEngineering,簡稱為SE)是一門研究用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件的學(xué)科。軟件工程中的軟件生命周期是一個軟件從軟件定義、開發(fā)、運行和維護,直到最終被廢棄的整個過程[2]。地方應(yīng)用型普通高校計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計基本都是開發(fā)一些中、小型應(yīng)用系統(tǒng)或軟件,因此,學(xué)生畢業(yè)設(shè)計也要經(jīng)歷軟件生命周期各個階段,嚴格遵守軟件工程的各個原則,這樣有助于解決畢業(yè)設(shè)計中存在的問題,提高畢業(yè)設(shè)計的質(zhì)量。通過對應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的學(xué)生在進行畢業(yè)設(shè)計的過程中存在的問題進行分析,在畢業(yè)設(shè)計的過程中,必須運用軟件工程的觀點、技術(shù)和方法來指導(dǎo)畢業(yè)設(shè)計,這樣既節(jié)約了畢業(yè)設(shè)計的時間和學(xué)生的精力,也能做出最優(yōu)質(zhì)的畢業(yè)設(shè)計。
1.選題過程中的應(yīng)用。畢業(yè)設(shè)計選題就是軟件生命周期的問題定義中的問題提出階段,選好題目是進行深入研究的基礎(chǔ),也是寫出高質(zhì)量畢業(yè)論文的前提。地方應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的畢業(yè)設(shè)計選題必須做到以下幾點:(1)必須在對選題做了充分調(diào)查、分析,對檢索的參考文獻、資料有了整體把握的基礎(chǔ)上提出。(2)必須符合本專業(yè)培養(yǎng)方案規(guī)定的培養(yǎng)目標的要求。(3)以選擇工程性較強的課題為主,確保有足夠的工程性訓(xùn)練。(4)要有明確的設(shè)計成果,對于較大型任務(wù)的課題要明確階段性成果。(5)要達到規(guī)定的工作量,難易度適中,確保能在規(guī)定的時間內(nèi)完成整個課題工作。(6)要圍繞生產(chǎn)生活實際,所選題目一定具有一定的理論意義和實踐意義,具有一定的價值。(7)原則上一人一題,對于較大型任務(wù)的課題,每個學(xué)生必須有獨立子課題。結(jié)合以上幾點,分別從專業(yè)基礎(chǔ)、現(xiàn)實意義等方面進行全面分析,進行取舍,最終得出選題。
2.開題過程中的應(yīng)用。在畢業(yè)設(shè)計的開題過程中,需要明確所選題目的選題依據(jù)(包括選擇課題的背景、選題研究的理論及實踐意義)、選題研究現(xiàn)狀(包括目前國內(nèi)外對本選題的研究情況和有待解決的問題)、研究內(nèi)容與方法,而這些就是軟件工程中需求分析階段應(yīng)該做的事情。需求分析指的是在建立一個新的或改變一個現(xiàn)存的電腦系統(tǒng)時描寫新系統(tǒng)的目的、范圍、定義和功能時所要做的所有的工作[3]。因此開題過程中最重要的是進行需求分析,需求分析具有決策性、方向性、策略性的作用,在軟件開發(fā)的過程中具有舉足輕重的地位。需求分析完成的好壞直接影響后續(xù)軟件開發(fā)的質(zhì)量。開題過程中需要指導(dǎo)學(xué)生大量地閱讀相關(guān)的研究資料,同時根據(jù)資料進行分析研究,對當(dāng)前畢業(yè)設(shè)計的研究進度做到心中有數(shù),明確畢業(yè)設(shè)計的具體方向,寫出畢業(yè)設(shè)計的研究內(nèi)容與方法,得到相應(yīng)的設(shè)計提綱,解決好設(shè)計什么,如何設(shè)計的問題。因此,應(yīng)用好軟件工程的思想來指導(dǎo)畢業(yè)設(shè)計的開題是至關(guān)重要的。根據(jù)學(xué)校對學(xué)生畢業(yè)論文的要求,在計算機相關(guān)專業(yè)的畢業(yè)設(shè)計報告中,要求要有數(shù)據(jù)流圖、數(shù)據(jù)字典等相應(yīng)內(nèi)容,而軟件工程中的數(shù)據(jù)流圖(DataFlowDia-gram,簡稱DFD),它是從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程。它是描述系統(tǒng)中數(shù)據(jù)流程的圖形工具,它標識了一個系統(tǒng)的邏輯輸入和邏輯輸出,以及把邏輯輸入轉(zhuǎn)換為邏輯輸出所需的加工處理[3]。因此,在這個階段,要指導(dǎo)學(xué)生按照DFD圖的要求,確定設(shè)計的功能,然后根據(jù)系統(tǒng)分析結(jié)果寫出分析報告,就得出畢業(yè)論文中系統(tǒng)分析階段的初始文檔。
3.在實踐研究環(huán)節(jié)的應(yīng)用。根據(jù)需求分析(開題階段)的結(jié)果進行軟件的概要設(shè)計和詳細設(shè)計,注意在設(shè)計過程中要嚴格按照軟件工程對于設(shè)計階段的指導(dǎo)原則來進行設(shè)計。將概要設(shè)計階段需求分析得到的DFD轉(zhuǎn)換為軟件結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),即是根據(jù)需求確定軟件和數(shù)據(jù)的總體框架,設(shè)計出軟件的結(jié)構(gòu),也就是要確定系統(tǒng)中每個程序是由哪些模塊組成的,以及這些模塊相互間的關(guān)系。然后再進行詳細設(shè)計,設(shè)計出每個模塊的實現(xiàn)算法、所需的局部數(shù)據(jù)結(jié)構(gòu),并且對每個模塊寫出過程性描述;為每個模塊設(shè)計出一組測試用例,在進行測試時就以此測試用例來進行測試。詳細設(shè)計階段的任務(wù)還不是具體地編寫程序,而是要設(shè)計出程序的“藍圖”,以后將根據(jù)這個“藍圖”寫出實際的程序代碼。因此,指導(dǎo)教師要對學(xué)生的設(shè)計過程進行監(jiān)督和指導(dǎo),防止學(xué)生盲目的進行編碼。
4.在實現(xiàn)階段的應(yīng)用。在編碼的過程中,要注意編程風(fēng)格的把握,編程的風(fēng)格在很大程度上影響程序的可讀性、可測試性和可維護性。在測試階段,可以進行交叉測試,即學(xué)生之間可以兩兩交叉,相互測試,以更好的達到測試效果,同時也培養(yǎng)了學(xué)生的團隊意識和合作意識。在測試過程中要注意運用軟件工程的測試原則和測試思想,嚴格按照單元測試集成測試確認測試系統(tǒng)測試驗收測試的測試步驟進行,利用白盒測試技術(shù)進行單元測試,黑盒測試技術(shù)進行其他測試,并且在找出錯誤并修改后要進行相應(yīng)的回歸測試,確認修改了錯誤并且沒有引入新的錯誤,這樣有利于找到軟件中的各類錯誤,提高軟件的質(zhì)量。因此,在軟件的測試過程中,一定要嚴格按照軟件工程中的測試原則來進行,不可隨意進行測試,并且要注意測試文檔資料的收集整理,要有相應(yīng)的測試計劃和測試報告。對學(xué)生的創(chuàng)造性的思維和想法,指導(dǎo)教師要給予支持,積極引導(dǎo),鼓勵學(xué)生大膽創(chuàng)新,用應(yīng)用型人才培養(yǎng)目標來要求學(xué)生,保證高質(zhì)量的畢業(yè)設(shè)計的完成。
5.在畢業(yè)論文(設(shè)計)報告方面的應(yīng)用。對于應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的畢業(yè)設(shè)計而言,不單單是完成了一個系統(tǒng)的設(shè)計,還要有相應(yīng)的設(shè)計報告,而設(shè)計報告的編寫過程中,很多學(xué)生存在文字表達能力不強的現(xiàn)象,為了完成報告,就有可能會抄襲,特別是在軟件開發(fā)的各個階段文檔材料不全的情況下更為嚴重。因此,在學(xué)生進行軟件開發(fā)的各個環(huán)節(jié)中,指導(dǎo)教師都應(yīng)該按照軟件工程的觀點來進行指導(dǎo),并要求學(xué)生在各個階段都完成相應(yīng)的文檔。這樣在畢業(yè)設(shè)計報告撰寫的過程中,只要將各個階段的文檔進行合并、整理就得到相應(yīng)的設(shè)計報告,并且是一篇重復(fù)率不高的高質(zhì)量的設(shè)計報告。6.在畢業(yè)設(shè)計實際應(yīng)用方面的應(yīng)用。因為學(xué)生在整個系統(tǒng)或軟件過程中均按軟件設(shè)計規(guī)范準備了文檔和進行了完整的系統(tǒng)測試,從而為系統(tǒng)或軟件的專利申請?zhí)峁┝顺浞直匾馁Y料,并為畢業(yè)設(shè)計的實際應(yīng)用打下良好的基礎(chǔ)。
四、結(jié)語
計算機相關(guān)專業(yè)學(xué)生的畢業(yè)設(shè)計在學(xué)生的整個大學(xué)生活中具有極其重要的地位和作用,根據(jù)應(yīng)用型普通本科高校人才培養(yǎng)的定位,主要是培養(yǎng)學(xué)生的獨立思考能力、動手能力和應(yīng)用能力。通過對軟件工程思想在計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計的過程及方法中的應(yīng)用研究,逐步實現(xiàn)學(xué)生畢業(yè)設(shè)計的實際成果轉(zhuǎn)化,從而為應(yīng)用型計算機相關(guān)專業(yè)人才培養(yǎng)提供相應(yīng)的借鑒。
作者:龍亞 張仕學(xué) 余廷忠 單位:貴州工程應(yīng)用技術(shù)學(xué)院
1概述
在應(yīng)用型本科院校中,尤其是軟件工程專業(yè),畢業(yè)設(shè)計作為教學(xué)計劃的重要組成部分,是實踐教學(xué)中的最后一個環(huán)節(jié),也是對學(xué)生在校期間所學(xué)知識的一次綜合、全面的總結(jié)、應(yīng)用和提高。由于畢業(yè)生數(shù)量的不斷增加和軟件行業(yè)的迅猛發(fā)展,導(dǎo)致就業(yè)門檻越來越高,就業(yè)壓力也越來越大,通過畢業(yè)設(shè)計過程中的訓(xùn)練,能有效提高學(xué)生的工程應(yīng)用能力,使學(xué)生得到一定的實踐經(jīng)驗,有利于學(xué)生從學(xué)校向工作崗位的平穩(wěn)過度。因此,畢業(yè)設(shè)計質(zhì)量的好壞,不僅反映了一所高校的教學(xué)質(zhì)量,也會直接影響到學(xué)生的就業(yè)競爭力和就業(yè)后的職場適應(yīng)能力。
2存在的問題
1)思想認識上不夠重視學(xué)生方面:有些學(xué)生存在完成任務(wù)式的應(yīng)付心里,避重就輕,能簡就簡,敷衍了事。有些學(xué)生則只重視找工作而輕視畢業(yè)設(shè)計,不愿在畢業(yè)設(shè)計上花費太多時間和精力,甚至有些學(xué)生還以找工作為由,完全依賴于導(dǎo)師,向?qū)熕饕创a,甚至花錢在網(wǎng)上購買來交差。已經(jīng)找到工作的學(xué)生,更是認為畢業(yè)設(shè)計做的好與不好對自己沒什么影響,對待畢業(yè)設(shè)計也更加心不在焉。導(dǎo)師方面:大多數(shù)指導(dǎo)教師除了要指導(dǎo)學(xué)生畢業(yè)設(shè)計之外,還要承擔(dān)大量的教學(xué)和科研任務(wù),在畢業(yè)設(shè)計指導(dǎo)工作上能夠投入的精力和時間非常有限,致使有些導(dǎo)師對畢業(yè)設(shè)計的指導(dǎo)工作不太重視,對學(xué)生放任自流,不管不問,或者是直接將相關(guān)源代碼發(fā)給學(xué)生,以“簡化”指導(dǎo)工作。由于思想上的不重視,學(xué)生學(xué)習(xí)態(tài)度不認真,導(dǎo)師指導(dǎo)工作不到位,造成畢業(yè)設(shè)計流于形式,疏于管理,效果較差,使得學(xué)生白白浪費了畢業(yè)前的一次綜合訓(xùn)練機會。因此,如何充分認識畢業(yè)設(shè)計的重要性,并進行相應(yīng)的教學(xué)改革是軟件工程專業(yè)畢業(yè)設(shè)計必須要面對并解決的問題。
2)時間安排上不夠科學(xué)畢業(yè)設(shè)計一般安排在第八學(xué)期,這期間剛好是學(xué)生求職和考研的黃金時間段,由于目前就業(yè)形勢的日益嚴峻,學(xué)生就業(yè)壓力越來越大,當(dāng)求職和考研時間與畢業(yè)設(shè)計時間發(fā)生沖突時,學(xué)生都會選擇將主要精力投入到求職和考研上,有些還要去外地求職、應(yīng)聘考試、面試等,畢業(yè)設(shè)計自然是無暇顧及。而且,學(xué)校方面,為了保證就業(yè)率,往往對學(xué)生畢業(yè)設(shè)計的質(zhì)量也是睜一只眼閉一只眼,這又在無形中鼓勵了學(xué)生消極對待畢業(yè)設(shè)計的態(tài)度,畢業(yè)設(shè)計質(zhì)量下降也就成為必然結(jié)果。
3)題目設(shè)置上不夠合理由于畢業(yè)設(shè)計在高校各類教學(xué)活動中是最具綜合性和獨立性的,相對于常規(guī)課程而言,對指導(dǎo)教師要求也就更高,尤其軟件工程專業(yè),工程實踐性比較強,但每年真正來源于實際工程項目的題目所占的比例較小,很多題目都是虛構(gòu)出來的,導(dǎo)致有些題目不是理論性太強,就是缺乏具體需求的支撐,使學(xué)生很難從畢業(yè)設(shè)計過程中真正領(lǐng)悟到真實的軟件工程方法。而有些指導(dǎo)教師自己都沒參與過實際的工程項目,本身就缺乏實踐經(jīng)驗,對學(xué)生畢業(yè)設(shè)計的指導(dǎo)只是憑著自己的感覺來進行,缺乏系統(tǒng)性、整體性、科學(xué)性和嚴謹性,學(xué)生遇到問題后,難以得到及時的解決,導(dǎo)致抄襲現(xiàn)象時有發(fā)生,甚至有些學(xué)生直接照搬往屆畢業(yè)生的設(shè)計成果。畢業(yè)設(shè)計的主要目的在于通過畢業(yè)設(shè)計的訓(xùn)練來提升學(xué)生對所學(xué)知識的綜合應(yīng)用能力以及創(chuàng)新能力,從而實現(xiàn)學(xué)生從學(xué)校到工作崗位的平穩(wěn)過度。但由于題目設(shè)置上的不合理,題量太少,層次不清,導(dǎo)致選題匹配效果差。在選題時,部分能力差的學(xué)生所選題目難度太大,造成畢業(yè)設(shè)計很難完成,而有些能力強的學(xué)生所選題目難度過小,達不到能力提升的目的。
4)過程監(jiān)管上不夠到位眾所周知,對于軟件工程項目而言,過程控制與管理是項目執(zhí)行的關(guān)注點,畢業(yè)設(shè)計也當(dāng)如此。雖然學(xué)校也會在畢業(yè)設(shè)計過程中組織對各階段的工作情況進行檢查,但執(zhí)行檢查工作的不一定是專業(yè)教師,使得這種檢查大多只是對指導(dǎo)老師所填寫的各種表格和文檔等表面內(nèi)容進行檢查,對畢業(yè)設(shè)計的過程起不到實際的監(jiān)督作用,再加之有些學(xué)生在校外求職或?qū)嵙?xí)等原因造成指導(dǎo)教師與學(xué)生無法定期見面和溝通不暢等問題,使得指導(dǎo)教師難以用軟件工程方法對學(xué)生進行指導(dǎo)。畢業(yè)設(shè)計雖然啟動較早,但實際上很多學(xué)生前期在畢業(yè)設(shè)計上很少投入時間和精力,只是在答辯前為了完成任務(wù)而趕工應(yīng)付,這樣的畢業(yè)設(shè)計質(zhì)量自然也就不佳。
5)量化考核上不夠嚴格畢業(yè)設(shè)計成績一般由平時成績+論文成績+答辯成績?nèi)糠职匆欢ū壤龢?gòu)成,平時成績由指導(dǎo)教師自行把握,論文成績則由其他有經(jīng)驗的教師進行評閱,答辯成績由答辯委員會老師按照相關(guān)評分標準打分并取平均分,這樣雖然基本可以保證成績的公正性,但成績構(gòu)成太簡單,未顯示地將開題報告、文獻翻譯、分析和設(shè)計過程以及總結(jié)等納入到考核范圍,對畢業(yè)設(shè)計的前期和中期工作沒有約束力。在成績評定時,有些導(dǎo)師要求不嚴,采取寬容遷就的態(tài)度。答辯時,通過門檻較低,造成大部分學(xué)生僅以答辯及格為目標,在思想上不重視,答辯準備工作不扎實。同時,學(xué)校為了提高學(xué)生畢業(yè)率,在最終答辯時,對畢業(yè)設(shè)計的質(zhì)量要求也有所放松,這也是導(dǎo)致畢業(yè)設(shè)計質(zhì)量難以保證的一個重要原因。
3采取的對策
時間安排上,可以提前啟動畢業(yè)設(shè)計工作,將原來的第八學(xué)期開始提前到第六學(xué)期中后期,此時學(xué)生已經(jīng)學(xué)完大部分課程,具有了一定的知識基礎(chǔ),而且學(xué)生都在校,可以隨時與導(dǎo)師見面,指導(dǎo)教師也有充分的時間對畢業(yè)設(shè)計項目隨時跟進,隨時指導(dǎo)。導(dǎo)師資格審查上,對于軟件工程專業(yè)來說,學(xué)生畢業(yè)設(shè)計的導(dǎo)師,應(yīng)該由長期從事實際工程實踐或者有較好科研成果的“雙師型”(雙師即“教師”、“工程師”)教師來擔(dān)任,也可以聘請校外科研單位或企業(yè)中水平較高的工程師來擔(dān)任企業(yè)導(dǎo)師,這樣不僅可以減輕指導(dǎo)教師短缺的壓力,也能促進指導(dǎo)教師隊伍多元化模式的形成。題目設(shè)置上,要求題量要充分,使得水平層次不同的學(xué)生都能選到合適的題目;難度和工作量要適中,且要有一定的創(chuàng)意,使學(xué)生通過畢業(yè)設(shè)計的訓(xùn)練,在綜合應(yīng)用能力和創(chuàng)新能力上都能夠得到有效的提高。有課題的指導(dǎo)教師要盡量結(jié)合自己的課題來設(shè)計題目,沒課題的指導(dǎo)教師可以從與學(xué)校有合作的企事業(yè)單位中獲取有實際意義的題目。鼓勵學(xué)生根據(jù)自己的興趣點和就業(yè)取向自擬題目,允許學(xué)生到實習(xí)企業(yè)中根據(jù)企業(yè)的實際工程需要選題和實施畢業(yè)設(shè)計,這樣既能解決實際問題又可完成畢業(yè)設(shè)計。過程監(jiān)管上,首先要在指導(dǎo)教師和學(xué)生之間建立有效的溝通聯(lián)系機制和問題討論的例會制度,充分發(fā)揮指導(dǎo)教師的引導(dǎo)作用,在畢業(yè)設(shè)計過程中,堅持每周師生溝通一次。學(xué)生提出問題,指導(dǎo)教師引導(dǎo)和總結(jié),鼓勵學(xué)生發(fā)揮主觀能動性和創(chuàng)造力。同時,學(xué)校要成立由領(lǐng)導(dǎo)牽頭、具有一定工程實踐經(jīng)驗的專業(yè)技術(shù)人員組成的督導(dǎo)組,對畢業(yè)設(shè)計過程包括選題、開題、中期檢查、答辯和成績評定等各個環(huán)節(jié)實施有效的監(jiān)控和督導(dǎo),加強管理學(xué)生的同時也要加強對指導(dǎo)教師工作質(zhì)量的檢查,確保畢業(yè)設(shè)計工作能夠有序、有效的實施。量化考核上,要對畢業(yè)設(shè)計從前期的開題、文獻查閱,到中期的分析、設(shè)計、實現(xiàn),再到后期的總結(jié)等各個階段的進行量化考核,前一階段的成績考核不合格者,不能進行下一階段工作,必須加以整改,直到整改合格后才能進入下一階段。對于未能按要求如期完成畢業(yè)設(shè)計的可以推遲答辯,對于首次答辯不合格的可以進行二次答辯,仍不合格的,可以緩發(fā)畢業(yè)證。只有建立嚴格的考核制度,才能對學(xué)生有約束力,讓學(xué)生從思想上重視畢業(yè)設(shè)計,進而保證畢業(yè)設(shè)計的質(zhì)量。
4結(jié)束語
軟件工程是一個實踐性很強的專業(yè),軟件工程專業(yè)的畢業(yè)設(shè)計作為大學(xué)四年學(xué)習(xí)的總結(jié),是學(xué)生從學(xué)校跨入社會前僅有的一次大檢驗,它不僅檢驗了學(xué)生對所學(xué)知識的綜合應(yīng)用能力和學(xué)生的綜合素質(zhì),同時也檢驗了學(xué)校的培養(yǎng)模式和教學(xué)質(zhì)量。畢業(yè)設(shè)計質(zhì)量的好壞,不僅關(guān)系到軟件工程專業(yè)的培養(yǎng)目標,也關(guān)系到學(xué)生的就業(yè)率與就業(yè)質(zhì)量。因此,在就業(yè)形勢日趨嚴峻的情況下,軟件工程專業(yè)畢業(yè)設(shè)計的教學(xué)改革也要適應(yīng)就業(yè)市場需求,緊跟行業(yè)發(fā)展變化,與時俱進。
作者:張華 單位:南陽理工學(xué)院
一、軟件工程專業(yè)畢業(yè)設(shè)計存在的主要問題
(一)畢業(yè)設(shè)計題目設(shè)置與選題方面
題目設(shè)置不合理,類別與層次不清晰,選題匹配效果差[2]。學(xué)生的畢業(yè)設(shè)計課題一般都按照指導(dǎo)老師的研究方向和實際工程項目提供,但每年真正來源于工程實踐題目比例較少。部分題目理論性強,學(xué)生根據(jù)所學(xué)知識不能很好理解;部分題目開發(fā)工具復(fù)雜,占用了畢業(yè)設(shè)計的大部分時間。在選題時可能導(dǎo)致學(xué)生想選的題目選不上,能力差的學(xué)生所選題目難度大,影響學(xué)生的積極性,導(dǎo)致選題效果差,造成畢業(yè)設(shè)計很難完成。
(二)畢業(yè)設(shè)計過程監(jiān)控方面
畢業(yè)設(shè)計監(jiān)控工作實施困難,效果較差。軟件工程專業(yè)畢業(yè)設(shè)計一般包含選題、開題、中期檢查、程序測試、撰寫畢業(yè)論文、答辯、成績評定。但對這些環(huán)節(jié)的監(jiān)控有時候會形成空白帶,畢業(yè)設(shè)計不在實驗室進行,有的學(xué)生在實習(xí)單位實習(xí),有的學(xué)生在外地找工作,老師不能定時與學(xué)生見面,老師無法了解學(xué)生的具體情況,且學(xué)生提交的各階段文檔流于形式,只有指導(dǎo)教師在進行監(jiān)控,未形成完善的監(jiān)控體系,導(dǎo)致監(jiān)控不到位,監(jiān)控效果較差[3]。
(三)畢業(yè)設(shè)計論文答辯方面
答辯考核方法單一,答辯僅由學(xué)生的講解和老師的提問兩個環(huán)節(jié)組成,考核準確度低。答辯通過門檻較低,答辯只對學(xué)生的畢業(yè)設(shè)計進行排名,一般排名在最后的學(xué)生才可能不及格,不利于提高學(xué)生畢業(yè)設(shè)計積極性,造成大部分同學(xué)僅以答辯及格為目標,思想上不重視,答辯準備工作不扎實。再由于軟件工程專業(yè)特點,畢業(yè)設(shè)計軟件作品評分標準難于量化,考核具有一定難度,也造成答辯效果不好。同時為了提高學(xué)生畢業(yè)率和就業(yè)率,畢業(yè)答辯的質(zhì)量控制有所放松,直接導(dǎo)致了軟件工程專業(yè)畢業(yè)設(shè)計質(zhì)量難以保障。
二、軟件工程專業(yè)畢業(yè)設(shè)計的教學(xué)改革
針對上述各項實際問題,主要進行的相關(guān)工作具體如下:
(一)合理設(shè)置畢業(yè)設(shè)計題目,動態(tài)選題
依照軟件工程專業(yè)的以市場需求為導(dǎo)向,培養(yǎng)應(yīng)用型軟件工程人才的培養(yǎng)目標,在畢業(yè)設(shè)計題目設(shè)置環(huán)節(jié),緊緊圍繞工程實際型、創(chuàng)新項目型、競賽題目型、科研項目型等類型進行題目設(shè)置,以適應(yīng)市場動態(tài)需求。同時著力避免在畢業(yè)設(shè)計題目中設(shè)置虛擬型題目、理論研究型題目、綜述型題目、分析設(shè)計型題目等。在選題過程中,通過畢業(yè)設(shè)計管理系統(tǒng)(如圖1所示)進行多輪雙向動態(tài)選擇,動態(tài)調(diào)整題目各項技術(shù)參數(shù)以保證學(xué)生能選擇一個適合自己能力且能有利于自己以后工作的題目[4]。這樣,在選題之后,每個指導(dǎo)老師就可以根據(jù)學(xué)生不同能力進行分別指導(dǎo),使不同能力的學(xué)生都能夠運用其所學(xué)知識解決工程實際問題,都能夠通過畢業(yè)設(shè)計增強工程實踐能力、工程設(shè)計能力與創(chuàng)新能力。近四學(xué)年軟件工程專業(yè)畢業(yè)設(shè)計各類題目匯總。
(二)畢業(yè)設(shè)計過程實行三級監(jiān)控管理機制
學(xué)校成立以主管副校長為組長的畢業(yè)設(shè)計工作領(lǐng)導(dǎo)小組以加強畢業(yè)設(shè)計宏觀調(diào)控,學(xué)院成立以教學(xué)副院長為組長的畢業(yè)設(shè)計工作領(lǐng)導(dǎo)小組以加強畢業(yè)設(shè)計協(xié)調(diào)與監(jiān)控工作,軟件工程專業(yè)成立以專業(yè)負責(zé)人為組長的畢業(yè)設(shè)計工作小組落實并實施畢業(yè)設(shè)計各環(huán)節(jié)具體工作[2]。具體參見下圖2。在實現(xiàn)畢業(yè)設(shè)計過程管理的三級管理機制的同時,為保障畢業(yè)設(shè)計工作質(zhì)量,軟件工程專業(yè)要求所有指導(dǎo)教師必須具有中級以上技術(shù)職稱或碩士以上學(xué)位且有一定工程實踐經(jīng)驗,具有較高教學(xué)、科研水平和創(chuàng)新能力,師德良好,工作態(tài)度認真負責(zé)。在每年的畢業(yè)設(shè)計指導(dǎo)工作開始前都對指導(dǎo)教師進行資格審查,擇優(yōu)任用,且每位教師指導(dǎo)的學(xué)生不超過6人,以保證指導(dǎo)教師對學(xué)生的充分指導(dǎo)[5]。
(三)畢業(yè)設(shè)計過程量化考核
以往軟件工程專業(yè)畢業(yè)設(shè)計成績通常由三部分組成:一是學(xué)生的平時表現(xiàn)由指導(dǎo)老師把握;二是學(xué)生的畢業(yè)論文成績。由專業(yè)其他指導(dǎo)老師進行評閱;三是現(xiàn)場答辯成績。由所在組的指導(dǎo)教師按照相關(guān)評分標準打分并取平均分。這樣基本能夠保證畢業(yè)設(shè)計成績的公正,但是由于只有畢業(yè)答辯環(huán)節(jié)具有約束力即答辯未通過則總成績不及格,其他環(huán)節(jié)不具約束力,因此造成畢業(yè)設(shè)計前期、中期工作流于形式,前期、中期階段提交的文檔趨于應(yīng)付、質(zhì)量不高,最終導(dǎo)致畢業(yè)論文質(zhì)量較低[6,7]。為此,軟件工程專業(yè)經(jīng)過幾年的探索與實踐,實施了畢業(yè)設(shè)計各階段的軟件工程生命周期量化考核法即各個階段量化考核,且考核成績不合格者不能進行下階段畢業(yè)設(shè)計工作,必須加以整改,整改通過后才能進入下一階段畢業(yè)設(shè)計工作。經(jīng)過幾年的實踐證明該考核方法切實可行,能夠保證畢業(yè)設(shè)計各個環(huán)節(jié)的質(zhì)量,最終提高畢業(yè)設(shè)計總體質(zhì)量。
(四)在畢業(yè)設(shè)計過程中進一步提高學(xué)生工程能力與創(chuàng)新能力
遼寧工業(yè)大學(xué)于2011年制定并實施了大學(xué)生創(chuàng)新團隊機制,建立了大學(xué)生創(chuàng)新項目申報機制引導(dǎo)大學(xué)生開展創(chuàng)新活動;引導(dǎo)學(xué)生每年都參加校級、省級、國家級軟件設(shè)計大賽等各類各級比賽[8]。隨著學(xué)校和學(xué)院創(chuàng)新教育活動多年持續(xù)深入開展,軟件工程專業(yè)學(xué)生的創(chuàng)新與創(chuàng)業(yè)活動取得了顯著成果。超過1/4的軟件工程專業(yè)學(xué)生能夠獨立主持創(chuàng)新性項目,并以該項目為原型申報畢業(yè)設(shè)計題目[9],同時參加省級、國家級計算機競賽并獲得獎項。通過主持校級及省級創(chuàng)新項目既畢業(yè)設(shè)計題目,學(xué)生工程能力、創(chuàng)新能力得到極大鍛煉與提高,本專業(yè)畢業(yè)生就業(yè)率與就業(yè)質(zhì)量明顯提高。軟件工程專業(yè)學(xué)生主持參加創(chuàng)新項目既畢業(yè)設(shè)計題目情況見表3。
三、結(jié)束語
軟件工程專業(yè)畢業(yè)設(shè)計是一個極具綜合性、實踐性的重要環(huán)節(jié),是對學(xué)生大學(xué)四年學(xué)習(xí)后面向社會與企業(yè)前的有且僅有的一次大檢驗,它不僅檢驗了學(xué)生所學(xué)知識、能力與綜合素質(zhì),還檢驗了軟件工程專業(yè)的培養(yǎng)目標、培養(yǎng)模式、課程體系、實踐體系、創(chuàng)新體系等相關(guān)環(huán)節(jié)[10]。經(jīng)過幾年的探索與實踐證明,軟件工程專業(yè)所做的系列教學(xué)改革工作中的畢業(yè)設(shè)計教學(xué)改革工作有利于進一步增強學(xué)生的工程實踐能力和創(chuàng)新能力,有利于提高軟件工程專業(yè)畢業(yè)設(shè)計質(zhì)量,有利于提高軟件工程專業(yè)學(xué)生就業(yè)率與就業(yè)質(zhì)量。雖然軟件工程專業(yè)畢業(yè)設(shè)計教學(xué)改革工作取得了一定的成績,社會認可度逐年穩(wěn)步提高,但如何動態(tài)調(diào)整教學(xué)計劃以跟進市場需求變化;如何深入開展大學(xué)生創(chuàng)新創(chuàng)業(yè)教育活動以進一步增強更多軟件工程專業(yè)學(xué)生的實踐能力及創(chuàng)新能力;如何進一步加強專業(yè)教師工程實踐能力、工程設(shè)計能力與工程創(chuàng)新能力以提高畢業(yè)設(shè)計指導(dǎo)效力;如何提高畢業(yè)設(shè)計過程管理效率等問題仍然是軟件工程專業(yè)所面臨的嚴肅課題[11]。因此,軟件工程專業(yè)的畢業(yè)設(shè)計教學(xué)改革工作也一定會緊跟時代變化,與時俱進。
作者:佟玉軍謝文閣王恩喜劉鴻沈姜悅嶺工作單位:遼寧工業(yè)大學(xué)電子與信息工程學(xué)院
摘要:針對地方應(yīng)用型本科高校計算機軟件類畢業(yè)設(shè)計質(zhì)量不高的問題,對畢業(yè)設(shè)計中存在的問題進行分析,并結(jié)合軟件工程的基礎(chǔ)理論,提出利用軟件工程思想對計算機軟件類畢業(yè)設(shè)計進行指導(dǎo),以提高地方應(yīng)用型普通本科高校畢業(yè)設(shè)計的質(zhì)量。
關(guān)鍵詞:軟件工程;畢業(yè)設(shè)計;應(yīng)用
一、引言
畢業(yè)設(shè)計是本科畢業(yè)生在校期間的最后實踐和綜合實訓(xùn)階段,是實現(xiàn)本科教育培養(yǎng)目標的重要組成部分,是深化、拓展、綜合應(yīng)用所學(xué)理論知識的重要過程;也是綜合素質(zhì)與工程實踐能力培養(yǎng)效果的全面檢驗;是學(xué)生畢業(yè)及學(xué)位資格認定的重要依據(jù);是衡量高等教育質(zhì)量和辦學(xué)效益的重要評價,是對專業(yè)理論知識和專業(yè)技術(shù)綜合應(yīng)用能力的強化訓(xùn)練和提升[1]。在畢業(yè)設(shè)計的過程中,學(xué)生利用所學(xué)專業(yè)理論知識,通過了解社會,分析社會需求,深入實踐,完成畢業(yè)設(shè)計的任務(wù)和撰寫畢業(yè)論文(設(shè)計)報告等各個環(huán)節(jié)的工作。對于地方應(yīng)用型普通本科高校而言,畢業(yè)設(shè)計就相當(dāng)于一般高等學(xué)校的畢業(yè)論文,但是畢業(yè)設(shè)計不同于畢業(yè)論文,它的組成部分不只是一篇學(xué)術(shù)論文。應(yīng)用型高校的畢業(yè)設(shè)計注重的是“應(yīng)用性”和“實踐性”,學(xué)生畢業(yè)設(shè)計要求學(xué)生針對某一課題,綜合運用本專業(yè)有關(guān)課程的理論和技術(shù),自己動手動腦做出解決實際問題的設(shè)計。目的是總結(jié)、檢查學(xué)生在校期間的學(xué)習(xí)成果,是評定畢業(yè)成績的重要依據(jù)。同時,通過畢業(yè)設(shè)計,可培養(yǎng)學(xué)生開發(fā)項目的基本綜合能力,為學(xué)生就業(yè)能力中的專業(yè)能力奠定堅實的基礎(chǔ);培養(yǎng)綜合運用已有知識獨立解決問題的能力,從而加強學(xué)生應(yīng)用能力的培養(yǎng),使學(xué)生能夠?qū)W以致用。
二、地方應(yīng)用型普通高校計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計的現(xiàn)狀
近幾年來,由于學(xué)校對畢業(yè)設(shè)計要求不斷提高,學(xué)生從選題到設(shè)計再到寫出畢業(yè)設(shè)計報告的過程中總存在這樣那樣的問題,最終有個別同學(xué)沒有順利通過畢業(yè)設(shè)計,沒有拿到畢業(yè)證和學(xué)位證的情況時有發(fā)生,并且大多數(shù)畢業(yè)設(shè)計的水平不高,達不到培養(yǎng)學(xué)生獨立解決問題和提高學(xué)生應(yīng)用能力的目的。因此,如何指導(dǎo)學(xué)生做好畢業(yè)設(shè)計,提高學(xué)生畢業(yè)設(shè)計水平和質(zhì)量,是地方應(yīng)用型普通高校面臨的一個重要問題。
(一)畢業(yè)設(shè)計選題現(xiàn)狀
最近幾年,我校計算機相關(guān)專業(yè)畢業(yè)生自進入大四秋季學(xué)期開始,在進行畢業(yè)實習(xí)的同時,也進入了畢業(yè)設(shè)計準備階段:畢業(yè)設(shè)計選題,雖然畢業(yè)設(shè)計選題過程中,各級領(lǐng)導(dǎo)、指導(dǎo)教師和學(xué)生在態(tài)度是都很重視,但是在選題時也會存在很多的問題,主要有以下三個方面。
1.選題不夠準確。部分學(xué)生選題未經(jīng)深思熟慮,所選畢業(yè)設(shè)計題目要實現(xiàn)的功能太多,在規(guī)定時間內(nèi)不能獨立完成,而最終只能實現(xiàn)部分功能,或部分模塊。
2.題目相似或重復(fù)雷同。學(xué)生選題存在渾水摸魚的思想,在畢業(yè)設(shè)計選題過程中不是根據(jù)自己的興趣愛好、專業(yè)知識學(xué)習(xí)情況等確定研究選題,而是選擇與他人類似或雷同的選題,甚至同一批畢業(yè)的許多學(xué)生選題一致。比如:“XX管理系統(tǒng)”等,除了可能冠以的系統(tǒng)名稱不同之外,其余基本相同。
3.應(yīng)用價值低。部分學(xué)生的選題是當(dāng)前十分成熟的項目,沒有研究的必要;有些選題已經(jīng)被淘汰,在實際生活和工作中沒有多大用途。
(二)畢業(yè)設(shè)計需求分析階段現(xiàn)狀
通過調(diào)查,許多學(xué)生選題完成后,沒有對自己所做畢業(yè)設(shè)計選題進行仔細了解、分析,他們認為在畢業(yè)設(shè)計中最重要的就是編程,其他方面一帶而過[2],從而造成畢業(yè)設(shè)計過程中主題經(jīng)常進行修改,最終使得整個系統(tǒng)雜亂無章,無法繼續(xù)進行下去。因此學(xué)生在畢業(yè)設(shè)計的需求分析階段主要有以下三個方面的問題。
1.選題后未進行實際調(diào)查研究,甚至未查找相應(yīng)的參考文獻。
2.需求分析進行得不徹底、不準確,即使選題后查找了參考文獻和資料的,也未做充分了解和分析。
3.在需求分析階段沒有寫出需求規(guī)格說明書或系統(tǒng)分析報告就匆忙進入系統(tǒng)設(shè)計階段,導(dǎo)致隨著系統(tǒng)設(shè)計的逐步深入,原來確定的需求不能滿足畢業(yè)設(shè)計的需要,正在進行的設(shè)計與開始的期望和設(shè)想又不相符。
(三)畢業(yè)設(shè)計系統(tǒng)設(shè)計階段現(xiàn)狀
在系統(tǒng)設(shè)計階段,普遍存在以下兩個方面問題。
1.由于需求的不明確,在進行系統(tǒng)設(shè)計時,修改隨意,沒有嚴格按照軟件開發(fā)的步驟進行。好多學(xué)生在進行系統(tǒng)設(shè)計時并沒有建出相應(yīng)的功能模型,不管是用例圖還是DFD圖都沒有,而且系統(tǒng)設(shè)計過程中功能隨意變換,并且各功能模塊的層次結(jié)構(gòu)不清晰,使得整個系統(tǒng)的功能模塊劃分凌亂,不符合軟件設(shè)計中“高內(nèi)聚,低耦合”的原則。
2.在軟件設(shè)計過程中,不先進行概要設(shè)計、詳細設(shè)計和模塊設(shè)計,沒有軟件的過程性描述,直接進行編碼,存在想到哪里就做到哪里,走到哪兒算哪兒的隨意思想[3],當(dāng)前內(nèi)容沒有做完便開始其他內(nèi)容,使得整個系統(tǒng)設(shè)計雜亂無章。在這樣的一種研究狀態(tài)下,即使完成了設(shè)計,效率也非常低下,軟件結(jié)構(gòu)混亂,功能實現(xiàn)不完全,降低了軟件設(shè)計的質(zhì)量。
(四)畢業(yè)設(shè)計實現(xiàn)階段現(xiàn)狀
通常把編碼和測試統(tǒng)稱為實現(xiàn)。在進行軟件設(shè)計后,就可以根據(jù)設(shè)計結(jié)果來實現(xiàn),將軟件的過程性描述編碼,得到計算機可以運行的源代碼。在實現(xiàn)階段主要有以下幾方面的問題。
1.編碼隨意。學(xué)生在編碼的過程中,不注意編程風(fēng)格的把握,導(dǎo)致程序的可讀性、可理解性、可修改性等較差,在答辨的過程中,要求指出某個功能模塊的代碼時,經(jīng)常要花費很多時間才找得到。
2.測試和調(diào)試可有可無。大部分學(xué)生在畢業(yè)設(shè)計的軟件編碼完成以后,從沒有想過進行完整的系統(tǒng)測試,或者只對個別功能進行測試或是隨意測試,沒有按照測試步驟逐步進行;基本沒有單元測試和集成測試,一般只是最終隨便輸入幾個數(shù)據(jù)簡單檢測一下,如果有錯,修改了就算完了;也沒有進行回歸測試,沒有測試計劃,沒有想過用什么測試技術(shù)來檢測某一類型的錯識,沒有相應(yīng)的測試用例,也沒有測試結(jié)果分析。由于學(xué)生畢業(yè)設(shè)計都是一人一題,基本上是一個人完成所有步驟,就算有測試,在測試階段也是自己進行測試,從心理學(xué)的角度來說,自己對自己開發(fā)的軟件進行測試是不可取的。
由于前面階段的文檔不完善,也不重視測試過程,不清楚是否實現(xiàn)了系統(tǒng)最初設(shè)計的功能,是否達到相應(yīng)的性能要求,總以為程序做出來后畢業(yè)設(shè)計就完成了,使得畢業(yè)設(shè)計經(jīng)常在更換運行環(huán)境或答辯時發(fā)生錯誤和問題,從而使得設(shè)計得不到好評甚至無法通過。
(五)畢業(yè)設(shè)計應(yīng)用現(xiàn)狀
最近幾年,我校計算機相關(guān)專業(yè)畢業(yè)設(shè)計投入使用數(shù)量接近于零。究其原因主要是由于設(shè)計不完全,未進行測試和調(diào)試,存在的錯誤和缺陷較多,文檔和數(shù)據(jù)不完整,導(dǎo)致所開發(fā)的系統(tǒng)或軟件不能方便地轉(zhuǎn)讓、變更、修正、擴充和使用,也沒有為后期培訓(xùn)、維護留下完備的資料;因此,不能投入到真正的使用過程中,也不能實現(xiàn)系統(tǒng)或軟件產(chǎn)品的效益。
三、軟件工程思想的應(yīng)用
軟件工程(Software Engineering,簡稱為SE)是一門研究用工程化方法構(gòu)建和維護有效的、實用的和高質(zhì)量的軟件的學(xué)科。軟件工程中的軟件生命周期是一個軟件從軟件定義、開發(fā)、運行和維護,直到最終被廢棄的整個過程[2]。地方應(yīng)用型普通高校計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計基本都是開發(fā)一些中、小型應(yīng)用系統(tǒng)或軟件,因此,學(xué)生畢業(yè)設(shè)計也要經(jīng)歷軟件生命周期各個階段,嚴格遵守軟件工程的各個原則,這樣有助于解決畢業(yè)設(shè)計中存在的問題,提高畢業(yè)設(shè)計的質(zhì)量。通過對應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的學(xué)生在進行畢業(yè)設(shè)計的過程中存在的問題進行分析,在畢業(yè)設(shè)計的過程中,必須運用軟件工程的觀點、技術(shù)和方法來指導(dǎo)畢業(yè)設(shè)計,這樣既節(jié)約了畢業(yè)設(shè)計的時間和學(xué)生的精力,也能做出最優(yōu)質(zhì)的畢業(yè)設(shè)計。
1.選題過程中的應(yīng)用。畢業(yè)設(shè)計選題就是軟件生命周期的問題定義中的問題提出階段,選好題目是進行深入研究的基礎(chǔ),也是寫出高質(zhì)量畢業(yè)論文的前提。地方應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的畢業(yè)設(shè)計選題必須做到以下幾點:(1)必須在對選題做了充分調(diào)查、分析,對檢索的參考文獻、資料有了整體把握的基礎(chǔ)上提出。(2)必須符合本專業(yè)培養(yǎng)方案規(guī)定的培養(yǎng)目標的要求。(3)以選擇工程性較強的課題為主,確保有足夠的工程性訓(xùn)練。(4)要有明確的設(shè)計成果,對于較大型任務(wù)的課題要明確階段性成果。(5)要達到規(guī)定的工作量,難易度適中,確保能在規(guī)定的時間內(nèi)完成整個課題工作。(6)要圍繞生產(chǎn)生活實際,所選題目一定具有一定的理論意義和實踐意義,具有一定的價值。(7)原則上一人一題,對于較大型任務(wù)的課題,每個學(xué)生必須有獨立子課題。結(jié)合以上幾點,分別從專業(yè)基礎(chǔ)、現(xiàn)實意義等方面進行全面分析,進行取舍,最終得出選題。
2.開題過程中的應(yīng)用。在畢業(yè)設(shè)計的開題過程中,需要明確所選題目的選題依據(jù)(包括選擇課題的背景、選題研究的理論及實踐意義)、選題研究現(xiàn)狀(包括目前國內(nèi)外對本選題的研究情況和有待解決的問題)、研究內(nèi)容與方法,而這些就是軟件工程中需求分析階段應(yīng)該做的事情。
需求分析指的是在建立一個新的或改變一個現(xiàn)存的電腦系統(tǒng)時描寫新系統(tǒng)的目的、范圍、定義和功能時所要做的所有的工作[3]。因此開題過程中最重要的是進行需求分析,需求分析具有決策性、方向性、策略性的作用,在軟件開發(fā)的過程中具有舉足輕重的地位。需求分析完成的好壞直接影響后續(xù)軟件開發(fā)的質(zhì)量。開題過程中需要指導(dǎo)學(xué)生大量地閱讀相關(guān)的研究資料,同時根據(jù)資料進行分析研究,對當(dāng)前畢業(yè)設(shè)計的研究進度做到心中有數(shù),明確畢業(yè)設(shè)計的具體方向,寫出畢業(yè)設(shè)計的研究內(nèi)容與方法,得到相應(yīng)的設(shè)計提綱,解決好設(shè)計什么,如何設(shè)計的問題。因此,應(yīng)用好軟件工程的思想來指導(dǎo)畢業(yè)設(shè)計的開題是至關(guān)重要的。根據(jù)學(xué)校對學(xué)生畢業(yè)論文的要求,在計算機相關(guān)專業(yè)的畢業(yè)設(shè)計報告中,要求要有數(shù)據(jù)流圖、數(shù)據(jù)字典等相應(yīng)內(nèi)容,而軟件工程中的數(shù)據(jù)流圖(Data Flow Diagram,簡稱DFD),它是從數(shù)據(jù)傳遞和加工角度,以圖形方式來表達系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流向和邏輯變換過程。它是描述系統(tǒng)中數(shù)據(jù)流程的圖形工具,它標識了一個系統(tǒng)的邏輯輸入和邏輯輸出,以及把邏輯輸入轉(zhuǎn)換為邏輯輸出所需的加工處理[3]。因此,在這個階段,要指導(dǎo)學(xué)生按照DFD圖的要求,確定設(shè)計的功能,然后根據(jù)系統(tǒng)分析結(jié)果寫出分析報告,就得出畢業(yè)論文中系統(tǒng)分析階段的初始文檔。
3.在實踐研究環(huán)節(jié)的應(yīng)用。根據(jù)需求分析(開題階段)的結(jié)果進行軟件的概要設(shè)計和詳細設(shè)計,注意在設(shè)計過程中要嚴格按照軟件工程對于設(shè)計階段的指導(dǎo)原則來進行設(shè)計。將概要設(shè)計階段需求分析得到的DFD轉(zhuǎn)換為軟件結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),即是根據(jù)需求確定軟件和數(shù)據(jù)的總體框架,設(shè)計出軟件的結(jié)構(gòu),也就是要確定系統(tǒng)中每個程序是由哪些模塊組成的,以及這些模塊相互間的關(guān)系。然后再進行詳細設(shè)計,設(shè)計出每個模塊的實現(xiàn)算法、所需的局部數(shù)據(jù)結(jié)構(gòu),并且對每個模塊寫出過程性描述;為每個模塊設(shè)計出一組測試用例,在進行測試時就以此測試用例來進行測試。詳細設(shè)計階段的任務(wù)還不是具體地編寫程序,而是要設(shè)計出程序的“藍圖”,以后將根據(jù)這個“藍圖”寫出實際的程序代碼。因此,指導(dǎo)教師要對學(xué)生的設(shè)計過程進行監(jiān)督和指導(dǎo),防止學(xué)生盲目的進行編碼。
4.在實現(xiàn)階段的應(yīng)用。在編碼的過程中,要注意編程風(fēng)格的把握,編程的風(fēng)格在很大程度上影響程序的可讀性、可測試性和可維護性。
在測試階段,可以進行交叉測試,即學(xué)生之間可以兩兩交叉,相互測試,以更好的達到測試效果,同時也培養(yǎng)了學(xué)生的團隊意識和合作意識。
在測試過程中要注意運用軟件工程的測試原則和測試思想,嚴格按照單元測試集成測試確認測試系統(tǒng)測試驗收測試的測試步驟進行,利用白盒測試技術(shù)進行單元測試,黑盒測試技術(shù)進行其他測試,并且在找出錯誤并修改后要進行相應(yīng)的回歸測試,確認修改了錯誤并且沒有引入新的錯誤,這樣有利于找到軟件中的各類錯誤,提高軟件的質(zhì)量。因此,在軟件的測試過程中,一定要嚴格按照軟件工程中的測試原則來進行,不可隨意進行測試,并且要注意測試文檔資料的收集整理,要有相應(yīng)的測試計劃和測試報告。對學(xué)生的創(chuàng)造性的思維和想法,指導(dǎo)教師要給予支持,積極引導(dǎo),鼓勵學(xué)生大膽創(chuàng)新,用應(yīng)用型人才培養(yǎng)目標來要求學(xué)生,保證高質(zhì)量的畢業(yè)設(shè)計的完成。
5.在畢業(yè)論文(設(shè)計)報告方面的應(yīng)用。對于應(yīng)用型普通本科高校計算機相關(guān)專業(yè)的畢業(yè)設(shè)計而言,不單單是完成了一個系統(tǒng)的設(shè)計,還要有相應(yīng)的設(shè)計報告,而設(shè)計報告的編寫過程中,很多學(xué)生存在文字表達能力不強的現(xiàn)象,為了完成報告,就有可能會抄襲,特別是在軟件開發(fā)的各個階段文檔材料不全的情況下更為嚴重。因此,在學(xué)生進行軟件開發(fā)的各個環(huán)節(jié)中,指導(dǎo)教師都應(yīng)該按照軟件工程的觀點來進行指導(dǎo),并要求學(xué)生在各個階段都完成相應(yīng)的文檔。這樣在畢業(yè)設(shè)計報告撰寫的過程中,只要將各個階段的文檔進行合并、整理就得到相應(yīng)的設(shè)計報告,并且是一篇重復(fù)率不高的高質(zhì)量的設(shè)計報告。
6.在畢業(yè)設(shè)計實際應(yīng)用方面的應(yīng)用。因為學(xué)生在整個系統(tǒng)或軟件過程中均按軟件設(shè)計規(guī)范準備了文檔和進行了完整的系統(tǒng)測試,從而為系統(tǒng)或軟件的專利申請?zhí)峁┝顺浞直匾馁Y料,并為畢業(yè)設(shè)計的實際應(yīng)用打下良好的基礎(chǔ)。
四、結(jié)語
計算機相關(guān)專業(yè)學(xué)生的畢業(yè)設(shè)計在學(xué)生的整個大學(xué)生活中具有極其重要的地位和作用,根據(jù)應(yīng)用型普通本科高校人才培養(yǎng)的定位,主要是培養(yǎng)學(xué)生的獨立思考能力、動手能力和應(yīng)用能力。通過對軟件工程思想在計算機相關(guān)專業(yè)學(xué)生畢業(yè)設(shè)計的過程及方法中的應(yīng)用研究,逐步實現(xiàn)學(xué)生畢業(yè)設(shè)計的實際成果轉(zhuǎn)化,從而為應(yīng)用型計算機相關(guān)專業(yè)人才培養(yǎng)提供相應(yīng)的借鑒。
【摘要】主要分析了畢業(yè)設(shè)計(論文)的現(xiàn)狀,介紹了軟件生命周期的各個階段與畢業(yè)設(shè)計(論文)各階段的對應(yīng)關(guān)系、軟件生命周期各階段應(yīng)完成的任務(wù)以及在畢業(yè)設(shè)計(論文)中應(yīng)注意的問題。
【關(guān)鍵詞】軟件工程 畢業(yè)設(shè)計(論文) 實踐教學(xué)
一、引言
畢業(yè)設(shè)計(論文)(以下簡稱畢業(yè)設(shè)計)是計算機及相關(guān)專業(yè)教學(xué)計劃中的一個重要環(huán)節(jié),是培養(yǎng)學(xué)生對所學(xué)基本理論及基本操作技能綜合運用的訓(xùn)練過程,是提高學(xué)生分析和解決問題能力的重要實踐環(huán)節(jié),是實現(xiàn)理論與實踐相結(jié)合的重要途徑,是對教育教學(xué)質(zhì)量的全面檢查。目前,計算機及相關(guān)專業(yè)的畢業(yè)設(shè)計質(zhì)量正在逐年下降:學(xué)生急于找工作或考研,畢業(yè)設(shè)計得不到應(yīng)有的重視;需求分析不到位,設(shè)計成果不符合實際需求;軟件開發(fā)流程混亂;缺乏文檔寫作訓(xùn)練,等等。
針對上述問題,筆者認為,除了應(yīng)當(dāng)從管理角度嚴格進行過程監(jiān)控外,還應(yīng)當(dāng)使學(xué)生通過《軟件工程》課程的學(xué)習(xí),提高畢業(yè)設(shè)計的質(zhì)量。
二、軟件生命周期與畢業(yè)設(shè)計過程的對應(yīng)關(guān)系
軟件產(chǎn)品從形成概念開始,經(jīng)過開發(fā)、使用和維護,直到最后退役的全過程稱為軟件的生命周期。軟件生命周期可以劃分成若干個時期與階段,它與畢業(yè)設(shè)計各個環(huán)節(jié)的對應(yīng)關(guān)系如圖1所示。
三、軟件生存周期各階段應(yīng)完成的任務(wù)
1.可行性研究與計劃階段、需求分析階段
可行性研究與計劃階段主要完成問題的定義、可行性論證以及初步計劃的制定;需求分析階段主要完成需求調(diào)查,進行功能、性能與環(huán)境約束分析;編制軟件需求規(guī)格說明、制定軟件系統(tǒng)的確認測試準則和用戶手冊概要。這兩個階段對應(yīng)于畢業(yè)設(shè)計的課題論證、選題、調(diào)研、查資料,通過對設(shè)計題目的深刻理解,完成開題報告的撰寫工作。
2.概要設(shè)計階段和詳細設(shè)計階段
概要設(shè)計階段主要完成軟件系統(tǒng)總體結(jié)構(gòu)的建立、定義功能模塊的接口、設(shè)計全局數(shù)據(jù)庫和數(shù)據(jù)結(jié)構(gòu)、規(guī)定設(shè)計約束、編制概要設(shè)計文檔等工作;詳細設(shè)計階段主要完成模塊詳細設(shè)計及編制模塊的詳細規(guī)格說明工作。包括模塊的詳細功能、算法、數(shù)據(jù)結(jié)構(gòu)和模塊間的接口信息等設(shè)計,擬定模塊測試方案;把模塊詳細設(shè)計的結(jié)果匯總,形成模塊詳細規(guī)格說明書。這兩個階段對應(yīng)于畢業(yè)設(shè)計的系統(tǒng)設(shè)計階段。
3.實現(xiàn)階段與組裝測試階段
實現(xiàn)階段主要完成編碼及單元測試工作。根據(jù)模塊詳細規(guī)格說明書,將詳細設(shè)計轉(zhuǎn)化為程序代碼、對模塊程序進行測試,驗證模塊功能及接口與詳細設(shè)計文檔的一致性,并形成單元測試報告;組裝測試階段主要完成模塊程序組裝與測試及組裝測試報告的編寫。
4.確認測試階段
該階段主要完成軟件系統(tǒng)測試、確認測試文檔編制及軟件評審工作。根據(jù)軟件需求規(guī)格說明定義的全部功能和性能要求及軟件確認測試準則對軟件系統(tǒng)進行總測試;向用戶提供以確認測試報告為主的有關(guān)文檔,包括系統(tǒng)操作手冊、源程序清單和項目開發(fā)總結(jié)報告等;由專家、用戶、軟件開發(fā)人員組成的軟件評審小組對軟件確認報告、測試結(jié)果和軟件進行評審,并將得到確認的軟件產(chǎn)品交付用戶使用。這個階段主要對應(yīng)于畢業(yè)設(shè)計(論文)中的論文評審、結(jié)題驗收及畢業(yè)設(shè)計的答辨準備階段。
5.軟件運行與維護階段
主要進入軟件的使用階段,并完成軟件的維護工作。它主要對應(yīng)于畢業(yè)設(shè)計中的答辯階段。
四、畢業(yè)設(shè)計應(yīng)注意的幾個問題
1.摘要
摘要是對文章主要內(nèi)容的摘錄,要求精、短、完整。以幾十字至三百字左右為宜。摘要應(yīng)具有獨立性和自明性,從摘要中即應(yīng)獲得必要的信息;摘要中只能使用第三人稱;要客觀如實地反應(yīng)原文的內(nèi)容,要著重反映論文的最新內(nèi)容和作者特別強調(diào)的觀點;要求結(jié)構(gòu)嚴謹、語義確切、表述簡明,一般不分段落、不進行自我評價。
2.關(guān)鍵詞
關(guān)鍵詞主要用于論文檢索,它是從論文的題名、摘要和正文中選出的,是對表述論文的中心內(nèi)容有實質(zhì)意義的詞匯,關(guān)鍵詞一般以3~5個為宜。
3.結(jié)論
結(jié)論寫作的內(nèi)容應(yīng)主要考慮本文研究結(jié)果是什么?研究結(jié)果說明了什么?對前人有關(guān)的看法作了哪些修正、補充、發(fā)展、證實或否定?本文研究的不足之處或遺留未予解決的問題以及對解決這些問題的可能的關(guān)鍵點和方向等。結(jié)論應(yīng)該準確、完整、明確、精練。
4.需求分析
在畢業(yè)設(shè)計中,學(xué)生往往不能對所做題目進行充分的調(diào)研,需求不明確,隨意想象的成分較多。特別是在數(shù)據(jù)表的建立上,大部分同學(xué)隨意設(shè)置字段的類型,而字段長度基本上采用默認置。而在實際項目開發(fā)中,數(shù)據(jù)項的設(shè)置應(yīng)主要注意以用戶的需求和滿足系統(tǒng)要求為準,而不應(yīng)設(shè)計冗余的字段;數(shù)據(jù)的類型要依據(jù)實際需求,當(dāng)某些字段可以是選擇某幾種類型之一,應(yīng)考慮哪一種更有利于本系統(tǒng)或哪種更易于用戶操作和維護。
5.詳細設(shè)計
許多同學(xué)把詳細設(shè)計階段的任務(wù)理解為代碼實現(xiàn),因此,在概要設(shè)計之后就著手進行代碼的編寫而忽略了算法的表達及測試用例的編寫環(huán)節(jié),由此造成的結(jié)果是隨意編程,大量的時間浪費在程序的修改和調(diào)試上。
6.軟件測試
測試做得不夠全面,大部分同學(xué)只選擇了有效的測試用例,而沒有進行無效的測試用例的設(shè)計,因此所做的軟件BUG較多。
7.團隊合作
在畢業(yè)設(shè)計中,應(yīng)有意識地鍛煉學(xué)生們的團隊協(xié)作精神,因此,在布置畢業(yè)設(shè)計題目時,應(yīng)盡量選擇規(guī)模大一點的題目,然后由4~5名同學(xué)共同協(xié)作,每人完成一個子題目。這樣,可以使學(xué)生們分析問題和解決問題的能力、溝通和表達能力得到充分鍛煉,為今后的工作奠定基礎(chǔ)。
摘要:分析軟件工程專業(yè)本科畢業(yè)設(shè)計管理中存在的主要問題,針對軟件企業(yè)對軟件工程專業(yè)的人才培養(yǎng)要求,提出軟件工程專業(yè)本科畢業(yè)設(shè)計過程管理措施,強調(diào)通過建立和完善畢業(yè)設(shè)計的管理制度,加強畢業(yè)設(shè)計過程的監(jiān)控;構(gòu)建完善的畢業(yè)設(shè)計管理平臺,提高本科畢業(yè)設(shè)計管理水平;改革畢業(yè)論文形式,建立畢業(yè)設(shè)計過程管理評價體系,提高學(xué)生工程實踐能力。
關(guān)鍵詞:軟件工程;本科畢業(yè)設(shè)計;過程管理
軟件學(xué)院軟件工程專業(yè)的設(shè)立是國家教育部、國家發(fā)展計劃委員會為滿足國家軟件產(chǎn)業(yè)發(fā)展對人才的迫切需求于2001年批準成立的。重慶大學(xué)軟件學(xué)院是國家首批示范性軟件學(xué)院之一,其人才培養(yǎng)目標是培養(yǎng)“面向應(yīng)用、遵循標準、適應(yīng)團隊、把握技術(shù)、熟知領(lǐng)域、外語優(yōu)良”的軟件工程人才。10年來,軟件學(xué)院十分重視軟件工程專業(yè)的工程化教學(xué)改革,采取多項政策和措施促進工程型軟件實用人才的培養(yǎng)。本科畢業(yè)設(shè)計是實現(xiàn)高等學(xué)校人才培養(yǎng)目標的重要教學(xué)環(huán)節(jié),是培養(yǎng)學(xué)生創(chuàng)新意識和創(chuàng)新能力的重要手段,是理論學(xué)習(xí)與社會實踐相結(jié)合的重要體現(xiàn)。因此,對軟件工程專業(yè)本科畢業(yè)設(shè)計進行改革,培養(yǎng)具有工程實踐能力的軟件實用人才具有重要意義。
1 軟件企業(yè)對軟件工程專業(yè)培養(yǎng)人才的要求
軟件產(chǎn)業(yè)的迅速發(fā)展對該行業(yè)從業(yè)人員提出更高要求,不僅要求學(xué)生掌握理論知識,還要求學(xué)生具備較強的工程實踐能力與創(chuàng)新能力。國內(nèi)計算機相關(guān)專業(yè)的教學(xué)基本上仍使用傳統(tǒng)的理工科人才培養(yǎng)模式,注重基礎(chǔ)理論知識,缺少對學(xué)生工程能力和職業(yè)素質(zhì)的訓(xùn)練,因此培養(yǎng)既有扎實的專業(yè)基礎(chǔ)知識和較強工程實踐能力,又能迅速適應(yīng)業(yè)界環(huán)境的高素質(zhì)創(chuàng)新型軟件人才,是軟件企業(yè)對軟件工程專業(yè)人才培養(yǎng)的要求。
2 目前本科畢業(yè)設(shè)計管理中存在的問題
1)畢業(yè)設(shè)計階段缺乏全過程的管理與監(jiān)控。
畢業(yè)設(shè)計全過程的管理與監(jiān)控不夠規(guī)范,缺乏專門的組織機構(gòu)。畢業(yè)設(shè)計的一些主要環(huán)節(jié)疏于檢查和監(jiān)督,因此存在影響畢業(yè)設(shè)計質(zhì)量的問題,如選題陳舊、重復(fù)率高、與軟件產(chǎn)業(yè)發(fā)展需求不適合等。
教師指導(dǎo)水平有限且精力投入不足,同時沒有對教師指導(dǎo)工作的有效績效考核,使得教師對學(xué)生的畢業(yè)設(shè)計不夠重視;某些學(xué)生由于有就業(yè)壓力,便將主要精力放在人才市場和各類招聘會上,沒有意識到畢業(yè)設(shè)計的重要性,最后只能通過拼湊和抄襲完成畢業(yè)設(shè)計。
2)畢業(yè)設(shè)計階段缺乏規(guī)范化的指導(dǎo)性文件。
畢業(yè)設(shè)計工作持續(xù)時間長,涉及所有畢業(yè)生和教師,如果沒有規(guī)范化的指導(dǎo)性文件能夠讓指導(dǎo)教師和學(xué)生了解畢業(yè)設(shè)計工作的意義、目標、計劃、流程、論文規(guī)范化格式、質(zhì)量評價標準、成績考核等具體實施細則,明確自己在該項工作中扮演的角色以及整個畢業(yè)設(shè)計流程對自身承擔(dān)工作的質(zhì)量要求,那么很難提高畢業(yè)設(shè)計質(zhì)量。
3)畢業(yè)設(shè)計文檔資料缺乏有效管理。
畢業(yè)設(shè)計成果是學(xué)校的重要知識和信息資源,完善的文檔資料管理有助于畢業(yè)設(shè)計工作的傳承和創(chuàng)新。長久以來,畢業(yè)設(shè)計作品和論文主要采用人工管理。學(xué)生答辯后提交資料袋,資料袋中包括畢業(yè)設(shè)計相關(guān)文檔和設(shè)計作品的刻錄光盤,但由于管理人員對畢業(yè)設(shè)計資料的重視程度不夠或人員不夠,導(dǎo)致畢業(yè)設(shè)計資料管理不善,出現(xiàn)查詢困難、答辯記錄丟失等情況,為以后查閱、成果展示及下屆畢業(yè)生的論文指導(dǎo)工作帶來不便。
3 本科畢業(yè)設(shè)計管理改革措施
1)成立畢業(yè)設(shè)計管理小組。
為了加強本科畢業(yè)設(shè)計工作的組織、管理和監(jiān)督,軟件學(xué)院專門成立畢業(yè)設(shè)計管理小組,小組成員由教學(xué)副院長、正副系主任及學(xué)生助管組成,負責(zé)整個畢業(yè)設(shè)計過程的管理監(jiān)督工作,包括從選題、審題、任務(wù)書下達到開題、中期檢查、答辯、成績評定、推優(yōu)的全過程。
2)建立和完善畢業(yè)設(shè)計的管理制度。
為了提高畢業(yè)設(shè)計質(zhì)量,畢業(yè)設(shè)計管理小組根據(jù)軟件工程專業(yè)特點建立學(xué)院的具體工作規(guī)范和有效的畢業(yè)設(shè)計管理模式和監(jiān)控制度,加強畢業(yè)設(shè)計制度建設(shè),使得從選題、下達任務(wù)書到學(xué)生的開題報告,從每周匯報、中期檢查到設(shè)計文檔撰寫、論文撰寫、論文重復(fù)率監(jiān)測、論文評閱及論文答辯,都有切實可行的實施細則及管理規(guī)章制度;構(gòu)建集中管理與跟蹤管理、周報提交、外出請假、抄襲檢測、講座出勤等平時成績評定標準;完善從平時表現(xiàn)、系統(tǒng)設(shè)計實現(xiàn)質(zhì)量、論文或設(shè)計文檔質(zhì)量、答辯水平等多方面衡量的客觀、公正的綜合成績評定標準和推優(yōu)程序。在畢業(yè)設(shè)計全過程管理中,力求做到有章可循及有據(jù)可查。
3)多元化的畢業(yè)論文形式。
多元化的畢業(yè)論文形式有利于培養(yǎng)大學(xué)生創(chuàng)新實踐能力。根據(jù)軟件工程專業(yè)特點,軟件學(xué)院對畢業(yè)論文形式進行改革。畢業(yè)設(shè)計形式包括傳統(tǒng)方式和新方式,學(xué)生可以選擇其中一種方式,具體采用哪種方式則由指導(dǎo)老師負責(zé)。
傳統(tǒng)方式是指畢業(yè)生完成開題報告并翻譯一篇相關(guān)課題的英文文獻,然后對軟件系統(tǒng)進行需求分析、設(shè)計和編碼實現(xiàn),或者對相應(yīng)算法進行研究、分析和編碼實現(xiàn),最后完成畢業(yè)設(shè)計論文。
為了面向軟件企業(yè)需求,培養(yǎng)學(xué)生的軟件設(shè)計能力,新方式注重提高學(xué)生的系統(tǒng)設(shè)計文檔編寫能力。畢業(yè)生前期仍然要完成開題報告、英文文獻、系統(tǒng)分析設(shè)計和編碼,最后提交系統(tǒng)設(shè)計相關(guān)文檔。系統(tǒng)設(shè)計相關(guān)文檔由以下文檔構(gòu)成:①項目開發(fā)計劃;②軟件需求說明;③系統(tǒng)設(shè)計說明;④數(shù)據(jù)庫設(shè)計說明;⑤用戶手冊;⑥測試分析報告;⑦項目開發(fā)總結(jié)。根據(jù)軟件工程學(xué)科特點及專業(yè)人才培養(yǎng)的要求,結(jié)合學(xué)校的畢業(yè)設(shè)計(論文)管理辦法和軟件設(shè)計文檔國家標準,軟件學(xué)院制定了符合專業(yè)人才培養(yǎng)目標的設(shè)計文檔規(guī)范。
為提高學(xué)生科技論文寫作水平和研究報告的演講能力,軟件學(xué)院面向軟件工程專業(yè)所有應(yīng)屆畢業(yè)生,在其畢業(yè)設(shè)計階段開設(shè)8學(xué)時的“科技論文寫作規(guī)范”“研究報告演講技巧”講座,強調(diào)科技論文寫作的規(guī)范性和可讀性,鍛煉學(xué)生演講研究報告的能力。
4)加強畢業(yè)設(shè)計過程管理和監(jiān)控。
畢業(yè)設(shè)計過程管理和監(jiān)控面向的對象是學(xué)生和教師。軟件學(xué)院畢業(yè)學(xué)生做畢業(yè)設(shè)計有不同情況,如有在校外軟件公司做畢業(yè)設(shè)計的,更多的是在校內(nèi)做畢業(yè)設(shè)計,因此需要有相應(yīng)的不同管理模式。為加強學(xué)生培養(yǎng)質(zhì)量和降低指導(dǎo)教師管理難度,軟件學(xué)院提供集中管理與跟蹤管理方式。
集中管理是指學(xué)院設(shè)置固定機房和機位并安排助教作為管理人員,由指導(dǎo)教師給學(xué)生安排機房,由管理人員負責(zé)學(xué)生的日常考勤,學(xué)生需及時向指導(dǎo)老師匯報學(xué)習(xí)情況,學(xué)生若有事必須請假。跟蹤管理主要針對在校外進行畢業(yè)設(shè)計的學(xué)生,要求這類學(xué)生完成校外畢業(yè)設(shè)計申請,由管理小組協(xié)助指導(dǎo)教師對校外學(xué)生進行跟蹤,為這些學(xué)生提供及時的畢業(yè)設(shè)計信息服務(wù)。這類學(xué)生必須每周與學(xué)校指導(dǎo)教師聯(lián)系,以便教師詳細了解并掌握學(xué)生畢業(yè)設(shè)計進度。這種具體的制度和規(guī)范,對在校內(nèi)進行畢業(yè)設(shè)計和赴外進行畢業(yè)設(shè)計的學(xué)生進行了有效監(jiān)控。
針對指導(dǎo)教師的管理,畢業(yè)設(shè)計管理小組采用不定期檢查和周報提交的方式。畢業(yè)設(shè)計規(guī)范要求每位指導(dǎo)教師每周指導(dǎo)時間不少于2小時,指導(dǎo)教師需要檢查學(xué)生畢業(yè)設(shè)計的進度和質(zhì)量;解答學(xué)生提出的問題,進行下一階段工作部署與指導(dǎo),保證畢業(yè)設(shè)計的質(zhì)量。
不定期檢查指畢業(yè)設(shè)計管理小組根據(jù)指導(dǎo)教師在畢業(yè)設(shè)計系統(tǒng)中登記的指導(dǎo)時間和地點,不定期對教師的指導(dǎo)情況進行檢查。周報提交是指學(xué)院建立的畢業(yè)設(shè)計定期報告制度,教師和學(xué)生每周均需要將周報提交到系統(tǒng)上,教師主要匯報每周對學(xué)生指導(dǎo)情況以及學(xué)生畢業(yè)設(shè)計進度和質(zhì)量,學(xué)生主要匯報每周的畢業(yè)設(shè)計進度、畢業(yè)設(shè)計遇到的問題等。畢業(yè)設(shè)計管理小組每周對周報進行匯總分析并,及時了解畢業(yè)設(shè)計情況,對學(xué)生和教師提出的問題進行統(tǒng)一解答。
5)構(gòu)建完善的畢業(yè)設(shè)計管理平臺。
充分利用計算機技術(shù),構(gòu)建完善的畢業(yè)設(shè)計管理平臺,提高畢業(yè)設(shè)計管理水平,使畢業(yè)設(shè)計管理更加規(guī)范化。軟件學(xué)院在畢業(yè)設(shè)計過程中使用的管理系統(tǒng)包括:重慶大學(xué)本科畢業(yè)設(shè)計系統(tǒng)、重慶大學(xué)網(wǎng)絡(luò)教學(xué)綜合系統(tǒng)、重慶大學(xué)軟件學(xué)院軟件工程實踐教學(xué)平臺。
重慶大學(xué)本科畢業(yè)設(shè)計系統(tǒng)用來上傳和管理畢業(yè)設(shè)計相關(guān)文檔。系統(tǒng)涵蓋畢業(yè)設(shè)計工作的全過程,實現(xiàn)選題提交、課題雙向選擇、畢業(yè)設(shè)計相關(guān)文檔(包括開題報告、外文翻譯和畢業(yè)論文)的提交與管理、文檔模板的上傳和下載、畢業(yè)答辯的自動分組、指導(dǎo)教師和交叉教師評分、答辯記錄和成績的上傳、成績冊的打印、畢業(yè)成績的統(tǒng)計分析等功能。
重慶大學(xué)網(wǎng)絡(luò)教學(xué)綜合系統(tǒng)。用于畢業(yè)設(shè)計的過程管理,主要進行信息、周報收集、校外學(xué)生實習(xí)申請、過程檢查情況公告、問卷調(diào)查、學(xué)生成果提交和查詢等。
重慶大學(xué)軟件學(xué)院軟件工程實踐教學(xué)平臺是軟件人才培養(yǎng)創(chuàng)新平臺,提供實踐教學(xué)成果展示、實踐案例資源庫與實踐教學(xué)管理功能。利用該平臺可以舉辦畢業(yè)設(shè)計優(yōu)秀作品展,展示軟件學(xué)院學(xué)生的專業(yè)學(xué)習(xí)水平,激發(fā)學(xué)生的實踐熱情,對下一屆學(xué)生起到示范作用。平臺實踐案例資源庫可為學(xué)生提供實踐學(xué)習(xí)參考資源,為教師提供實踐教學(xué)案例素材。
6)建立畢業(yè)設(shè)計過程管理評價體系。
建立畢業(yè)設(shè)計過程管理評價體系,要求所有
一學(xué)生和指導(dǎo)老師每周都要將周報提交到EOL(重慶大學(xué)網(wǎng)絡(luò)教學(xué)綜合平臺)平臺。畢業(yè)設(shè)計管理小組每周對畢業(yè)設(shè)計情況進行檢查和監(jiān)督,并將檢查情況告知所有指導(dǎo)老師。指導(dǎo)老師每周提交周報次數(shù)與畢業(yè)設(shè)計指導(dǎo)工作量掛鉤;學(xué)生考勤情況、周報提交情況、平時檢查情況會被記入平時成績,平時成績不合格將被取消答辯資格。
軟件學(xué)院強調(diào)學(xué)生在畢業(yè)設(shè)計期間一定要進行軟件系統(tǒng)設(shè)計和實現(xiàn),畢業(yè)答辯包括系統(tǒng)演示、用PPT講解畢業(yè)設(shè)計主要工作、答辯教師提問等多環(huán)節(jié),答辯老師根據(jù)學(xué)生工作量、完成質(zhì)量、論文或設(shè)計文檔質(zhì)量、答辯情況進行評分。學(xué)生畢業(yè)設(shè)計的最終成績由平時成績、指導(dǎo)教師成績、交叉評閱成績和答辯成績構(gòu)成,以保證評分的公平性。
7)加強誠信機制建設(shè)
為了提高本科畢業(yè)設(shè)計質(zhì)量,加強學(xué)術(shù)道德和學(xué)風(fēng)建設(shè),營造學(xué)術(shù)誠信氛圍,軟件學(xué)院使用“大學(xué)生論文抄襲檢測系統(tǒng)”對本科畢業(yè)論文進行防抄襲檢測。抽檢比例為應(yīng)屆畢業(yè)論文的50%,抽檢名單由畢業(yè)論文管理系統(tǒng)隨機抽取。另外,各答辯小組推薦的優(yōu)秀畢業(yè)論文為必檢對象。
軟件學(xué)院制定論文抄襲的認定標準(建議文字復(fù)制比不超過25%)和處理辦法,對有問題的論文,責(zé)成指導(dǎo)教師對檢測結(jié)果予以認定和說明或督促學(xué)生修改,取消被認定抄襲論文學(xué)生的答辯資格;對各答辯小組推薦的優(yōu)秀畢業(yè)論文進行,不合格的論文取消優(yōu)秀。
4 結(jié)語
培養(yǎng)適應(yīng)我國軟件產(chǎn)業(yè)發(fā)展的軟件工程人才,提高軟件工程本科畢業(yè)設(shè)計質(zhì)量,畢業(yè)設(shè)計的改革勢在必行。通過2屆學(xué)生的畢業(yè)設(shè)計改革證明,建立和完善畢業(yè)設(shè)計的管理制度,加強畢業(yè)設(shè)計過程的監(jiān)控,充分利用畢業(yè)設(shè)計管理平臺,實現(xiàn)多元化的畢業(yè)論文形式,建立合理的畢業(yè)設(shè)計過程管理評價體系,加強誠信機制建設(shè),能極大地促進師生在畢業(yè)設(shè)計過程中投入熱情和精力,提高本科畢業(yè)設(shè)計管理水平,有效保證畢業(yè)設(shè)計質(zhì)量。
摘要:畢業(yè)設(shè)計是一個十分重要的教學(xué)環(huán)節(jié),是一個系統(tǒng)工程,應(yīng)使用工程化的方法、步驟統(tǒng)籌安排以取得良好的效果。軟件工程學(xué)是指導(dǎo)計算機應(yīng)用專業(yè)軟件類學(xué)生進行畢業(yè)設(shè)計的重要工具之一。將畢業(yè)生設(shè)計過程、文檔書寫與軟件工程學(xué)緊密結(jié)合起來是提高學(xué)生畢業(yè)設(shè)計論文質(zhì)量的一個重要途徑。結(jié)合軟件工程的基本知識,通過對軟件類學(xué)生畢業(yè)設(shè)計過程存在的常見問題的研究,提出了應(yīng)用軟件工程學(xué)去指導(dǎo)學(xué)生畢業(yè)設(shè)計的方法。
關(guān)鍵詞:軟件工程;畢業(yè)設(shè)計
0引言
畢業(yè)設(shè)計是高等院校應(yīng)屆類畢業(yè)生在畢業(yè)前接受課題型任務(wù),在教師指導(dǎo)下進行科學(xué)研究或工程實踐并取得成果的過程,是高校實現(xiàn)人才培養(yǎng)目標的綜合性實踐教學(xué)環(huán)節(jié),是一次理論與實踐相結(jié)合的的鍛煉機會。如何在新形勢下改革畢業(yè)設(shè)計, 提高學(xué)生軟件類畢業(yè)設(shè)計的質(zhì)量,進一步規(guī)范畢業(yè)設(shè)計中的軟件開發(fā)過程,抓好高校畢業(yè)設(shè)計這一實踐環(huán)節(jié),加強對畢業(yè)設(shè)計過程的管理與監(jiān)控, 切實提高畢業(yè)設(shè)計的質(zhì)量,對于軟件類學(xué)生在畢業(yè)設(shè)計中實施合適的軟件設(shè)計具有重的指導(dǎo)意義。
1畢業(yè)設(shè)計的必要性
高等職業(yè)教育應(yīng)該是以能力為本位、以學(xué)生為主體、以實踐為導(dǎo)向的教育。畢業(yè)設(shè)計是高等教育培養(yǎng)學(xué)生綜合運用所學(xué)理論知識和技能解決實際問題能力的重要環(huán)節(jié)之一,是衡量畢業(yè)生是否達到相應(yīng)學(xué)歷層次的重要依據(jù)。畢業(yè)設(shè)計將總結(jié)專業(yè)基礎(chǔ)和專業(yè)技術(shù)的學(xué)習(xí)成果,鍛煉和開發(fā)學(xué)生的綜合運用能力。
高職院校軟件相關(guān)專業(yè)組織畢業(yè)設(shè)計應(yīng)該符合新的人才培養(yǎng)標準,對培養(yǎng)學(xué)生的職業(yè)技能和素質(zhì)要具有積極的意義。而對于即將畢業(yè)離校的應(yīng)屆畢業(yè)生來說,畢業(yè)設(shè)計無疑是計算機軟件各相關(guān)專業(yè)理論教學(xué)、實驗、實訓(xùn)等有機結(jié)合的途徑之一。
通過畢業(yè)設(shè)計能鍛煉學(xué)生的能力:
(1)實踐軟件工程的相關(guān)原理能力。畢業(yè)設(shè)計的過程,是一個課題小組從接到開發(fā)任務(wù)到提交產(chǎn)品和文檔的過程,其中涉及到需求分析、概要設(shè)計、詳細設(shè)計、編碼、測試、程序打包、編寫文檔等軟件工程具體的各個方面。經(jīng)過鍛煉,學(xué)生們對軟件工程學(xué)思想和方法的理解會大大加深。
(2)解決具體問題能力。在畢業(yè)設(shè)計的進行過程中,學(xué)生一定會遇到平時在課堂的理論學(xué)習(xí)中碰不到的困難和挑戰(zhàn), 而克服這些困難、解決實際問題的過程就是軟件技術(shù)和心理素質(zhì)逐步提高的過程。
(3)團結(jié)協(xié)作的意識、能力。通過畢業(yè)設(shè)計這一過程,學(xué)生就會產(chǎn)生團結(jié)協(xié)作的意識和能力。
2軟件工程學(xué)的基本思想
軟件工程是一門研究如何用系統(tǒng)化、規(guī)范化、數(shù)量化等工程原則和方法去進行軟件的開發(fā)和維護的學(xué)科,包括兩方面內(nèi)容:軟件開發(fā)技術(shù)和軟件項目管理。其中,軟件開發(fā)技術(shù)包括軟件開發(fā)方法學(xué)、軟件工具和軟件工程環(huán)境,軟件項目管理包括軟件度量、項目估算、進度控制、人員組織、配置管理、項目計劃。
3高職類學(xué)生畢業(yè)設(shè)計現(xiàn)狀
畢業(yè)設(shè)計的主要目的是培養(yǎng)學(xué)生綜合運用所學(xué)的基礎(chǔ)理論、基本知識和基本技能,用以分析、解決工程、科研、社會實際問題的能力,使學(xué)生得到工程設(shè)計方法和科研能力的初步訓(xùn)練。畢業(yè)設(shè)計中存在的問題主要表現(xiàn)在以下幾個方面。
3.1選題的盲目性
只是把畢業(yè)設(shè)計環(huán)節(jié)作為大學(xué)生活的必經(jīng)環(huán)節(jié), 純粹是為了完成學(xué)業(yè)而去做畢業(yè)設(shè)計, 造成選題的盲目性、有的選題則是陳舊。
3.2可行性分析與需求分析重視程度不夠
絕大多數(shù)畢業(yè)生在確定了畢業(yè)設(shè)計的題目后,幾乎不進行調(diào)查研究工作就立即投入到整個系統(tǒng)的設(shè)計中, 一旦遇到了與實際不符的地方, 又重新返回, 對已經(jīng)做好的設(shè)計進行修改。最終導(dǎo)致設(shè)計的系統(tǒng)雜亂無章, 甚至到了最后只能馬馬虎虎地倉促交工。
3.3系統(tǒng)開發(fā)過程中的文檔不夠正規(guī),不夠完備
完整的設(shè)計不僅包括所完成的可操作的系統(tǒng),一般的操作幫助,還包括在開發(fā)系統(tǒng)的過程中所產(chǎn)生的各個文檔等一些文字的東西,比如解釋清晰、內(nèi)容全面的數(shù)據(jù)字典和使用手冊也是必不可少的,否則用戶會感到使用起來不方便,覺得難于操作。
3.4模糊的評價標準
導(dǎo)致畢業(yè)設(shè)計質(zhì)量下降的一個非常重要的原因就是沒有建立精確細致的評價體系。
這嚴重影響了項目的進度和質(zhì)量,并且使學(xué)生沒有真正得到必要的鍛煉。我們通過對這些問題進行詳細深入的分析,提出一個軟件過程框架,這個框架主要從需求、測試、集成這3個方面給出工作要點和規(guī)范。
4利用軟件工程學(xué)思想指導(dǎo)學(xué)生進行畢業(yè)設(shè)計
畢業(yè)設(shè)計本身是個工程,要用工程的方法去處理。從軟件工程的角度去指導(dǎo)學(xué)生進行畢業(yè)設(shè)計,在畢業(yè)設(shè)計過程中,要系統(tǒng)地將所學(xué)知識應(yīng)用于實際問題,按軟件工程學(xué)思想展開工作。
圖1軟件生命周期與畢業(yè)設(shè)計各階段之間的映射
4.1以可行性研究指導(dǎo)選題目
可行性研究,應(yīng)該從技術(shù)可行性、經(jīng)濟可行性、操作可行性三個方面去研究,在畢業(yè)設(shè)計題目的選擇過程中,應(yīng)立足于解決實際問題,注重發(fā)現(xiàn)問題、分析研究問題和開發(fā)創(chuàng)新的能力。選題原則上,可以參考以下幾點:①畢業(yè)設(shè)計的課題應(yīng)該能使計算機專業(yè)所學(xué)的理論知識進一步理解并深化,也就是說,畢業(yè)設(shè)計應(yīng)盡可能包括多門專業(yè)基礎(chǔ)課和專業(yè)課的綜合運用,并且要緊密結(jié)合工程實際,以有利于學(xué)生的全面訓(xùn)練;②選擇難度適中的課題, 保證課題的完成質(zhì)量;③課題要適合于各個模塊獨立進行,并便于最后統(tǒng)一調(diào)試;④課題規(guī)模應(yīng)大小適合,難易程度適中。
4.2需求分析是關(guān)鍵
需求分析的基本任務(wù)是準確地回答“系統(tǒng)必須做什么”, 也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求。系統(tǒng)分析員可以通過多種形式來獲取用戶需求,對用戶提出的需求進行分析,以此來確定其中要實現(xiàn)系統(tǒng)的功能。對需求劃分優(yōu)先等級,找出核心需求和重要需求,以保證系統(tǒng)構(gòu)建的正確性。
在進行軟件類畢業(yè)設(shè)計時,為了保證需求獲取的準確性和全面性,可以讓項目組的所有學(xué)生都參與到用戶需求的獲取的工作中來,發(fā)揮集體的能力,并由指導(dǎo)教師進行最終的確認。
4.3規(guī)范設(shè)計過程
需求分析完成后的下一個階段就是系統(tǒng)設(shè)計,包括概要設(shè)計和詳細設(shè)計。
詳細設(shè)計階段的任務(wù)就是深入每個函數(shù)內(nèi)部,以偽代碼或注釋的形式實現(xiàn)整個函數(shù),設(shè)計出程序的詳細規(guī)格說明。
從系統(tǒng)設(shè)計開始,學(xué)生要按照軟件工程的要求,畫出DFD圖,對輸入、輸出數(shù)據(jù)流進行詳細的說明,建立符合軟件工程規(guī)范的數(shù)據(jù)字典,根據(jù)DFD 圖設(shè)計出模塊結(jié)構(gòu)圖。
4.4重視文檔寫作
在畢業(yè)設(shè)計的過程中,要嚴格遵照軟件文檔的思想,記載設(shè)計過程的每一階段完成了哪些設(shè)計,下一階段的任務(wù)、目標及技術(shù)手段,這樣,把文檔作為整個設(shè)計的指揮棒,使設(shè)計有條不紊地進行。
4.5重視測試工作、撰寫畢業(yè)設(shè)計說明書
軟件測試工作也是軟件開發(fā)的重要組成部分。通過實際應(yīng)用效果和測試數(shù)據(jù),畢業(yè)設(shè)計的成效就可一目了然。
畢業(yè)設(shè)計說明書的撰寫是最后一個階段,要求學(xué)生回顧設(shè)計過程,總結(jié)勞動成果,這時學(xué)生就會對軟件開發(fā)及必須經(jīng)歷的幾個步驟都有更深刻的認識。最后,要求學(xué)生對畢業(yè)設(shè)計進行系統(tǒng)的總結(jié),寫出畢業(yè)論文。
5加強對學(xué)生綜合能力的培養(yǎng)
通過實踐的練習(xí),不僅能加深對理論的理解,同時也能鍛煉運用知識分析問題、解決問題的能力。畢業(yè)設(shè)計這一實踐環(huán)節(jié)是高等學(xué)校培養(yǎng)學(xué)生實際能力的主要手段,也是高等教育的重要組成部分。充分、有效地設(shè)置軟、硬件的畢業(yè)設(shè)計對學(xué)生能力的培養(yǎng)至關(guān)重要,可以縮短學(xué)校教育與社會流行技術(shù)、工具的差距,滿足學(xué)生畢業(yè)后的工作需要。通過畢業(yè)設(shè)計必須達到培養(yǎng)學(xué)生以下方面能力的目的。
5.1工程實踐能力
學(xué)生能夠準確把握選題的邏輯重心和學(xué)術(shù)思路,能夠運用豐富的專業(yè)知識進行處理,具有嚴謹?shù)睦碚撍急孢^程,以鍛煉畢業(yè)生的工程實踐能力,使畢業(yè)論文具有一定的應(yīng)用和學(xué)術(shù)探討價值。
5.2書寫和表達能力
畢業(yè)設(shè)計論文是畢業(yè)設(shè)計工作的總結(jié)和提高,和做科研開發(fā)工作一樣,要有嚴謹求實的科學(xué)態(tài)度。在畢業(yè)設(shè)計期間,盡可能多地閱讀文獻資料是很重要的,畢業(yè)設(shè)計大多數(shù)是技術(shù)開發(fā)型的,其論文的主體部分應(yīng)包括:總體設(shè)計、模塊劃分、算法描述、編程模型、數(shù)據(jù)結(jié)構(gòu)、實現(xiàn)技術(shù)、實例測試及性能分析。這些內(nèi)容根據(jù)任務(wù)所處的階段不同,可以有所側(cè)重。
5.3創(chuàng)新能力
提出創(chuàng)新要求后,帶領(lǐng)學(xué)生認真復(fù)習(xí)或補學(xué)過去沒學(xué)過、沒有學(xué)好的課程,并在此基礎(chǔ)上結(jié)合實際工作中出現(xiàn)的問題孕育出一些新的思路,將畢業(yè)設(shè)計推上一個新臺階的方式,與為每個人專門分配某一特定的作業(yè)來鍛煉學(xué)生基本技能的方式相比,更能擴展學(xué)生的視野,培養(yǎng)創(chuàng)新能力。
5.4協(xié)作能力和團隊精神
通過集體活動和成員溝通培養(yǎng)成員的團體情感,增強團隊的凝聚力。畢業(yè)設(shè)計將一個學(xué)生從入學(xué)初到畢業(yè)前的軟件專業(yè)課程的學(xué)習(xí)內(nèi)容鏈接成線,實現(xiàn)了課程的真正銜接,也使學(xué)生在畢業(yè)前對軟件方面所學(xué)的知識進行了比較完整的概括與總結(jié),達到了良好的理論聯(lián)系實際的教學(xué)效果。畢業(yè)設(shè)計彌補了課堂教學(xué)的不足,加深了對理論的理解,促使學(xué)生深入思考,敢于創(chuàng)新,同時使學(xué)生的動手能力、分析和解決問題的能力、書寫和表達能力、協(xié)作能力等各項能力都得到了培養(yǎng)和提高。
6結(jié)束語
軟件工程作為軟件開發(fā)工程化、規(guī)范化的具體實施方法,在將其應(yīng)用到畢業(yè)設(shè)計中之后,學(xué)生在軟件設(shè)計的文檔書寫規(guī)范化等方面均有了很大的改善與提高。將軟件工程應(yīng)用于畢業(yè)設(shè)計中不僅僅完成了一門課程從理論到實踐的過程,而且將一個學(xué)生從入學(xué)到畢業(yè)前軟件專業(yè)課程的學(xué)習(xí)內(nèi)容鏈接成線,完成了前導(dǎo)后續(xù)課程的真正銜接,也使學(xué)生在畢業(yè)前對軟件方面所學(xué)的知識進行了比較完整的概括與總結(jié),因此,軟件工程學(xué)在計算機專業(yè)學(xué)生畢業(yè)設(shè)計中的應(yīng)用具有重要的現(xiàn)實意義。