亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

軟件工程項目管理需求分析論文

時間:2024-09-11 11:14:17 計算機軟件畢業(yè)論文 我要投稿
  • 相關推薦

軟件工程項目管理需求分析論文

  在軟件工程中,需求分析是一個重要的部分,它是軟件工程和項目管理的基礎,是聯(lián)系客戶與開發(fā)者的紐帶。下面是小編搜集整理的相關內容的論文,歡迎大家閱讀參考。

軟件工程項目管理需求分析論文

  摘要:

  科研機構、高校承擔的大型科研工程越來越多,軟件在工程項目中扮演著重要角色。結合科研領域軟件開發(fā)特點,介紹軟件開發(fā)流程管理及質量保障措施等,可為科研軟件的質量提高及創(chuàng)新提供一定借鑒。

  關鍵詞:

  科研軟件;需求分析;開發(fā)模型;質量保障

  引言

  1.隨著科研機構、高校承擔的國家大型科學工程項目越來越多,在這些大型科學工程中,軟件起到不可或缺的作用。如中國科學院高能物理研究所承擔的硬X射線調制望遠鏡項目[1]、BESIII項目[2]中的數(shù)據(jù)采集軟件、探測器和數(shù)據(jù)監(jiān)測軟件是獲得物理成果的基礎,而模擬軟件和分析軟件則直接關系到物理成果的處理和精度。這類軟件項目有較深的物理學背景,需要使用一些物理分析和設計方法,實現(xiàn)手段必須符合領域特點。

  2.例如,數(shù)據(jù)存儲在粒子物理實驗和空間天體物理實驗中的要求不同,前者主要采用ROOT[3]格式,而后者則以FITS[4]格式為主,開發(fā)所用的常見庫和工具也因數(shù)據(jù)存取格式不同而不同。此外,該類軟件應用面較窄,僅限于某一科研領域,其開發(fā)很難由軟件公司承擔,因為軟件公司必須投入大量的學習成本,而產品應用又受局限。因此,這類軟件的開發(fā)一般由科研院所、高校自行承擔。

  3.然而,目前我國軟件整體實力與創(chuàng)新性還不強,人才結構也需要改善[5],一些從事基礎研究的機構,軟件人才緊缺,且缺乏軟件開發(fā)管理經驗,造成軟件質量不高?蒲袡C構從事軟件開發(fā)的科研人員學習能力強,熱衷于追求新技術,如果在方法上給予指導,可幫助其開發(fā)出高質量的軟件。依托大型工程培養(yǎng)所需的軟件人才,不僅有利于大型工程項目的實施,而且還能為國家培養(yǎng)大批軟件人才。本文結合該類軟件項目的特點和科研機構現(xiàn)狀,探討其軟件開發(fā)特點,并提出流程管理和質量保障措施。

  一、科研領域軟件開發(fā)及其特點

  1.1軟件項目特點

  (1)軟件提出者。一般是項目科學家、顧問,他們具有較強的科學洞察力,也能較好地把握軟件開發(fā)方向,但他們大多只關注宏觀問題,而非技術細節(jié),對軟件不是很了解,不能用計算機語言和思維描述項目,也無法很好地理解和描述實現(xiàn)流程、細節(jié),因此不能準確估計軟件開發(fā)難度和工作量。

  (2)軟件開發(fā)者。一般為青年職工和學生,他們熟悉軟件開發(fā),但往往不能完全理解項目目標,也不能深刻理解其物理過程,理解過程中往往思維局限性大,缺乏方向。

  (3)軟件測試者。多數(shù)情況下單元測試由開發(fā)者承擔,集成或系統(tǒng)測試由其他人員完成,部分由用戶完成。與開發(fā)人員相比,測試人員往往物理基礎較好,掌握基本測試方法,但是沒有建立起完整的測試體系,而且將軟件測試當作“副業(yè)”,測試以功能實現(xiàn)為主,對軟件細節(jié)不了解。

  (4)用戶。用戶一般是物理工作者,他們熟悉研究領域的物理要求,但不能用計算機語言描述需求,往往需求不實際或不夠明確。他們對軟件要求較高,要求通過物理測試對軟件性能和輸出結果精度進行測試。如通過運行大數(shù)據(jù)量檢查軟件內存和時間消耗,以促進開發(fā)者進行算法優(yōu)化等。

  1.2軟件項目開發(fā)特點

  (1)軟件需求不夠明確?蒲蓄I域軟件項目一般都涉及到探測器和數(shù)據(jù),涉及領域較廣,而且需求不斷變化。無論是軟件提出者還是用戶,往往難以用計算機思維或語言清楚描述問題;軟件開發(fā)者對項目物理目標,特別是物理過程缺乏深刻理解,不能很好地理解軟件功能細節(jié)及需求。比如,對于一些數(shù)據(jù)分析軟件,提出者或用戶難以描述出軟件需要完成的功能,而開發(fā)者對數(shù)據(jù)處理流程中進行的數(shù)據(jù)轉換、修正、數(shù)據(jù)結構重組也缺乏深刻理解。

  (2)人員結構較為單一。軟件開發(fā)中通常一人需要承擔多種角色,包括軟件需求分析員、設計者和開發(fā)者,甚至測試者。這樣的職位設定,人員分工不明確,難以深入把握某一領域(比如測試)的特點和方法,從而影響了整個軟件開發(fā)過程。

  (3)軟件實現(xiàn)細節(jié)難以把握。此類軟件一般涉及復雜的物理過程,需要用一定的物理方法解決,但方法并不唯一,不同方法會對結果帶來一定影響,而且不同類型數(shù)據(jù)所依賴的方法也不同。軟件開發(fā)中還有些研究性課題,只能以接口形式存在于軟件中,但預留接口時往往設計較為簡單,考慮的情況過于理想,難以滿足實際需求。然而,如果設計時考慮得比較復雜,接口較多,又往往缺乏必要的軟件技術和經驗,不能有效把握細節(jié)。

  (4)硬件頻繁改動增加軟件開發(fā)風險。軟件依賴于硬件,設計初期軟件是在理想的硬件設計狀態(tài)下運行,但如果硬件發(fā)生變更或者運行影響因素增加,軟件也隨之變動,從而加大開發(fā)風險。

  (5)軟件測試及評估缺乏專業(yè)水平。由于開發(fā)者、測試者與用戶的專業(yè)測試能力都比較欠缺,難以涉及到核心質量問題,往往無法全面對軟件作出專業(yè)評估。

  (6)人員管理難度大?蒲袡C構、高校一般熱衷于科學研究而不是工程項目本身,因此難以兼顧兩方面工作。軟件提出者和管理人員往往對軟件工程缺乏深入了解,難以對開發(fā)工作作出客觀評價,因此對軟件開發(fā)的進度和質量帶來一定影響。

  (7)軟件不確定性因素多。隨著工程實施,軟件提出者、用戶會不斷改變、增加需求,加上開發(fā)者及測試者缺乏相關經驗,代碼開發(fā)不規(guī)范、開發(fā)人員流動性強等增加了軟件開發(fā)的不穩(wěn)定性。另外,為降低開發(fā)成本和難度,開發(fā)人員通常會引入現(xiàn)成的工具,這可能給軟件開發(fā)帶來隱患。然而,面向某一科研領域的軟件開發(fā)項目也有自身的優(yōu)勢。如和大型專業(yè)軟件相比,所需的項目功能不是特別多,部分開發(fā)平臺具有可移植性,開發(fā)人員綜合素質較高,學習能力強,英語基礎較好。此外,很多工程與國外合作開發(fā),可參考國外成熟軟件,并方便引進一些免費的軟件框架和平臺,如Gaudi[6]框架、天文分析工具庫Ftool[7]等。

  二、軟件開發(fā)流程管理

  2.1確定軟件開發(fā)模型

  科研機構,尤其是一些缺少經驗的團隊,習慣采用瀑布模型進行開發(fā),主要由于該模型分階段,且各階段間存在因果關系,比較符合思維模式。但它會產生大量文檔,到開發(fā)后期會凸顯軟件開發(fā)缺陷。適合科研領域的開發(fā)模型有迭代式模型[8-9](需求變更驅動型)、增量模型(功能驅動型)及快速原型開發(fā)[10]等。對于科研軟件而言,模型選擇需綜合考慮軟件框架穩(wěn)定性和開放性、構件獨立性以及項目組開發(fā)經驗等。比如對于需求不明確、流程不清晰、算法不確定的項目(如數(shù)據(jù)處理軟件、分析軟件和標定軟件等)采用迭代模型或者快速原型開發(fā)較好。此外,采用一種模型為主,其它模型為輔,也會得到很好的效果。

  2.2加強開發(fā)流程控制

  無論采用何種開發(fā)模型,開發(fā)人員必須在每一次開發(fā)或迭代中完整實現(xiàn)需求分析、設計、編碼和測試等步驟。各階段的評審或項目報告尤為重要,項目前期要確保軟件開發(fā)人員準確理解項目需求以及軟硬件環(huán)境;中期階段要確保開發(fā)流程和方法可靠;后期要通過測試確保軟件運行符合要求。

  2.3需求分析中注重物理分析

  科研軟件中一般涉及大量數(shù)據(jù)操作,而且過程比較復雜,一些原始數(shù)據(jù)要經過轉換、重建、標定及修正等步驟,而且處理不一定是線性的,即相鄰數(shù)據(jù)之間可能有關聯(lián)。這些功能和性能需求不容易明確,需要著重把握。軟件中還可能涉及一些物理算法(比如圖像修正、頻率分解等),因此在需求分析中需要著重進行物理分析,包括流程梳理、特殊方法和條件選擇等。

  2.4采用串行開發(fā)方式

  科研機構人員結構比較單一,往往多項工作并行執(zhí)行,給軟件開發(fā)質量提升及人才培養(yǎng)帶來不利影響,可將相關性比較強的軟件以串行方式開發(fā),數(shù)據(jù)產品生成軟件和數(shù)據(jù)分析軟件可以依次開發(fā)。

  2.5提高開發(fā)人員的主觀能動性

  軟件開發(fā)過程中,保障軟件項目負責人在經費使用及績效考核中的話語權,組建凝聚力強的研發(fā)團隊,對軟件開發(fā)的進度、質量進行考核。

  三、軟件質量保障措施

  (1)加強開發(fā)過程中的溝通?蒲许椖康牟淮_定性帶來軟件開發(fā)需求的變動,用戶往往只注重項目需求功能滿足,而不關心軟件的實現(xiàn)細節(jié),所提出的功能或接口可能不切實際,因此需要加強與用戶的溝通,明確軟件開發(fā)目標。

  (2)充分調動開發(fā)人員積極性。科研機構軟件開發(fā)人員往往是科研項目的幕后工作者,其工作成果容易被科研項目成果所掩蓋,所以充分調動軟件開發(fā)人員的工作積極性尤為必要。一方面,為其提供成果展示平臺,尤其是展示創(chuàng)新性成果,如將開發(fā)中的文檔整理成冊等;另一方面,在基金申請、職稱評定等方面提供支持?蒲袡C構職稱評定主要依據(jù)取得的科研成果,由于工作內容不同,如采取同樣的評審條件,軟件開發(fā)人員與其他研究人員在同一層次上競爭將缺乏競爭力。可能導致部分人員不愿意從事軟件開發(fā)工作,或者開發(fā)軟件的同時還從事其它研究,從而影響軟件開發(fā)進度和質量。因此,需要根據(jù)軟件開發(fā)人員工作的特殊性,通過有效的激勵措施調動其積極性。

  (3)培養(yǎng)既懂管理又懂技術的項目負責人。優(yōu)秀的軟件工程項目負責人不僅是一個好的軟件設計師,對軟件實現(xiàn)細節(jié)能夠很好的掌控,還是一名優(yōu)秀的管理者,能科學配置資源。

  四、結語

  面向科研領域的軟件具有較深的行業(yè)背景,其設計方法、實現(xiàn)手段有很強的領域依賴性。本文從科研領域特點及軟件提出者、開發(fā)者、測試者、用戶的角度出發(fā),探討了其需求難以明確、人員結構較單一且管理難度大的特點。在軟件開發(fā)管理過程中,需要采用合適的軟件開發(fā)模型,注重流程管理,充分調動開發(fā)人員的工作積極性。

  參考文獻:

  [1]LITIPEI,WUMEI.ThehardX-raymodulationtelescopemission[J].Physics,2008,37(9):648-651.

  [2]LITIPEI.HXMT:achinesehigh-energyastrophysicsmission[J].NuclearPhysicsB,2007(166):131-139.

  [3]BESCOLLABORATION.PreliminarydesignreportoftheBESIIIDetector[Z].2003.

  [4]TheROOTTeam.ROOTusersguide[EB/OL].https://root.cern.ch/drupal/content/users-guide.

  [5]WELLSDC,GREISENEW,HARTENRH.FITS:aflexibleim-agetransportsystem[J].A&AS,1981,(44):363-370.

  [6]APrimerontheFITSDataFormat[EB/OL].http://fits.gsfc.nasa.gov/fits_primer.html.

  [7]劉麗梅.中國軟件產業(yè)市場競爭力分析[M].北京:對外經濟貿易大學,2007.

  [8]BARRANDG.Gaudi-asoftwareconfigurationmanagementtool[C].ProceedingofCHEP2000,2000.

  [9]FTOOLS.Ageneralpackageofsoftwaretomanipulatefitsfiles[EB/OL].

  [10]張;O.軟件工程導論[M].北京:清華大學出版社,2005.

  [11]師迎海,何雪慧.迭代式軟件開發(fā)模型研究及應用[J].微處理機,2015(1):55-57.

  [12]劉玉仁,董震曜.快速原型法在軟件設計中的應用[J].光電對抗與無線干擾,2002(4):6-9.

【軟件工程項目管理需求分析論文】相關文章:

計算機應用軟件的需求分析與開發(fā)論文12-01

計算機軟件項目管理中的需求分析03-20

工程項目管理的具體分析論文11-23

淺析計算機軟件項目管理中的需求分析03-13

管理升級帶動需求論文12-02

基于4754A的民用飛機EWIS需求管理分析論文12-02

物料需求管理及其經濟性分析03-24

關于設計管理系統(tǒng)信息需求的分析與實現(xiàn)03-03

關于軟件項目管理及風險分析03-01

關于軟件項目管理中的風險分析與管理03-01