時間:2022-04-09 20:33:18
導語:在信息系統質量管理論文的撰寫旅程中,學習并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優秀范文,愿這些內容能夠啟發您的創作靈感,引領您探索更多的創作可能。

關鍵詞:軟件需求;領域分析;質量屬性
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)16-4424-02
Research and Application of Software Quality Improved Based on Software Requirement
WANG Yan-xing, YE Jing-fa
(College of Computer, Beijing University of Technology, Beijing 100124, China)
Abstract: Software is applied in more and more domain with the quickly development and application of the computer technology. At the same time, scale and complexity of software requirement is increasing day by day. Requirements analysis is a key activity in software life cycle,quality of software requirement can affect quality software directly. It selected an effective approach with the use of objected domain analysis to verification quality of requirement.
Key words: software requirement; domain analysis; qualityproperty
隨著科學技術和社會生產力的不斷發展,信息技術最快的發展速度和最強的滲透能力,廣泛應用于社會各個領域。軟件的規模越來越大,與此相對應軟件的需求也越來越復雜。正如“軟件危機”(software crisis)所闡述的兩方面:如何開發軟件以滿足不斷增長日趨復雜的需求和如何維護數量不斷膨脹的軟件產品。截至到目前, 如Brooks所言,解決軟件危機的“Silver Bullet” 還沒有出現[1]。需求分析是軟件研發的起始階段,高質量的需求分析是軟件項目邁向成功的第一步。
1 需求是軟件質量的根源
ISO9126的信息技術標準[2]中定義軟件質量:與軟件產品滿足明確或隱含需求的能力有關的特征和特征總和,它充分表明軟件系統是滿足用戶需求的實體。在研究中發現軟件缺陷產生的原因分布在軟件研發的各個階段,軟件產品說明書(需求)占56 %,設計占了27%,編寫代碼占7%;其他占10%。可見軟件缺陷的最大原因是軟件產品產品說明書和軟件設計。在生命周期中發現缺陷越早,修正問題的成本越低。軟件質量的管理不是IT自身的需求,而是業務應用的需求[5]。需求階段的問題不解決,相當于在錯誤的方向上不斷浪費人力物力[6]。Jones在報告中聲稱擴展需求對80%的管理信息系統和70%的軍事軟件造成風險[7],需求的質量將直接影響軟件質量[8]。協調統一的高質量需求是軟件開發成功的首要條件,需求質量的改進則成為軟件開發的首要任務。
軟件需求是指用戶對目標軟件系統在功能、行為、性能、設計約束等方面的期望。需求階段包括了需求開發和需求管理兩個部分。而需求工程是一個不斷反復的需求定義、記錄和演進的過程。軟件需求包括三個不同的層次--業務需求、用戶需求和功能需求--也包括非功能需求[9]。需求是軟件開發中最復雜的環節,現在軟件需求分析中發現需求具有明顯不完整性、不確定性及變化性等特點。提高需求質量在于如何改進和克服需求上述特征因素。
2 領域分析對軟件需求改進
了解顧客的需求是軟件質量管理的第一步。無論是領域工程還是應用工程,領域分析都是至關重要的。在應用工程中,軟件開發的首要任務是在特定的范圍內,針對一組特定的需求產生一組特定的設計和實現。因此在設計之前,必須正確獲得和理解軟件需求,而正確獲得和理解軟件需求的前提是對應用系統的工作領域有充分的認識和理解。
2.1 領域和領域分析方法
領域是指一組具有相似或相近軟件需求的應用系統所覆蓋的功能、問題、問題解決方案或知識區域[10]。領域工程則為一組相似或相近系統的應用工程建立基本能力和必備基礎的過程,它覆蓋了建立可復用軟件構件的所有活動[11]。領域工程包括三個主要的階段:領域分析、領域設計、領域實現。
領域分析(Domain Analysis)是Neighous1981 年在他的博士論文“使用部件的軟件構筑”中首次提出的[12],它的含義是指“識別、捕獲和組織特定領域中一類相似系統內對象、操作等可復用信息的過程”。領域分析是基于已經存在的系統和它們的發展開發歷史、基于從領域專家獲得的知識、背景理論、領域中新技術的基礎上,識別、收集、組織以及表示領域中相關信息的過程。領域分析進行識別領域邊界,通過分析領域需求,提取出某領域內系統的共性及可變部分從而建立領域模型。
2.2 面向領域方法的需求分析
提高軟件需求質量的最有效方法是準確獲取用戶的真實需求(功能和性能)。領域分析方法中涉及到廣泛的涉眾:如最終用戶、領域專家、領域分析員、系統投資人、需求分析員等等。領域專家對行業信息化有豐富經驗。最終用戶則能反應系統應用的典型業務需求,系統投資人則更多關注領域的發展和運營。以最終用戶中心,面向領域的需求分析方法有效捕獲從應用專業領域別是直接從最終用戶的需求,并完整、準確地予以描述與分析。軟件的需求從用戶中來,軟件的使用又到用戶中去。Harwell強調今天的用戶和開發者必須協同工作,以成功完成開發過程[13]。領域分析中參與涉眾的廣泛性和代表性解決需求的不完整性、使用領域語言對問題闡述保證問題的一致性。對領域問題分析的深度和廣度,防止了需求的頻繁變化和變更。而且即使變化也會在預先可控范圍內的調整和擴展,減少對領域模型的沖擊。領域分析立足于滿足現有業務的需求同時它還代表系統的一種發展方向和系統對未來業務發展的適應能力。保證應用工程需求的穩定性和系統性。通過分析領域需求的共性和可變性有利軟件產品線形成和演化。
領域工程是建立系統家族及支持系統演化的基礎和前提。面向領域的需求分析從需求問題的分布可以將領域為縱向(垂直)領域和橫向(水平)領域,其中垂直領域是指具有相似業務需求的一組相似應用系統所覆蓋的業務區域。水平領域是指根據應用系統內部模塊的功能性分類而得到的相似問題空間。領域分析方法從問題域出發將問題逐步深入逐步求精,通過橫向拓展和縱向拓展對需求進行挖掘。借鑒和學習國內外同行業和相近行業的經驗,并在此的基礎上不斷提出創新方向引導需求和發展需求。領域分析在一定程度上預測未來需求的發展趨勢,使軟件的需求能方便、快速適應市場的變化。
軟件的功能需求滿足了業務需求和用戶需求,而非功能需求則是軟件質量的內在體現。非功能需求是保證業務流程正常運轉的前提和保障。是衡量軟件能否良好運行的定性指標。質量屬性是軟件質量的綜合體現。質量屬性是客戶希望的特征,屬性并不是單獨存在的,而是一個或多個功能的附屬特征。軟件的整體質量是各種質量屬性之間的權衡和優化。為了達到產品特性的最佳平衡,在需求獲取階段識別和確定相關的質量屬性,領域涉眾需要確定質量屬性之間的優先級,已達到系統整體質量的合理優化。
3 領域分析方法的應用案例分析
隨著經濟全球化和新技術革命發展,數字化、融合化、全球化發展和媒介競爭是世界文化傳媒業的發展大勢。廣電傳媒業要打造核心競爭力,實現可持續發展,就必須通過體制改革,強化管理,整合企業流程,創新服務模式。數字電視業務的逐步深入,原來的業務系統正成為制約廣播電視發展的瓶頸,主要表現為以下幾個方面:廣播電視各業務系統各自獨立運行,數據和業務管理分散。無法實現客戶資料的統一管理,無法實現業務統一規劃運營。無法從業務數據中挖掘有價值的信息,更不能為企業管理層提供決策支持,企業很難推出快速響應市場的高效運營方案。因此廣電需要一個功能完善的、面向未來的綜合業務運營支撐系統(BOSS系統)來整合替代原來各個分散的系統。對廣電領域的分析成為建設多業務綜合運營支撐系統的首要問題。應用面向領域分析方法對廣電行業進行需求探索和研究,提出了廣電綜合業務支撐系統的業務模型如圖1。
領域分析方法為業務模型建立提供有效的思路。領域縱向分析中充分參考了電信行業,電信行業與廣電行業有很多相似之處而且有很多成熟的運營經驗,也充分借鑒了國際電信管理論壇(Tele Management Forum)。領域橫向分析全面整合廣電企業目前的系統,建立“以客戶為中心”的模擬、數字、增值多業務廣電運營支撐平臺。以多種接入方式滿足現有業務、未來數字整體轉換和增值業務的需求。以客戶為中心為客戶提供個性化、社會化、信息化的產品營銷模式。調整企業內部組織結構和整合企業內部資源,同時加強企業產品提供商的合作產業鏈。在新的業務平臺和市場競爭中尋求企業運營的商業模式。隨著運營商區域并購聯盟、廣電業務和用戶規模將劇增,業務系統數據量將更加龐大,為能滿足不斷發展的用戶需求和提高服務質量。系統運行的安全可靠性和事務的高性能處理成為系統整體質量的體現。
通過領域分析方法提出的模型滿足運營商的組織結構管理、業務需求和業務管理模式,完成企業信息化建設實現資源和信息的共享。實現業務規范、責權明確、各部門間的協同的管理。基于此需求分析的系統能全面降低企業運作成本,提高公司的整體運作效率,大幅拓展業務,進一步提高企業的核心競爭力。
4 總結
軟件需求的質量將直接影響軟件產品的質量,改善需求的質量是非常必要和有效的環節。本分探討了領域分析方法對軟件需求的改進,并在廣電業務支撐系統需求分析中進行了應用和探索。
參考文獻:
[1] BROOKS F P.THE MYTHICAL MAN-MONTH[M].北京:清華大學出版社,2002:42-43.
[2] International Organization for Standardization.International Electro-technical Commission ISO/IEC9126:Information Technology--Software Product Evaluation:Quality Characteristicd and Guidelines for Their Use[S].Chicago:Thomson,1991.
[3] Little wood B.Software Reliability Achievement and Assessment[M].Henley-on-Thames,England:Alfred Waller,Ltd,1987.
[4] Mizuno O,Kikuno T,Inagaki K,et al.Analyzing effects of cost estimation accuracy on quality and productivity[C]//Proceedings of the 1998 20th International Conference on Software Engineering.Kyoto,Japan:IEEE Comp Soc,1998:410-419.
[5] 張郁.軟件質量源自應用需求[N].每周電腦報,2005-11-21:90.
[6] 杰拉爾德?溫伯格.探索需求-設計前的質量[M].章柏幸,王媛媛,謝攀,譯.北京:清華大學出版社,2004:175-176.
[7] Jones C.Estimating Software Costs[M].Boston:Addison-Wesley,2000.
[8] BERKI E,GEORGIADOU E,HOLCOMBE M.Requirements Engineering and Process Modeling in Software Quality Management―Towards a Generic Process Metamodel[J].Software Quality Journal,2004(12):265-283.
[9] 陸麗娜.軟件需求[M].北京:機械工業出版社,2002:35-39.
[10] Tracz W.Domain-specific software architecture (DSSA) frequently asked questions (FAQ)[J].Software Engineering Notes,1994,19(2):52-56.
[11] Tracz W.Confessions of a UsedProgram Salesman Institutionalizing Software Reuse[M].New York:Addison Wesley Publishing Co.,1995.