[軟體術語] Dogfooding? 吃狗食吧!

好啦標題有點攻擊性,但好好笑

有些名詞真的是要工作才會聽到。今天聽到 CTO 針對我們的網站翻新計畫,講說「我們什麼時候可以開始 dogfooding 」。我一開始以為我聽錯了,什麼是 dogfooding?吃狗食?撒狗糧我倒是聽過 🤣

Dogfooding - 自己當使用者來使用產品

查了一下發現,原來 dogfooding 是說「公司內部員工使用自家產品的行為」。

簡單來說好處是可以讓開發團隊更了解使用者的需求,並且可以提早發現問題,提高產品品質。

之前的公司沒有太注重這件事。坦白說當時我們產品真的有點難用,我自己都不太想用。所以團隊中間提出並執行了很多翻新計畫,想說可以改善很多問題和體驗。

優點和、 beta testing 的差在哪?

看其他人的文章,最直觀的好處應該就是可以提早發現問題。畢竟是發布前的內部測試。跟 beta testing 的差異在於,beta testing 是讓外部使用者測試,而 dogfooding 是讓內部員工測試。 讓團隊更了解使用者的需求,來改善開發品質。尤其是讓公司不同部門、不同背景的員工使用,可以收集到最多種的 feedback。另外我覺得更重要的是培養公司內部文化,讓大家都能以使用者角度來思考產品。

「Overeating」

在做 dogfooding 的時候,也要將注意力放在需要測試的功能,不然會產生一堆不必要的回饋,像我們之前就會測試到一些很奇怪的問題,像是「為什麼我們的產品不能在 IE 上跑?」這種ㄏㄏ問題。當然也不能太過度執行,不然會讓團隊會覺得很煩,反而會降低使用意願。

總結

其實我覺得這是一個每一家公司都應該要必備的項目。之前在前幾間公司也ㄋ都有做,過程也蠻好玩的。據網上找到的資訊,Google 和 Microsoft 也都有這樣的文化,他們會在新功能上線之前,先讓員工使用,並且收集反饋意見。