

摘要:文章在闡述了項目管理和軟件工程項目管理有關理論和方法的基礎上,通過分析研究大數據系統下軟件工程的管理模式就是通過一個規范、嚴謹的項目管理組織機構和制訂的項目管理成功標準來貫徹、實施和完成項目的管理。文章重點分析了軟件服務中大數據的產生、大數據環境下系統架構的設計模式和工程的高效管理方法。
關鍵詞:大數據系統;軟件工程;項目管理;高效管理方法;系統架構 文獻標識碼:A
中圖分類號:TP393 文章編號:1009-2374(2016)34-0093-02 DOI:10.13535/j.cnki.11-4406/n.2016.34.046
1 概述
隨著互聯網技術的快速發展,網絡上產生海量大規模的數據,這些海量數據在金融、農業、醫療、商業等領域都有極其重要的應用。因此,通過對大數據研究從互聯網的海量數據中挖掘出有價值的信息資源。雖然大數據有極其重要的研究價值,但是海量數據處理給軟件設計帶來了巨大挑戰。大數據時代的到來,使傳統的軟件工程面臨新的機遇與挑戰。眾所周知,傳統的軟件生產模式一般以正向工程開始,然后進行軟件維護、逆向工程與再工程等,而大數據時代的軟件生產模式則以逆向工程開始。由于軟件資源的大量積累以及大規模軟件重用技術的發展與應用,軟件數據挖掘與軟件集約化生產會變得越來越重要,傳統意義下一切從頭開始的軟件項目會變得越來越少。
互聯網的數據正以指數級速度增長,2010年,全球產生的數據超過1ZB;截至2015年,平均每年產生9ZB的數據;數據的產生主要來源于傳感器、移動終端和電腦終端;所有這些數據在涉及人類基因組學、醫療保健、石油和天然氣、搜索、監控、金融等諸多領域提供了大量潛在的研究價值。IDC認為能夠使用大數據解決方案將蓬勃發展實時業務決策,而那些無法接受和利用這種轉變的,在市場競爭中處于劣勢,且將越來越多地發現自己面對潛在的故障組織。大數據技術描述新一代的技術和架構,通過對大數據進行科學組織、分析其中的數據價值。
大數據是涉及數據存儲、可變復雜的大型數據及數據的進一步可視化處理過程;大數據架構需要具備同時處理數據存儲要求和分析海量數據的大型服務器的處理能力。其中挖掘潛在模式和隱秘關系的過程稱之為大數據分析。挖掘的潛在信息對公司來說能夠幫助獲得更豐富、更深刻的見解,并能夠幫助公司在競爭中占有絕對的優勢。這也是大數據的價值所在,更加精確地執行和分析數據中的潛在價值。本文將討論大數據時代軟件生產模式的變化、特征及其發展趨勢。除新的概念外,還將重點介紹一些軟件管理方法以及工業實踐經驗。我們正處于一個軟件工業大變革的前夜。隨著軟件資源的大量積累與有效利用,軟件生產的集約化與自動化程度都將迅速提高,軟件生產質量與效率的大幅度改進將成為可能。
2 軟件服務產生的大數據
互聯網應用在各行業的廣泛推廣和使用,使得互聯網應用服務產生海量的數據,主要包括流式密集數據和歷史密集數據。比如,國內最大的電子商務阿里巴巴數據中心目前已經積累超過100PB的數據;中國移動通信公司目前建立包含辦公自動化、企業標準化等超過1萬業務流程。傳統的軟件工程中程序設計思想是“程序=數據結構+算法”,主要考慮程序的效率和正確性,忽視了程序中產生的數據,這將大大縮短程序的生命周期。在軟件理論漫長的發展過程中,眾多學者一致認為軟件就是健壯的程序和詳細的文檔,其中核心部分就是完備的文檔,包括需求文檔、工程數據、通用規范等,整個軟件設計過程更加關注文檔質量和標準化開發模式。因此,在這一共同協議下,促使軟件設計更加規范和標志,進而從整體上提升軟件質量。
隨著系統業務的擴容和用戶的使用,要求軟件能夠處理大規模數據的能力。許多大型互聯網企業越來越重視軟件服務中流式數據和密集型數據,數據主要來源于用戶體驗。如圖1所示,行業對數據的處理要求越來精細,技術很具有挑戰性,其中如何將大數據基礎設施作為服務、大數據平臺作為服務、數據價值作為服務以及大數據分析作為服務,已經是大數據環境軟件工程的研究主要難題。
從軟件發展創新模式來分析,服務消費者、服務提供方及PaaS平臺三方產生海量線上流式數據和離線密集型數據。比如,TB級的用戶交流數據和PB級的用戶行為操作數據、TB級的系統日志數據等,這些海量數據對軟件開發、維護、管理有著至關重要的作用,同時這些數據對軟件服務周期也有決定性的作用。本實質上來說,這些數據只是在規模和量上來衡量,對其的研究缺乏標識,尤其缺少語義化的處理。因此,對如此海量數據的處理,需要從不同的研究方式和創新思維對數據進行組織和處理,形成面向領域內的智能知識主體。以知識為中心,數據為驅動,提供一系列數據服務平臺,從而體現出現代軟件工程是以大數據為中心開展的。
3 大數據時代軟件工程管理模式
根據大數據時代背景下,軟件工程的發展從經典的CS模式發展到BS模式以及現在的以面向服務的軟件工程,簡稱為軟件服務工程。該設計模式中以服務為基礎的單位,能夠快速構建應用和共享服務,能夠按需分配,同時也能很好地適應分布式程序開發。這種模式特點是將資源虛擬化、應用服務化,向外提供統一服務接口,能夠很好地解決大數據環境下動態、分布變化的情況和異構系統數據以及系統整合問題。這種面向服務的軟件設計模式在大數據、移動互聯網等新興領域得到廣泛的使用。
項目管理是在一定的費用、品質及進度約束下,為達到客戶和其他利益相關者的需求、目的和目標所要進行的大量活動的規劃、監督和指導。項目管理有兩個重要的研究領域:系統工程與項目控制。從圖1中看出,兩個領域有重疊部分,系統工程為重疊部分提供技術層面的輸入,項目控制主要提供規劃、費用及進度方面的輸入。工程的管理主要是通過文檔來體現的,其中主要包括系統文檔樹和系統工程管理計劃(SEMP)。
系統文檔樹就是以一種樹形結構化形式描述項目所需的,面向系統工程的一系列文檔以及在自定向下的結構化形式中各個系統工程文件之間的相互關系。系統文檔樹是由系統工程師在提案階段基于工作說明書(SOW)和合同數據需求清單(CDRL)準備,以便后續的成本和進度確定所需的文本化的任務。系統文檔樹由項目經理批準并在項目生命周期內維護更新。系統工程管理計劃(SEMP)是描述項目在系統工程方面的任務與進度需求以及這些系統工程任務如何被管理與實現的文檔。項目管理計劃(SEMP)是由系統工程師基于工作說明書(SOW)和合同數據需求清單(CDRL)在提案過程中描述系統工程過程以及系統工程需求如何被計劃、組織、集成、監測、控制和測量。SEMP應該由項目經理批準并在項目生命周期內維護更新。系統工程管理計劃基于SOW及合同數據編制,包括三類關鍵要素:開發項目規劃與控制、系統工程過程以及工程專業集成。
第一,開發項目規劃與控制。開發項目規劃與控制描述在管理開發項目中必須實現的系統工程任務,包括:SOW(工作說明書);組織;進度計劃;程序、設計和測試準備評審;技術性能測量;風險管理。
第二,軟件系統工程過程。系統工程過程描述用于系統開發的系統工程過程,包括:運行需求;功能分析;系統分析與權衡策略;系統測試與評估策略。
第三,軟件工程專業集成:工程專業集成描述多個專業工程領域如何被繼承到主系統設計與開發中,包括:可靠性工程、可維護性工程、可用性(RMA)工程;可生產性工程;安全性工程;人因工程。
4 結語
互聯網的快速發展使得軟件的更新迭代更加頻繁,大數據時代的到來更是對軟件的性能和安全的重要考驗。如何在大數據環境下,構建一個高效、安全、健壯的軟件,除了需要技術的支持,更多地需要一套科學工程理論、技術標準、軟件管理方法的融合。由于軟件資源的大量積累以及大規模軟件重用技術的發展與應用,軟件數據挖掘與軟件集約化生產會變得越來越重要,傳統軟件無法滿足當前的需求,大數據環境下提出一般軟件工程的管理模式對時下的軟件工程開發是非常有幫
助的。
參考文獻
[1] 王符偉.大數據時代下軟件工程關鍵技術分析[J].電子技術與軟件工程,2015,(23).
[2] 朱懷英,展之桂.大數據應用的現狀與展望[J].工業c,2016,(17).
[3] 孟雪井,李宏飛,楊亞飛.大數據背景下統計軟件在數據分析中的應用[J].現代經濟信息,2016,(8).
[4] 于興文.基于大數據的創新型“歸一”軟件設計思路[J].科教導刊(旬刊),2015,(11).
[5] 汪子陽.軟件工程技術發展思索[J].電腦迷,2016,(1).
[6] 李幼平,楊鵬.共享文化大數據的新機制[J].中國計算機學會通訊,2013,9(5).
作者簡介:張宇航(1981-),男,遼寧本溪人,本溪廣播電視大學講師,工學碩士,研究方向:計算機。
(責任編輯:蔣建華)