軟件工程標準如何實施計算機職稱論文
軟件工程標準如何實施計算機職稱論文
軟件工程是一門研究用工程化方法構建和維護有效的、實用的和高質(zhì)量的軟件的學科。它涉及程序設計語言、數(shù)據(jù)庫、軟件開發(fā)工具、系統(tǒng)平臺、標準、設計模式等方面。以下是學習啦小編今天為大家精心準備的計算機相關職稱論文:軟件工程標準如何實施。內(nèi)容僅供閱讀與參考!
軟件工程標準如何實施 全文如下:
一、 軟件工程標準的現(xiàn)狀和問題
目前,我國各行各業(yè)根據(jù)自身的特點,也都相應制定了一定數(shù)量的軟件工程標準,就其標準的內(nèi)容、質(zhì)量以及相互之間都存在一定的問題,因而給實施帶來一定的困難。下面,就初步掌握已發(fā)布的國家標準、國家軍用標準和航夭工業(yè)行業(yè)標準的現(xiàn)狀和問題作一分析。
1.已發(fā)布的軟件工程標準
據(jù)不完全統(tǒng)計,目前已發(fā)布國家標準n項、國軍標12項、航天工業(yè)行業(yè)標準14項。詳見下表。
據(jù)了解,目前準備報批的國家標準有:軟件工程分類法;計算機軟件單元測試;信息技術軟件產(chǎn)品評價、質(zhì)量特性及其使用指南;軟件支持環(huán)境。國家軍用標準有:軍用軟件產(chǎn)品;軍用軟件項目管理規(guī)程;軍用軟件支持環(huán)境;軍用軟件測試與評估通用要求。除此以外,其它工業(yè)部門也制定了類似的軟件工程標準。
2.存在的問題
從上表可清楚地看出,目前我國軟件工程標準存在兩方面問題:①在高層次上缺乏統(tǒng)一規(guī)劃和系統(tǒng)性,因而造成各級盲目制定和重復制定。大家知道,計算機軟件作為標準化對象,應是具有重復性的概念和事物,因而不管是國標還是國軍標,在同類型標準的內(nèi)容上應該是大同小異的,而不應該制定成多套標準,更無必要層層都制定。②標準體系缺乏系統(tǒng)的規(guī)劃,配套性差,標準內(nèi)容不夠協(xié)調(diào),甚至有些急需的標準未有定出,如二院需要的C語言編程格式約定等。這樣就制約了標準的正確性、可操作性和系統(tǒng)配套性。特別是針對航夭產(chǎn)品特征的軟件產(chǎn)品標準還沒有一項,直接影響了各項軟件工程標準的有效實施。
針對上述存在的問題,從實際工作出發(fā),筆者認為應解決下述幾個問題,方可促進軟件標準的實施。
a.對軟件工程標準應從系統(tǒng)工程的概念出發(fā),認真審查,統(tǒng)籌規(guī)劃,該補充的補充,該合并的合并,形成一個完整的軟件工程標準體系。目前軟件工程的高層次標準已不少了,而對于型號作戰(zhàn)軟件需求規(guī)范、測試軟件需求分析等一些低層次軟件標準應加補充。
b.從一些標準的內(nèi)容看,大多數(shù)是引自國外有關標準的,由于國情、體制的不同,在軟件管理標準方面執(zhí)行起來就比較困難。在術語概念方面存在著較大差別,往往有些標準中的詞語生澀,難以理解,不太符合中國人的語言習慣,影響了標準的可操作性。比如“配置”、“配置管理”、“項目管理”、“用戶手冊”等在以前的型號研制中是沒有碰到的語言,不僅僅是術語的不同,其內(nèi)涵也有很大差別。因此,要把這些標準認真消化,準確地建立起軟件工程化的概念,在軟件開發(fā)中實行工程化管理還要做大量的工作。
c.由于我們對軟件文件的編寫和管理方面缺乏實踐經(jīng)驗,具體到一種文件寫什么內(nèi)容,怎樣編寫僅有標準是解決不了問題的。比如,指控軟件的需求分析,結合具體型號該寫什么內(nèi)容并沒有現(xiàn)成的模式和規(guī)范,這就需要我們在實踐中進一步總結提高,制定一些規(guī)范來指導今后的軟件開發(fā)和文件的編寫。
d.目前,我們軟件開發(fā)中存在的最大問題,仍然是個管理問題。由于軟件工程化的概念建立起來相對容易些,而軟件工程體系建起來就不是短時間能完成的。至今,很多計劃部門、質(zhì)量管理部門以及主管領導還不清楚軟件工程化的具體含義,具體操作也沒有一個定式,軟件開發(fā)的工程化只是某些領導和軟件開發(fā)人員自覺不自覺的行為。因此,我們必須發(fā)動廣大科技人員積極參與,廣為宣傳,加強管理,按照軟件工程標準的各項要求,推動軟件開發(fā)工作的向前發(fā)展。
二、 加強軟件工程標準實施的幾個管理環(huán)節(jié)
為了有效地控制軟件開發(fā)質(zhì)量,切實實施各項軟件工程標準,還應加強標準實施中的幾個管理環(huán)節(jié)。
1.軟件開發(fā)的計劃管理
如上所述,軟件工程不僅要建立起工程化的概念,更重要的是工程體系的運行。這個體系的首要一環(huán)就是計劃管理,計劃部門必須清晰地明確軟件是產(chǎn)品,是一個開發(fā)項目。描述開發(fā)項目的有關文件必須納入計劃,就像硬件的任務書、方案論證報告、圖紙文件一樣,軟件的可行性研究報告、需求說明書、設計說明書開發(fā)計劃等文件都必須落實單位、人員、時間、經(jīng)費,列入計劃考核。計劃是龍頭,有了計劃管理,軟件開發(fā)才能全面啟動起來。如果只給硬件落實了計劃、任務(雖其中包括軟件),但往往不可能使軟件成為一個項目,也就沒有成套的文檔。設計、測試和程序的生成、維護等一系列任務不容易落實,工程化也就不存在了,所以加強軟件開發(fā)的計劃管理十分重要。必須說明,有關標準中提出的項目管理規(guī)范不僅在詞句上區(qū)別于計劃管理,反映在管理內(nèi)容上也存在很大差別。
2.設計與編程的分崗
設計與編程的分崗,總公司的提法是雙崗制,筆者認為分崗提法更科學。在總公司有關文件中已多次強調(diào)了這個問題。目的是一方面提高軟件開發(fā)的透明度,另一方面也是提高開發(fā)質(zhì)量的一項措施。在硬件研制中,設計與生產(chǎn)部門的分崗就從制度上保證了設計文件完整性、內(nèi)容的正確性以及差錯的可追溯性。當然軟件和硬件不是一回事,但道理是一樣的。實行分崗制就要求設計人員把設計思想進行書面描述,保證了設計思想的透明。同時,由于分崗,編程人員在理解設計文件的過程中可以客觀地找出設計的不足,及早暴露出設計的差錯。這在大型軟件開發(fā)中必須做到,否則質(zhì)量無法控制,甚至信息也無法保留。實際情況是往往由于軟件人員不足,自己設計自己編程的情況還很普遍。這不利于軟件開發(fā)的質(zhì)量控制,也反映出管理體制上的不足。
3.加強軟件的測試管理
硬件開發(fā)中很難想像一個產(chǎn)品不經(jīng)檢驗就交付使用。但在一般軟件的開發(fā)中不經(jīng)專門的檢測,而是隨著硬件一起做功能性驗收,就交付使用是經(jīng)常的事。這樣,軟件本身固有的不足不易暴露出來。所以,在大型軟件開發(fā)中逐步實現(xiàn)第三方測試是控制軟件開發(fā)質(zhì)量的必要手段。當然,要實現(xiàn)這一點還有測試工具、測試方法等問題需要逐步解決。
4.加強配置管理
“配置管理”是外來詞,英文是“eonfigurationmanagement”。其定義:“標識和確定系統(tǒng)中配置項的過程,在系統(tǒng)整個生存周期內(nèi)控制這些項的投放和更動,記錄并報告配置的狀態(tài)和更動要求,驗證配置項的完整性和正確性”。配置管理還涉及到“配置項”、“配置標識”、“配置控制”等一些術語。拋開這些抽象的術語,我們可以這樣理解:配置管理就是指軟件開發(fā)的各個階段所需要形成的軟件產(chǎn)品和相應文件以及這些文件的完整性、更改、技術狀態(tài)的控制,軟件的存放,文件的歸檔等管理工作。因此,這里既有型號研制中設計文件管理的含義(包括文件的完整性、編號、更改、階段標記等),也包括軟件產(chǎn)品配備的含義。因為軟件與硬件不同,它是無形的,軟件產(chǎn)品本身和描述產(chǎn)品的文件可以存放在介質(zhì)中(如軟盤、硬盤),什么階段放在設計人員手中、什么階段進入介質(zhì)、什么階段歸檔、更改的控制、文件完整性要求,這些就是軟件的配置管理。所以配置管理十分重要,加強配置管理可以使軟件開發(fā)的技術狀態(tài)受控,進而控制軟件的質(zhì)量。
5.加強軟件的標準化檢查
配置管理是一項很重要的工作,首先是軟件文件的配置,也就是軟件文件的管理。在型號的硬件研制中,主要是靠設計文件管理制度和標準化檢查制度,使設計文件質(zhì)量受控的。軟件也必須這樣。目前,軟件開發(fā)、研制的標準已經(jīng)制定得不少,但實施存在著不少問題,主要是沒有切實可行的實施措施。因此,要從軟件文件的標準化檢查入手,嚴格實施各項軟件工程標準。完善軟件文件,制定一套制度,按照QJ1912的要求,進一步明確軟件文件的格式、編號、編寫內(nèi)容以及文件的完整性、簽署、更改等規(guī)定和要求,從而不斷提高軟件文件的質(zhì)量和水平。只要我們認真實施軟件工程標準,軟件文件一定能夠完善和配套。同時在完善文件的過程中也會使軟件工程標準逐步得以實施。
三、認真解決軟件標準實施中的技術概念問題
GJB8566把軟件生存周期劃分為可行性與計劃、需求分析、概要設計、詳細設計、實現(xiàn)、組裝測試、確認測試和使用維護等8個階段,而且各個階段都相應規(guī)定要完成的技術文件。QJ1912規(guī)定應完成的軟件文件是在GB8566規(guī)定的基礎上還增加了任務書、源程序使用文件匯總表、鑒定證書、試驗報告、媒體內(nèi)程序/數(shù)據(jù)目錄等其它文件。而這些文件并不全是設計文件,有些屬于管理文件。如開發(fā)總結、開發(fā)計劃等。這與傳統(tǒng)的設計文件概念是有區(qū)別的。這些管理文件是否也要由標準化部門統(tǒng)一檢查,需要研究和探討。從硬件階段的劃分看,航夭產(chǎn)品的研制分為論證、方案、工程研制、定型和批生產(chǎn)等5個階段,而產(chǎn)品交給用戶使用后就不屬于研制階段了。
我們開發(fā)的軟件是用在航天產(chǎn)品上的,那么,軟件開發(fā)在大的階段上必須與航天產(chǎn)品的研制相吻合,這樣才有利于型號研制標準化工作順利進行。由此看出在軟件開發(fā)中,上述的5個階段與8個階段是什么關系,所形成的軟件文件如何確定階段標記等問題,也是實施軟件工程標準時不可回避的技術問題,必須認真分析解決好。為了使軟件開發(fā)階段盡量與航天產(chǎn)品研制各階段吻合,便于軟件工程標準順利實施,不妨對兩者作一分析。一般來講,產(chǎn)品在工程研制時每一階段又可分為設計、生產(chǎn)、試驗等若干小的階段。這些小的階段與軟件的設計、實現(xiàn)、測試等階段相對應,這樣軟件開發(fā)的階段劃分就更復雜了。這里需要把產(chǎn)品的研制階段和研制過程的概念區(qū)別開。
一般說來,研制階段是表示產(chǎn)品研制過程中成熟程度的標志,而研制過程則是產(chǎn)品研制中必須經(jīng)過的一個程序。某型號經(jīng)過方案、初樣、試樣階段,以致性能逐漸穩(wěn)定達到成熟可以定型。在某一階段如初樣要經(jīng)過設計、生產(chǎn)、試驗這些過程,在這些過程中暴露的問題在下一階段,即試樣階段更改設計、重新生產(chǎn)、試驗,使產(chǎn)品性能穩(wěn)定達到任務書提出的要求進入定型階段。GB8566中規(guī)定的軟件開發(fā)中的8個階段實際是軟件形成的過程,與我們型號研制階段不是同一個概念,可能在某一階段軟、硬件有相吻合的部分。為此,筆者認為,軟件的可行性研究報告、項目開發(fā)計劃是軟件可行性研究與計劃階段形成的文件,它應當在型號的論證階段完成。這種文件應當屬于研試文件。軟件需求說明書、測試計劃屬于軟件需求分析階段,這個階段相當于型號的方案階段。
如果在文件上作階段標記,應當是M。軟件概要設計說巴18.明書、詳細設計說明書、數(shù)據(jù)庫設計說明書、用戶手冊、操作手冊則分屬于概要設計、詳細設計、實現(xiàn)各階段工作,對應型號研制則屬于工程研制階段的初樣、試樣階段。需求分析、設計說明書等文件在不斷修改完善過程中逐步由M階段進入C階段、S階段、D階段,在研制過程中經(jīng)過各研制階段修改、完善才能逐步定型。除此以外,如項目開發(fā)計劃,開發(fā)進度月報、開發(fā)總結等文件,按照航天系統(tǒng)的概念屬于研試文件,應由有關職能部門完成,不一定由設計來完成。
所以,解決了上述具體認識間題以后,對所形成的軟件文件階段標記達到共識,同時加強各項管理工作,那么軟件工程標準就能順利實施,從而提高軟件的開發(fā)質(zhì)量。