100
軟體101

Software101

Embed Size (px)

Citation preview

軟體101

怎麼把軟體做出來?

一般來說有兩個門派

這一系列的投影片,都會介紹到

一個是瀑布式(Waterfall)

一個是敏捷式(Agile)

不要緊張

看投影片格式也知道

不會講太細

所以開始了

什麼是軟體?

你確定你知道什麼是軟體?

OK 我相信你

軟體專案有什麼特性?

第一

做軟體沒有囤貨

假如有工程師跟你說

不!

軟體是有囤貨的

趕快Hire他

你遇到大神級的工程師了

但對一般人而言軟體是沒有囤貨的

做軟體一開始就佔上風了

一手好牌別打到相公了

第二

軟體是看到了操作到了才會有感

覺的東西

也就是說

做軟體的你要趕快看到prototype

才能繼續往下走而走的方向才是比較正確

尤其是過了brain storming階段

你就應該回到地面

不要讓你的想像力馳騁因為已經開始了實際點!

第三

做軟體Cost基本上只有人

但任何軟體都是靠人寫出來的

所以不要再cost down了

你能做的

就是調整專案的scope

或是time

以上複習一下

軟體三個特點

1. 做軟體一手好牌別相公了2. 趕快看到prototype

3. 調整專案的scope跟time

以下開始介紹瀑布式與敏捷式的差別

話先說在前面

這兩個沒有哪個比較好

完全是看專案特性或是

團隊的做事方法而定

Agile

適合問題不明確的專案

也就是說

spec會某天因為某個原因要改

這種專案

又可以分為解法明確或

不明確的兩種情況

解法明確用scrum

解法不明確用kanban

兩者都是敏捷式開發的子集合

Waterfall

像是SOP

一個階段做完才能進下一個

適合問題明確且

解法也明確的專案

這種專案如果Spec突然要改了

那會是非常非常非常不好的事

這樣可以大概了解agile跟waterfall的差別吧

然後我們來看看

這世界的軟體的現況是怎麼了

windows

假如你的開發團隊是用windows

的visual studio

聽說每六週

就會有一版更新

http://www.ithome.com.tw/news/94998

Android

不到半年就升一版

http://en.wikipedia.org/wiki/Android_version_history

iOS

半年出頭升一版

http://en.wikipedia.org/wiki/History_of_iOS

還會跑出新的程式語言swift

所以假如你的BU的程式會跑在

這任一平台上

請祈禱這些升版不會動到你的軟

體功能

就是把這件事列成Risk

的意思

我們也不妨思考為什麼他們可以這麼快

還有

現在大家都喜歡先做出MVP

Minimum Viable

Product

趕快確定雛形

把最重要的先做好就上了

然後持續的讓產品更好更強

最後說一下個人心得

我覺得有三件事可以大幅增加你的軟體專案的成功機率

第一

寫越少程式越好

第二

做越多測試越好

第三也是最重要的一點

越早開始越好

越早開始越好

越早開始越好

越早開始越好

越早開始越好

越早開始越好

因為很重要所以要說三遍

我講了甚麼?

1. 軟體的三個特性2. 兩種流派的介紹3. 現在大家是怎麼做軟體的4. 哪三件事可以增加成功機率

以上報告完畢

希望對你有幫助

不要被唬爛了

剛好100張bye~