Data Observability 系列文 2:軟體圈都在注意些什麼?

延續上一篇文章,我們先來鋪個梗,先看看軟體圈都關心了什麼議題。

前言

大家好,我是艦長。

你現在閱讀的是 Data Observability 系列文,此系列文的內容是依據我 2025 在 DevOpsDays Taipei 2025 分享的 25 分鐘短講「資料可觀測性 Data Observability」,將簡報內容逐一拆解為多篇短文。

前一篇文章我們聊到「如何妥善管理與應用 Data」並不只是一個純粹的技術議題,作為開場讓大家知道其實 Data 有很不技術的一面。(謎之音:都是人的問題!)

在本系列文繼續聊更多 Data 的話題之前,今天我想要做一個比較,我們先回到軟體開發領域,看看軟體圈都在意些什麼事情。

一切都是為了替使用者帶來「價值」

如果你問軟體工程師,你們在開發軟體時,都在意些什麼?為什麼你會選擇採用某些軟體工程的實踐方法?你都在考量些什麼?

前述這些問題,你可能會得到許多不同的答案像是「為了寫出乾淨的程式碼」、「為了打造可擴展的軟體架構」、「想要導入最新的軟體技術」、「為了確保服務穩定」……。

讓我們再繼續追問,那為什麼要「寫出乾淨的程式碼」、「打造可擴展的軟體架構」、「導入最新的軟體技術」、「確保服務穩定」?

有 Sense 一點的軟體工程師可能就會回答你——為了替使用者帶來價值!

(謎之音:你確定軟體工程師會這樣回答你?)

乾淨的程式碼、良好的軟體架構與系統架構、高可靠性的服務⋯⋯這些都是「手段」或「產出」,而做這些事情的結果,對軟體開發團隊來說,當然就是為了讓團隊交付給客戶的軟體,是有品質的、高可靠的、可以滿足使用者需求的,是能夠為使用者帶來價值的。(謎之音:然後客戶樂意付錢,公司賺大錢!)

那麼既然我們聊到「價值」兩個字,到底裡面包含了什麼?

我自己覺得這是一個大哉問,因為每個使用者想要的價值不同,但多半會有一些常見的層面。

  1. 軟體在工程面的品質:也就是軟體有沒有出現令人傻眼的 Bug?會不會突然閃退?軟體背後的雲端平台是否可靠?能否因應大量暴增的使用者連線?是否有後門資安漏洞?
  2. 軟體的功能是否滿足需求:軟體功能再強大,但無法滿足使用者需求都是白搭。像是廠商宣稱軟體可以做到無痛的自動雲端更新,隨時保持在最新的版本,但客戶說不好意思我們家禁止連上外網;又或者是使用者想要一個可愛溫馨風格的UI,然後廠商端提供的卻是高冷賽博龐克風格UI。

軟體圈都做了些什麼?

前面聊完了價值,最後來看一看軟體圈做了哪些事情,是不是都是圍繞著價值呢?

首先,基本上我們可以說軟體工程的各種實踐,都跟幫助團隊能持續產出高品質、符合需求的軟體脫離不了關係。

像是我們會在意軟體架構 (Software Architecture),從 Monolithic 、SOA 到 Microservices。

又或者是程式碼的可維護性,我們有 Clean Code、SOLID 原則⋯⋯。

為了讓軟體有一個可靠的運行環境,讓環境管理更穩定,我們有虛擬化技術、容器化技術與 Cloud、Serverless、 Infrastructure as Code、GitOps⋯⋯

當然別忘了還有大鍋粥 DevOps、SRE、Platform engineering。

軟體圈有各種不同的關鍵字,分別在不同層次幫助團隊可以更快、更穩定的將價值交付到使用者手中。

小結

好了,字數差不多了,我們就在此快速做一個小結。

今天這篇短文其實也是一個鋪梗,我想要讓大家思考一下,軟體圈從古至今的這些方法論、實踐、Keywords 都在做些什麼,都在關心哪些議題,以及解決了什麼問題。

然後順著這個梗,延伸想要問一個問題——「那在軟體圈,我們為 Data 做了些什麼?」

我們有針對程式碼、Infrastructure、軟體開發交付流程、軟體測試、軟體安全性⋯⋯做了很多事情,但是 Data 呢?針對 Data,軟體圈有做了什麼事情呢?是不是相較前面提到的那幾項,稍微生疏一些呢?(當然也可能只是我個人對此生疏,其他資深的軟體工程師對於 Data 也很熟稔。)

系列文連結

此系列文持續撰寫中,陸續更新連結。

  1. Data 不只是技術問題
  2. 軟體圈都在注意些什麼?
  3. Data User 最關心的是什麼?
  4. 軟體圈與 Data 圈眼中的 Data
  5. 如何取得一杯乾淨的水(Data)?
  6. 我們過去為了資料品質做了些什麼?
  7. 有了監控為什麼還不夠?

轉貼本文時禁止修改,禁止商業使用,並且必須註明來自「艦長,你有事嗎?」原創作者 Cheng Wei Chen,及附上原文連結。

用贊助表達你的支持

更多文章