網站系統開發流程實務

 TonyQ @ 2012/11/15 東海
Who I am
●
    王景弘 (TonyQ)

●
     過去
    – SOHO for 3-4 years
    – Ppolis
    – ZK (Potix Corp.)
    – Friendo


●
     現在
    – 5945 呼叫師傅 軟體架構師
    – JavaScript.tw Creator
實務?
●
    Programming Language
●
    Data Structure
●
    Algorithm
●
    Database
●
    Domain and Web Knowledage
實務?
●
    Learn from case


●
    Learn from lesson
實務?
●
    程式裡面沒有銀彈。
網站?
●
    對 Browser 而言


●
    對 User 而言
開發?
●
    公司產品

●
    客戶產品

●
    自己的工具
流程?
●
    作一件事情的過程

    –   角色
    –   項目
    –   時間
一個網站資訊專案的構成角色
●
    Planner           ●
                          Backend
●
    SA                    –   DBA
                          –   Developer
●
    SD
                      ●
                          FrontEnd
●
    Project Manager
                          –   Designer
                          –   Developer
                      ●
                          QA
Planner
●
    方向
SA
●
    將想法具現化成可條列項目
SD
●
    決定怎麼作
Backend & FrontEnd
●
    Implement
PM
●
    知道專案的狀態
QA
●
    收尾、防呆
一個專案的開始
●
    目標:

●
    流程:

●
    人員:

●
    技術
一個常見專案的過程
●
    http://www.projectcartoon.com/cartoon/2
一個不常見專案的過程
The lesson from project
●
    http://but.tw/2008/10/programmers_rule/
Scared?
●
    工程師所應該遵循的幾個守則
Tools
●
    加速、快速幫助你開發的工具
    –   版本控制
    –   建置工具
    –   其他開發者工具
        ●
            Editor / IDE
        ●
            函式庫
        ●
            Code Generator
Tools - 版本控制
●
    Zip
●
    SVN
●
    Git
●
    CVS
●
    TFS
Tools – 建置工具
●
    OS 基礎 :Bat / Shell

●
    建置環境 ant/maven,rake,php cli

●
    持續性整合( Jenkins )
Tools - 其他開發者工具
●
    由官方提供的東西,通常都要過很多手你才
    好用

●
    允許由使用者提供的通常會比較方便
But that's still not the key point
●
    瞭解需求才是重點
需求管理
●
    當你的老闆說我想要聊天室的功能時,他意
    味著 ....
需求管理
●
    當 planner 說希望能讓使用者上傳圖片時,
    他其實意味著 ...
需求管理
●
    當你作完圖片上傳後, planner 說他其實要
    得是 ....
管理需求
●
    物理上的極限
Q & A

20121115 Slides