學術堂首頁 | 文獻求助論文范文 | 論文題目 | 參考文獻 | 開題報告 | 論文格式 | 摘要提綱 | 論文致謝 | 論文查重 | 論文答辯 | 論文發表 | 期刊雜志 | 論文寫作 | 論文PPT
學術堂專業論文學習平臺您當前的位置:學術堂 > 畢業論文 > 在職碩士論文 > 工程碩士論文 > 軟件工程碩士論文

軟件項目測試與運維中DevOps的應用探究

時間:2020-04-29 來源:電子科技大學 本文字數: 5394字
作者:郭健 單位:電子科技大學
  摘 要
  
  對于以軟件產品及相關服務作為主營業務的企業來說,快速交付高質量的軟件應用是在市場上發展的前 。隨著互聯網時代的到來,與傳統基于 PC 環境的桌面應用軟件相比,市場對基于 Web 的互聯網應用軟件 出了更高的要求:既需要像傳統軟件一樣快速高效地完成開發,還需要即時快速的部署上線,面對客戶持續的反饋進行改進,同時還應保障線上服務的穩定性。

軟件項目測試與運維中DevOps的應用探究
 
  
  國內外對軟件企業的項目管理有了很多的研究,通過能力成熟度模型 CMM 對軟件企業的開發過程進行改進,通過敏捷方法實踐如 Scrum、XP 和極限編程等框架 高軟件開發的效率等。目前這些針對軟件項目管理的各類研究,都主要集中在軟件的開發過程改進,而對與開發密切相關的測試與運維過程研究較少。本論文的研究主題是通過 DevOps 理論與實踐對基于 Web 的互聯網軟件項目測試與運維過程進行改進,進而達到 高軟件項目整體交付效率, 升軟件企業市場競爭力的目的。
  
  本文首先對軟件項目管理的歷史和發展進行了回顧,介紹了軟件項目管理的特點和各類軟件過程管理模型;然后簡述了與 DevOps 密切相關的豐田精益生產、敏捷宣言及體現敏捷原則的開發方法;接下來從軟件項目整體價值流的角度說明了敏捷開發的不足以及 DevOps 在互聯網軟件項目測試與運維過程中的價值,總結了 DevOps 在國內外的發展歷史和現狀,簡述了 DevOps 的三個核心原則;再以作者所在企業 D 公司的互聯網應用軟件項目為背景,梳理總結了項目當前所存在的突出問題,采用項目管理工具與技術對其進行了分析;最后,采用 DevOps 理念和工具對項目存在的諸多問題進行改進實踐并對效果進行了評估,肯定了 DevOps 在軟件項目管理方面起到的積極作用,希望研究成果能對企業其他同類型項目以及國內其他企業的類似軟件項目 供幫助。
  
  關鍵詞:  軟件項目管理,敏捷開發,DevOps。
  
  ABSTRACT
  
  For enterprises with software products and related services as their main business,rapid delivery of high-quality software applications is a prerequisite for the development of the market. With the advent of the Internet age, the market has placed higher demands on Web-based Internet applications than traditional PC-based desktop applications: both the need to complete development as quickly and efficiently as traditional software, and to deploy quickly and immediately, improving in the face of continuous customer feedback.At the same time, the stability of online services should be guaranteed.
  
  There has been a lot of research on the project management of software enterprises at home and abroad, and the development process of software enterprises is improved by the capability maturity model CMM, and the efficiency of software development is improved through agile method practices such as Scrum, XP and extreme programming.At present, these researches on software project management are mainly focused on the improvement of software development process, while the research on the test and operation process closely related to development is less. The research theme of this paper is to improve the testing and operation process of Web-based Internet software project through DevOps theory and practice, so as to improve the overall delivery efficiency of software projects and enhance the competitiveness of software enterprises in the market.
  
  This paper first reviews the history and development of software project management, introduces the characteristics of software project management and various software process management models, and then brieflydescribesToyota Lean Production,The Agile Manifesto and development methods that embody agile principles closely related to DevOps. Next, from the perspective of the overall value stream of software projects, the shortcomings of agile development and the value of DevOps in the process of testing and operation of Internet software projects are explained, and the development history and current situation of DevOps at home and abroad are summarized, and the three core principles of Dev O psare de scribed in detail.Again, with theauthor's enterprise D company's Internet application software project as the background, combed and summarized the outstanding problems existing in the project, using the project management tools and technology to analyze it, and finally, using DevOps concept and tools to improve the project's problems and evaluate the effectiveness, It affirmed the positive role of DevOps in software project management, and hoped that the researchresults would help other similar projects of the same type as well as similar software projects in other enterprises in China.
  
  Key words:   software project management, agile software development, DevOps.
  
  第一章 緒 論
 
  
  1.1 研究背景與意義。

  
  軟件項目是采用計算機編寫軟件程序以及撰寫技術文檔將設計實現的過程。
  
  軟件項目與實體類型的項目存在著很大的差異,在軟件的開發過程中程序設計占了很大的比例。軟件開發對實體資源幾乎沒有要求,唯一關鍵的資源就是軟件開發人員。軟件項目的產出物一般都是應用程序和文檔,并沒有類似于建筑或橋梁等實體的物質結果。由于這兩種情況的存在,針對軟件項目所需的項目管理方式與其他類型的項目相比,具有很大的特殊性。與其他類型的項目不同,軟件項目管理更多的是對過程進行管理。同時,不同類型和規模的軟件開發組織、不同類型的軟件產品開發需求,導致了軟件項目的管理差異性很大。因此,軟件項目管理與其他項目管理相比,有很大的獨特性,主要反映在軟件項目管理是對過程的管理,很難有一種通用的軟件項目管理的模型或流程能夠適用于各種軟件組織和各種類型軟件的開發。
  
  通過對國內外長期以來軟件項目管理的理論研究的結果分析,發現可以概述為以下幾種類型:綜合多種類型的軟件項目所得出的研究結論;項目管理技術和工具的運用;將其他領域知識運用于軟件項目管理過程,像將數學公式運用于風險分析。以上所述的幾種類型,大部分僅在理論層面開展了部分探討,在軟件項目的應用實踐上較少。
  
  軟件行業的標準、指導框架在不斷的豐富,比如 ISO/IEC 的標準、SEI 的 CMM模型[1]、微軟的 MSF[2]、IBM 的 RUP[3]等,這些模型與理論都有各自的局限性。在國內現階段較為普遍應用的是 ISO 質量管理體系以及 CMM/CMMI 軟件能力成熟度認證體系。ISO 較為側重于質量管理,在制造行業的應用較為廣泛,而CMM/CMMI 更多傾向于軟件開發中的過程管理,都沒有涵蓋項目管理所包含的整體。這兩大理論對于國內絕大部分軟件企業來說,系統實施所需成本較高。實施軟件項目應該在過程管理的基礎上,合理、適度采用項目管理方法所 供的各類技術,讓項目遵循計劃內的各類指標完成。
  
  近年來在大型軟件企業和創業型軟件公司風靡的敏捷開發,倡導使用多個沖刺周期以應對市場需求的不斷變化,同時鼓勵開發團隊的松散型組織與管理方式。敏捷方法從海外傳至國內,逐漸成為了 IT 行業主流的開發方式。
  
  進入二十一世紀,互聯網行業獲得了飛速發展,運行在互聯網上的 Web 應用軟件呈爆發式增長。與基于 PC 的桌面應用軟件相比,基于 Web 的互聯網應用軟件需要部署在服務器上,其軟件架構、配置環境和測試方式更復雜,實時性和穩定性的要求也更高。在當今的市場上,客戶要求每周甚至每天都能發布一個版本,即使軟件主體開發迅速完成,在軟件發布和部署的過程中頻繁失敗,或者上線之后出現各類質量問題,都會嚴重影響客戶滿意度和軟件企業的聲譽。
  
  在基于 Web 的互聯網軟件項目開展過程中,僅僅做到快速開發還是不夠的,如何在縮短軟件開發周期的同時,保證產品的質量, 高軟件部署的頻率,持續獲取客戶的反饋,是互聯網應用軟件項目要解決的核心問題。傳統的項目管理流程和軟件開發模型是很難完成這一任務的,這就需要采用新興的軟件技術與工具來改進軟件項目中的運維和測試過程。
  
  然而無論是何種軟件技術與工具,都依賴于一個溝通默契、協作順暢的團隊,而項目管理才是這一切的基礎。先進的軟件開發技術與工具只是 高軟件開發水平和獲得高質量軟件產品的重要保證,如何靈活合理應用先進的開發技術,將之融合到項目管理的知識領域中發揮它們最大的功能作用才是關鍵。唯有較好地融合軟件開發方法,將之利用于項目管理領域中,才能夠著眼于快速開展軟件項目,交付高質量的軟件,做到令客戶滿意。
  
  因此,需要通過軟件項目管理,建立起項目所需的運行環境,各類先進的軟件開發方法和技術框架,才能最大限度地發揮它們的功效,在 高軟件開發效率、升軟件產品質量等方面起到積極作用。
  
  DevOps 一詞來自于 Development 和 Operations 的組合,是指在軟件及相關服務的研發及交付過程中,將軟件的需求、開發、測試、部署和運營統一起來,基于整個組織的協作和應用架構的優化,實現敏捷開發、持續交付和應用運營的無縫集成。幫助企業 升 IT 效能,在保證穩定的同時,快速交付高質量的軟件及服務,靈活應對快速變化的業務需求和市場環境。DevOps 強調開發和運維人員之間的交流與協作,通過各類自運維方式將軟件從前期構建到最終發布的過程變得高效與穩定。DevOps 是一個關于團隊價值、自動化、持續改進等方面的綜合理論體系,是軟件項目開發、運維和質量保證三個部門之間進行合作、聯系的框架。DevOps可以讓整個組織用一致的手段對軟硬件運行環境進行管理,在任意時刻都能順利地進行部署工作,從企業價值流的整體角度出發,增強了項目開展過程中成員之間的交流與協作。
  
  目前在國外,互聯網巨頭如 Google、Facebook、Amazon、LinkedIn、Netflix、Airbnb,傳統軟件公司如 Adobe、IBM、Microsoft、SAP 等,亦或是網絡業務非核心企業如蘋果、索尼、星巴克均運用了 DevOps 或對其 供了相關支持[4]。在云計算、大數據和移動互聯這三大浪潮面前,更有效地管理和整合現有資源,進行更快速的應用交付對于任何一個企業來說都是一個挑戰。目前,其在國內的發展方興未艾,盡管如 BAT 和華為等一些知名企業開始逐漸大量引入 DevOps[5],但大部分企業并沒從業務整體的角度意識到 DevOps 所能帶來的收益。DevOps 的初衷就是消除開發與運維兩個傳統上孤立的團隊之間的壁壘,而有些組織甚至沒有獨立的開發團隊和運營團隊,工程師可能身兼兩職。
  
  通過對比來看,目前 DevOps 在中國的發展還處于起步階段。
  
  根據 DevOps 研究與評估協會組織發布的報告顯示:
  
  80%的受訪者將其主要應用程序或服務托管在云平臺上,認為大型企業組織重量級的流程和控制措施是導致較低速度,以及相關不穩定性的部分原因。
  
  根據中國信息通信研究院、華為和南京大學聯合發布的報告顯示:
  
  超過半數的企業認為需求的頻繁變更、部署集成中出現的問題過多阻礙軟件按時交付,同時認為產品質量、按時交付、客戶滿意度和研發效率的 升是判斷DevOps 是否成功實踐最重要的標準。
  
  可以看出國內外大部分企業期望 DevOps 能夠帶來更高效的交付效率, 升客戶滿意度,創造更多的商業價值,但成功實踐 DevOps 依然是一個難題。
  
  【由于本篇文章為碩士論文,如需全文請點擊底部下載全文鏈接】
  
  1.2 國內外研究歷史與現狀
  1.3 研究內容與方法
  1.3.1 研究內容
  1.3.2 研究方法
  1.4 本論文的結構安排
  1.5 本章小結
  
  第二章 理論綜述
  
  2.1 軟件項目管理
  2.1.1 軟件項目管理的目的
  2.1.2 軟件項目管理的內容
  2.1.3 軟件項目管理的特點
  2.2 軟件過程模型
  2.2.1 瀑布開發模型
  2.2.2 快速原型模型
  2.2.3 螺旋模型
  2.2.4 增量模型
  2.2.5 迭代模型
  2.3 DevOps.
  2.3.1 DevOps 相關理念
  2.3.2 DevOps 理論發展歷史
  2.3.3 DevOps 核心原則
  2.4 本章小結
  
  第三章 D 公司酒店電視二期項目現狀
  
  3.1 項目背景
  3.1.1 公司簡介
  3.1.2 項目簡介
  3.2 組織結構與流程
  3.2.1 項目組織結構
  3.2.2 項目管理流程
  3.3 項目管理的現狀
  3.3.1 運維過程耗時多
  3.3.2 測試過程效率低
  3.3.3 部署與交付頻率低
  3.3.4 項目內外溝通少
  3.4 原因分析
  3.4.1 歸納原因
  3.4.2 梳理關系
  3.4.3 確定改進重點
  3.4.4 改進方案評估標準與度量指標
  3.5 本章小結
  
  第四章 酒店電視三期項目改進
  
  4.1 組織結構改進
  4.2 流程改進
  4.2.1 審批流程簡化
  4.2.2 部署過程改進
  4.2.3 測試過程改進
  4.2.4 運維過程改進
  4.3 溝通與能力改進
  4.3.1 重塑項目組文化
  4.3.2 開展運維技能培訓
  4.3.3 使用 ChatOps 技術快速共享信息
  4.3.4 建立項目知識共享平臺
  4.4 改進結果
  4.5 本章小結

  第五章 總結。

  DevOps 是軟件開發領域一個較為年輕的概念,正處于快速發展之中。本文通過 DevOps 結合項目管理領域進行了如下研究:

  1、介紹了軟件項目管理的發展以及 DevOps 的產生背景,對 DevOps 的原則、目標和核心進行了闡述。

  2、對 CH 集團 D 公司基于 Web 環境的互聯網項目現狀和根因進行了深入分析,確定了使用項目管理工具和技術與 DevOps 理論實踐相結合的方式來實現對酒店電視云端軟件項目的改進。

  參考文獻

  原文出處:郭健. 基于DevOps的D公司軟件項目管理改進研究[D].電子科技大學,2019.
    相關內容推薦
相關標簽:
  • 成都網絡警察報警平臺
  • 公共信息安全網絡監察
  • 經營性網站備案信息
  • 不良信息舉報中心
  • 中國文明網傳播文明
  • 學術堂_誠信網站
买股票的软件