軟件工程思想與ACCP項目實戰(zhàn)的結(jié)合
摘要:軟件工程是一門綜合性的學(xué)科,重點從軟件開發(fā)技術(shù)和軟件工程管理兩個方面對軟件的開發(fā)和維護進行研究。而ACCP項目實戰(zhàn)是學(xué)生在校期間一個重要的綜合性實踐教學(xué)環(huán)節(jié),是實現(xiàn)培養(yǎng)目標(biāo)、培養(yǎng)學(xué)生專業(yè)工作能力、提高學(xué)生綜合素質(zhì)的重要手段。所以應(yīng)結(jié)合ACCP項目實戰(zhàn)對學(xué)生進行軟件工程思想和能力的培養(yǎng)。
關(guān)鍵詞:ACCP項目實戰(zhàn);軟件工程
引言
軟件工程是一門指導(dǎo)計算機軟件開發(fā)和維護的工程科學(xué),它把軟件當(dāng)成一種工業(yè)產(chǎn)品,用工程化的方法和原理來進行軟件的計劃、開發(fā)和維護,對于培養(yǎng)學(xué)生的軟件技能素質(zhì),提高學(xué)生的軟件開發(fā)能力與軟件項目管理能力具有重要的意義。ACCP項目實戰(zhàn)是學(xué)生在校期間一個重要的綜合性實踐教學(xué)環(huán)節(jié),是實現(xiàn)培養(yǎng)目標(biāo)、培養(yǎng)學(xué)生專業(yè)工作能力、提高學(xué)生綜合素質(zhì)的重要手段。ACCP項目實戰(zhàn)是開發(fā)一個具有一定實用價值的小型應(yīng)用軟件,這正是結(jié)合 ACCP項目實戰(zhàn)對學(xué)生進行軟件工程思想和能力培養(yǎng)的良好時機。
1、瀑布模型的選定
軟件生命周期是軟件工程中最基本的概念。通常把軟件從開始計劃起到最終被廢棄不用這整個過程稱為軟件的生命周期。軟件生命周期一般又可劃分為若干階段,不同的劃分方法形成了不同的軟件生存周期模型。瀑布模型將軟件生命周期分為七個階段,它們自上而下、相互銜接,如同瀑布流水逐級下落。
ACCP項目實戰(zhàn)中我們采用瀑布模型,是因為一方面瀑布模型非常適合需求明確的軟件項目,ACCP項目實戰(zhàn)的題目一般相對來說簡單一些,需求很明確,不會出現(xiàn)開發(fā)過程中需求變動的情況,使用瀑布模型方便對開發(fā)過程進行控制和管理。另一方面是考慮到學(xué)校沒有開設(shè)軟件工程的課程,瀑布模型是最簡單的開發(fā)模型,有利于向?qū)W生傳授軟件工程思想。下面對瀑布模型與ACCP項目實戰(zhàn)結(jié)合后的流程進行說明。
2、ACCP項目實戰(zhàn)開發(fā)流程
2.1 明確設(shè)計任務(wù)
指導(dǎo)教師應(yīng)在項目實戰(zhàn)開始前將任務(wù)及時地下達給所指導(dǎo)的每一個學(xué)生,使學(xué)生明確自己所需完成的任務(wù)和要求,清楚ACCP項目實戰(zhàn)規(guī)定的期限和ACCP項目實戰(zhàn)的進度。
2.2 查閱有關(guān)資料
學(xué)生在教師指導(dǎo)下圍繞課題任務(wù)查閱有關(guān)資料。從中了解目前的發(fā)展?fàn)顩r,熟悉方案設(shè)計所需的知識范疇,并為軟件設(shè)計準備各種備查手冊。學(xué)生根據(jù)對系統(tǒng)的認識及自身情況來進行重點學(xué)習(xí)。前期準備工作完成后再進人系統(tǒng)實質(zhì)性的開發(fā)過程。
2.3 需求分析
需求分析是軟件開發(fā)時期的第一步,也是關(guān)系到軟件開發(fā)成敗的關(guān)鍵一步。只有搞清楚用戶對系統(tǒng)的要求才能夠開發(fā)出符合用戶需要的軟件產(chǎn)品來。ACCP項目實戰(zhàn)中指導(dǎo)教師一般給出了系統(tǒng)功能的總體要求,但系統(tǒng)詳細的需求說明要求學(xué)生自己完成,通常采用下面的方法:
(1)首先利用各種方法和技術(shù),形成一份基本的需求規(guī)格說明,初步確定軟件的用戶界面、系統(tǒng)結(jié)構(gòu)和數(shù)據(jù)庫結(jié)構(gòu)等。
(2)開發(fā)一個簡單的原型系統(tǒng),將學(xué)生分為兩組,分別扮演用戶和分析員的角色,對需求規(guī)格說明進行驗證。學(xué)生經(jīng)常會忽視數(shù)據(jù)結(jié)構(gòu)的設(shè)計與功能實現(xiàn)之間的內(nèi)在聯(lián)系,所以必要時,指導(dǎo)教師要指出問題所在,讓學(xué)生對數(shù)據(jù)結(jié)構(gòu)及功能進行優(yōu)化組合。
(3)根據(jù)發(fā)現(xiàn)的問題對原型進行修改補充。
(4)重復(fù)上述過程,直到完善需求說明。
如今,“軟件=程序+文檔”已是共識,文檔在軟件的開發(fā)中地位十分重要,而學(xué)生在校期間普遍注重編程能力的提高,很少涉及軟件開發(fā)過程中各種文檔的寫作,所以在這個階段,要讓學(xué)生練習(xí)寫出規(guī)范的SRS(需求規(guī)約)。相關(guān)的標(biāo)準化組織都公布有軟件工程中各種文檔的模板,教師要指定一種標(biāo)準,讓學(xué)生按照標(biāo)準的文檔進行寫作。一方面讓學(xué)生鍛煉軟件開發(fā)文檔的寫作能力,另一方面讓其體會、加深理解文檔在軟件開發(fā)中的地位。
2.4 設(shè)計
這一階段在需求分析的基礎(chǔ)上要求學(xué)生完成軟件系統(tǒng)的總體設(shè)計、數(shù)據(jù)庫設(shè)計、接口設(shè)計等,并編寫設(shè)計說明書和數(shù)據(jù)庫設(shè)計說明書。指導(dǎo)教師只關(guān)注總體設(shè)計,而不太關(guān)注底層的實現(xiàn)。這一步組織學(xué)生以小組的形式相互討論,進行軟件模塊的劃分,由教師根據(jù)各個學(xué)生的實際開發(fā)能力進行任務(wù)分配。學(xué)生要利用需求分析和軟件系統(tǒng)結(jié)構(gòu)的相關(guān)知識來建立計算機模型,使用UML等建模工具對系統(tǒng)進行分析和設(shè)計,畫出硬件裝置方框圖和軟件功能模塊圖,確定設(shè)計的重點、難點和解決方法。如果系統(tǒng)較復(fù)雜,可將設(shè)計過程分為概要設(shè)計書和詳細設(shè)計兩個階段。
2.5 編碼
這一階段要進行代碼的編寫,實現(xiàn)各個模塊、子系統(tǒng)的功能,列出程序清單。上一階段的數(shù)據(jù)庫設(shè)計說明書、概要設(shè)計說明書和詳細設(shè)計說明書是編碼的主要依據(jù)。
2.6 測試
運用軟件工程學(xué)中所描述的測試方法和技巧對代碼、子系統(tǒng)、模塊進行單元測試、組裝測試和系統(tǒng)連調(diào)。軟件工程學(xué)中要求由與系統(tǒng)無關(guān)的第三方來進行測試工作,考慮到ACCP項目實戰(zhàn)過程中資源與人力的限制,我們要求學(xué)生相互間為他人提供測試。
但要讓學(xué)生明白在現(xiàn)實軟件開發(fā)中測試人員的知識和技能,特別是發(fā)現(xiàn)問題的能力,將為發(fā)現(xiàn)產(chǎn)品隱患、提高系統(tǒng)質(zhì)量提供有益的幫助。
(1)測試人員要仔細閱讀規(guī)格說明、設(shè)計文檔、使用說明書及在設(shè)計過程中形成的測試大綱等有關(guān)資料,了解測試內(nèi)容及測試準則,全面熟悉系統(tǒng),編寫測試計劃,設(shè)計測試用例,作好測試前的準備工作。
(2)將測試過程分成單元測試、集成測試和確認測試幾個階段,以保證測試的質(zhì)量。
這一階段工作完成后要給出系統(tǒng)測試報告。測試階段完成后,軟件已經(jīng)開發(fā)完成,可以進入運行維護階段了。作為ACCP項目實戰(zhàn),程序開發(fā)活動完成,下一步將進入ACCP項目實戰(zhàn)論文書寫和答辯過程。
2.7 撰寫設(shè)計(論文)說明書
ACCP項目實戰(zhàn)說明書是ACCP項目實戰(zhàn)成果的集中體現(xiàn),需觀點明確,文字精練,清晰地表達出設(shè)計思路和過程。
2.8 審閱設(shè)計(論文)說明書
由指導(dǎo)教師對設(shè)計(論文)說明書進行認真審閱并給出恰當(dāng)?shù)脑u語和評分。
2.9 答辯
學(xué)生針對自己的ACCP項目實戰(zhàn)課題,對理論依據(jù)、設(shè)計思想、方案論證、立論結(jié)論、設(shè)計細節(jié)、調(diào)試方法、可行性、實用性、發(fā)展前景等諸方面進行論述,并回答答辯人提出的問題,完成ACCP項目實戰(zhàn)的最后一環(huán)。
3、討論
ACCP項目實戰(zhàn)是學(xué)生對其所學(xué)知識的一次綜合性檢驗,對學(xué)校教育和學(xué)生個人發(fā)展的重要性不言而喻。所以有必要在設(shè)計中引人軟件工程的思想與方法,讓學(xué)生體會、理解軟件工程對軟件開發(fā)的重要性,并通過實際應(yīng)用掌握基本的開發(fā)方法。由于瀑布模型是最早出現(xiàn)的軟件開發(fā)模型,具有缺乏靈活性的缺點,而且ACCP項目實戰(zhàn)側(cè)重檢驗學(xué)生掌握專業(yè)知識的程度,因此在項目實戰(zhàn)中采用瀑布模型重點是讓學(xué)生養(yǎng)成軟件工程的思想,熟悉基本的軟件開發(fā)流程。
【軟件工程思想與ACCP項目實戰(zhàn)的結(jié)合】相關(guān)文章:
淺論計算機軟件工程項目管理11-17
試析軟件工程系統(tǒng)項目開發(fā)的質(zhì)量控制12-10
淺探軟件工程系統(tǒng)項目開發(fā)的質(zhì)量控制11-21
探析在項目教學(xué)中引入隱性分層教學(xué)的思想01-08
關(guān)于語文教學(xué)要與思想教育相結(jié)合02-25
初中數(shù)學(xué)教學(xué)中滲透數(shù)形結(jié)合思想的意義及途徑論文12-27
軟件工程 開題報告11-14
軟件工程編程論文03-23
- 相關(guān)推薦