◆劉曉霞 賈冀哲 徐嘉拓
?
關(guān)于大數(shù)據(jù)系統(tǒng)中的軟件工程管理方法探討
◆劉曉霞1賈冀哲2徐嘉拓2
(1.沈陽理工大學裝備工程學院 遼寧 110168;2. 東北大學軟件學院 遼寧 110819)
當前社會已進入大數(shù)據(jù)時代,應用軟件具有開發(fā)過程復雜、開發(fā)周期長及生命周期短、異構(gòu)系統(tǒng)間信息資源共享困難、不易維護等特點?;谶@一現(xiàn)狀,本文提出一種基于大數(shù)據(jù)系統(tǒng)的軟件工程管理方法。該方法旨在面向大數(shù)據(jù)體系結(jié)構(gòu),以大數(shù)據(jù)平臺為核心建構(gòu)統(tǒng)一的數(shù)據(jù)資源池,并以大數(shù)據(jù)—應用生態(tài)系統(tǒng)為基礎(chǔ),實現(xiàn)信息系統(tǒng)的快速搭建與海量數(shù)據(jù)的有效管理。
大數(shù)據(jù);系統(tǒng);軟件工程;管理;方法
大數(shù)據(jù)時代,信息具有冗余化、海量化特征。其作為應用軟件與所有信息新系統(tǒng)的“血液”,大數(shù)據(jù)的整個生命周期都會對軟件應用范圍、功能結(jié)構(gòu)甚至軟件使用產(chǎn)生影響。大數(shù)據(jù)時代與傳統(tǒng)信息時代不同,人們更加注重大數(shù)據(jù)的安全性、價值挖據(jù)與算法研究,更多的在于關(guān)注大數(shù)據(jù)本身與數(shù)據(jù)應用[1]。在軟件工程中,人們?yōu)榱私鉀Q軟件系統(tǒng)開發(fā)中存在的異構(gòu)系統(tǒng)問題,通過大數(shù)據(jù)挖據(jù)與建構(gòu)軟件工程管理體系,實現(xiàn)對軟件系統(tǒng)的開發(fā)與應用?;诖髷?shù)據(jù)系統(tǒng)的軟件工程系統(tǒng)功能擴展困難,開發(fā)過程復雜,難以適應結(jié)構(gòu)環(huán)境變化。因此,增加了應用軟件開發(fā)成本?;诖耍疚幕凇癝OSE”(面向服務(wù)的軟件工程),通過DOSE、大數(shù)據(jù)生態(tài)系統(tǒng)與數(shù)據(jù)資源池技術(shù)進行軟件工程管理。
DOA是一種面向數(shù)據(jù)的體系結(jié)構(gòu),在該體系下,基于DRC(data register center)數(shù)據(jù)注冊中心這一核心部件,對大數(shù)據(jù)系統(tǒng)統(tǒng)一進行標識、定義與管理。同時,通過DAC(data authority center)數(shù)據(jù)權(quán)限中心對大數(shù)據(jù)使用權(quán)與所有權(quán)進行權(quán)限管理。數(shù)據(jù)資源池中的數(shù)據(jù)需由DEC(data exception controlcenter)異??刂浦行倪M行自適應管理,以解決軟件工程開發(fā)中遇到的各種系統(tǒng)功能復雜、數(shù)據(jù)量龐大等問題[2]。
2010年,國外學者Forney M基于大數(shù)據(jù)概念首次提出大數(shù)據(jù)生態(tài)系統(tǒng)的軟件工程管理思想。其認為,大數(shù)據(jù)生態(tài)系統(tǒng)是一個信息系統(tǒng),基于大數(shù)據(jù)生態(tài)系統(tǒng)進行軟件工程管理時,會經(jīng)歷系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施與維護這一完整的生命周期。在軟件工程開發(fā)中,大數(shù)據(jù)生態(tài)系統(tǒng)為應用軟件開發(fā)提供了信息“土壤”,也為軟件系統(tǒng)應用與維護提供了現(xiàn)實可能性。大數(shù)據(jù)生態(tài)系統(tǒng)的水平結(jié)構(gòu)與垂直結(jié)構(gòu)變化,使數(shù)據(jù)量劇增,也使信息實現(xiàn)由獲取到刪除、由應用到淘汰[3]。
邏輯數(shù)據(jù)資源池以大數(shù)據(jù)為核心,以(DRC)數(shù)據(jù)注冊中心為基礎(chǔ),實現(xiàn)對軟件工程進行優(yōu)化管理:
一是基于DRC(數(shù)據(jù)注冊中心)對大數(shù)據(jù)進行邏輯管理。
在邏輯資源池中,所有大數(shù)據(jù)均要經(jīng)過DRC注冊,并按統(tǒng)一標準對數(shù)據(jù)資源進行標識與規(guī)范化處理,減少數(shù)據(jù)冗余,記錄不同數(shù)據(jù)狀態(tài)、屬主信息、數(shù)據(jù)大小、存儲地址等屬性信息。最后,數(shù)據(jù)注冊中心會將注冊后的源數(shù)據(jù)存儲至邏輯數(shù)據(jù)資源池中統(tǒng)一管理。為用戶提供數(shù)據(jù)定位與數(shù)據(jù)搜索等服務(wù)。
二是DEC(數(shù)據(jù)異常控制中心)與DAC(數(shù)據(jù)權(quán)限中心)協(xié)同對應用軟件系統(tǒng)進行維護。
DAC主要負責對用戶權(quán)限信息與角色進行管理,并采用加密技術(shù)結(jié)合大數(shù)據(jù)狀態(tài)對其加密與解密處理。DOA定義下的大數(shù)據(jù)具有應用態(tài)(大數(shù)據(jù)在應用時授權(quán)解密)與數(shù)據(jù)態(tài)(大數(shù)據(jù)在傳輸與存儲時加密)兩種形態(tài);而DEC主要負責對軟件工程元數(shù)據(jù)等進行維護,并負責檢測與控制數(shù)據(jù)資源池發(fā)生的異常。
(1)以DRC為基礎(chǔ)
DOA是基于大數(shù)據(jù)系統(tǒng)的軟件工程管理核心基礎(chǔ),DOSE系統(tǒng)以DOA為架構(gòu),DRC可通過物理數(shù)據(jù)資源池及邏輯數(shù)據(jù)資源池對軟件工程開發(fā)與應用軟件系統(tǒng)服務(wù)中產(chǎn)生的各類數(shù)據(jù)進行存儲。
(2)業(yè)務(wù)邏輯與數(shù)據(jù)邏輯實現(xiàn)轉(zhuǎn)化
在DOSE體系下,一個完整的數(shù)據(jù)邏輯過程是指數(shù)據(jù)資源池中某個數(shù)據(jù)的一次讀寫操作;一個或多個數(shù)據(jù)邏輯構(gòu)成一個DOSE業(yè)務(wù)邏輯。通過數(shù)據(jù)導向可詳細對用戶軟件工程開發(fā)需求進行了解;而數(shù)據(jù)邏輯可進一步對應用軟件系統(tǒng)開發(fā)過程進行細化。
(3)大數(shù)據(jù)生態(tài)、可持續(xù)
DOSE系統(tǒng)中,應用工具、應用需求及數(shù)據(jù)都有生命周期。若將所有數(shù)據(jù)比作“土壤”,應用比作“森林”或“樹木”,整個大數(shù)據(jù)生態(tài)系統(tǒng)為可持續(xù)、永恒、生態(tài)的軟件工程管理系統(tǒng)。
(1)大數(shù)據(jù)注冊標注統(tǒng)一化
①通過統(tǒng)一的標準對大數(shù)據(jù)注冊、定義;
②采用數(shù)據(jù)邏輯資源池進行數(shù)據(jù)管理,使同一數(shù)據(jù)存儲于多個空間;
③ 以統(tǒng)一協(xié)議在統(tǒng)一平臺下或數(shù)據(jù)注冊中心進行數(shù)據(jù)交換。
(2)大數(shù)據(jù)驅(qū)動應用
在軟件工程管理中,要使業(yè)務(wù)邏輯與數(shù)據(jù)邏輯產(chǎn)生關(guān)聯(lián)。通過大數(shù)據(jù)驅(qū)動,基于數(shù)據(jù)土壤,對大數(shù)據(jù)進行需求分析,搭建應用森林,實現(xiàn)對整個軟件工程進行驅(qū)動管理。
(3)數(shù)據(jù)與應用有效協(xié)調(diào)
通過在大數(shù)據(jù)與應用軟件間構(gòu)建完善的協(xié)調(diào)機制,基于大數(shù)據(jù)可獲得更多需求;也可基于基本功能單元實現(xiàn)對整個軟件工程中的應用軟件進行管理,結(jié)合用戶頻繁的需求變換,延長應用軟件價值生命周期。
下圖1為基于DOSE架構(gòu)的完整生命周期:
圖1 完整生命周期
K-NN分類算法(K-Nearest Neighbor)基本應用思路[4]:當給定一個新的文本后,找出在訓練集中與該文本最相似的K篇文本,然后結(jié)合其所屬具體類別,對新文本所屬類別進行判斷。具體如下:
(1) 分別輸入分類體系C與訓練集d及待分類文本d′,輸出待分類文本的具體類別;
(2) 預處理待分類本文。采用公式對待分類文本權(quán)重進行計算,并通過向量 V(d′) 表示待分類文本;
(3) 在訓練文本集中選出K個與新文本最相近的文本,并通過如下公式計算文本的初始值;
在新文本的K個鄰居中,采用如下公式對每一類文本的具體權(quán)重進行計算:
式中:
在上式中,若屬于類,則函數(shù)值=1,否則函數(shù)值=0。
(4)對類的權(quán)重進行比較,向權(quán)重最大的那個類別分配文本。
大數(shù)據(jù)時代,數(shù)據(jù)冗余化對軟件工程開發(fā)與應用軟件系統(tǒng)維護提出了巨大挑戰(zhàn)。在大數(shù)據(jù)環(huán)境下,應著力開發(fā)安全、高效、健壯的軟件,除了需要得到DOSE等技術(shù)的支持外,更要建構(gòu)一套統(tǒng)一、完整的軟件管理方法標準,實現(xiàn)對軟件數(shù)據(jù)的挖據(jù)與軟件工程的集約化、安全化管理。
[1]王建民.領(lǐng)域大數(shù)據(jù)應用開發(fā)與運行平臺技術(shù)研究[J].軟件學報,2017.
[2]孟春蕾,范廣露,李家怡等.產(chǎn)品質(zhì)量管理中的大數(shù)據(jù)技術(shù)應用分析[J].電子質(zhì)量,2017.
[3]徐良.面向數(shù)據(jù)的軟件工程方法研究[J].電腦知識與技術(shù),2016.
[4]苗放.面向數(shù)據(jù)的軟件體系結(jié)構(gòu)初步探討[J].計算機科學與探索,2016.