2021/03/18 (更新內容)
2021/04/09 (微調進度)
2021/04/28 (補充連結)
2021/05/13 (微調內容)
注意,「系統分析與設計」課程會需要用到「程式設計」、「創新與設計思考」及「資料庫」的相關概念,請自行複習,老師不會重複講授這些概念,這些都是先備知識。未來專題或工作會用到的工具,不一定是課程中學過的,自主學習新工具非常重要。
這個教學網站是為了輔仁大學資訊管理學系109學年度的「系統分析與設計」課程。「系統分析與設計」課程主要會涵蓋:
課程評分標準
訪問學長姊 (15%)
課堂參與 (5%)
文件 (40%)
系統功能 (40%)
甚麼是系統分析與設計?
創新與設計思考 (複習/簡介) 與系統分析與設計
Empathize & Define -> Analysis
Ideate & Prototype -> Design
分組
分工
各組的題目
歡迎沿用「創新與設計思考」課程的創意
下週選出大家最有興趣的題目,三組用同一個題目
採用敏捷開發
Homework
下週報告 (不超過5分鐘)
使用者、使用者情境介紹
現有系統或服務的問題或未滿足的價值
訪問大三、大四學長姊 (15%)
訪問三位學長姊 (12%)
從系統分析與設計課程中學到甚麼?
系統分析與設計課程對專題的幫助是?
到目前為止,專題遇到的最大問題是甚麼?
對各位的建議是?
整理所有的訪談結果,比較其相同、相異之處 (3%)
各組報告
使用者、使用者情境介紹
現有系統或服務的問題或未滿足的價值
選出大家最有興趣的題目,三~四組用同一個題目
確認問題
先別急著想解決方案
從使用者的角度,到底要解決哪些問題? 或需要哪些價值?
思考一下開發工具,可以利用過去所學的PHP+MySQL
Homework
進行開發環境分析
現有系統的了解與分析:確認現有系統的問題
競品分析:確認未能滿足的需求
確認目標客群,以及對應的問題
Who & Why(問題)
各組整理本週討論的內容,逐步完成文件的第一章
開發背景與動機
背景知識
各主題抽一組報告開發環境分析(含:競品分析)、目標客群、對應的問題
整理各組的需求
問題以及對應的解決方案
將解決方案整理為User Story & User Story Mapping
討論想使用的開發工具
參考資料
需求不明確或多變動
需求切割為單位很小(可以很快開發完)的user story
將需求排優先順序,要開發前才去確認需求的細節
利用Scrum(Sprint)或Kanban(WIP)來控制進度
Homework
各組整理本週討論的內容,逐步完成文件的第一章
發展背景與動機
系統發展目的
功能性需求與非功能性需求
問題與解決方案(需求)對應表
系統範圍
功能性需求說明
背景知識
系統限制(可行性分析)
繳交文件初稿 (第一章)
請開google document,邀請老師 (benwu@im.fju.edu.tw),並設定權限
討論User story
探索可能性
切割功能 (切割為多個開發階段/sprint)
找出Minimum Viable Product (MVP)
完成 User Story Mapping (user story一覽表)
補充資料
完成user story一覽表
進入開發的第一階段 (列為第一優先的user story)
利用對話討論驗收條件確認細節
利用對話討論驗收條件確認是否有遺漏
驗收條件 (情境取向的寫法)
情境
前提
When (使用者採取哪些行動)
Then (使用者得到的回饋)
參考資料
繳交文件初稿 (第一章及第二章user story一覽表、被列為第一優先的user story)
各組報告
可利用Trello 分配工作與追蹤工作進度
UX Design
參考資料
完成第二優先的user story、部分第一優先的畫面設計
SQL vs. NoSQL
Airtable是一個簡易的雲端資料庫,操作的方式非常像試算表,而且提供雲端的API,讓使用者可以很容易的使用雲端資料庫。
Homework
各組整理本週討論的內容,逐步完成文件的第一、二章及第三章的資料庫設計
完成第一優先的畫面設計及完成第三優先的user story
各組進度報告
完成第二優先的使用者介面設計
完成第一優先的系統功能
根據目前的進度,調整第一優先、第二優先、第三優先的user story,將無法在期末驗收時完成的功能列為第四、第五優先順序
注意,期末驗收的功能應該是個雖然陽春但可使用的系統,所以,要注意系統功能之間的關係。
各組報告調整後的user story mapping
繳交文件初稿
第一章
第二章被列為第一、二、三優先的user story
列為第一、二優先的使用者介面設計
第三章資料庫設計
各組進度報告
完成第二優先的系統功能
各組進度報告
完成第三優先的使用者介面設計
各組進度報告
繳交文件最終版 (下載google doc,排版後上傳到tronclass,逾期未繳以0分計算)
決定驗收順序
各組進度報告
完成第一、二、三優先的系統功能
第16週完成驗收的組別,系統功能分數加10%,第17週完成驗收的組別,系統功能分數加5%。第18週(6/24、6/25)無法完成驗收的組別,視情況扣分。6/30未完成驗收組別或個人,一律重修。
因疫情改採遠距驗收系統,驗收標準:
若系統未完成整合,一律不驗收。若系統還有語法錯誤或無法執行,也不驗收。
同組同學都應到場(上線),老師將依據分工表,驗收每一位同學負責的部份,若發現與實際狀況不符的現象,老師將當場要求更改分工表。
Ashrafi, N. & Ashrafi, H. (2009) Object-Oriented Systems Analysis and Design , Pearson Education International
Fowler, Martin (2007), UML Distilled, Third Edition , Addison Wesley Publisher
Marakas, George M. (2001) Systems Analysis and Design: An Active Approach, Prentice Hall
Satzinger, Jackson & Burd, (2012) Introduction to Systems Analysis and Design - An Agile Iterative Approach, 6th ed.
游峰碩 (2010) UML物件導向系統分析與設計 博碩文化
吳濟聰老師相關課程教材