文/王楷 謝博
互聯(lián)網(wǎng)全球化與計(jì)算機(jī)的高普及率,計(jì)算機(jī)的使用進(jìn)入了各行各業(yè),而優(yōu)良的系統(tǒng)軟件將會(huì)使計(jì)算機(jī)使用更高效、方便。系統(tǒng)軟件其有著本身獨(dú)特的算法和邏輯編程語(yǔ)言,這就要借助軟件工程技術(shù)進(jìn)行開發(fā),規(guī)范化與系統(tǒng)化的軟件工程技術(shù)可以進(jìn)一步提升系統(tǒng)軟件的品質(zhì)和水準(zhǔn),滿足市場(chǎng)對(duì)多樣性和專業(yè)性的需要。對(duì)系統(tǒng)軟件開發(fā)中軟件工程技術(shù)持續(xù)探究、分析與完善,可以使我國(guó)信息工程技術(shù)蒸蒸日上,終有一日走向世界一流水平。
傳統(tǒng)軟件工程的諸多弊端只能落下歷史的帷幕,通過(guò)對(duì)傳統(tǒng)軟件開發(fā)中缺點(diǎn)與不足的認(rèn)真剖析,為完善在系統(tǒng)軟件開發(fā)中的軟件工程技術(shù)打下堅(jiān)實(shí)的基礎(chǔ),新時(shí)代下軟件工程技術(shù)趨于多元化和專業(yè)化,能更好地讓技術(shù)人員運(yùn)用軟件工程技術(shù)進(jìn)行系統(tǒng)軟件開發(fā)。
傳統(tǒng)軟件開發(fā)流程中的核心是建立生存周期模型。以軟件開發(fā)理論為基礎(chǔ),了解用戶實(shí)際需求后,詳細(xì)分析與反復(fù)設(shè)計(jì)并逐步完善軟件開發(fā)模型,進(jìn)一步提高軟件模型的品質(zhì)與水平,最終構(gòu)成生存周期模型。傳統(tǒng)軟件基本的周期模型可分為瀑布型、演化型和螺旋型等。例如,演化型在用戶給出核心需求下,逐步迭代完善軟件開發(fā)中的項(xiàng)目功能,基于用戶的反饋,再不斷對(duì)應(yīng)用程序進(jìn)行優(yōu)化與改進(jìn),直到產(chǎn)品完成,這種模型很大程度上提高了軟件開發(fā)的品質(zhì)與水平,但實(shí)際的軟件開發(fā)流程中,某一環(huán)節(jié)的疏忽就可能造成整個(gè)開發(fā)項(xiàng)目的無(wú)法進(jìn)行。高成本與低容錯(cuò)率難以保證軟件開發(fā)的進(jìn)行。隨著軟件開發(fā)產(chǎn)業(yè)在開發(fā)試驗(yàn)過(guò)程中不斷探求,傳統(tǒng)軟件開發(fā)模式所暴露的缺陷日益增多,難以適應(yīng)市場(chǎng)的需求。新形勢(shì)下的軟件開發(fā)產(chǎn)業(yè)不斷對(duì)軟件開發(fā)模式進(jìn)行優(yōu)化與完善,科學(xué)規(guī)范軟件開發(fā)管理流程,極大提高了軟件開發(fā)效益,很大程度上適應(yīng)了市場(chǎng)發(fā)展的需求。
在系統(tǒng)軟件開發(fā)流程中,所涉及的工程學(xué)理論非常抽象,沒有實(shí)際操作經(jīng)驗(yàn)很難理解與掌握,面對(duì)漫長(zhǎng)的開發(fā)周期、復(fù)雜的邏輯算法以及未知軟件更新進(jìn)度,市場(chǎng)投資商也只能望而卻步。因此,系統(tǒng)軟件開發(fā)需要借助科學(xué)規(guī)范的工程化管理方式對(duì)復(fù)雜繁瑣的系統(tǒng)軟件流程進(jìn)行革新與完善,實(shí)現(xiàn)數(shù)據(jù)的高效管理與使用。針對(duì)市場(chǎng)的平均水平與不同需求,軟件功能的實(shí)行需要使用相關(guān)技術(shù)進(jìn)行人性化的規(guī)范與整合,通過(guò)簡(jiǎn)潔大方的頁(yè)面形式以及使用指南進(jìn)行展示,進(jìn)而提高軟件開發(fā)速率與更新進(jìn)度,實(shí)現(xiàn)對(duì)用戶的需求。
上文提及到現(xiàn)代系統(tǒng)軟件開發(fā)模式百家爭(zhēng)鳴,內(nèi)部結(jié)構(gòu)的復(fù)雜程度也是大相徑庭,在漫長(zhǎng)的開發(fā)過(guò)程與繁瑣的運(yùn)行環(huán)境下,該如何解決功能實(shí)現(xiàn)和實(shí)際需求一致呢?這一難題就需要借助軟件工程技術(shù)來(lái)解決了。
軟件工程技術(shù)是運(yùn)用現(xiàn)代化科學(xué)技術(shù)知識(shí)將系統(tǒng)化的、嚴(yán)格約束的、可量化的以及工程化的方法應(yīng)用于軟件,來(lái)達(dá)到提高質(zhì)量、降低成本和維護(hù)的目的,軟件工程概念有多種定義,上述定義是筆者采用比較廣泛認(rèn)可的定義。從系統(tǒng)軟件開發(fā)的角度上看,與傳統(tǒng)軟件開發(fā)的區(qū)別是,現(xiàn)代系統(tǒng)軟件開發(fā)由開發(fā)過(guò)程模型、霍斯曼組織模型與項(xiàng)目管理模型三大部分組成。開發(fā)過(guò)程模型主要呈現(xiàn)了整個(gè)系統(tǒng)軟件開發(fā)的整個(gè)流程,直觀表達(dá)軟件開發(fā)全過(guò)程的結(jié)構(gòu)框架;項(xiàng)目管理模型詳細(xì)引見了開發(fā)流程中的注意事項(xiàng)和項(xiàng)目管理制度;而霍斯曼組織模型,又叫組織公共模型,存在于兩者之間,貫穿軟件開發(fā)的全過(guò)程。將這三大模型吸收理解,充分融合融會(huì)貫通運(yùn)用到整個(gè)流程的工作中,是科研工作者不得不面臨的難題。面對(duì)市場(chǎng)的不同需求,工作者們需要提升相關(guān)技術(shù)結(jié)合科學(xué)規(guī)范的方法手段來(lái)滿足不同需求的用戶。
在軟件開發(fā)過(guò)程中,工程技術(shù)人員需要對(duì)用戶需求進(jìn)行詳細(xì)的分析和設(shè)計(jì)、實(shí)現(xiàn)用戶需求、軟件開發(fā)測(cè)試、軟件開發(fā)應(yīng)用、軟件的發(fā)布等一系列子程序是構(gòu)造一個(gè)完整的軟件應(yīng)用程序的基本流程。在整個(gè)流程中,軟件需求是原動(dòng)力,工程技術(shù)人員是核心,軟件的分析、設(shè)計(jì)和測(cè)試是方法手段,而最重要的環(huán)節(jié)乃是實(shí)現(xiàn)用戶的需求??蒲泄ぷ髡邆儗?duì)技術(shù)層面的不斷探索中綜合開發(fā)經(jīng)驗(yàn),科研界已經(jīng)推出了許多成熟且具有實(shí)際操作意義的軟件開發(fā)方法,其中奉為經(jīng)典的要數(shù) JSD 方法、JSP 方法及SASD 方法等,這些方法擁有規(guī)范的技術(shù)步驟,可操作性相對(duì)較強(qiáng),應(yīng)用廣泛。科學(xué)規(guī)范運(yùn)用這些方法可以在軟件開發(fā)過(guò)程中處理問(wèn)題更加具體化、細(xì)節(jié)化、規(guī)范化,在傳統(tǒng)軟件開發(fā)模式下彌補(bǔ)實(shí)際開發(fā)過(guò)程中的缺陷。
在軟件研發(fā)過(guò)程中,高效、科學(xué)地工程實(shí)施管理是軟件開發(fā)流程在計(jì)劃進(jìn)度安全順利進(jìn)行的前提。軟件開發(fā)技術(shù)復(fù)雜,生命周期漫長(zhǎng),程序之間關(guān)聯(lián)性強(qiáng),如何讓軟件項(xiàng)目按照預(yù)設(shè)好的計(jì)劃進(jìn)度進(jìn)行呢?對(duì)項(xiàng)目開發(fā)流程中的每個(gè)流程進(jìn)行規(guī)范化的分析與管理,對(duì)未知的風(fēng)險(xiǎn)因素進(jìn)行合理有效的預(yù)測(cè)與評(píng)估,實(shí)施高效、科學(xué)的工程管理體系就起決定性的作用。一個(gè)科技公司的工程實(shí)施管理體系是否成熟就能完整反映其軟件開發(fā)能力的強(qiáng)弱,工程項(xiàng)目管理體系建立相對(duì)較成熟,軟件開發(fā)的能力就相對(duì)較強(qiáng)大。由于部分科技公司缺乏建立健全的知識(shí)產(chǎn)權(quán)保護(hù)體系和自主研發(fā)項(xiàng)目的能力,這就對(duì)軟件開發(fā)造成一定的認(rèn)知局限性,為了使軟件開發(fā)能夠順利進(jìn)行,嚴(yán)格規(guī)范化與專業(yè)化開發(fā)流程以及加強(qiáng)對(duì)工程項(xiàng)目的實(shí)施管理,才能促進(jìn)軟件工程開發(fā)的發(fā)展與成熟。
隨著國(guó)外的軟件研發(fā)體系趨于成熟,Google、Amazon 及Facebook 等科技巨頭帶動(dòng)全球化的信息產(chǎn)業(yè)發(fā)展,我國(guó)軟件應(yīng)用程序開發(fā)作為熱門的新興產(chǎn)業(yè),雖然相對(duì)較為薄弱的研發(fā)經(jīng)驗(yàn)造成市場(chǎng)上層次不齊的軟件質(zhì)量一直被大眾所詬病,但也培養(yǎng)出如Alibaba、Tencent 等優(yōu)秀的互聯(lián)網(wǎng)科技公司,極大的市場(chǎng)需求意味著軟件開發(fā)產(chǎn)業(yè)具有強(qiáng)大的潛力,可以想象未來(lái)的軟件應(yīng)用系統(tǒng)會(huì)更加復(fù)雜化與多樣化,科研人員可借鑒國(guó)外優(yōu)秀先進(jìn)的研發(fā)經(jīng)驗(yàn),嚴(yán)格要求軟件產(chǎn)品品質(zhì)與水平,對(duì)軟件開發(fā)特點(diǎn)進(jìn)行剖析與總結(jié),規(guī)范統(tǒng)一軟件研發(fā)體系,讓我國(guó)軟件工程技術(shù)處于世界一流水平。