• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    嵌入式軟件測試危機的趨勢和對策

    發布: 2007-8-26 10:27 | 作者: 網絡轉載 | 來源: 網絡轉載 | 查看: 446次 | 進入軟件測試論壇討論

    領測軟件測試網 摘要: 嵌入式軟件不僅要體現最終用戶的需求,而且也要體現系統設計和硬件的要求。所以,嵌入式軟件開發變得很復雜,計劃也屢屢推遲。軟件開發者們在和測試人員協作的同時,必須時刻意識到自己作業的質量。
            嵌入式軟件開發就是接受需求方的要求,在系統設計選擇技術的前提下,為實現系統而完成的工作.


            對于嵌入式軟件的需求有機能類需求和實現機能的硬件控制需求兩種.嵌入式軟件開發雖然重視縮短產品的投入期,但是,在圖1所示的情況下,需求的最終決定無論怎樣都有晚于開發的傾向.

            接受最終用戶的需求,系統設計的需求,硬件控制的需求.來開發嵌入式軟件.

            各種需求的整合性需要在開發中進行檢查

            軟件開發現場陷入的困境

            最近由于嵌入軟件的缺陷,造成了最終產品的回收。軟件的質量問題被提上日程。

            實際上,在產品的開發現場,正在重復著以下的狀況

    -由于不能決定軟件的控制設計,功能的組裝沒有按計劃進行
    -功能增加,組裝在不完整的狀態下不得不開始測試
    -實施測試的時候,發生軟件的質量問題,測試首先停止
    -為了能推進測試,用拍手代替要求和月收入,技能的組裝首先停止
    -功能的引入不及時,不能保證最初的產品計劃
    -為了讓產品的市場投放時間領先,在卻少一部分功能的狀態下把產品投入市場。
    -質量的認定不及時,產品投入市場后,在市場上問題被發現。

            就是這樣這樣的八方堵塞的狀況,軟件開發人員為了提高最終產品的軟件質量,怎么做才好呢?一開始,怎么做,才能更好的評定[軟件的質量]呢?

    軟件的品質是什么

            軟件所追求的就是按需求進行動作。為了實現最近的復雜的控制系統,必須進行需求分析,防止需求的遺漏。還有,有必要事先做好即使發生異常也能安全的處理方案。

            為了滿足這樣的要求,有效率的開發是理所當然的。同時,開發人員本身也要時刻意識到自己開發的軟件的質量,具備質量是自己的準則。軟件質量的測量是按照質量基準進行核對,同時,也是開發人員應該凝聚智慧的地方。

            例如,假設要做一個把鍵盤輸入的數據加大一倍,存儲到寄存器里的程序。這個程序從起動條件(鍵盤輸入)和數據中算出結果,把結果保存到積寄存器。在這里,如果能夠按要求把從鍵盤輸入的數據計算出結果并保存到寄存器,我們就認為它的質量能夠保證。定義了有鍵盤的輸入數據和計算結果,就是需求設計的質量。按需求設計要求,把結算后的結果保存到寄存器,就是軟件的質量。

            所謂的軟件質量測量就是對開發的程序,一個一個確認它符合需求設計。在管理上,檢查設計內容,用測試點的數目來評定質量狀況。

            如果著眼于軟件開發的過程,那么對軟件質量有最大影響的就是成為軟件開發中心的設計工程。在設計工程中,造成質量低下的原因,列舉一些。

    - 沒有根據需求分析進行設計(對需求分析中沒有明確的內容簡單的理解,就進行組裝。
    - 對產生的制約和問題在沒有設計方針的情況下即興發揮的設計
    - 對要求以外的狀況發生時的動作沒有充分研究就進行組裝。
    - 各協作者間沒有充分的檢查,設計就結束了。
    - 聯想最終用戶的使用場景來保證品質
    - 軟件工程學就是從[怎樣使軟件通過測試]而一路走過來的.

            軟件開發人員本身進行測試的時候,把關于缺陷的調查反饋到設計(為了不重復相同的錯誤),這對為了通過測試的軟件開發是有用的.把軟件的品質從設計階段開始提高的思考方法,叫做解決本質的方法.圖2表明了開發工程和測試工程的關系.

            但是,為了提高設計的質量,應該遺失到那些呢?重新研究基本的開發作業是捷徑.要同時考慮上流工程和下流工程進行開發作業,特別是下流工程,盡可能的擴大考慮范圍,聯想最終用戶的場景,設定質量的檢查點.

            從系統分析到實裝是開發工程,每個開發工程都對應測試工程.從而保證質量.各工程間設置檢查點, 盡可能的擴大考慮范圍,從最終用戶使用的角度設置檢查點.

    由軟件開發人員測試的局限性

            為了保證軟件的質量,盡可能早的預測可能發生的缺陷,把缺陷事先在上流工程解決掉,這是最理想的.為了盡可能的在上流工程保證質量,象前面所述的,在開發工程中設置幾個檢查點是必要的.也就是軟件測試能夠檢驗開發作業的內容,評定開發作業的質量.但是,現在的情況是,應該檢驗開發作業內容的軟件測試,卻作為保證質量的最后要塞發揮著作用.

    軟件測試要素

    單元測試
    -CPU為單位的子系統的控制軟件的質量檢測
    -檢測控制軟件是否按設計動作
    -對于開發的程序進行全邏輯覆蓋測試

    單元集成測試
    -CPU為單位的子系統的質量檢測
    -檢測嵌入到硬件的軟件是否按設計動作
    -使用實際的硬件測試是否全部滿足硬件的要求

    系統測試
    -多個CPU的系統控制軟件的質量檢測
    -檢測構成系統的控制軟件是否遵守接口設計進行控制
    - 進行系統的模塊間的接口的全邏輯覆蓋測試
    - 多個CPU的系統的質量檢測
    -檢測系統是否滿足上位要求
    - 對于系統要求進行全邏輯覆蓋測試

            軟件開發的作業內容大致分為分析,設計,制造,測試四個工程。最近由于開發對象的復雜化,有軟件開發組分擔各工程的傾向。

            每個工程的作業者改變的時候,因為必須要明確各工程的成果物(下一個工程的輸入),成果物要清晰的完成和管理。另外,結合作業人員的特點(擅長分析,擅長制造等)來分工,能夠提高整個隊伍的作業效率。

            開發人員和測試人員分開作業的場合,有交付日期催促的開發人員象抓住救命稻草似的,把軟件質量的保證全權委托給測試人員。這樣一來,在測試工程中,很多的缺陷被檢查出來,

            開發人員反倒要被最佳處理這些缺陷的任務。這種全權委托給開發人員帶來的好處,是引起惡性循環的原因。

            另外,單元測試由開發人員進行的時候,由于測試的內容是開發者自己完成的東西,一旦開發者誤解了設計,就會按照誤解的內容進行確認。一旦通過單元測試,到結合測試也沒有發現這個缺陷,那么用于對策的時間就會變短,最壞的可能是延遲產品投入市場的時間。

            開發人員如果進行測試,雖然能夠改善設計的質量,如果不用更多的眼睛進行軟件測試,不能防止對需求的誤解,丟失等。也就是說,有軟件開發人員自己進行測試,還是有局限的。


    表2 分析,設計,制造,測試工程由一個工程師完成的利弊


    優點
    -能夠理解系統中自己完成的部分,容易把握開發全體
    -知道作業全體,能夠把握開發流程和作業的問題點
    -制造的技能多的時候必然混亂
    -每個開發工程的成果物即使不清楚,下一個工程也能進行,不能保證設計資料的質量。
    -自己不適合的作業也必須要做,和最合適的擔當相比,效率不一定好。


    軟件開發者自己有效測試的心得

            軟件測試工程中,有測試設計和實施兩個作業,測試設計是決定用什么思想去做測試,測試實施是根據測試設計結果完成測試用例。


            在開發過程中,由開發人員自己做測試工程存在的時候,開發現場經常發生下記的問題。

    -開發量過多,開發人員不能好好的測試就提交
    -開發人員沒有充足的測試工數。
    -開發組織沒有賦予軟件開發人員測試的機會
    -開發人員沒有用科學的方法測試
    -開發人員和測試人員不進行相關的技術交流
    -測試人員對軟件機能沒有充分確認就測試。


            這個結果導致從開發人員提交到測試人員的軟件質量低下,雙方的作業效率低下。

            為了開發人員能夠有效進行保證質量的測試,怎么做好呢?在這里,試著對軟件開發人員積累什么樣的經驗才能掌握有效的測試方法進行了考慮。


            工程師為了能在短時間完成質量高的軟件,需要相當的時間和經驗。為了盡可能快的掌握這種經驗,在實際的開發現場,發生問題,解決問題是最好的捷徑。通過發現問題,去實踐計劃,實施,檢驗和改善,從而進行改善質量的活動。


            僅僅發現問題,誰都能做到。重要的是發現問題后,對于問題能夠深入考慮的對應。在充分分析問題的基礎上,下足功夫,不能讓其再發。保證軟件質量的方法之一就是這樣的功夫。

    充分理解設計內容進行測試設計


            為了保證軟件的質量,具備[自己提出的軟件絕對不出問題]的決心是重要的.也就是說,要有已經發現的缺陷決不能再發生的信心.


            作為防止質量問題的再發的對策,有兩個觀點,一個是一開始就不要加入缺陷.一個是在提出前檢查缺陷,防止次品的流出.這里,對于后者盡心了思考.


            關于軟件測試的教材,參考書出版了很多,但是,軟件開發者不是測試擔當,和測試擔當用同樣的方法測試的話,效率不高.開發人員發揮自己的特點進行測試,能夠貢獻于質量保證.那么這個特點是什么呢?


            那就是對設計內容的理解,利用這個進行測試設計,在此基礎上進行邊界值分析,能夠更有效率的實施測試.

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 嵌入式 軟件測試


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>