軟體自動化方法

軟體自動化方法是藉助計算機系統實現軟體開發的方法。以軟體控制論為指導,將控制理論套用於軟體工程領域,以軟體過程作為被控對象,通過分析和最佳化軟體過程中的反饋機理,達到改進軟體過程、提高軟體質量的目的。

基本介紹

  • 中文名:軟體自動化方法
  • 外文名:software automation approach
  • 套用領域:軟體開發
  • 分類:測試、控制
簡介,主要方法,分類,軟體測試自動化,發展,工作過程,自動化測試工具,自動化管理,

簡介

軟體自動化主要涉及軟體開發、軟體規約、自動生成和自動驗證等。21世紀以來,信息產業在全球範圍內的影響越來越大,軟體系統逐漸滲透至各個工業領域,並促進這些工業領域不斷發展進步。與此同時,軟體系統的規模和複雜度急劇增加,在軟體研發過程中不可避免地存在人為錯誤,從而導致軟體設計或實現存在缺陷,使得軟體系統運行期間的行為越來越難以預測和控制。一旦以特定輸入參數或執行流程運行軟體,缺陷就會被激活,產生軟體故障,這樣不但造成大量的財產損失,而且可能付出生命的代價。為提高軟體質量以儘量降低軟體發生故障的風險,有必要在軟體研發過程中採取適當的控制措施。而且,在軟體設計、開發、測試、運行和維護過程中確實存在大量的反饋機理,為利用控制理論解決軟體工程問題提供了充分的施展空間。軟體自動化就是利用相應的理論依靠軟體來實現某些功能。

主要方法

軟體自動化的實現方法主要有演繹綜合、程式轉換、歸納綜合和過程實現。

分類

軟體自動化可以分為分低級自動化、中級自動化和高級自動化等層次。可理解為從形式的軟體功能規約到執行的程式代碼這一過程的自動化。

軟體測試自動化

發展

隨著現代社會信息化網路的發展,作為軟體工程的一個重要組成部分,在軟體的整個開發過程中,軟體測試占有越來越重要的地位。軟體測試的意義不僅僅在於發現系統中所存在的錯誤,更表現在經過各種各樣的測試技術與方法對軟體系統進行測試後,可以有效提高軟體系統的質量,並提高測試人員對產品質量的信心。儘管對軟體中所存在的錯誤不能做到全部預測,然而經過軟體測試後,能夠對軟體故障的可能性及故障後果的嚴酷程度進行準確判定。通過軟體測試,能夠將系統中軟體出錯的幾率限制在可接受的範圍內,因此極大提高了軟體質量的可靠性。
傳統的軟體測試方法主要採用人工測試,需要耗費巨大的人力資源,測試周期較長,測試的效率很低;並且非常依賴於測試者的個人經驗,容易受到個人思維習慣的影響,導致測試工作的遺漏和錯誤。由於軟體開發的時間逐漸減少,以及軟體開發的規模逐漸擴大,軟體測試出現的問題越來越多,軟體測試自動化技術的利用已成為軟體測試發展的必然趨勢。軟體測試自動化技術能夠快速徹底地對軟體系統進行測試,並排除那些由於測試人員個人思維習慣導致的測試遺漏與錯誤,從而有效地提高軟體質量,省去大量人力資源和成本,減少軟體開發的時間。

工作過程

軟體自動化測試即通過機器代替人力對軟體進行測試,通過使用相關的軟體自動化測試工具和編寫測試腳本來實現。
目前,軟體自動化測試重點體現在軟體測試過程的管理自動化,動態測試的自動化,例如性能測試自動化與功能測試自動化等。測試自動化可以從以下兩個方面來理解:一是測試的自動化流程,其次是測試結果的自動化分析。測試的自動化流程就是測試者沒有必要逐個利用測試用例進行測試。測試結果的自動化分析就是測試者沒必要自己分析和記錄測試數據的流程以及測試的中間結果,如果測試過程中出現錯誤,自動化測試工具自動報告錯誤,並給出一些重要線索,使測試人員能夠對測試中出現的問題做到快速定位。
自動化測試主要是通過測試腳本來測試待測試應用程式集的,而測試腳本就是由自動化測試工具提供的,測試腳本就是在特定的環境下使用指定的語言(如C#)編寫並實現的代碼,按照軟體測試系統方法的不同,它既能夠被看作是利用某些特定語言,對測試功能做出解析的文本,或者被看做是一個簡易的“批處理”命令,還能夠被看作功能強大的更加複雜的腳本語言程式片段。

自動化測試工具

目前,市場上存在的軟體測試工具已經非常多樣化,儘管很多工具無法像被預期的一樣,具有自動化和有效性的特點,然而這些工具在找出軟體運行錯誤,提高質量問題的方面存在著必不可少的作用。一般軟體自動化測試工具可分為黑盒測試工具、白盒測試工具、測試管理工具及專用測試工具等四大類。

自動化管理

自動化管理依據的原理就是程式設計師採取一些專業知識運用在計算機當中,當前,在這之前需要相關操作人員在計算機當中輸入各種代碼,從而啟動計算機為人們服務。其中,代碼存儲在計算機當中,之後通過採取計算機和存儲器的作用,經過一定時間的運行最後就可以逐步生成一些可具備控制性的自動化軟體。對於計算機來講,存儲器的功能比較強大,存儲器可以將現實生活當中的一些複雜以及難以進行人 工操作的作業場景通過數據的這樣一種形式固定存儲到計算機的內部,與此同時,計算機經過一系列複雜計算,之後,再通過圖像或者圖表的形式顯示,甚至可以實現對生產真實場景的模擬。

相關詞條

熱門詞條

聯絡我們