房恩健
(國(guó)家審計(jì)署計(jì)算機(jī)中心 北京市 100071)
在系統(tǒng)軟件的開發(fā)過(guò)程中,由于其中涵蓋多個(gè)不同的子系統(tǒng),所以總體上的開發(fā)難度較大,若采用原有的管理模式,即面向小型軟件的開發(fā)模式完成任務(wù),會(huì)導(dǎo)致所有的子系統(tǒng)之間無(wú)法契合,最終讓系統(tǒng)軟件的運(yùn)行過(guò)程失效。為了能夠消除這一問(wèn)題,同時(shí)能夠在較短的時(shí)間之內(nèi)完成軟件的開發(fā)任務(wù),需要借助專業(yè)的軟件工程技術(shù)完成具體的開發(fā)工作,之后才可以讓整個(gè)系統(tǒng)軟件的開發(fā)質(zhì)量得到保障。
對(duì)于“軟件”這一概念可以分為兩種,一種是系統(tǒng)軟件,另一種為應(yīng)用軟件,雖然兩者在概念的覆蓋面和實(shí)際的表現(xiàn)方法上存在一定的相似性,但是從根本上來(lái)看,系統(tǒng)軟件能夠覆蓋多個(gè)應(yīng)用軟件的同時(shí)運(yùn)行,可以說(shuō),只有系統(tǒng)軟件能夠維持安全穩(wěn)定運(yùn)行,才可以有效支持應(yīng)用軟件的使用[1]。
系統(tǒng)軟件的開發(fā)過(guò)程具有一定程度上的個(gè)性化,體現(xiàn)在軟件的架構(gòu)以及使用的語(yǔ)言方面,都必須完全根據(jù)編程中所涉及的專業(yè)思想、專業(yè)應(yīng)用方式進(jìn)行軟件的編程,但是從實(shí)際取得的工作水平上來(lái)看,對(duì)于系統(tǒng)軟件的運(yùn)行功能、覆蓋面運(yùn)行的整體要求,需要根據(jù)甲方的需要,完成具體的設(shè)計(jì)項(xiàng)目和編程工作,也要能夠進(jìn)一步提高整個(gè)系統(tǒng)的運(yùn)行穩(wěn)定度,該過(guò)程必須要能夠經(jīng)過(guò)進(jìn)一步的交流才可以在該工作系統(tǒng)中調(diào)配專業(yè)人員。
系統(tǒng)軟件的開發(fā)過(guò)程中,由于整體的復(fù)雜度較高,所以必須要能夠建成專業(yè)的軟件分析路徑,該路徑的用途是,一方面能夠了解在各系統(tǒng)的開發(fā)階段,需要向整個(gè)系統(tǒng)中投入的相關(guān)資源以及各類資源的利用方法,之后帶動(dòng)整個(gè)系統(tǒng)的后續(xù)綜合發(fā)展,另一個(gè)是在系統(tǒng)軟件的構(gòu)造階段,可以了解整個(gè)系統(tǒng)的綜合運(yùn)行體系,即根據(jù)不同的工作內(nèi)容,讓不同的人員參與到對(duì)于整個(gè)系統(tǒng)的開發(fā)過(guò)程。
此外在實(shí)際的軟件系統(tǒng)開發(fā)運(yùn)行階段,也要實(shí)現(xiàn)對(duì)于整個(gè)系統(tǒng)運(yùn)行參數(shù)的調(diào)整,同時(shí)在分析路徑的構(gòu)造過(guò)程,需要建立橫向分析和縱向分析兩個(gè)體系,橫向分析是了解在同一個(gè)子系統(tǒng)的建立階段,需要向其中配置的資源數(shù)量,而對(duì)于縱向關(guān)聯(lián),要分析各個(gè)子系統(tǒng)配置過(guò)程中,對(duì)于目前工作流程和工作方法的安排方案,最后給出專項(xiàng)分析結(jié)果,從而讓整個(gè)系統(tǒng)能夠得到全面細(xì)致的規(guī)劃。
在信息的傳遞過(guò)程中,首先需要了解甲方和乙方之間的信息傳遞模式,其次要能夠了解所有子系統(tǒng)開發(fā)過(guò)程中產(chǎn)生的內(nèi)部信息總量以及優(yōu)化方案,最后是分析小組之間的信息傳遞成果。在軟件工程技術(shù)的使用過(guò)程,由于已經(jīng)建立了客戶和軟件開發(fā)公司之間的直接交流平臺(tái),所以可以直接將各類信息通過(guò)專業(yè)化的展示方式傳遞到該系統(tǒng)之內(nèi),最終讓整個(gè)系統(tǒng)的具體運(yùn)行水平獲得升級(jí),而對(duì)于其他的信息傳遞渠道,可以借助企業(yè)內(nèi)部已經(jīng)建成了的內(nèi)部交流系統(tǒng),實(shí)現(xiàn)對(duì)于所有信息的升級(jí)和規(guī)則,之后讓該系統(tǒng)在后續(xù)的運(yùn)行階段,對(duì)所有的信息進(jìn)行集中性的建立和完善,基于此讓最終獲得優(yōu)化的信息傳遞體系,可以實(shí)現(xiàn)小組之間信息的聯(lián)合交融,最終讓整個(gè)系統(tǒng)的運(yùn)行水平取得升級(jí)[2]。
在平臺(tái)的使用階段,可以發(fā)現(xiàn)目前一些軟件開發(fā)企業(yè)的工作階段,實(shí)際上并未建成同時(shí)面向甲方和企業(yè)內(nèi)部職工的信息平臺(tái),這就導(dǎo)致工作平臺(tái)并不能夠參與對(duì)于雙方信息的傳遞過(guò)程,另外一些企業(yè)中甚至未能建立專業(yè)的軟件開發(fā)平臺(tái),而是采用傳統(tǒng)的人工任務(wù)規(guī)劃模式和信息的分析收集模式,讓所有的人員參與對(duì)信息的收集、發(fā)掘和反饋過(guò)程,并且從中了解當(dāng)前軟件開發(fā)過(guò)程中的問(wèn)題并解決。該方式長(zhǎng)期的使用過(guò)程,已經(jīng)逐漸不能符合軟件系統(tǒng)的開發(fā)要求,即使借助傳統(tǒng)的工作模式開發(fā)出了系統(tǒng)軟件,但是其中必然存在大量的錯(cuò)誤,嚴(yán)重時(shí)會(huì)導(dǎo)致系統(tǒng)在運(yùn)行過(guò)程崩潰,甚至在一些情況下,由于對(duì)于系統(tǒng)軟件的開發(fā)邏輯建設(shè)存在問(wèn)題,從而導(dǎo)致在軟件的實(shí)際開發(fā)階段,該系統(tǒng)的綜合運(yùn)行水平大幅度下降,在該問(wèn)題出現(xiàn)之后,顯然不利于針對(duì)相關(guān)參數(shù)的使用。
在整個(gè)流程的規(guī)劃過(guò)程,要能夠根據(jù)軟件的開發(fā)初期、中期和末期工作內(nèi)容,實(shí)現(xiàn)對(duì)于各個(gè)子系統(tǒng)、工作任務(wù)和工作流程的有序規(guī)劃,其中工作流程包括對(duì)于系統(tǒng)軟件的分析過(guò)程、軟件體系的開發(fā)過(guò)程、系統(tǒng)軟件系統(tǒng)的全面分析工作等,通過(guò)對(duì)所有信息的信息發(fā)掘,可以讓整個(gè)系統(tǒng)的運(yùn)行水平得到展現(xiàn)[3]。而對(duì)于各個(gè)流程內(nèi)部的具體規(guī)劃模式,則需要對(duì)當(dāng)前的工作體系得到規(guī)劃,讓系統(tǒng)的規(guī)劃內(nèi)容進(jìn)行分解,目前的工作過(guò)程,正是由于對(duì)于各類規(guī)劃后的內(nèi)容分解細(xì)化度不足,從而無(wú)法實(shí)現(xiàn)對(duì)于專業(yè)工作流程的合理有序規(guī)劃。要求流程規(guī)劃工作中,必須要能夠詳細(xì)分析所有的工作信息,并且進(jìn)一步將其設(shè)定,該項(xiàng)工作的具體工作流程如圖1。
從中可以發(fā)現(xiàn),在開發(fā)工作中,甲乙雙方要同時(shí)討論該系統(tǒng)的構(gòu)造要求與建設(shè)標(biāo)準(zhǔn),比如對(duì)于后期維護(hù)難易程度的要求、新型功能的加入復(fù)雜程度控制、系統(tǒng)中錯(cuò)誤的總量控制等,雙方經(jīng)過(guò)了討論后要達(dá)成共識(shí),之后方可取得該系統(tǒng)的建設(shè)方案。確定的開發(fā)方案之后,要向不同參與開發(fā)的人員配置工作任務(wù),并落實(shí)專項(xiàng)開發(fā)工作,最后給出開發(fā)成果,成果驗(yàn)證階段,則甲方也選擇參與分析。
在多方交流過(guò)程中,必須要能夠?qū)崿F(xiàn)各個(gè)體系技術(shù)人員的全面參與,其中對(duì)于系統(tǒng)軟件的甲方人員,需要派遣專業(yè)的技術(shù)工作者參與到對(duì)方案的探討和制定過(guò)程,對(duì)于系統(tǒng)軟件的開發(fā)單位,則需要參與對(duì)于該系統(tǒng)的全面分析,之后針對(duì)甲方提供的相關(guān)信息做出工作的調(diào)整任務(wù),可以說(shuō)該過(guò)程主要完成技術(shù)的交底工作和初步設(shè)計(jì)方案的分析工作。在后續(xù)的工作中,可以讓甲方將各部門、子系統(tǒng)所重視的系統(tǒng)模塊,由專業(yè)的人員把這些信息傳遞給乙方單位,乙方則需要根據(jù)該平臺(tái)讓軟件開發(fā)中各個(gè)子系統(tǒng)的人員參與講解工作,從而讓雙方都能夠在該過(guò)程中了解相關(guān)信息的具體處理方式,以及相關(guān)問(wèn)題的解決方法。在相關(guān)問(wèn)題的具體處理工作中,可以按照?qǐng)D2 流程參與共同分析。
圖1:系統(tǒng)軟件開發(fā)工作的流程規(guī)劃方案
圖2:多方交流后的系統(tǒng)軟件開發(fā)流程
圖3:系統(tǒng)軟件的任務(wù)分解思路
在軟件的開發(fā)中,實(shí)際上軟件中的錯(cuò)誤不可避免,這類錯(cuò)誤可以通過(guò)試運(yùn)行找到并消除,但是若出現(xiàn)邏輯錯(cuò)誤之后,則這個(gè)系統(tǒng)的運(yùn)行過(guò)程更容易出現(xiàn)嚴(yán)重問(wèn)題,且一些情況下該錯(cuò)誤不可通過(guò)檢查找到。故而本文的流程圖配置過(guò)程,主要是分析各個(gè)子系統(tǒng)中是否存在邏輯錯(cuò)誤,當(dāng)不存在這類問(wèn)題時(shí),則只需要投入較少的工作量,就可以消除整個(gè)系統(tǒng)中存在的運(yùn)行缺陷。
在任務(wù)的分解過(guò)程中,必須要能夠建立專業(yè)性的工作模式,基于此方可讓整個(gè)系統(tǒng)的運(yùn)行水平提升,在具體的任務(wù)分解過(guò)程,必須要能夠不斷細(xì)化相關(guān)任務(wù)的支持內(nèi)容,最終要所有的人員能夠了解相關(guān)工作對(duì)象的分配系統(tǒng)、針對(duì)各個(gè)子系統(tǒng)的構(gòu)造原理、各個(gè)子系統(tǒng)的具體代碼選擇等。在目前的任務(wù)細(xì)化過(guò)程中可以發(fā)現(xiàn),實(shí)際上細(xì)化后的結(jié)果存在嚴(yán)重的問(wèn)題,主要表現(xiàn)為,并非按照專業(yè)化的工作流程完成任務(wù),同時(shí)各類問(wèn)題的分解細(xì)化程度不足,最終導(dǎo)致的后果是,雖然企業(yè)方能夠完全根據(jù)已經(jīng)構(gòu)造的綜合性管理使用思路,對(duì)整個(gè)任務(wù)進(jìn)行分解,但是由于對(duì)于軟件和工作任務(wù)的分解細(xì)化程度不足,導(dǎo)致其中存在的一些問(wèn)題無(wú)法得到修正,在實(shí)際的處理過(guò)程中,正是由于對(duì)相關(guān)問(wèn)題的細(xì)化程度不足,致使最終取得的軟件系統(tǒng)出現(xiàn)問(wèn)題時(shí)無(wú)法立即消除。在工作任務(wù)的分解過(guò)程,可以按照?qǐng)D3 思維導(dǎo)圖落實(shí)工作。
在經(jīng)過(guò)了對(duì)于該系統(tǒng)的全面分解之后,首先要求所有的甲方技術(shù)人員,說(shuō)明該系統(tǒng)軟件的具體運(yùn)行要求,在乙方收集了所有這類信息之后,需要能夠進(jìn)一步了解各項(xiàng)信息的處理方案和開發(fā)原則,包括工作體系的構(gòu)造、對(duì)于系統(tǒng)的后續(xù)管理工作要求等,需要所有的管理項(xiàng)目與相關(guān)參數(shù)都經(jīng)過(guò)管理與維持,同時(shí)在后續(xù)的處理工作中,也要綜合分析相關(guān)應(yīng)用軟件和系統(tǒng)軟件的升級(jí)方案,以提高系統(tǒng)軟件的完備程度。
系統(tǒng)軟件開發(fā)過(guò)程中的軟件工程技術(shù)使用要點(diǎn)可歸納為:
系統(tǒng)軟件開發(fā)過(guò)程中,平面化的軟件程序運(yùn)用,是最基礎(chǔ)、也是最直觀的軟件工程技術(shù)形態(tài)。一方面,系統(tǒng)軟件開發(fā)期間,需要單純的運(yùn)用某一某臺(tái)作為直觀信息載體,以確保非可見性程序?qū)ο蟮恼2倏?。另一方面,系統(tǒng)軟件開發(fā)期間,多重軟件程序運(yùn)用時(shí),始終會(huì)出現(xiàn)程序交叉運(yùn)用的問(wèn)題。此時(shí),如果直接對(duì)交叉性程序全部進(jìn)行位移處理,一旦后續(xù)程序局部發(fā)生故障,就會(huì)造成所有程序的癱瘓。因而,在系統(tǒng)軟件開發(fā)過(guò)程中,通過(guò)建立第三方平臺(tái)運(yùn)作窗口,在相對(duì)獨(dú)立的環(huán)境下進(jìn)行模擬操作。這樣即使軟件交叉操作過(guò)程中出現(xiàn)了問(wèn)題,也不會(huì)對(duì)核心開發(fā)程序造成直接性沖擊。如果程序交叉開發(fā)軟件可以適應(yīng)當(dāng)前運(yùn)作環(huán)境的需要,則第三方平臺(tái)中還可以對(duì)新開發(fā)部分的可行性進(jìn)行評(píng)估,其過(guò)程能大大保障而來(lái)系統(tǒng)軟件開發(fā)的安全性。
我們以最常見的騰訊QQ 為例,對(duì)系統(tǒng)軟件開發(fā)過(guò)程中軟件工程技術(shù)平臺(tái)使用方法進(jìn)行分析:
(1)依據(jù)程序操控需求,程序開發(fā)企業(yè)將所有程序開發(fā)人員都集中在一個(gè)QQ 群體內(nèi),群體內(nèi)成員可以在虛擬平臺(tái)范圍之內(nèi)進(jìn)行言語(yǔ)交流,亦或者是分享初步研究成果。
(2)如果程序開發(fā)研究成果得到了認(rèn)可,群內(nèi)人員還可以通過(guò)群內(nèi)資料分享的方式,對(duì)開發(fā)程序的實(shí)驗(yàn)運(yùn)用情況進(jìn)行展示。這就是系統(tǒng)軟件開發(fā)過(guò)程中平臺(tái)方式的運(yùn)用。
系統(tǒng)軟件開發(fā)過(guò)程中的軟件開發(fā)技術(shù)運(yùn)用,并不是毫無(wú)規(guī)律性的運(yùn)作形態(tài),相反,它也需要按照一定的規(guī)律進(jìn)行各項(xiàng)流程的系列性規(guī)劃。結(jié)合國(guó)內(nèi)現(xiàn)有的系統(tǒng)軟件開發(fā)資料,現(xiàn)將技術(shù)運(yùn)用規(guī)劃的流程要點(diǎn)為:
(1)前期評(píng)估與研究。軟件開發(fā)技術(shù)在這一階段所要實(shí)行的任務(wù)包括系統(tǒng)軟件需求分析、編程語(yǔ)言選擇、人員配置、業(yè)主需求分析等。即,系統(tǒng)軟件開發(fā)過(guò)程實(shí)踐前期做好系列性必要準(zhǔn)備,進(jìn)而為后續(xù)實(shí)踐系列工作的展開奠定基礎(chǔ)。
(2)中期操作。系統(tǒng)軟件開發(fā)過(guò)程中軟件開發(fā)技術(shù)探索時(shí)期,這一環(huán)節(jié)所開展的工作包括實(shí)際編程、人員狀態(tài)跟蹤檢查、業(yè)務(wù)問(wèn)題反饋。即,將軟件開發(fā)中運(yùn)用的JaVa++等技術(shù)形式,都轉(zhuǎn)換為具體的程序開發(fā)方式,它的操控與處理過(guò)程,更能夠表現(xiàn)出明顯的流程處理與運(yùn)作跟蹤價(jià)值。
(3)后續(xù)反饋。系統(tǒng)軟件開發(fā)過(guò)程中,每一項(xiàng)軟件開發(fā)活動(dòng)兼容性運(yùn)作時(shí),程序開發(fā)單位均需對(duì)程序兼容運(yùn)作穩(wěn)定性、以及程序后續(xù)操控的具體情況進(jìn)行防護(hù),以實(shí)現(xiàn)軟件開發(fā)技術(shù)運(yùn)用工作的妥善化管理。
系統(tǒng)軟件開發(fā)過(guò)程中,軟件開發(fā)技術(shù)內(nèi)容多元、形式復(fù)雜,想要得到一款令人滿意的系統(tǒng)程序,單純依靠甲方直接性設(shè)計(jì),或者是乙方的臆想實(shí)踐,是無(wú)法達(dá)到令人滿意的效果的。為此,系統(tǒng)軟件開發(fā)過(guò)程中,軟件開發(fā)與交流活動(dòng)實(shí)施過(guò)程中,也需要拓展多方交流的互動(dòng)渠道,以實(shí)現(xiàn)軟件程序的研究與深入性拓展。
系統(tǒng)軟件開發(fā)過(guò)程中,軟件技術(shù)開發(fā)人員分層次、分區(qū)域的進(jìn)行開發(fā)技術(shù)核心的研究,方可保障軟件運(yùn)作的高精度。一般來(lái)說(shuō),軟件開發(fā)技術(shù)實(shí)際操作期間的任務(wù)分解方式實(shí)施要點(diǎn)包括:
(1)功能需求分析。
(2)功能實(shí)現(xiàn)技術(shù)分析。
(3)技術(shù)人員考核。
系統(tǒng)軟件開發(fā)過(guò)程中,計(jì)算機(jī)軟件工程技術(shù)實(shí)施期間,堅(jiān)持整體與部分相互協(xié)調(diào)的操控策略,是系統(tǒng)軟件開發(fā)的保障。
系統(tǒng)軟件開發(fā)過(guò)程中的軟件開發(fā)工程運(yùn)用實(shí)踐安排時(shí),也設(shè)定了問(wèn)題挖掘環(huán)節(jié)。這一部分主要是對(duì)軟件開發(fā)期間可能出現(xiàn)的問(wèn)題進(jìn)行了前期預(yù)測(cè),以實(shí)現(xiàn)系統(tǒng)軟件開發(fā)活動(dòng)循序推進(jìn)。常見的系統(tǒng)軟件開發(fā)中問(wèn)題發(fā)掘方式主要包含了:
(1)開發(fā)前的預(yù)測(cè)性問(wèn)題分析,以做好問(wèn)題應(yīng)對(duì)方案;
(2)開發(fā)單位自主調(diào)試的問(wèn)題,以確保程序運(yùn)作穩(wěn)定;
(3)業(yè)主反饋的問(wèn)題,以確保程序開發(fā)與客戶需求相互吻合。
也就是說(shuō),問(wèn)題發(fā)掘方式,可在前期評(píng)估彌補(bǔ)系統(tǒng)軟件開發(fā)過(guò)程中的軟件工程技術(shù)運(yùn)用不足,以起到防患于未然的作用。
綜上所述,解析系統(tǒng)軟件開發(fā)過(guò)程中的軟件工程技術(shù),是數(shù)字化技術(shù)不斷創(chuàng)新的理論歸納。在此基礎(chǔ)上,本文通過(guò)平臺(tái)使用方法、流程規(guī)劃方式、多方交流方式、任務(wù)分解方式、問(wèn)題發(fā)掘方式等方面,分析系統(tǒng)軟件開發(fā)過(guò)程中的軟件工程技術(shù)實(shí)踐形式。因此,文章研究結(jié)果,為新時(shí)期信息技術(shù)手段拓展提供了新視角。