軟體架構[北科2025]
【課程名稱】軟體架構 【開課年度】113學年度第二學期 【開課系所】台北科技大學資工所 【上課教室】科研大樓334e 【上課時間】周四 2、3、4節
【課程授課】
講師:陳建村(Teddy Chen) teddy(at)teddysoft.tw
【課程規範】
需同意以下規定方可修課,選修此課代表同意以下規定。
- 建議修過POSD或OOAD具備選修本課程資格(兩者至少修過其一)。
- 不接受期中退選。
- 除課程練習需要經老師同意以外,上課禁止使用筆記型電腦、平板電腦、手機等電子產品。
- 上課準時,不可遲到。準時的標準為以上課鐘響為準,鐘響後比老師晚到都算遲到。遲到者該節中間休息前禁止進入教室。
- 除不可抗力之因素以外 (例如出車禍、喪假等),因故缺席無需請假。但若該週有小考或作業Review,則該次成績以0分計算。
- 三小時課程中,中間一次休息10分鐘 (約 10:30~10:40),下課時間為11:50。中間有任何事情需要離開教室請直接離開無須知會老師。
- 上課可飲食,但請勿攜帶味道太重影響課程進行的食物,例如臭豆腐、炸雞排等。
- 違反規定者老師得請學生離開教室。
- 是否違反規定,以老師的解釋為準。
【評分標準】
- 作業/小考/專案:50%
- 期末考:30%
- 平時成績(課堂互動與活動參與程度等):20%
【課程網頁】/sa2025/
【參考書籍與資料】(教科書有兩本)
- Clean Architecture by Robert C. Martin(教科書) [CA]
- Domain-Driven Design: Tackling Complexity in the Heart of Software by Eric Evans (教科書) [DDD]
- Pattern, Principles, and Practices of Domain-Driven Design by Scott Millett and Nick Tune (參考書)
- Implementing Domain-Driven Design by Vaughn Vernon (參考書)
Last Update:2024-02-21
Week
Course Material Covered
Notes
1
(02/20)
介紹課程內容、大綱、規則
HW1 說明
軟體架構定義
HW1:(1)分組;(2) 每個人參考ezKanban設定文件 安裝開發環境;(3) 註冊https://miro.com/ 免費帳號,並將組員與Teddy加入miro; (4) Reading, Chapter 15 [CA]。
上課投影片,按此下載 。
2
(02/27)
Event Storming Workshop (I)
上課請帶筆電
HW2:(1) 聽完以下演講: Event Storming ,下週上課小考。
3
(03/6)
HW2 Test
Event Storming Workshop (II)
上課請帶筆電
HW3: 截止時間 3/25 17:00 (1) Reading, Chapter 6 & 14 [DDD]。 (2) Event Storming Workshop, 修正 HW2的domain events,然後加上 Command, Read Model (Input), Policy, External System。採用分散式練習,組員不在同一地點,利用Miro與視訊或音訊設備溝通。需錄下 event storming workshop 的畫面(至少 30 分鐘長度,有影像與聲音)。
4
(03/13)
HW3 Test
Domain Modeling
- 上課請帶筆電
- HW4:Reading,Chapter 24~26(Partial Boundaries、Layers and Boundaries、The Main Component)[CA]
5
(03/20)
- HW4 Test
- The Clean Architecture (Chapter 22) [CA]
- Implementation (I): Test-Driven Development
6
(03/27)
DDD Building Blocks and the Strategic Design
HW5:(1) Iteration 1, implementing the 3 most important use cases. (3) Reading, Chapter 7-11 [CA].
7
(04/3)
清明節補假,停課
Reading: [CA]
8
(04/10)
HW5 Review
HW6:Iteration 2
9
(04/17)
- Event Sourcing and CQRS (1)
10
(04/24)
HW6 Review
Event Sourcing and CQRS (2)
HW7:Iteration 3
11
(05/01)
- Event Sourcing and CQRS (3)。
12
(05/08)
HW7 Review
HW8:Iteration 4
13
(05/15)
- SOLID Design Principles(Chapter 7~11)
14
(05/22)
- HW8 Review
15
(05/29)
- What is Design?
- Boundary(Chapter 17)[CA]
- Policy and Level(Chapter 19)[CA]
16
(06/05)
- Selected Topic
17
(06/12)
- 期末考
18
(06/19)
- Selected Topic
