軟體生命週期管理 [北科2017]

【課程名稱】軟體生命週期管理
【開課年度】106學年度第二學期
【開課系所】台北科技大學資工所
【上課教室】六教226
【上課時間】周四 234

【課程授課】

講師:陳建村 teddy(at)teddysoft.tw

助教:劉珮茹 erica(at)teddysoft.tw

【課程規範】

  • 除課程練習需要以外,上課禁止使用筆記型電腦、平板電腦、手機等電子產品。 
  • 上課準時,不可遲到。

【評分標準】

  1. Sprint成果與作業:60%
  2. 期末考:30%
  3. 出席、課堂活動參與:10%

【課程網頁】http://teddysoft.tw/slm2017/

【參考書籍與資料】

  1. BDD in Action by John Ferguson Smart (教科書)
  2. Essential Scrum: A Practical Guide to the Most Popular Agile Process by Kenneth S. Rubin (教科書)
  3. User Story Mapping: Discover the Whole Story, Build the Right Product by Jeff Patton
  4. Impact Mapping by Gojko Adzic
  5. The Scrum Guide
  6. The Scrum Primer
  7. Scrum and XP from the Trenches by Henrik Kniberg
  8. 搞笑談軟工部落格

Last Update:2017-02-22 21:30

Week

Course Material Covered

Notes

1

(02/23)

  • 介紹課程內容、大綱、規則
  • 軟體生命週期管理簡介
  1. 在IntelliJ IDEA使用Cucumber(上)
  2. 在IntelliJ IDEA使用Cucumber(下)
  3. 每個人在GitHub上建一個專案,把練習結果上傳到GitHub上,包含commit history

2

(03/02)

  • Behavior Driven Development (BDD) (I): The First Scenario

3

(03/09)

  • BDD (II): TDD and Refactoring in Action
 

  • HW2:TDD and Refactoring Exercise: Clone the project from https://gitlab.com/TeddyChen/SLM2017.git and do this exercise

 

 

4

(03/16)

  • BDD (II): The Second Scenario
 

  • HW3:Clone the project from https://gitlab.com/TeddyChen/SLM2017.git and (1) fix bugs that cause failing tests; (2) refactor production code and test code.

 

 

5

(03/23)

  • HW3 Demo
  • Review BDD Processes
  • Stories and Processes End-To-End
 

  • 請帶筆電上課
  • HW4: (1) Use Docker to install and run the official Jenkins image in your laptop; (2) Add a Jenkins job to build HW3; (3) If a build is success, the running software (i.e., a console model invoice program should be published to a staging environment hosted by another Linux-based image of Docker. Note that you must publish your HW3 to your GitHub or GitLab repository before doing HW4.

 6

(03/30)

  • HW4 Demo
  • Add GUI to the invoice scenario

 

  • 請帶筆電上課
  • HW5: Clone the project from https://gitlab.com/TeddyChen/SLM2017.git
    1. Implement two scenarios in the entering_vatid_and_company_name.feature
    2. Add Web UI support to the two scenarios by extending the invoice_input.vm and invoice_result.vm, or by providing your own Web UI.
    3. Extending the two scenarios by using Scenario Outline. Add five examples in each Scenario Outline.
    4. Build HW5 using the Jenkins and staging environments prepared in HW4.

7*

(04/06)

  • Impact Mapping
 

  • HW6:閱讀《Essential Scrum》Chapter 5~7。

8*

(04/13)

  • User Story Mapping
  • HW7: 閱讀《Essential Scrum》Chapter 9~11。

9

(04/20)

  • HW5 Demo
  • Product Backlog Grooming
  • 請帶筆電上課

10

(04/27)

  • Sprint 1  planning

 

  • Sprint 1開始 

11

(05/04)

  • Scrum (II)

12

(05/11)

  • Sprint 1 review and retrospective
  • Product Backlog Grooming
  • Sprint 1結束 

 

13

(05/18)

  • Mob Programming
  • Living Documentation
 

 

 

14

(05/25)

  • Sprint 2 Planning

 

  • Sprint 2開始

15

(06/01)

  • Selected Topic I
 

 

16

(06/08)

  • Sprint 2 review & retrospective
  • Sprint 2結束

17

(06/15)

  • Selected Topic

18

(06/22)

  •  期末考