Project-Based Software Engineering: An Object-Oriented Approach (Paperback)

Evelyn Stiller, Cathie LeBlanc

  • 出版商: Addison Wesley
  • 出版日期: 2001-07-27
  • 售價: $2,100
  • 貴賓價: 9.5$1,995
  • 語言: 英文
  • 頁數: 400
  • 裝訂: Paperback
  • ISBN: 020174225X
  • ISBN-13: 9780201742251
  • 相關分類: Object-oriented軟體工程
  • 立即出貨(限量) (庫存=3)

買這商品的人也買了...

商品描述

Project-Based Software Engineering is the first textbook to provide hands-on process and practice in software engineering essentials for the beginner. The text presents steps through the software development life cycle and two running case studies that develop as the steps are presented. Running parallel to the process presentation and case studies, the book supports a semester-long software development project. This book is appropriate for a sophomore/junior level software engineering course and/or people teaching a hands-on project-based course in which giving students experience in project analysis, design implementation and testing is a primary goal.

Table of Contents

1. Introduction to Software Engineering.

Key Concepts.
Why Engineer Software?
Elements of a Software Development Paradigm.
A Brief History of Software Engineering Techniques.
The Costs of Not Engineering Software.
Why Software Engineering Is Not Universal.
The Role of the Project.
Working in Teams.
Creating the Project Team.
CLASS PROJECT: Functional Requirements.
Questions for Review.


2. Object-Oriented Paradigm Overview.

Key Concepts.
Getting Acquainted with the Class Project.
Object-Oriented Conceptualization.
The Software Life Cycle.
Object-Oriented Modeling.
Qualities of a Good Object-Oriented System.
Working in Teams.
Questions for Review.


3. Object-Oriented Analysis.

Key Concepts.
Introduction to Requirements Analysis.
The Importance of Requirements Analysis.
Requirements Specification.
CASE STUDY: Library Management System Specification.
Evaluating the Requirements Specification.
Refining the Requirements Specification.
Verifying the Requirements Specification.
Propagating Requirements throughout Development.
The Process of Requirements Analysis.
Analyzing the CLASS PROJECT.
Working in Teams.
Questions for Review.


4. Product Design.

Key Concepts.
Objectives of Design.
Class Design versus Product Design.
Product Design Overview and Objectives.
Object Persistence.
CASE STUDY: Object Persistence in LMS.
Process Architecture.
CASE STUDY: Interprocess Communication in LMS.
CLASS PROJECT: Interprocess Communication in Galaxy Sleuth.
User Interfaces.
User Interface Design.
User Interface Design Principles.
CASE STUDY: User Interface for LMS.
Working in Teams.
Class Project Product Design.
Questions for Review.


5. Class Design.

Key Concepts.
The Class Design Process.
More UML.
Objectives of the Class Design Phase.
Verification of the Class Design.
Designing the CLASS PROJECT.
Questions for Review.


6. CASE STUDY: Game2D with Method Design.

Key Concepts.
Overview.
Requirements Specification.
Refined Requirements Specification.
Requirements Analysis.
Product Design.
Class Design.
Method Design.
Questions for Review.


7. Implementation.

Key Concepts.
Introduction.
Implementation Approaches.
Implementation Plan.
CASE STUDY: Implementation Plan for the LMS.
Programming Style.
Comments and Internal Documentation.
Project Coding Standards.
Implementing the CLASS PROJECT.
Questions for Review.


8. Testing.

Key Concepts.
What Is Testing?
Principles of Object-Oriented Testing.
Definitions.
Testing Steps.
Special Issues for Testing Object-Oriented Systems.
CASE STUDY: Testing the LMS.
Testing the CLASS PROJECT.
Testing in the Face of Change: Configuration Management.
Questions for Review.


9. Project Management.

Key Concepts.
Introduction.
Project Manager Responsibilities.
Configuration Management.
Project Planning and Monitoring.
Project Teams.
Risk Management.
Reducing Risk.
Further Readings on Risk Management.
CASE STUDY: Risk Analysis in the LMS.
Questions for Review.


10. Design Patterns.

Key Concepts.
Motivation for Design Patterns.
What Are Design Patterns?
Exploring Design Patterns.
Questions for Review.


11. Software Development Horror Stories.

Key Concepts.
Introduction.
Therac-25.
CONFIRM.
Telephones and Communications.


12. Completing and Presenting the CLASS PROJECT.

Succeeding with the Class Project.
Reflecting on the Project.
Presenting the Project.

商品描述(中文翻譯)

《基於專案的軟體工程》是第一本為初學者提供實踐軟體工程基礎的教科書。本書介紹了軟體開發生命週期的步驟,並通過兩個持續進行的案例研究來展示這些步驟的發展過程。與過程介紹和案例研究並行的是一個為期一學期的軟體開發專案。本書適用於大二/大三級的軟體工程課程,以及教授以實踐專案為主要目標的實踐專案課程的教師。

目錄

1. 軟體工程簡介。
- 關鍵概念。
- 為什麼要工程化軟體?
- 軟體開發範式的要素。
- 軟體工程技術的簡史。
- 不工程化軟體的成本。
- 為什麼軟體工程不普及?
- 專案的角色。
- 團隊合作。
- 建立專案團隊。
- 課堂專案:功能需求。
- 回顧問題。

2. 面向對象範式概述。
- 關鍵概念。
- 熟悉課堂專案。
- 面向對象的概念。
- 軟體生命週期。
- 面向對象建模。
- 優秀面向對象系統的特點。
- 團隊合作。
- 回顧問題。

3. 面向對象分析。
- 關鍵概念。
- 需求分析簡介。
- 需求分析的重要性。
- 需求規格。
- 案例研究:圖書館管理系統需求規格。
- 評估需求規格。
- 修正需求規格。
- 驗證需求規格。
- 在開發過程中傳播需求。
- 需求分析過程。
- 分析課堂專案。
- 團隊合作。
- 回顧問題。

4. 產品設計。
- 關鍵概念。
- 設計目標。
- 類別設計與產品設計。
- 產品設計概述與目標。
- 物件持久化。
- 案例研究:LMS中的物件持久化。
- 流程架構。
- 案例研究:LMS中的進程間通信。
- 課堂專案:Galaxy Sleuth中的進程間通信。
- 使用者介面。
- 使用者介面設計。
- 使用者介面設計原則。
- 案例研究:LMS的使用者介面。
- 團隊合作。
- 課堂專案產品設計。
- 回顧問題。

5. 類別設計。
- 關鍵概念。
- 類別設計過程。
- 更多UML。
- 類別設計階段的目標。
- 類別設計的驗證。
- 設計課堂專案。
- 回顧問題。

6. 案例研究:使用方法設計的Game2D。
- 關鍵概念。
- 概述。
- 需求規格。
- 修正後的需求規格。
- 需求分析。
- 產品設計。
- 類別設計。
- 方法設計。
- 回顧問題。

7. 實作。
- 關鍵概念。
- 簡介。
- 實作方法。
- 實作計劃。
- 案例研究:LMS的實作計劃。
- 程式撰寫風格。
- 註解和內部文件。
- 專案編碼標準。
- 實作課堂專案。
- 回顧問題。

8. 測試。
- 關鍵概念。