精華區beta Programming 關於我們 聯絡資訊
==> 在 drkkimo.bbs@ptt.cc () 的文章中提到: > 二者不是相對的嗎 SDCL(Software Develop life cycle) 不是舊的系統分析方法 > 而OO 是比較最近出現的嗎? 重述一次, SDLC 只是個軟體專案管理的程序概念而已, 並沒有限定要不要用 OO 方式。 (我所認知的 SDLC 定義, 是根據以下這種說法: http://en.wikipedia.org/wiki/Software_development_life_cycle http://en.wikipedia.org/wiki/System_Design_Life_Cycle ) 除了我之前提過的加拿大某省農業部的 SDLC 規範之外, 或許搬出另一份 ISO/IEC 12207:1995 規範, 說服力更強吧: IEEE/EIA 12207.0-199 Industry Implementation of International Standard ISO/IEC 12207:1995, Standard for Information Technology—Software life cycle processes. 在它的 §5.3:Development process 裡, 只規定要有以下任務: 1) Process implementation; 2) System requirements analysis; 3) System architectural design; 4) Software requirements analysis; 5) Software architectural design; 6) Software detailed design; 7) Software coding and testing; 8) Software integration; 9) Software qualification testing; 10) System integration; 11) System qualification testing; 12) Software installation; 13) Software acceptance support. 至於各任務要如何進行, 並沒有規定。 尤其其中的 2~6, 完全沒限制你不能用 use case driven、OOAD 的方式進行。 此外, 在另一份附屬文件中: IEEE/EIA 12207.2-1997 Software life cycle processes- Implementation considerations 它的 p.24 甚至講明了: IEEE/EIA 12207.0 does not require the use of any particular architectural method, e.g., functional decomposition. That selection should be made based upon the characteristics of the development effort. In some cases, it is appropriate to view the software architectural efforts as an extension of the system architectural effort, continuing at a greater level of detail and with greater attention to software-specific concerns. 至於 OOAD 和傳統 structural analysis/design 的優劣, 應該是依專案 case by case 來看, 也要看個人的經驗而定。 對大部份專案而言, OOAD 最立即可見的優點, 就是一套 modeling language/methodology 一路走到底, 只不過層層 refine, 不需做太多 transformation 或 mapping。 尤其當 MDA (model driven architecture) 漸漸成熟之際, 這種 seamless analysis/design/codegen 的效益會更加明顯。 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ≡ 何陋居 ≡ 在這個世界上,你就愛一種東西,你就在你愛的這個東西裡 把自己練到完美,練到無懈可擊… 就這樣,你學會簡單而嚴肅… 你形成一種風格,唯你獨有。 劉大任 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- * Origin: ★ 交通大學資訊科學系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3>