馬語晗, 鄭旭飛, 趙欣
1.西南大學 計算機與信息科學學院 軟件學院,重慶 400715;2. 重慶市軟件評測中心有限公司,重慶 400799
進入二十一世紀,信息技術快速滲透到經濟建設和社會生活的各個方面.而軟件作為信息社會的物質核心,已成為我國重要的支柱產業之一[1].軟件產業的發展狀況是衡量一個國家綜合國力的標志之一,也是引領新一輪科技革命的關鍵力量.其中,重慶市軟件產業也保持了快速發展勢頭,通過兩江數字經濟產業園、渝北仙桃大數據谷等4大重點園區形成了較好的集約效應,培育出了中冶賽迪、長安軟件、金算盤、豬八戒網等多家本地知名軟件企業.重慶市軟件產業整體呈現平穩向好發展態勢,收入和利潤均保持較快增長.
通過對近20年來重慶市軟件產品的跟蹤統計,發現全市軟件產品的數量和質量總體上是在逐步提高的.但當前重慶市軟件行業的整體規模仍較小,絕大多數軟件企業還是從業人數在50人以下的小企業.因此,為探索重慶市軟件行業產品的發展現狀及趨勢,本研究以重慶市軟件評測中心收集的近20年重慶市軟件產品測試數據樣本為依托,從第三方軟件測評角度,結合軟件產品的企業地區分布情況、軟件產品類型、軟件外部質量特性指標等屬性,對重慶市軟件行業產品發展現狀進行可視化分析;結合軟件行業的現有政策背景對統計結果展開深入討論,探索重慶市軟件行業產品未來的發展趨勢,為重慶市軟件行業發展提供有力的數據支撐和政策參考.
數據準備工作是進行數據分析的基礎,主要包括數據采集和數據清洗兩個方面[2].數據的準確性直接影響分析結果的客觀性.因此,數據的準備工作十分重要.本研究通過大量的前期調研工作并結合實際研究目的來確定數據采集指標.采集指標主要包括: 所測軟件產品的基本信息(軟件名稱、軟件版本號、軟件類型、測試類型)、所測軟件產品的外部質量特性指標(軟件總功能數、測試總用例數、功能測試用例數、易用性測試用例數、可靠性測試用例數等)、所測軟件產品的企業基本信息(企業名稱、企業地址)等.
采集重慶市軟件評測中心自2001年以來的5 005個重慶市軟件產品測試樣本,經過篩選后得到數據: 軟件產品基本信息3 887條,軟件測試基本信息3 887條,軟件外部質量特性指標2 108條,軟件產品特點指標2 106條,企業基本信息1 420條.其中,軟件外部質量特性指標和軟件產品特點源自2009年-2020年軟件測試技術檔案,需編寫自動化腳本結合人工操作進行數據抽取,數據采集示意圖見圖1.
由于Python自動化腳本采集的原始數據類型不一,部分文檔存在數據重復采集且格式不規范等現象.因此,本研究對采集的數據進行如下處理: 清理異常值、糾正錯誤數據、清除重復值以及規范數據操作.通過上述步驟將不同數據源中不同格式的數據轉換成了統一的格式,并去除錯誤記錄、重復記錄,補充遺漏記錄,以提高數據質量[3].除此之外,對于存在異常值的數據需結合測試報告等文檔進行充分比對后完成數據核驗.

圖1 數據采集示意圖
為加強對測試樣本數據的管理,并提高管理效率便于開展后續的分析工作,本研究根據需求構建企業基本信息表、軟件產品基本信息表、軟件產品測試情況信息表以及軟件產品外部質量特性指標表.在數據庫的選取上,選擇MySQL數據庫.與其他大型數據庫的設置和管理相比,MySQL數據庫復雜程度較低、容易學習、可移植性較強,便于后續維護[4].
重慶市軟件產品質量數據庫的建立是對重慶市軟件產品現狀的數字化體現,具有重要的研究意義.同時,又極具實踐意義,實現了對測試樣本數據的共享,減少了數據文檔的冗余度,便于對測試樣本數據進行集中控制以有效分析重慶市軟件行業產品發展現狀,為后續重慶市軟件行業產品的相關研究提供參考.
2001年-2021年采集的軟件產品基本信息為3 887條,對數據進行清洗和處理后,剩余數據3 879條.以年份為橫軸,軟件數量為縱軸繪制軟件產品類型年度數量分布圖(圖2).由圖2可知,2001年-2021年,軟件數量整體呈現上升、下降、再次上升趨勢,其中: 2001年-2005年和2010年-2014年,軟件數量呈現上升趨勢,漲幅較大;2006年-2008年,軟件數量整體趨于平穩,保持在150個左右;2015年,軟件數量顯著下降,但于2016年-2021年有所回升.總體來看,軟件數量總體呈現波動上升趨勢,軟件行業發展方興未艾.
從分布情況看,軟件產品類型以信息管理系統和應用軟件為主,數量占比約為71%.2005年-2017年重慶市自主開發的嵌入式軟件、特定外設應用軟件的市場前景較好[5],數量占比共約10%,隨著對汽摩、電子、裝備制造等“硬產業”發展的傾斜度和扶持度增大,占比將進一步提高.此外,財務軟件、多媒體應用類軟件、辦公自動化系統、教學軟件持平,數量占比各約2%.
結果表明,重慶市軟件行業整體蓬勃發展,軟件產品類型日益增多.但測試樣本數據表明重慶市軟件行業整體存在“重硬輕軟”的現象,應促進各方向均衡發展,重點發展政府管理、民生服務、公共安全等行業的應用軟件.除此之外,在新興軟件上,可以重點發展大數據、云計算、人工智能等領域的軟件產品[6].

圖2 軟件產品類型年度數量分布圖
2001年-2021年采集的企業地址共1 420條,對數據進行清洗去重且剔除不是重慶的企業地址,剩余數據1166條.初步統計表明,測試樣本數據中軟件產品所屬企業大致分布在包含主城區在內的12個區縣,且具有較強的集聚效應: 渝北區占16%,沙坪壩區和渝中區各占12%,北部新區占14%,其他地區則主要分布在豐都縣、涪陵區、永川區以及北碚區等區縣.軟件產品所屬企業地區分布具體情況如圖3所示.
結果表明,經過不斷發展,軟件產業集約成效突出.其中,北部新區作為兩江新區的核心區,軟件產業發展迅速;渝中區依托總部經濟和金融中心著力打造外包產業集聚區;江北區憑借接近城市中心優勢吸引部分企業入駐.此外,永川、北碚、沙坪壩、南岸以及巴南等地區的企業也利用各自的資源優勢促進了軟件產業的差異性發展.總體來看,產業集群效應初步顯現[7].

圖3 軟件產品所屬企業地區分布圖
2009年-2020年采集的軟件外部質量特性指標共2 108條,對數據進行清洗去重以及核驗后,剩余數據2 049條.根據測試時間對軟件產品進行升序排序并編號.以軟件產品序列號為橫軸,以軟件外部質量特性指標為縱軸繪制散點圖(圖4),其中: FC表示功能測試用例數;IS表示信息安全性測試用例數;FT表示容錯性相關測試用例數;RT表示可靠性測試用例數;TA表示可移植性測試用例數;EP表示效率、性能測試用例數;MB表示可維護性測試用例數;RS表示運行穩定性測試用例數;CP表示兼容性測試用例數.

圖4 軟件產品外部質量特性指標散點圖
由圖4可知,2001年-2020年,IS,MB,RS,CP指標數量變化較小.2014年-2020年,測試樣本數據中軟件產品的功能點增加,FC指標呈上升趨勢.2018年-2020年,RT,TA,EP指標數量呈上升趨勢.結果表明,RT指標與TA指標呈正相關,軟件產品性能測試用例數指標的提升與可移植性、可靠性等其他因素有關[8].良好的可移植性可提高軟件的生命周期,是軟件產品的能力屬性,與重慶市軟件行業環境(軟件環境、硬件環境)快速發展密切相關.軟件可靠性測試用例數比重提升,表明對軟件的可靠性達到較高要求、軟件中殘存錯誤數較小.
功能點法是可信度高的軟件規模度量方法,基于用戶需求來衡量軟件的整體規模[9].以年份為橫軸,軟件產品平均功能點數量為縱軸繪制軟件產品平均功能點數量趨勢圖(圖5).由圖5可知,2009年-2020年,軟件產品平均功能點數量整體保持快速增長態勢.2013年-2014年達到低谷,軟件平均功能點數量為19個.2015年-2018年,軟件產品平均功能點數量增速較平穩.2019年-2020年呈較大幅度增長.通過對軟件產品平均功能點數量進行統計,側面反映了軟件產品的規模和復雜程度.
結果表明,軟件規模大小整體呈現逐年上升趨勢且保持快速增長態勢,與重慶市政策、區位等因素密不可分.其中,重慶市為促軟件產業發展,于2008年和2010年建成保稅區,吸引大量軟件巨頭,致使軟件產品規模大幅提升;2014年出臺相關政策,經認定的軟件企業可按規定享受優惠政策,導致軟件產品數量增多;自2019年以來,集防疫物資盤點、新冠肺炎疫情實時地圖等多功能為一體的軟件產品嶄露頭角,成為重慶在建工程項目復工復產的“利器”.

圖5 軟件產品平均功能點數量趨勢圖
由于測試樣本數量較大且紛雜,搭建數據可視化平臺可以針對同一類型的數據形成不同形式的可視化目標,具有較強的實用性[10].除此之外,充分利用可視化技術形成重要信息圖表,將有助于研究人員更好地分析現狀及趨勢[11].本研究采用B/S架構來搭建基于Boot Strap框架的Django系統.該系統主要包括主頁、數據分析、圖表展示3個模塊,其中,主頁界面(圖6)展示了軟件產品、軟件測試類型、軟件類型的數量及相關政策和測試標準.
依據不同的展示對象對測試樣本數據進行分類后搭建數據分析模塊.該模塊主要實現了對數據庫中基本信息的查看以及多條件查詢功能,用來輔助研究人員進行數據分析工作.圖7和圖8分別展示了對軟件產品基本信息數據的多重條件查詢功能以及對軟件產品外部質量特性指標數據的管理功能,便于研究人員在龐大的測試樣本數據中篩選出需要的數據并進行管理.同時,為滿足交互需求,該模塊還增添鼠標懸停、分頁展示等操作.

圖6 主頁界面

圖7 軟件產品基本信息查詢界面
圖9所示的3個子圖均為平臺圖表展示模塊[12].利用文本處理方法對軟件產品名稱分詞,進行詞頻統計后繪制詞云圖(圖9c).詞云圖展示軟件產品的研究熱度,表明智能化、信息化、大數據、服務、管理等領域的軟件產品占比較高.圖9a和圖9b分別展示2001年-2021年軟件測試類型分布情況和軟件測試類型(按年份)統計結果.

圖9 圖表展示模塊
基礎餅狀圖表明測試類型主要以登記測試、驗收測試和確認測試為主,每組數據相對于總數的占比分別為77%,12.4%和9.6%.堆疊柱狀圖不僅反映了“總量”與“結構”,還形象地展示了大分類下各小分類的占比[13],表明2001年-2014年隨著全市軟件行業的快速發展,所測試的軟件產品數量整體呈現平穩上升趨勢.2014年,國務院頒布《關于取消和調整一批行政審批項目等事項的決定》后,軟件登記測試數量略有減少,驗收測試和確認測試等大型測試項目比重有較大提升.
本研究通過采集重慶市軟件評測中心自2001年以來近20年重慶市軟件產品的測試樣本數據,建立了重慶市軟件產品質量數據庫.以數據庫為依托,對測試的軟件產品所屬企業基本信息、軟件產品基本信息以及軟件外部質量特性指標等數據展開深入分析研究,利用數學統計方法結合圖表工具展現重慶市軟件行業產品的發展現狀及變化趨勢;搭建數據分析可視化平臺,將統計結果以餅狀圖、柱狀圖、詞云圖、地區分布圖等可視化圖表形式呈現,直觀展示重慶市軟件產品近20年發展趨勢.通過數據可視化技術將各類測試數據以及繁雜的統計結果變得簡單易懂,增加決策的準確性[14].
綜上所述,重慶市軟件產業呈現平穩快速發展態勢,取得顯著成效;軟件產業地區集聚效應凸顯、產業生態持續優化;軟件復雜度和規模度呈平穩上升趨勢,軟件產品可靠性、可移植性、效率、性能等指標的比重提升.縱向對比,企業普遍存在“重硬件、輕軟件”現象.現有軟件產品在大數據、云計算等新興領域還處于起步階段,創新能力較弱.還需充分結合重慶市的實際情況,加速制造業向智能化、服務化、生態化發展的轉型,實現工業軟件產業的優化升級,促進軟件產業的快速發展[15].