偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

融入開發(fā)流程 源代碼分析讓開發(fā)變得更敏捷

企業(yè)動態(tài)
美國Klocwork公司在北京裕龍國際酒店會議廳舉辦Klocwork源代碼分析最佳實踐研討會。研討會以“源代碼分析讓開發(fā)變得更敏捷”為主題,圍繞源代碼分析的作用以及如何將源代碼分析融入開發(fā)流程展開研討。
軟件質(zhì)量保證正在越來越被人們所重視,由于軟件質(zhì)量問題,可能會導致嚴重經(jīng)濟損失甚至災難事故的發(fā)生。源代碼分析技術是通過分析源代碼發(fā)現(xiàn)其中存在的代碼缺陷的技術,是提高軟件質(zhì)量最有效的手段之一。源代碼分析技術已經(jīng)有20多年的發(fā)展歷程,它不需設計測試用例,不需運行程序,因此被廣泛應用于各行各業(yè)。
2009年3月19日,源代碼分析領域的先驅——美國Klocwork公司在北京裕龍國際酒店會議廳舉辦Klocwork源代碼分析***實踐研討會。研討會以“源代碼分析讓開發(fā)變得更敏捷”為主題,圍繞源代碼分析的作用以及如何將源代碼分析融入開發(fā)流程展開研討。會議現(xiàn)場, Klocwork公司的高級技術專家Mark Grice先生詳細介紹了源代碼分析技術的發(fā)展,并結合具體技術案例講解在敏捷開發(fā)過程中,為什么以及如何利用源代碼分析技術實現(xiàn)效益***化,Mark先生還講解了如何借助持續(xù)集成的思想實現(xiàn)***時間發(fā)現(xiàn)并消除代碼缺陷的策略。
敏捷的前提是編寫無缺陷代碼
敏捷宣言中有一條重要原則:首要的進度測量標準是可正常運行的軟件??烧_\行的軟件是指軟件沒有下列問題:無法順利構建、不可預期的行為、不滿足產(chǎn)品需求及常見的編程缺陷。這一原則不只適用于敏捷方法,很多軟件開發(fā)過程,包括CMMI和六西格瑪?shù)葒栏竦拈_發(fā)模型,均提倡把編寫無缺陷的代碼作為基本原則。這些過程都采取階段內(nèi)的缺陷控制措施(防止缺陷從引入階段泄漏到后續(xù)階段)。敏捷開發(fā)過程的迭代周期短,因此,必須保證能迅速識別并糾正潛在的軟件缺陷,才能進入下一次迭代。
盡管敏捷開發(fā)團隊普遍采用了持續(xù)集成和回歸測試方法,可以有效地發(fā)現(xiàn)導致構建過程或回歸測試異常中斷的缺陷,但在清除如下幾類常見的編程缺陷時效果并不明顯:內(nèi)存及資源管理錯誤、空指針問題、未初始化變量、程序數(shù)據(jù)管理問題、緩沖區(qū)溢出、數(shù)組越界、未經(jīng)驗證的用戶輸入、存在安全漏洞的代碼、并發(fā)異常以及復雜、費時的維護性問題。缺陷多的代碼會導致本次迭代或者后續(xù)迭代產(chǎn)生風險,形成迭代不徹底或者延期。
#p#以工具助推敏捷的理想
雖然敏捷宣言中的 “個人和交流勝于過程和工具” 原則看似并不強調(diào)工具的作用,但敏捷開發(fā)團隊仍然要用很多工具來支撐——包括軟件配置管理工具、構建管理工具、需求跟蹤工具、測試工具、項目管理工具及其他工具。
敏捷開發(fā)團隊使用的大部分測試工具都將重點放在功能測試、單元測試以及構建的質(zhì)量控制上,而不太強調(diào)通過審查源代碼來識別非功能性的錯誤,比如編程錯誤。這是由于以前發(fā)現(xiàn)這些缺陷的方法太繁瑣,敏捷團隊也沒有時間做冗長的代碼審查,更不愿意為了發(fā)現(xiàn)一個內(nèi)存泄露缺陷而進行數(shù)天的審查。即使是像單元測試這種在敏捷開發(fā)中不可缺少的測試,也需要創(chuàng)建和管理測試用例才能幫助開發(fā)人員查找缺陷。
無缺陷的代碼則可保證開發(fā)的進度及敏捷性。為實施階段內(nèi)缺陷控制,編寫無缺陷代碼,需要制定一套解決方案,使開發(fā)人員能控制缺陷的發(fā)現(xiàn)和清除過程,增強開發(fā)人員間的協(xié)作,以盡早消除缺陷。
Klocwork Insight是行業(yè)領先的源代碼分析工具,全面支持各類編碼缺陷的檢查,開發(fā)人員可以控制分析的過程,還能在無需進行后續(xù)審查的情況下,獲得集中式分析的準確度和效果。Klocwork Insight支持敏捷開發(fā)的主要原則,提供下面的特殊功能:
聯(lián)機桌面分析 Klocwork能與客戶的開發(fā)環(huán)境集成,既可以在個人開發(fā)環(huán)境級分析,也可在系統(tǒng)集成建級分析。與其他工具不同,Klocwork Insight提供了聯(lián)機桌面分析功能(專利技術)。通過聯(lián)機桌面分析,開發(fā)人員可以在***時間更準確的發(fā)現(xiàn)缺陷。該功能使開發(fā)人員可以在自己的環(huán)境進行快速的本地源代碼分析,這種分析能夠收集系統(tǒng)的全局信息用于提高分析的準確度,并為開發(fā)人員提供協(xié)同清除缺陷功能。
檢入無缺陷代碼 利用Klocwork在代碼檢入代碼庫之前,通過快速的代碼分析,發(fā)現(xiàn)并消除缺陷,避免缺陷流入公共范圍和后續(xù)階段。這種無需設計測試用例、無需執(zhí)行程序的高效率缺陷掃描方法,大大提高了敏捷性。
#p#軟件度量和報告 Klocwork Insight提供了100多種客觀的、可操作的度量,這些度量可直接從軟件代碼計算得到。Klocwork的軟件度量功能可以解答關于軟件開發(fā)過程的關鍵性問題。例如,敏捷開發(fā)的一個關鍵問題是:軟件缺陷是在開發(fā)人員的桌面環(huán)境上即被發(fā)現(xiàn)并修復,還是泄漏到集成構建階段?Klocwork Insight在缺陷還未擴散到代碼流之前就能在桌面自動匯集所發(fā)現(xiàn)和修復的缺陷信息。這一獨特功能使開發(fā)團隊能更好地理解缺陷控制活動。這一功能結合客戶自定義的度量模型――將度量按照人員、開發(fā)組、地域、軟件組件或者其他任何適合于組織的屬性進行統(tǒng)計分析――可以使開發(fā)團隊在迭代初期就能識別出代碼庫里風險***的代碼。
重構 Klocwork Insight支持重構。重構是一種敏捷技術,即在不改變軟件功能的前提下,重新構造代碼單元以簡化設計和操作。Klocwork Insight提供了源代碼的圖形化表示法,顯示構成系統(tǒng)的組件、塊、子塊及它們之間的關聯(lián)、依賴關系,輔助進行代碼的影響分析。代碼的架構分析能力還可用于進行“假設(what if)”分析,以構造維護性更好、可重用、復雜度更低的系統(tǒng)。
降低總成本  敏捷開發(fā)團隊通常都是工作在需要嚴格控制成本的環(huán)境中。Klocwork Insight的綜合分析能力強,軟件開發(fā)機構只需部署一種這樣的工具,即可具備全面的功能,降低了成本:支持C、C++、JAVA多種語言;檢測關鍵性的缺陷;檢測安全漏洞;體系架構分析與再工程;生成并管理100多種軟件度量。敏捷開發(fā)團隊使用Klocwork工具后,還可降低在用戶現(xiàn)場發(fā)現(xiàn)軟件缺陷的風險,從而對軟件的實際成本產(chǎn)生直接的影響。
具有說服力的是,Klocwork開發(fā)團隊本身就是一個敏捷開發(fā)團隊。Klocwork使用Klocwork Insight對Klocwork源代碼進行分析,是源代碼分析結合敏捷開發(fā)的實踐者和受益者。本次研討會,正是結合軟件開發(fā)領域的先進理念,將Klocwork源代碼分析的應用提升到了一個新的層次,對于將Klocwork源代碼分析融入軟件開發(fā)生命周期具有現(xiàn)實意義。
責任編輯:佚名 來源: 51CTO.com
相關推薦

2014-12-16 10:59:36

奧爾良計劃開源項目

2020-10-22 10:34:04

APICloud開發(fā)平臺

2021-07-31 07:54:52

開發(fā)研發(fā)敏捷

2015-04-30 14:53:43

Build 2015微軟Azure

2009-05-11 10:48:24

敏捷開發(fā)Agile架構

2016-10-18 10:57:03

2023-06-15 15:48:36

Grafana開發(fā)前端

2019-12-06 11:14:57

Git開發(fā)系統(tǒng)

2024-09-06 10:25:32

人工智能ETL微服務

2017-11-23 11:21:58

華為云軟件開發(fā)云

2018-12-25 16:58:11

華為云

2014-04-01 13:43:28

2021-03-15 10:29:50

人工智能

2009-07-16 09:52:00

Scrum流程

2021-04-25 15:17:29

代碼軟件程序員

2012-03-23 11:11:07

百度開發(fā)者大會

2011-01-14 08:35:03

iPhoneiPad敏捷設計流程

2012-01-06 09:45:59

敏捷開發(fā)
點贊
收藏

51CTO技術棧公眾號