趙德霖
摘要:在計(jì)算機(jī)技術(shù)日益成熟的當(dāng)下,軟件開發(fā)是計(jì)算機(jī)技術(shù)中重要的工作內(nèi)容之一,其開發(fā)難度受工程量以及工程方法所制約,其中又以工程方法為主要技術(shù)內(nèi)容。系統(tǒng)性的軟件工程方法中能夠有效提升軟件工程的效率,滿足需求方對軟件的質(zhì)量要求,因此對軟件工程方法的系統(tǒng)研究和運(yùn)用很有必要。
關(guān)鍵詞:計(jì)算機(jī);軟件開發(fā);軟件工程;運(yùn)用探析
中圖分類號:TP311.52文獻(xiàn)標(biāo)識碼:A文章編號:1672-9129(2020)14-0002-01
1軟件工程方法
1.1結(jié)構(gòu)化方法。也叫作生命周期法、結(jié)構(gòu)化范型,將軟件產(chǎn)品的開發(fā)周期過程劃分為不同階段,在不同的開發(fā)階段應(yīng)用相匹配的結(jié)構(gòu)化技術(shù)。在結(jié)構(gòu)化方法的計(jì)算機(jī)軟件開發(fā)方式中,需求分析是第一位、占據(jù)主導(dǎo)性的,具有頂層設(shè)計(jì)性質(zhì),結(jié)構(gòu)化方法嚴(yán)格以頂層設(shè)計(jì)為始發(fā)點(diǎn),然后才為計(jì)算機(jī)軟件建模、按應(yīng)用程序?qū)?yīng)功能需求、完成設(shè)計(jì)開發(fā)及測試評估等工作,開發(fā)過程屬于漸進(jìn)型,強(qiáng)調(diào)自上向下按照順序走完軟件開發(fā)階段流程,在研究對象方面,又可分為面向行為與面向數(shù)據(jù)兩種方法,但兩種方法之間缺乏整合性,屬于傳統(tǒng)的軟件工程方法。在軟件開發(fā)過程中,存在需求結(jié)構(gòu)變化、程序復(fù)雜、開發(fā)周期長、更新速度慢等方面的問題,成為計(jì)算機(jī)軟件開發(fā)的因素限制。
1.2面向?qū)ο蠓椒āR步蠴O方法,是一種主要面向數(shù)據(jù)與數(shù)據(jù)操作的軟件工程法。面向?qū)ο蠓椒ㄖ饕獾杰浖_發(fā)工程的需求具有多變性的,在開發(fā)過程中用戶需求呈現(xiàn)多次迭代趨勢,因此面向?qū)ο蠓椒ㄗ⒅馗拍钆c表示方法的適應(yīng)性,使軟件開發(fā)工程得以多線程操作,并且實(shí)現(xiàn)各階段平穩(wěn)過渡。一般在大工程量的復(fù)雜交互系統(tǒng)中,面向?qū)ο蠓椒ǜ袃?yōu)勢。
2軟件工程法應(yīng)用現(xiàn)狀
2.1結(jié)構(gòu)化方法的應(yīng)用。結(jié)構(gòu)化方法依靠系統(tǒng)需求分析,事先確定出一套完整的、一致的應(yīng)用需求并采用相應(yīng)的結(jié)構(gòu)化語言進(jìn)行程序設(shè)計(jì),隨著用戶對計(jì)算機(jī)軟件需求的發(fā)展,計(jì)算機(jī)軟件開發(fā)工程中傳統(tǒng)的結(jié)構(gòu)化方法逐漸難以滿足這些在開發(fā)過程中不斷嬗變、演化的需求。軟件開發(fā)過程需要的生命周期往往是計(jì)劃預(yù)定的,但以需求分析為基礎(chǔ)、固定的結(jié)構(gòu)化語言為手段的結(jié)構(gòu)化方法往往缺乏變化性和可擴(kuò)展性,而計(jì)算機(jī)軟件的需求迭代速度很快,在經(jīng)歷固定生命周期后,結(jié)構(gòu)化方法設(shè)計(jì)的計(jì)算機(jī)軟件在功能性、兼容性以及實(shí)用性方面往往與當(dāng)下需求有所偏差,這一需求目標(biāo)與結(jié)合實(shí)際的差異往往代表著極高的工程代價(jià),甚至可能出現(xiàn)成果問世即被市場所淘汰,這往往等同于工程開發(fā)失敗,因此采取預(yù)先定義需求策略的結(jié)構(gòu)化方法已經(jīng)不能適應(yīng)當(dāng)前互聯(lián)網(wǎng)日益變化的用戶需求。
2.2面向?qū)ο蠓椒ǖ膽?yīng)用。面向?qū)ο蠓椒ㄔ诋?dāng)前是計(jì)算機(jī)軟件開發(fā)的熱門方法,在人工智能、操作分布系統(tǒng)、數(shù)據(jù)庫、物聯(lián)網(wǎng)領(lǐng)域均有廣泛應(yīng)用,發(fā)展也非常迅速,普及率高,但技術(shù)要求高,經(jīng)濟(jì)性相對較低,面向?qū)ο箝_發(fā)方法主張用人類常用思維方法認(rèn)識、理并建立系統(tǒng)能映射冋題,以普遍性需求覆蓋個(gè)性化需求,進(jìn)一步強(qiáng)調(diào)系統(tǒng)的一致性,客觀上提高了各個(gè)開發(fā)階段的技術(shù)銜接與對應(yīng)的標(biāo)準(zhǔn)化趨勢,提高了軟件開發(fā)效率與質(zhì)量,將軟件開發(fā)流程與需求易變因素進(jìn)行了技術(shù)隔離。面向?qū)ο蠓椒ù碇浖こ涕_發(fā)方法整體技術(shù)水平的提高,屬于現(xiàn)代化的涵蓋需求方向、同時(shí)確保計(jì)算機(jī)軟件功能的開發(fā)方法,但實(shí)用開發(fā)技術(shù)尚不完全成熟。
3軟件工程方法的運(yùn)用措施
3.1分析軟件工程技術(shù)的應(yīng)用局限性。任何一款計(jì)算機(jī)軟件的功能性都受到系統(tǒng)結(jié)構(gòu)的影響,開發(fā)過程中使用的軟件工程方法應(yīng)該是多元化的,而不能是唯一的,因?yàn)樵趥鹘y(tǒng)數(shù)據(jù)的管理、獲取、存儲、共享環(huán)節(jié)不是動態(tài)化、相互獨(dú)立的,而是以數(shù)據(jù)管理模式為基礎(chǔ)、以結(jié)構(gòu)化語言為處理問題的手段,數(shù)據(jù)查詢過程中的技術(shù)手段是相對單一且模糊的。而傳統(tǒng)數(shù)據(jù)管理模式與現(xiàn)代數(shù)據(jù)管理模式對比,現(xiàn)代數(shù)據(jù)管理模式應(yīng)用了多元化的軟件工程方法,更有助于處理、防范發(fā)生系統(tǒng)連鎖性問題,其優(yōu)勢更加明顯:現(xiàn)代數(shù)據(jù)管理模式在數(shù)據(jù)獲取、儲存、共享方面比傳統(tǒng)數(shù)據(jù)管理模式具有的先進(jìn)性,與傳統(tǒng)軟件數(shù)據(jù)管理模依賴結(jié)構(gòu)化語言不同,它處理數(shù)據(jù)問題的可擴(kuò)展性要求更高、要求表述過程更加清晰,因此在單一方法的軟件工程開發(fā)中,多運(yùn)用多維法;在復(fù)雜方法的軟件工程開發(fā)中,多采取形式化方法和面向數(shù)據(jù)方法的綜合法。
3.2建立彈性軟件開發(fā)模型及輔助模型。計(jì)算機(jī)軟件的開發(fā)工作中,需求分析后的最主要務(wù)實(shí)性工作就是開發(fā)建模,這也是計(jì)算機(jī)軟件開發(fā)工程的實(shí)操基礎(chǔ),關(guān)系到計(jì)算機(jī)軟件的整體開發(fā)效率。一個(gè)兼具實(shí)用性與科學(xué)性原則的計(jì)算機(jī)軟件開發(fā)模型,技術(shù)重點(diǎn)主要包括:了解與掌握與相關(guān)應(yīng)用程序、確定開發(fā)工作流程、計(jì)算開發(fā)周期、擬定管理工作框架等。為了對軟件開發(fā)模型進(jìn)行效率、質(zhì)量方面的預(yù)估與先期評價(jià),還要分別建立組織公共模型、項(xiàng)目管理模型等輔助模型,對軟件開發(fā)模型中可能出現(xiàn)的問題進(jìn)行風(fēng)險(xiǎn)防范,當(dāng)出現(xiàn)技術(shù)問題時(shí),能夠通過輔助模型分析問題成因、制定處理對策等風(fēng)險(xiǎn)控制手段,保障計(jì)算機(jī)軟件開發(fā)的有序性,對軟件開發(fā)模型起到進(jìn)一步的優(yōu)化作用。
結(jié)語:在當(dāng)下的軟件開發(fā)工程中,一般傾向于根據(jù)資源分配軟件工程技術(shù)的方法,更有助于結(jié)合實(shí)際需求而保證軟件開發(fā)效率,使軟件功能能夠滿足客戶在軟件開發(fā)過程中的需求變化情況。但軟件工程方法并不能簡單地?cái)嘌云渚唧w屬于某種方法,而是根據(jù)需求變化而彈性調(diào)整的開發(fā)過程中表現(xiàn)出的技術(shù)性傾向,必須遵循軟件工程方法應(yīng)用的基本原則,根據(jù)需求變化、工程階段調(diào)整方法的合理性,甚至可以根據(jù)用戶的實(shí)際需求變化情況,在軟件工程各個(gè)周期靈活選取工程方法,提高工程技術(shù)應(yīng)用效率。
參考文獻(xiàn):
[1]曹秀平.計(jì)算機(jī)軟件開發(fā)技術(shù)的應(yīng)用研究與趨勢研究[J].計(jì)算機(jī)產(chǎn)品與流通,2020(11):41.
[2]孫宇.軟件工程方法在計(jì)算機(jī)軟件開發(fā)中的應(yīng)用[J].無線互聯(lián)科技,2019,16(21):41-42.
[3]董朝賢.軟件工程方法在計(jì)算機(jī)軟件開發(fā)中的運(yùn)用[J].電子技術(shù)與軟件工程,2018(13):34.