1. 程式人生 > >2018-2019-1 20189206 《構建之法》速讀

2018-2019-1 20189206 《構建之法》速讀

速讀《構建之法》的一些問題

整體感受

剛拿到這本書的時候,覺得構建之法無非就是在交如何寫好程式或者開發專案,但是隻是粗略的瀏覽了一遍,印象就極其深刻,在本科階段的學習也只是基於如何寫好一段程式碼,或者用所學知識編寫一個簡單的專案。從來沒有思考過,一個專案的開發到底是為了什麼,並不是簡單地完成一個作業,而是真正地要投入使用,不單單是要考慮執行的效能、負載,同時也認識到需求分析、測試、團隊管理在一個專案的開發中所佔比重是遠遠要大於程式碼的編寫。希望在以後的仔細閱讀中能有更深刻的體會。

問題提出

  • 概論
    • 我們所瞭解的開發和平時課上所學的程式開發有什麼區別?
  • 個人技術和流程
    • 個人開發時應該注重哪一方面的工作?
    • 開發時應該以程式碼為主嗎?
  • 軟體工程師的成長
    • 一個軟體工程師負責的工作是什麼?
    • 在團隊中如何提升自己的能力?
    • 在團隊中作為一個初學者應該怎樣提升自己?
  • 兩人合作
    • 合作完成軟體都應該注意什麼?
    • 程式碼複審的意義和流程
  • 團隊和流程
    • 作為一個軟體團隊應該具有什麼特徵?
  • 敏捷流程
    • 敏捷流程的優點是什麼,為什麼要採用敏捷流程?
    • 專案開發中敏捷流程有什麼優勢?
  • 實戰中的軟體工程
    • MSF和敏捷流程的聯絡和區別?
    • 從MSF中可以學到什麼經驗?
  • 需求分析
    • 怎樣提出準確而全面的需求分析?
    • 競爭性需求分析的重要性?
    • NABCD模型是什麼?
  • 專案經理
    • 專案經理的工作是什麼?
    • PM負責的工作是什麼?
  • 典型使用者和場景
    • 典型使用者的作用是什麼?
    • 如何寫好一份spec功能說明書?
  • 軟體設計與實現
    • 軟體設計與實現要做成什麼?
    • 圖形建模的好處是什麼?
    • 什麼是每日構建?
  • 使用者體驗
    • 使用者體驗的重要性?
  • 軟體測試
    • 軟體測試最終要實現的是一個可以上線的系統嗎?
  • 質量保障
    • 軟體質量如何保障?
    • 質量保障的成本?
    • 軟體工程的質量和軟體的質量有什麼區別?
  • 穩定和釋出階段
    • 釋出階段需要完成的工作有什麼?
  • IT行業的創新
    • IT行業的創新應該怎麼做?
  • 人,績效和職業道德
    • 團隊中為什麼要講人,績效和職業道德?有什麼好處?