2008/08/22

從 windows 7 新聞看嵌入式開發

剛剛看到這篇文章的時候,想到我們做嵌入式系統開發的人很可憐,常常軟體工程師只有一到三個。為何會有這樣的感嘆呢,其實是沒辦法拿微軟來比的啊!可是我還是要寫寫心得:嵌入式系統軟體部份,不是只有「整合」而已。

在該文裡,有幾個地方值得拿來記下來,例如,在回覆中,有人計算了一下,需要 1000 個工程師,投入 25 個團隊。先說說文中列出來的幾個團隊:
# Applets and Gadgets: 桌面小工具?看樣子把嵌入式裝置的概念整合進來後,會讓 Windows 更易於使用
# Assistance and Support Technologies: 援助和支持技術
# Core User Experience: 核心的用戶體驗
# Customer Engineering and Telemetry: 客戶工程和遙測
# Deployment and Component Platform: 部署和組件平台
# Desktop Graphics: 這不知道幹嘛的,想來是發展像 DirectX 之類的吧
# Devices and Media: 設備和媒體
# Devices and Storage: 設備和存儲,這兩個團隊跟 media center 應該更緊密合作才對,竟然分開三組
# Documents and Printing: 文件及印製
# Engineering System and Tools: 工程系統和工具
# File System: 檔案系統,想來會有新的發展,之前一度要推出,後來被取消的,恐怕會復出
# Find and Organize: 查找和整理,應該就是要跟 Google Desktop 拚,加上第一個 Widget, 拚場意味濃
# Fundamentals: 基本面?
# Internet Explorer (including IE 8 down-level): IE8 不知道又會是什麼怪獸,之前看報導卻沒仔細看
# International: 國際化支援
# Kernel & VM: 看來支援虛擬化技術不遺餘力
# Media Center: 要占據你家的電視的媒體中心
# Networking - Core: 網路-核心
# Networking - Enterprise: 網路-企業
# Networking - Wireless: 網路-無線,光以網路命名的就分三組,可見其重要性
# Security: 安全
# User Interface Platform: 用戶界面平台,可以看得出來跟使用者操作介面有關的也分好幾組
# Windows App Platform: 在Windows APP平台,應該是開發 SDK 的吧?

分工細是當然的,因為在發展整個作業系統之外,還要做發展平台,確實夠辛苦,但是,文中提到一個團隊的成員有 3+1 類:

software development engineers (sde or dev): 就是一般的 RD,不過 RD 這一詞在台灣其實都有點誤傳
software development engineers in test (sdet or test): 這種人在台灣常常是由 SDE 兼任
program managers (pm): 這種人也常由 SDE 兼任,真的是工程師的悲哀,當然絕大多數是由老闆兼啦。
researchers: 哦哦,這在台灣,名義上就是老闆的工作,只是大多數都跟工程師收集,而實際上,則更大多數是從 google 搜尋來的。

重點來了,文中提到,前三類比較偏工程人員的編制比例是 N:N:1/2N, 天啊,真正 Coding 的以此來看是 20%, 而且提到為了品質穩定,這比例是非常 pretty constant across the team! 平均每個團隊約 40 個成員。我猜,每個團隊的寫程式的工程師大約只有五到八個人而已。其實是非常非常精簡的,重點在測試與 PM 比例相當大。

文中提到有些人是跨團隊合作,稱之為核心人員,我猜是 PM, 列之如下:
# 內容發展 -作家和編輯,創造線上援助,網站, SDK的文件,文件和部署。
# 產品規劃 -負責客戶研究和學習,以便告知功能的選擇。產品規劃還協調我們所做的工作與合作夥伴在整個生態系統中的條款通過建立夥伴關係的設計與開發釋放。這整段講的應該是研究針對客戶來的資訊反應到 Windows 上。
# 產品設計 - 發展整體的互動模式,圖形化的語言,及專為 Windows 7 開發的設計語言
# 研究和可用性 -產生「領域和實驗室」的研究,來表達如何在現有的產品和客戶提議的功能實作

0 意見: