當前位置: 華文世界 > 科技

不得不承認,QA確實需要懂技術

2024-05-12科技
好多軟件QA的小夥伴們私下裏都問過我:「做QA是不是一定得懂技術才行?」我在不同公司討論QA的任職模型時,也有不少的討論。今天我就來跟大家聊聊我的看法。
1、QA角色定位QA這個角色最初是來自於CMMI標準中PPQA過程域,主要工作包括:稽核過程是否符合管理規範和工作產品是否符合技術規範,並推動解決不符合的問題;制定質素保證計劃,並在過程中動態最佳化;辨識過程改進機會,推動改進。初看起來,似乎只要掌握了體系要求,熟悉了管理流程,就能夠有效地監督專案組的開發工作,確保軟件產品符合規定的質素標準。然而,隨著工作的深入,我逐漸意識到,一個不懂技術的QA在實際工作中會遇到諸多挑戰。2、QA面臨的挑戰有一次,專案組送出了一份需求規格說明文件。我部門的QA小王按照體系要求進行了初步審查,發現文件格式、組織結構都符合樣版要求,程式碼也使用了任務書規定的開發語言,註釋率也達標。然而,在深入閱讀文件內容時,小王發現其中關於安全性需求的描述並不清晰,存在潛在的模糊地帶。由於缺乏相關技術背景,小王無法判斷這種描述是否滿足組織的需求分析規範。在這種情況下,小王不得不請教一位經驗豐富的開發人員。透過與開發人員的交流,小王逐漸理解了安全性需求的重要性以及如何在文件中準確描述這些需求。這次經歷讓小王深刻體會到,一個不懂技術的QA在稽核工作產品時,很難發現其中的技術問題和潛在風險。這一事件如同一聲警鐘,不僅驚醒了小王,也讓整個團隊意識到:質素保證工作不能僅僅停留在「紙面稽核」的層面。由此引發了深刻的反思——不得不承認,QA還是需要懂技術。盡管傳統觀念中,QA的角色更多被框定在「管理體系的守護者」,確保每一個流程節點符合規範,每一份文件遵循樣版,但隨著軟件復雜性的增加和技術叠代的加速,這樣的角色定位已顯得過於單薄,無論是QA自身還是研發都感覺,這樣的工作過於浮於表面,難以有效保證質素。QA若想從根源上提升軟件質素,而非僅作為合規性的「看門人」,深入理解技術的底層邏輯與實踐細節成為了不可或缺的能力之一。3、QA懂技術的意義讓QA擁抱技術,並非意味著他們需要成為編碼高手或架構大師,而是要具備足夠的技術敏感性和問題辨識能力。例如,即便不親手編寫程式碼,也需要理解軟件開發生命周期中的關鍵技術挑戰,如數據結構的選擇、演算法效率的考量、模組間介面的一致性,以及安全性、可靠性設計的基本原則。唯有此,QA才能在稽核開發過程時,超越表面的格式合規,深入探查潛在深層次的技術風險。


當QA擁有了技術這把「透視鏡」,他們不僅能更有效地指導專案團隊遵循最佳實踐,避免技術債務的積累;還能更好的在專案的早期階段預見並規避那些可能演變成重大問題的細微失誤,從而真正做到防患於未然,為軟件產品的質素築起更為堅實的防線。因此,時至今日,越來越多的企業在選拔和培養QA人才時,也逐漸開始強調技術背景的重要性,鼓勵他們成為既精通管理體系,又熟悉業務及技術的復合型人才。這不僅是對過往軟件質素工作教訓的深刻汲取,更是對未來挑戰的積極應答。不懂技術的QA也不用認為自己不懂技術就不能做QA了,畢竟不是讓QA成為技術人員,工作中積極學習業務及技術背景知識,相信也能成為一名的優秀的QA。-End-