陳天宇,潘凌皓
(中移<蘇州>軟件技術有限公司 江蘇 蘇州 215000)
伴隨計算機技術的發展,大數據就成為其必然路徑,軟件設計自然就有了大數據背景。軟件的發展是不斷進步的,傳統結構化信息逐漸被淘汰,信息處理要求極高,并與網絡結合。大數據背景下的軟件工程中的服務工程和組件工程發揮著越來越重要的作用。現在,面向服務的軟件服務工程以服務為中心,依實際需要以分布式、虛擬化管理維護軟件工程,解決系統集成與協作問題[1]。
網絡化、服務化的大環境下,軟件開發變得開放,通過信息共享、學術交流方式協同合作開發,在用戶參與中完成高性價比軟件系統。
開源軟件是一種成功的軟件開發模式,是學術界的重點研究對象。組件工程中提倡的是在眾包基礎上的開發模式,眾包是分布式的解決方案和生產模式。密集型數據科研第四范式對密集數據研究時,建立統一理論和研究方法,強調大數據存儲的重要性。
伴隨計算機技術的廣泛應用,大數據技術逐步成熟,大數據由此產生。大數據技術是可以對網絡環境巨量信息做篩選、分析和處理的一套應用實現。傳統數據信息處理系統面對網絡上巨量數據信息處理能力較弱,往往只能將大量數據當成無用數據而舍棄,自然會將許多有價值的信息一同丟棄。大數據技術實現了網絡巨量數據的分類整理,為巨量數據的應用和挖掘提供基礎支持。
大數據簡單理解就是數量巨大的數據信息,是軟件技術促成的一項變革,其影響廣泛,促進社會的發展。大數據背景下,應用者可方便快捷地獲取海量數據信息,分析大數據內涵,可將大數據精髓應用到需求實踐中去[2]。
軟件工程技術是以應用程序工程化設計實現系統化專業應用的計算機技術。軟件工程技術內涵一般分解為軟件工程的原理、過程和方法等,是以計算機網絡技術,通過程序設計語言實現軟件的功能集,并作優化和提升,是在程序設計發展到成熟過程中逐步形成的。大數據背景下,軟件工程技術被廣泛應用于不同行業領域,整體提升了社會經濟的發展效率。
計算機軟件工程技術在互聯網時代取得了高速發展,軟件工程技術與大數據技術相結合,提升了軟件工程服務社會的能力。大數據技術的專業實用性對軟件工程技術提出了更高要求,數據處理能力兼顧安全有效性。
面向服務的軟件工程簡稱作軟件服務工程,以服務為中心,具有虛擬化管理優勢,能建構分布式應用,通過虛擬化強化了操作性,適應分布和動態應用。針對用戶情況做調試,保障用戶系統的穩定性和安全性。同時,服務軟件工程技術實現數據整合,提高管理能力,操作流程明晰。
軟件工程在云計算、大數據領域的應用得到長足發展,在網絡服務大環境的應用更開放,通過信息共享和學術交流,工程師可協同開發,快速建設高性價比的軟件系統。
軟件服務開發適合主流需求,工程化地實現服務功能應用軟件開發。該技術應用的投資大,應用能力要求較高,應用不廣泛。
眾包是指分布式生產模式,眾包提供更多解決問題的創意,在軟件開發各階段都可使用。眾包軟件服務工程技術以流式數據、密集數據為主要研究對象,構建系統化服務平臺,服務能力是其核心應用價值,以群體服務方式優化自身應用。眾包軟件服務工程技術以專業理論分析為依據,能以整體角度完成數據傳輸和處理,發展空間廣闊。
眾包軟件服務工程技術優勢明顯,分析密集型數據時,不僅分析原生數據,還要分析數據所屬領域,大數據技術使數據處理更具整體性,突出了軟件工程的服務。
密集數據研究要建立統一理論和研究方法,強調大數據的重要性,用第四范式對密集型數據做研究,確認方法和結構,分析關鍵性問題。密集型數據的研究不同于傳統方式,需轉變思維模式。要建立科學完整的第四范式,建立完整統一的理論體系,再逐步轉化為第三范式。
密集型數據及其動態分布、價值隱藏和動態交互的演化都是原始形式的大數據。在密集數據研究模式中,要分析數據的整合驅動、需求的度量價值以及情境約束等。知識和價值服務是研究重點,針對密集型數據服務,研究密集型數據的管理和應用,使用一致的理論和方法。
大數據的特點是結構復雜、容量巨大,相比于獨立型數據形式,大數據的各數據間相互聯系,現有框架下的計算機信息處理技術難以及時有效處理。硬件模式搭建的網絡有局限性,制約網絡性能的發展,需要創新性探索計算機網絡架構技術,用網絡處理大數據。計算機網絡須先有開放式的傳輸功能和網絡結構,使信息處理能力不依賴于計算機硬件基礎,定義網絡架構,利用網絡軟件使網絡技術取得發展。
大數據時代,硬軟件和網絡融為一體,形成新型網絡結構,支撐大數據發展。一是結構突破傳統處理技術和網絡的限制,為計算機處理技術創新打下基礎;二是使眾多信息處理技術趨于網絡多元化,使小機構也有機會參與大項目開發。
軟件工程技術分析經長期發展逐步形成固有的思想和方法,對軟件工程技術整體起到促進作用。在大數據背景下,實用性軟件工程技術要符合新的要求,在現有體系基礎上,需要更符合實際需求的軟件工程思想和理念支撐。
首先,針對大數據特點和處理要求,應開發出數據處理能力強大的軟件系統,并配以大數據為對象的軟件工程技術思想,使用符合大數據要求的軟件工程技術方法。其次,在軟件工程過程中,技術人員常會接觸到很多過程數據,都具備大數據的特點,軟件工程技術人員應分析數據特征,找出有價值的數據群,并充分利用,探求軟件工程規律,并運用于后續工作中,這樣分析思想和方法的交替更新,必能形成基于大數據的軟件工程技術分析方法[3]。
軟件工程技術手段長時間單一,技術分析工具相對簡單,僅適用單純的分析對象,不能勝任大數據背景下的數據處理,更難全面研究大交匯數據的處理,因此,軟件工程需要新的技術手段和工具。
大數據的范圍很廣泛,在這些數據中,事務數據一般是結構化的,軟件技術人員在處理這類數據時,可用傳統技術手段和工具,但大交匯數據多是屬于半結構化甚至是非結構化的,單純以傳統方式是無法處理這類數據的。不論是存儲和管理,還是分析和應用,都需要軟件技術人員應用新的技術手段和工具。由于大數據具有范圍廣、數據復雜的特點,軟件技術人員須具備大數據并行分析能力,并可挖掘出有價值信息,這要求軟件技術人員探究針對分布式存儲的大數據的處理方法,增強對數據的實時處理能力。
軟件工程技術分析首先要做的是需求分析工作,準確理解應用者的真實需求,再確定軟件系統的功能、性能等目標,在此基礎上開始開發、測試和交付,需求分析甚至決定了項目成敗。
傳統的需求分析方式的過程較耗時,軟件設計時效性不能保證。大數據特點要求軟件工程技術分析結果必須快速推出,還要支持軟件快速升級換代,軟件工程技術人員須短時間全面收集用戶需求,并快速反應以完成相應的設計開發和測試,從測試回饋到軟件系統優化完善也是快速反應的。
在大數據背景下,獲取需求并非需要應用者現場參與,通過網上問卷調查形式廣泛收集需求,再借助大數據分析手段獲取價值需求。大數據背景下的需求分析的思想變革,能有效指導軟件設計思維和過程的變革。
軟件工程技術人才的培養要以時代需要為目標,培養方案也應是不斷優化更新的,大數據時代對人才培養方案的要求更高。大數據時代的軟件工程技術人員須有快速反應能力、敏銳觀察能力、綜合分析能力和實踐創新能力,軟件工程技術需全新的思維和創新模式,技術人員隊伍需要新鮮血液。
大數據時代軟件工程技術人員的培養刻不容緩,要制訂與大數據相適應的專業培養方案,更需要儲備與之相適應的師資力量。
綜上所述,大數據時代的全面到來,使社會各領域都不斷滲透著大數據的思想以及軟件工程創新思維,大數據會徹底改變人們工作和生活方式。作為一項重要新興技術,國家和企業都應當加大投入,研究大數據并應用于實踐,深入探索大數據背景下軟件工程的發展之路,為人們提供安全、可靠的技術,保障社會健康、穩定的發展[4-5]。
大數據不斷發展,已成為科學技術領域的主流驅動力。科技全球化既是機遇,也是挑戰,面對社會經濟發展巨大推動力帶來的機遇與挑戰,軟件工程技術在未來發展中應致力于創新與應用。大數據不斷發展過程中,軟件工程技術會越來越完善,在技術上能給予應用者全面優質服務,在信息處理的速度和穩定性上都會有大幅度提高。
軟件工程要在實踐中展開研究,改革傳統軟件理論,以創新的軟件技術解決限制軟件工程發展的諸多問題,結合現代網絡的發展,在大數據時代全面加速行業的發展。