邱瀚
摘 要
傳統(tǒng)的軟件工程中可能會(huì)出現(xiàn)這樣或那樣的不足,如果利用軟件工程的思想就能夠較方便的促進(jìn)我們工作的效果。本篇文章主要是對(duì)系統(tǒng)結(jié)構(gòu)的概念和步驟、模型的建設(shè)成本及控制風(fēng)險(xiǎn)等方面的問(wèn)題進(jìn)行簡(jiǎn)單的分析,希望對(duì)相關(guān)研究有指導(dǎo)作用。
【關(guān)鍵詞】軟件工程 結(jié)構(gòu)模型 項(xiàng)目管理
為了克服軟件危機(jī)而提出來(lái)的軟件工程已經(jīng)經(jīng)歷了四十多年的發(fā)展,目前已經(jīng)形成了一門(mén)獨(dú)立的學(xué)科,目前該方面的發(fā)展有兩大難題,一是理論和現(xiàn)實(shí)相背離,第二個(gè)就是缺少繼續(xù)研究的理論支撐體系,缺少必要的理論基礎(chǔ),當(dāng)前應(yīng)當(dāng)從新的角度來(lái)研究系統(tǒng)結(jié)構(gòu)模型在軟件工程中的方法和過(guò)程,只有把工程系統(tǒng)論和一般的系統(tǒng)論有效的結(jié)合起來(lái)才能建立良好的系統(tǒng)結(jié)構(gòu)模型。
1 軟件系統(tǒng)結(jié)構(gòu)的概念
對(duì)于軟件系統(tǒng)工程,目前還沒(méi)有比較好的描述。被普遍接受的定義是利用工程系統(tǒng)思想對(duì)軟件工程科學(xué)進(jìn)行有效的研究和針對(duì)性的考察,在工作當(dāng)中依靠工程系統(tǒng)論的理論及其方法研究潛在的一些特點(diǎn)。通常情況下我們所說(shuō)的軟件系統(tǒng)工程系統(tǒng)一般包括軟件系統(tǒng)的外在形態(tài)、所接觸的外部環(huán)境、內(nèi)在結(jié)構(gòu)之間的作用規(guī)律。除此之外,軟件系統(tǒng)具有很好的序性、一定復(fù)合性、層次性等方面的特點(diǎn)。一般來(lái)講軟件系統(tǒng)的原則主要是務(wù)實(shí)性原則、目的性原則、確定化原則等等。
2 在軟件系統(tǒng)中常見(jiàn)的一般工作步驟
相比其他系統(tǒng)來(lái)說(shuō),軟件工程是一種比較復(fù)雜的系統(tǒng),它會(huì)涉及到很多不確定的人為因素以及來(lái)自各行各業(yè)的評(píng)價(jià)標(biāo)準(zhǔn)等,在很多時(shí)候我們很難區(qū)分他們的要求和約束。在這一種情況下,了解軟件系統(tǒng)工程對(duì)我們開(kāi)展以后的工作有很大的指導(dǎo)作用,一般分為如下幾個(gè)步驟。
研究問(wèn)題的場(chǎng)景,這主要是針對(duì)問(wèn)題存在但是沒(méi)有被明確的情景。對(duì)要研究的情景進(jìn)行總結(jié),接著用語(yǔ)言表達(dá)出來(lái),有時(shí)候還可以利用圖像進(jìn)行簡(jiǎn)單的描述,一般來(lái)講,對(duì)場(chǎng)景表述越是豐富,就越方便我們了解更加真實(shí)的問(wèn)題。
利用建立根定義來(lái)建立服務(wù)系統(tǒng)概念,主要有:軟件系統(tǒng)工程的受害者或者受益者,輸出和輸入信息之間的變換過(guò)程,通過(guò)這些定義能夠使我們對(duì)系統(tǒng)活動(dòng)的要素進(jìn)行有效的確定。
樹(shù)立概念模型觀念,在這一過(guò)程中,我們可以進(jìn)行有效的語(yǔ)言表述,也可以借助比較直觀的圖形來(lái)進(jìn)行表達(dá)。把理論概念模型和常用的現(xiàn)實(shí)情境相結(jié)合,根據(jù)他們之間的區(qū)別和聯(lián)系進(jìn)行修改概念模型,進(jìn)而可以使他們更加符合實(shí)際情景。
提供改革方案措施,得到新的情境。
3 建立系統(tǒng)結(jié)構(gòu)模型
軟件系統(tǒng)主要會(huì)死開(kāi)發(fā)者為了滿(mǎn)足客戶(hù)的要求做一些軟件,在系統(tǒng)中,各個(gè)元素相互協(xié)調(diào)、相互關(guān)聯(lián),一般情況下,主要包括:需求方、運(yùn)作方、開(kāi)發(fā)方、使用方、監(jiān)督方。其主要功能可以是需求、開(kāi)發(fā)者、問(wèn)題及支撐技術(shù)。需求方主要是指提出需求的單位,這個(gè)可以是企業(yè)或者是個(gè)人,也可以是國(guó)家或政府。在有些時(shí)候建立系統(tǒng)模型甚至是不需要需求方的,一般在這種情形之下主要是開(kāi)發(fā)企業(yè)作為虛擬的需求方,在這這時(shí)候開(kāi)發(fā)方主要的任務(wù)就是負(fù)責(zé)程序開(kāi)發(fā)。運(yùn)作方主要是指操作軟件軟件或者運(yùn)作產(chǎn)品的企業(yè)或者個(gè)人。在一般情況下,我們常常把使用者和需求者看成一個(gè)實(shí)體,最后監(jiān)督方指的是在軟件開(kāi)發(fā)的過(guò)程中監(jiān)督的單位或者個(gè)人,有時(shí)候也稱(chēng)為是弟三方。
4 軟件系統(tǒng)結(jié)構(gòu)的應(yīng)用與分析
在軟件工程中,常常以系統(tǒng)論作為方法論或者指導(dǎo)思想。利用這些方法可以對(duì)軟件工程進(jìn)行考察,處理問(wèn)題和傳統(tǒng)的方法也不一樣,是一種比較新的思路,能夠幫助我們掌握軟件工程的過(guò)程。
(1)通過(guò)對(duì)傳統(tǒng)的軟件工程的分析我們可以比較清楚的知道,軟件工程一般其周期由定義開(kāi)始的,然后緊接著就是開(kāi)發(fā)、使用以及后期開(kāi)展相關(guān)的維護(hù),最后是軟件系統(tǒng)的退役,這就標(biāo)志著其生命的結(jié)束。目前,主流的理論有三個(gè)時(shí)期軟件的開(kāi)發(fā)、使用、維護(hù)。在每一時(shí)期,還可以分成很多的方面。
(2)軟件系統(tǒng)中的過(guò)程,相比之下是對(duì)軟件工程的全局的整體的把握。一般來(lái)講,主要有兩條主線,其一是系統(tǒng)工程中的問(wèn)題要素,然后系統(tǒng)工程員要把它轉(zhuǎn)化為需求的要素,最后才能把它轉(zhuǎn)化為軟件要素。另外一條是由需求出發(fā),進(jìn)行運(yùn)作方的選擇,然后再進(jìn)行開(kāi)發(fā)者的選擇,開(kāi)發(fā)方則是選擇開(kāi)發(fā)的要素,這兩個(gè)過(guò)程中的主線是一致的。我們?cè)诎衍浖到y(tǒng)問(wèn)題要素轉(zhuǎn)化成為為軟件需求要素的時(shí)候,一般就要我們對(duì)需求的方向有足夠的重視,一旦出現(xiàn)差距比較大的情況,并且沒(méi)有及時(shí)的被發(fā)現(xiàn),就很容易使軟件系統(tǒng)工程中的項(xiàng)目失敗,進(jìn)一步增加我們的軟件工程的工作量?;谶@一個(gè)原因,我們使用的最佳語(yǔ)言常常選用形式化語(yǔ)言,這樣就能夠使內(nèi)容描述的更加準(zhǔn)確的,在量化等方面也會(huì)更加清楚。除此之外,還應(yīng)該統(tǒng)籌的考慮使用方法的一些特點(diǎn)。
開(kāi)發(fā)者的作用是把需求要素經(jīng)過(guò)加工和轉(zhuǎn)化變成成軟件要素,所以開(kāi)發(fā)者是軟件工程開(kāi)發(fā)的關(guān)鍵,在整個(gè)軟件工程的系統(tǒng)開(kāi)發(fā)過(guò)程中應(yīng)當(dāng)堅(jiān)持適應(yīng)性的原則,換句話(huà)說(shuō)就是說(shuō)要選擇恰當(dāng)?shù)拈_(kāi)發(fā)方。
5 軟件工程中的風(fēng)險(xiǎn)分析
在軟件工程中,難度比較大的就是確認(rèn)軟件的風(fēng)險(xiǎn),在軟件系統(tǒng)工程中,我們應(yīng)當(dāng)對(duì)積極的應(yīng)對(duì)其中可能出現(xiàn)的風(fēng)險(xiǎn),針對(duì)存在的風(fēng)險(xiǎn)我們可以進(jìn)行整體的、系統(tǒng)的進(jìn)行考慮。通常情況下,風(fēng)險(xiǎn)是難以避免的,在軟件系統(tǒng)工程過(guò)程里面,人為因素是最不確定的因素,這方面的風(fēng)險(xiǎn)主要是由于人對(duì)軟件系統(tǒng)中事物進(jìn)行分析、比較、評(píng)價(jià)及決策中,都可能會(huì)受到自身素質(zhì)、個(gè)人觀點(diǎn)能力等方面的影響,這些都會(huì)產(chǎn)生風(fēng)險(xiǎn)。
(1)加強(qiáng)對(duì)風(fēng)險(xiǎn)的預(yù)防工作,更好的提高其抗風(fēng)險(xiǎn)和抵御風(fēng)險(xiǎn)的能力,在平時(shí)的軟件系統(tǒng) 工程中應(yīng)當(dāng)加強(qiáng)預(yù)防工作,認(rèn)真落實(shí)。堅(jiān)持預(yù)防為主,防治結(jié)合的 原則,努力提高抗風(fēng)險(xiǎn)的水平。
(2)降低系統(tǒng)工程中的風(fēng)險(xiǎn),這個(gè)主要是想方法把導(dǎo)致不良后果的可能性盡量的降低。
6 結(jié)語(yǔ)
研究軟件工程系統(tǒng)結(jié)構(gòu)模型有著長(zhǎng)遠(yuǎn)的和現(xiàn)實(shí)的意義,本篇文章只是進(jìn)行了這方面的簡(jiǎn)單的概述,有很多細(xì)節(jié)方賣(mài)弄的知識(shí)并沒(méi)有展開(kāi)討論。在以后的實(shí)際操作中,應(yīng)當(dāng)加強(qiáng)這一方面的探索與研究,只有這樣才能使軟件企業(yè)有更強(qiáng)的市場(chǎng)競(jìng)爭(zhēng)力和更大的市場(chǎng)空間。
參考文獻(xiàn)
[1]王連成.工程系統(tǒng)論[M].北京:中國(guó)宇航出版社,2012(10).
[2]王眾托.系統(tǒng)工程引論[M].北京:電子工業(yè)出版社,2013(09).
[3]吳春華.溫志強(qiáng).人力資源開(kāi)發(fā)與管理[M].北京:北京理工大學(xué)出版社,2009(08).
[4]趙維雙.技術(shù)經(jīng)濟(jì)學(xué)[M].北京:北京兵器工業(yè)出版社,2010(12).