
引言:近年來全球軟件服務外包市場快速發展,但國內的軟件服務外包產業在發展上仍然存在很多制約,軟件園規模偏小,產能不足,管理水平不到位,在軟件協作方面,只在局部小范圍內開展,數據沒有統一,無法實現在線編碼,因此,開發出一個具有現代化管理水平的軟件服務外包協作平臺,加強軟件開發流程化和協作化,實現軟件項目自動化,就變得非常緊迫,本文對軟件服務外包協作平臺的設計與實現進行了探討。
軟件服務外包(Software Outsourcing)指的是發包方(即服務外包提供商)以合同的形式,通過提供信息技術外包(UNO)和業務流程外包(CTO)將軟件開發業務委托給專業化的軟件公司(既服務外包接包商)去完成,以獲得高質量、低成本的軟件產品的一種業務管理模式[1]。
近年來全球軟件服務外包市場每年以29%的速度增長,2008年的規模是700億美元,2009年增長到900億美元[2]。全球軟件服務外包市場的快速發展,為我國軟件產業和軟件服務外包產業的發展提供了空前的歷史發展機遇,成為了我國軟件產業向產業鏈高端提升的重要途徑。北京、上海、南京等多個城市陸續建成“中國服務外包合同中心”和國家級軟件園區,重點發展國際離岸軟件服務外包業務。2009年我國軟件外包市場達到46億美元,軟件服務外包成為我國信息產業新的增長點[3]。由于這一產業具有智力人才密集、技術承載高、附加值大、資源消耗低、環境污染小、國際化水平高等特點,所以它已成為了當前新一輪產業轉移的重要推動因素,對我國企業蘊藏了巨大的發展機遇。
軟件服務外包行業屬于技術密集型兼勞動力密集型行業,對提高我國信息技術發展水平,改善就業又具有特別重要的意義。但在發展上仍然存在許多制約:軟件外包產業在中國發展時間短,中高端開發項目經驗積累較其他軟件外包大國仍顯不足;軟件園規模偏小,產能不足,技術研發與項目管理都受到相當的限制,對發包單位的吸引力不大,可信度不高;產業鏈不完善,國內大多外包公司都是以類似作坊的形式,扮演著軟件開發定制一條龍服務的角色,產業內尚未出現精細分工的企業[4]。軟件服務外包協作管理水平也跟不上,盡管軟件園區或多或少的使用一些辦公軟件或協作軟件,在基本上是以辦公軟件為主,在軟件協作方面,只在局部小范圍內開展,數據沒有統一,開法實現在線編碼。
在軟件產業全球化的今天,必須實現軟件外包服務的軟件開發流程化和協作化,加強軟件企業的分工合作,降低成本,提高軟件園區內企業的核心競爭力和軟件園的整體競爭力,增強國際認可度。為達到到這一目的,開發出一個具有現代化管理水平的軟件服務外包協作平臺,加強軟件開發流程化和協作化,實現軟件項目自動化,非常有必要,通過系統平臺支持用戶在任何時間任何地點在線進行項目合作開發,多企業進行對同一個項目開發過程中方便地交流與協作,真正實現軟件項目協作無縫開發。
1.系統求分析
建立軟件服務外包協作平臺是為軟件園區內的外包服務企業提供了一個將整個開發環節的工作流程化、標準化的類似工業制造流水線的軟件交互平臺,覆蓋整個軟件生命周期,為園區企業開展軟件開發和評測業務提供有效支撐,至少應該能達到下列要求:
(1)能夠進一步降低園區外包企業外包管理成本,增強競爭力。
(2)為項目組成員及管理人員提供快捷的項目管理服務。
(3)用戶可以在服務器上保存相關文檔,并與項目組成員進行協作開發和在線交流。
(4)項目組成員能即時查看項目所處階段以及完成情況。
(5)能幫助管理員對項目組成員進行工作分配。
(6)可在園區網上及Internet網上運行。
(7)統一的數據標準,較少的數據冗余和可靠的數據完整性。
(8)具有較強的功能擴充性。
另外,平臺力求建立起一個以交付界面為核心,集協作開發、項目管理和項目組成員分配功能于一體,同時滿足在線編碼,支持多種格式文檔上傳下載瀏覽并支持項目組成員直接交流的多用戶在線協作交流等要求。
2.系統設計
企業在接到一個項目后,將項目進行模塊劃分,根據任務的不同分配給不同的企業,多個單位多個任務并發進行將大大減少開發時間,節約開發成本提高經濟效益,在開發項目的同時及時對項目進行跟蹤,檢測以提高軟件質量滿足客戶要求。各個企業的分工并發合作所產生的只是訂單的部分功能,提供一個平臺銜接成品的各個功能,使其成為一個完整的項目。技術的交流在軟件開發中顯得至關重要,因此交流協作功能的實現能及時處理軟件存在的問題,縮減開發周期。開發環境的搭建是軟件開發的基礎,軟件園內各個企業相互交流共享軟硬件資源,不但能節約開發成本,對軟件園團結合作的整體形象有很大的促進作用。
基于上面考慮,參照工業生產流水線方式,該系統平臺的用戶分別為發單企業、接單企業、園區企業等對應的相關負責人和開發人員,相應的權限由管理員設定。對每一個項目進行按開發階段進行工作分配,這樣能夠將一個項目分配給多個企業(成員)進行開發,每個項目組成員只需負責完成自己分配到的工作即可,當所有參與此項目的工作均完成后,則項目進入下一個開發階段。根椐實際軟件公司的協作關系,可以把系統劃分為項目管理平臺模塊、企業管理平臺模塊、在線交流平臺模塊、環境協作平臺模塊,具體如下:
項目管理平臺:各個公司的項目經理通過其管理員身份將項目接下之后,在各公司內部進行開發工作,并且將每天的開發進程做成工作日志(日志包括項目進度,所遇到的問題,解決方案,是否解決,問題提出人等)由項目經理上傳至平臺服務器,發包團隊可在平臺下載各個公司每天的工作日志進行核查,并將總得項目進度發于接單中心的交流平臺,客戶通過登入后便可查詢自己項目的進展狀態,當所有項目都完工時,各公司項目經理將各項目上傳至服務器,發包團隊項目經理登錄后將所有項目原碼下載進行整合及測試,錯誤部分則及時反饋給承接公司進行修改,測試合格后將軟件項目發給發包方。
企業管理平臺:各個公司在對各自的項目進行研發時,假如在人才經驗,設備技術方面發生欠缺,其公司的項目經理可在企業管理平臺發布需求信息,對技術人才和設備進行短期的租賃。
交流平臺:園區內部工程師技術與問題的交流的論壇區,各公司的工程師只要在協作平臺進行注冊之后均可在該趨于發表問題和對相關技術進行討論。
環境協作平臺:每個項目都需要特定的環境平臺,接包團隊在對項目進行深入了解后將所需的軟件和硬件環境公布于環境協作平臺。在軟件協作方面不僅能協作開發,同時應該滿足在線編碼。系統的功能如圖1所示:
3.實現方案
本網站平臺采用MVC設計模式,通過模型(model)-視圖(view)-控制器(controller),支持網站三層架構中的數據罷、表現層、業務邏輯層。網站使用spring+Struct+Hibernate,實現了表現層和業務邏輯層,spring充當了管理容器的角色,Struct框架能很好得分離了顯示層和業務邏輯層,降低耦合性, Hibernate則很好得完成對數據層的數據持久化處理的重任。在業務邏輯層中對數據庫的訪問,由Hibernate對JDBC進行了非常輕量級的對象封裝來完成,達到了對象與數據庫直接的映射,使得對數據庫的持久化操作更加方便、安全,在數據層使用sqlserver2008作為數據層的支持。網頁中內嵌用java開發的application,在Java Applet中,可以實現圖形繪制,字體和顏色控制,動畫和聲音的插入,人機交互及網絡交流等功能,實現了人性化的協作平臺上的項目管理控制服務。
參考文獻
[1] 黃慧.中國服務外包產業的發展及策略分析[D].北京:對外經濟貿易大學.
[2] 劉財輝,劉福來. 基于“服務外包”的高師院校計算機專業人才培養模式的思考[J] .計算機教育,2010(10).
[3] 劉輝,石程.我國服務外包產業經濟效應分析—以軟件外包行業實證分析為例[J].南華大學學報(社會科學版),2013,11(2).
[4] 蘇昭,吳金舟.軟件服務外包研究綜述[J],科技廣場,2013(6).
作者簡介
歐陽(1993-),女,漢族,浙江溫州人,溫州大學數學與信息科學學院,本科在讀,從事信息管理研究。
何明昌(1964-),男,漢族,廣西賀州人,碩士,溫州大學數學與信息科學學院副教授,從事數據庫研究,指導教師及通訊作者。
基金項目
國家級大學生創新創業訓練計劃項目(項目編號:201210351014),溫州大學創業教育教改項目(項目編號:2013JG01),溫州大學系列教項目(項目編號:12jg10A),浙江省大學生新苗計劃項目(2013R424013)。
(作者單位:溫州大學數學與信息科學學院)