--- tags: 軟體工程 title: 第一週 --- ## Software Crisis - 1997 software project - ![](https://i.imgur.com/TBrogAz.png) - Why have Software Crisis - Wrong estimates of - Time - Effort(完成任務所需人力) - Cost - Poor quality - Easy to crash - Difficult to maintain --- ## Software Engineering > the establishment and use of sound <font color=red>engineering principles</font> in order to obtain economically software that is reliable and works efficiently on real machines. --- ## Software Development Lift Cycle(SDLC) - ![](https://i.imgur.com/Y0KhZrp.png) - Analysis >The requirement of Software(What?) > PM 必須出來引導說明客戶需求,以及<font color=red>end-user 是誰</font>,<font color=red>產品的目標與產品應具備哪些功能。</font>此階段要產出 SRS (Software Requirement Specification)文件,顧客應 Review 後,才可進行到下一階段。 - Design > <font color=red>The blue print of software</font>(How?) > 依照 SRS 設計 architecture,應該就是系統設計層面,<font color=red>說明前端、後端要使用什麼技術,資料庫設計等等。</font> - Implementation > 依照 SRS 與 Design document 進行開發。 - Testing > 在 SRS 下對於開發的程式進行測試,改善 Bug 達到客戶要求。 - Installation --- ## 各階段的設計方法 - Structured Technology - Structured Analysis - Structured Design - Structured Programming - Objected Oriented Technology - OOA - OOD - OOP ---