1 1 System Software Categories 1 1 Application
































































- Slides: 64
表 1 -1 列出幾種常見軟體的種類 (System Software Categories)
表 1 -1 列出幾種常見軟體的種類 (Application Software Categories)
Software Categories o System Software n o Application Software n o Word processing, spreadsheets, multimedia, database Web Applications (Web. Apps) n o Keypad control, fuel control Product-line Software n o CAD/CAM, system simulation Embedded Software n o Standalone business software Engineering/Scientific Software n o OS, drivers, networking, compilers, editors E-commerce, B 2 B AI (Artificial Intelligence) Software n Robotics, expert systems, pattern recognition, neural networks
1. 2. 2 程式語言特性的演進 (Evolution of Programming Languages) Machine-oriented Language Procedual-oriented Language Application-oriented Language Query Language Object-oriented Language Natural Language
軟體危機常見的問題 (common issues) 1. 2. 3. 4. 5. 6. 7. 8. 9. 專案的時程估計錯誤 開發好的系統臭蟲(Bug)很多 維護時修改一個問題常會產生更多問題 沒有系統分析與設計的文件 軟體的生產力低 程式版本混亂沒有控管 Unclear requirements, the clients ask for new features Software itself is complex Uncertainties throughout the development project
1. 6 軟體 程 (Software Engineering) o o 軟體 程簡單的說就是有系統的進行軟體 的規劃、分析、設計、程式製作、維護等 作,其目的是運用科學化的方法和技術, 來提高軟體的生產力和軟體的品質。 Software engineering is a discipline that integrates methods, tools, and procedures for the development of computer software.
1. 7 物件導向技術 (Object-oriented technology, OOT) o 具有封裝(encapsulation)、繼承(inheritance)和多型 (polymorphism)特性的物件導向技術,提供系統發 展人員在不增加複雜度的情況下擴大系統的方法, 最適合用來發展強調再用的軟體系統。 n n n Object-Oriented Analysis (OOA) Object-Oriented Design (OOD) Object-Oriented Programming (OOP)
1. 8 UML o o o UML(Unified Modeling Language)屬於物件導 向領域裡頭用來將設計概念表現出來的一種符號 表現法(notation)。 UML is a language for software system modeling and design Resulted from the convergence of notations from three leading object-oriented methods: n n n OMT (James Rumbaugh) OOSE (Ivar Jacobson) Booch (Grady Booch)
圖 1 -7 UML模型圖表達的各種觀點 Implementation View Structural View User View Behavior View Environmental View
UML優點 o o 一、 視覺化 (Visual) 二、規格化 (Standard) 三、建置化 (Implementation) 四、文件化 (Document)
1. 9 物件導向的開發程序 (Object-Oriented Development Process) o Software process (軟體開發程序) is a framework (架構) for the tasks that are required to build high-quality software. o Software process provides a roadmap (a series of steps) that helps you produce timely and high-quality result.
A Process Framework Activities Software Engineering Actions work tasks work products Task quality assurance points Sets project milestone Umbrella Activities
Generic Framework Activities o Communication n n o Planning n n n o n Analysis Design Construction n n o Estimating Scheduling Tracking Modeling n o Project initiation Requirement gathering Code generation Testing Deployment n n Delivery Support & feedback
RUP (Rational Unified Process) o o Developed by Booch, Jacobson, and Rumbaugh (the same three person developed UML) 採用「往覆式」(iterative) 的 RUP流程,規 劃時將一個準備開發的系統拆解成好幾個 子系統,然後不斷往復循環整個開發流程
圖 1 -10 CMMI識別標誌 (Logo)
































































