[問題] (軟體)如何達到好的 release 流程?

看板P_Management作者時間14年前 (2010/01/23 23:34), 編輯推噓2(2014)
留言16則, 3人參與, 最新討論串1/1
想請問軟體業的前輩 你們怎麼決定現階段的開發已告一個段落,可出一個給客戶的版本呢? 這問題源自我們團隊似乎還找不到一個好的流程 團隊是這樣子運作的 我是系統分析師 + presale 技術總監以 1.5 個月為一個開發週期,訂好這段期間要開發哪幾個功能 比方說 B、C 兩個新的,附帶上一個週期 A 功能裡的 2 個小改善 大家若看過我之前的發文可知道,我們不是專案 所以在決定 B、C 功能到底具體來講要達成什麼,需要蠻大的想像力 我儘量以 presale 時被多數客戶提到的情境來設想功能細節 所以這個階段我需要跟開發人員溝通、以及提供 prototype 請大家就這些部份列出計畫,再估計時程 週會時再跟總監、專案經理與團隊講述這部份的情況 這時有些變數 總監偏重技術上的設計有沒有合理 專案經理在意提供的功能夠不夠豐富 所以經常會議開完後 得回去再確認這樣子設計好不好、或是某個功能有沒有做進來 這樣子的往返通常會花一兩週,包含我跟開發人員的想、寫、畫、改 當整體要做什麼都確定後 再根據個人估的時間,看看 deadline 前可能完成哪幾項,大家再開工 開發過程中會冒出一些影響到原有好功能的 bug 或是牽連到底層設計的狀況需要 refactor 因此實際開發時間通常會比大家原本預估的還久 又因為我們系統有提供給公司內部使用 所以開發過程中也得岔出來處理公司內部更新的事 當老闆問到現在開發情況如何? 專案經理很希望給同事『嘗鮮』新功能 所以他希望我們經常更新公司的系統,某功能部份完成的話就先上去 另位系統分析師覺得不妥,因為新功能還沒被完整測過 但專案經理堅持應提供給公司同仁新功能 所以過去曾發生過一更新上去很快被老闆按出 bug (冏rz) 我還私下被老闆找說我們的測試流程是怎麼樣呀 ^^;; 在我的堅持之下,專案經理找了支援部門的同事當 QA 才讓新功能有把關者 但這又牽扯出後面的問題,就是 QA 一定會測出不少 bug 所以開發後期有很長的時間在 debug 此時離表定的 release 將近 專案經理會把過去週期沒空做,而他覺得重要的再加進來 這邊經常會出現的情況有 1. 到底要改成什麼樣子? 比方有些是專案經理覺得某功能不好用,要開發人員改 但對 coding 的人來講,他很難知道要改成什麼樣 專案經理本身沒辦法給什麼好建議 我們去找視覺設計部門的同事,她也有其它部門專案的東西要設計 所以她希望我們直接跟她講要改成什麼樣子 總監跟專案經理都沒有好想法,但又覺得這個很重要 所以變成我負責想 這種『某某東西不好用』,主要跟 usability、互動設計有關 我也是待在這個團隊後漸漸學到這是另個領域的東西 我會蒐集資料,提出幾種改法跟可能遇到的問題 跟大家討論(主要還是總監、專案經理、設計人員) 但經常發現討論到最後也沒結論 結果就不了了之....但時間已經花下去了 這個循環每隔一個週期就會冒出來一次 2. 功能開發出來後,專案經理發現哪邊應該要再加什麼 or 改什麼才會更好 此時人力已經吃緊在 debug 了 我、資深開發人員齊建議專案經理,應以穩定系統為優先考量 至少要測過目前的系統,不要蹦出錯誤 or 讓 flow 走不下去 我說,即使是一般的專案,客戶中途想改需求也得填需求變更申請 否則時程會一直 delay 專案經理說,他覺得產品開發跟專案不一樣 產品若功能不好的話,客戶就不會想買 所以最好能盡量在這次 release 時提供給客戶這個功能 那麼我們問說,時程可以延後嗎?或是把這次要提供的東西變少? 通常得到的答案都是『儘量趕』 所以究竟是完成 issue 才叫 ready?其實並沒有答案 我也曾經問過,我們總是對 1.5 個月的開發週期開天窗 也許是要做的事根本 1.5 個月就做不完 那這樣為什麼不把週期拉長呢? 專案經理說,產品應該要經常 release,這樣客戶才覺得這產品是活的 雖說這個出發點是好的 但總覺得我們團隊現有的流程離這個目標還很遠 尤其發現有段時間的 release 都是 bug-fix 新功能反而不多,也不知道是不是哪個環節出了問題 呼..一口氣寫了這麼多 無非是希望藉諸位前輩的經驗來幫我們團隊看看問題出在哪 面對辛苦又無助的團隊成員,很想幫大家做些什麼好改善狀況 也希望自己可以有比較正確的軟體產品開發觀念 或是哪邊可以有所改善精進 謝謝大家! ※ 編輯: statuette 來自: 59.104.88.225 (01/23 23:35)

01/24 08:03, , 1F
裡面每個人都是對的。最可以考慮的,是為什麼訂出「六週」
01/24 08:03, 1F

01/24 08:04, , 2F
為啥不是「八週」或是「四週」。不過,我猜,就算改成「八
01/24 08:04, 2F

01/24 08:04, , 3F
週」,問題仍然存在。
01/24 08:04, 3F

01/24 08:05, , 4F
因為是內部產品開發,所以需要做到「bug free」嗎?
01/24 08:05, 4F

01/24 08:06, , 5F
是否等客戶真正需要(修改)時,再一起討論,也是可以的做法。
01/24 08:06, 5F

01/24 15:03, , 6F
回歸一句話,你們在做產品,先想好一件事
01/24 15:03, 6F

01/24 15:04, , 7F
客戶拿你們的產品做什麼?重點有二:
01/24 15:04, 7F

01/24 15:04, , 8F
一、這次Release,有沒有讓客戶更喜歡產品
01/24 15:04, 8F

01/24 15:05, , 9F
二、客戶使用產品主要功能時,是不是穩定
01/24 15:05, 9F

01/24 15:07, , 10F
這兩個重點都攸關品質,吃自己的狗食是評估品質的方法
01/24 15:07, 10F

01/24 15:08, , 11F
但不要因此忘記,客戶對品質的感受,才是最終的目的
01/24 15:08, 11F

01/24 15:09, , 12F
如果偏離這個目標,那就會落入進度「99%」的魔咒
01/24 15:09, 12F

01/24 21:07, , 13F
我看到了 1.沒有具體建議的批評 2. 盡量趕這種轉嫁問題
01/24 21:07, 13F

01/24 21:09, , 14F
的作法。
01/24 21:09, 14F

01/24 21:15, , 15F
軟體開發面的話,你遇到的是典型的問題,而典型的建議是
01/24 21:15, 15F

01/24 21:16, , 16F
1.儘早把可用的介面做出來並頻繁的與重要的使用者確認
01/24 21:16, 16F
文章代碼(AID): #1BMnS1NP (P_Management)