SDLC - Software Prototype Model 心得

Posted by 嘉鼎智能 on 2020-05-07

Prototyping 是指原型或是雛形,泛指一個產品初步的樣貌,並沒有一定的規範到底完程度有多少,用來展示、示意或者和顧客溝通的半成品。 常見於開發團隊在接收到需求規格後,依照內容快速製造出功能尚未完備的樣本。開發團隊和顧客可依照此模型討論並給予修改意見,之後再進行細部功能開發。

SDLC

本文為 嘉鼎智能 內部讀書心得整理後分享,我們不定期會分享各種幫助擴增心智的學習文章,歡迎加入LINE社群參與討論。

點此加入擴增心智學習群
擴增心智學習群


文章資訊

SDLC - Software Prototype Model

文章連結


目錄


前言

Prototyping 原型為功能有限的軟體工作模型。原型並不一定有實際體件應用程序中的實際邏輯。允許用戶、評估開發人員在產品上線之前進行體驗。有助於了解特定用戶的需求,開發人員可在產品設計期間考慮這些需求。

“我們應該算是運作一輪了,至少應該有接近、或即將要到部署(Delpoyment)的階段。由於我們有BTO的性質”,”目前的努力,是在於將原型(Prototyping)確立”


文章討論

什麼是Prototyping

Prototyping 是指原型或是雛形,泛指一個產品初步的樣貌,並沒有一定的規範到底完程度有多少,用來展示、示意或者和顧客溝通的半成品。 常見於開發團隊在接收到需求規格後,依照內容快速製造出功能尚未完備的樣本。開發團隊和顧客可依照此模型討論並給予修改意見,之後再進行細部功能開發。

“像音樂人會錄製的DEMO帶,是讓自己的構想有個可供展示和討論的雛型,而後續經過修改後,加上配唱、編曲後才會形成正式的作品”

車庫創業大概就是 Prototyping 概念,就算是天才型的創意發明家,在初期有限的人力和資金限制下,只能夠儘可能的做出一個雛形產品,雖然不完美,但總是有具體東西可以找天使投資人討論。

甚麼是軟體原型 (Software Prototyping)? Prototype is a working model of software with some limited functionality. 有局部功能的軟體產品,但是內部的邏輯設計可能和未來成品不同,也許還需要相當多的努力才會逐漸完整。

設計產品原型步驟

第一階段

基本需求識別: (Basic Requirement Identification)
了解產品基本要求,尤其是使用者操作介面項目,可以先忽略功能、內部細節設計。

第二階段

開發初始原型: (Developing the initial Prototype)
了解顧客需要的使用介面後,已經可以實際展示,僅管內部功能邏輯設計不會和以後完成品相同,但是外觀 (使用的介面) 與使用感受和日後的成品一致。

第三階段

檢視原型: (Review of the Prototype)
設計的原型會經由顧客以及重要的利害相關人員檢視,有系統的收集回饋意見之後,在產品未來進一步開發中改進。

第四階段

修改和改進原型: (Revise and Enhance the Prototype)
在此階段討論所蒐集的回饋以及審視意見並且和顧客協商。根據時間或預算限制,以及實際使用上的技術可行性等因素討論。接受的修改會包含在新一輪的原型中,如此重複循環,直到達成顧客的期望。

原型類別

一次性/快速原型: (Throwaway/Rapid Prototyping)

只需要最少的需求分析即可建構原型,一旦了解實際需求就會拋棄此原型,改採清楚了解的顧客需求來開發。像示意參考原型,經過簡短的顧客需求了解,就快速設計原型。常見於開發商認為顧客還在詢價階段,或尚未清楚了解詳細規格時採取的方式。如此才不至於在初期投入過多心力。

例如我們曾經使用Google 外掛程式 AppSheet,利用 Google 表單,製作 APP。或網站設計工具 Wix,都可以在極短的時間內製作可以操作的示意網站。

進化式原型 (Breadboard prototyping)

是在期初就建構真正的系統,但是僅只有陽春的功能。這個原型是未來原型設計的核心,整個系統就在此基礎上建構,逐漸完成。隨著對於需求的了解,漸進式的添加用戶的需求功能。

增量式原型 (Incremental prototyping)

建構各個子系統的功能原型,再匯集整合成完整系統。將一件大型工程,分割成比較小的工作單位,如此設計要考慮到模組化。在一個模組中儘可能專注一項任務,模組外不需要知道內部的運作。這樣可以確保系統整合之後,不會互相干擾,造成維護困擾。相同的模組功能只需要建立一次,不僅容易了解、維護,也可以減少不必要的重複工作,增加效能。

極限原型 (Extreme prototyping)

適用於 Web 開發,由前端的網頁 (HTML),經由程式運算、資料處裡的過程,最後再整合成完整網站系統。可以分拆來製作原型,例如前端的各個頁面設計、選單、按鍵等功能,可以藉由網站前端開發工具來設計,例如 Dreamwaver,或是 MS Office 工具 FrontPage 來製作 UI (User Interface) 呈現。

背後的功能設計才是網站提供的核心價值所在,例如資料的動態回應,或是在背後的大型資料庫中,取得有系統、有價值的資訊。

Prototyping實際運用

在不同類別產品開發實際運用上,會有效益高低之差別。例如 Prototyping 的準確外觀設計適合作為網站系統或是行動裝置上的 APP 開發。但是涉及大多數據資料處理與運作的服務產品,就很難能由 Prototyping 方式呈現,只有增加無謂開銷與工作。選擇適合的方法可以將建置原型的努力轉化為有價值的產品。

Prototyping優點:

  1. 在產品尚未上市之前,讓顧客有機會參與。
  2. 讓用戶或顧客可以體驗並且深入了解開發過程中,具備有部分功能的實際產品。
  3. 讓開發團隊及早發現問題。
  4. 可提早發現容易讓用戶感到困惑,或是不易使用的功能。
  5. 將創意構想做出雛形,和潛在的天使投資人溝通,獲得早期的資金挹注,引進更多的人才發展更詳盡的功能
  6. 開發者可以很快地測試關鍵技術

Prototyping缺點:

  1. 可操作的原型具有吸引力,因此容易過度依賴 prototype,導致需求分析不足。
  2. 用戶依據原型討論系統功能,可能修改需求並超出原來計畫,或增加複雜度。
  3. 可能花費過多的心力去設計原型,徒然浪費資源

其他連結

讀書心得

產品共學群

所得科技討論群

擴增心智學習群


關於我們

嘉鼎智能(股)公司為美商嘉鼎智能團隊(Magnific Intelligence Collective, LLC ),於台灣設立之服務據點,成立於1999年,以「嘉惠人群、穩如鐘鼎」的信念,追求所得科技的進化。

為幫助更多人與團隊合作,共享人心智能,嘉鼎智能推出「ACIS擴增集智系統」,協助大家學習如何透過有系統的運作:

收集成果->調配擴增->驗收更新

三階段,獲取實質所得,持續擴增未來所需的動力能量。

👉 了解更多


Comments: