在傳統、也無疑是最普遍的軟體開發流程觀點中,科技公司的程式設計師並不被視為設計者,而是實作他人設計的人。畢竟,程式設計師的工作就是撰寫程式碼。撰寫程式碼被視為一種「施工」活動,而每個人都明白,必須先完成建築設計,才能開始施工。
真正的設計工作由專門的軟體設計師負責。工程師完成設計後交給程式設計師,再由程式設計師依照軟體工程師的規格轉化為程式碼。依照這種觀點,程式設計師只需具備足以理解所交付設計的軟體架構能力即可。
實際的設計工作由專業的軟體工程師負責。以 RIADVICE 為例,我們精通軟體設計,由我們產出設計,再交給程式設計師,由他們依照軟體設計師的指示轉化為程式碼。在這種情況下,程式設計師只需具備足以理解所交付設計的能力,而軟體工程師則讓程式設計師更容易塑造程式碼。
讓我們以軟體開發中一系列不同的「現實」為例。上述情況位於光譜的一端。這種以交接為基礎的模式,在規模更大、更複雜的專案中,以及在擁有悠久傳統軟體工程文化的公司裡更為常見。
光譜的另一端則沒有工程師,只有程式設計師,由程式設計師負責系統的設計。
在這兩個極端之間,還存在許多其他的現實情況。
- a)純粹、傳統、分工明確的軟體工程,程式設計師會拿到極為詳盡的「完整設計」;
- b)微型開發團隊,程式設計師就是主角。介於兩端之間的「中間地帶」,則由設計師、首席程式設計師或「架構師」負責。
RIADVICE 以端到端的敏捷軟體工程服務涵蓋上述所有面向,從原型設計、軟體架構,到設計、UI/UX 與品質保證,全程以敏捷原則為依歸。
此外,我們也透過產品開發、軟體現代化與企業解決方案等加值服務,協助科技公司實現軟體設計目標。
歡迎隨時造訪我們的 軟體工程頁面,了解我們完整的軟體設計與工程服務。





