Software architecture and design illuminated / Kai Qian ... [et al.]
Material type:
TextSeries: Jones and Bartlett illuminated seriesPublication details: Sudbury, Mass. : Jones and Bartlett Publishers, c2010.Description: xiv, 387 pages. : illustration ; 24 cmContent type: - text
- unmediated
- volume
- 9780763754204 (pbk.)
- 076375420X (pbk.)
- 22 005.12 S
| Item type | Current library | Collection | Call number | Status | Date due | Barcode | |
|---|---|---|---|---|---|---|---|
Books
|
Main library A1 | Computers & Information Technology ( Computer Science ) | 005.12 S (Browse shelf(Opens below)) | Available | 00009173 |
Includes bibliographical references and index.
Table of Contents
Preface
1 Introduction to Software Architecture
1.1 Overview
1.2 Software Architecture: Bridging Software Requirement
and Software Implementation
1.3 Architectural Styles
1.4 Quality Attributes
1.5 Guidelines for Software Architectural Design
1.6 Summary
1.7 Self-Review Questions
2 Software Architecture Design Space
2.1 Overview
2.2 Types of Software Structures
2.2.1 Software Code Structure
2.2.2 Software Runtime Structure
2.2.3 Software Management Structure
2.3 Software Elements
2.4 Software Connectors
2.5 An Agile Approach to Software Architecture Design
2.6 Summary
2.7 Self-Review Questions
3 Models for Software Architecture
3.1 Overview
3.2 UML for Software Architecture
3.2.1 Structural Diagrams
3.2.2 Behavioral Diagrams
3.3 Architecture Views
3.4 Architectural Description Languages (ADL)
3.5 Summary
3.6 Self-Review Questions
3.7 Exercises
3.8 Design Exercises
4 Object Oriented Paradigm
4.1 Overview
4.2 Introducing Object Oriented Paradigm
4.2.1 Classes and Objects
4.2.2 Relationships
4.3 OO Analysis
4.3.1 Step 1: Design of UML Use Case Diagram
4.3.2 Step 2: Develop Analysis Class Diagram via Noun Extraction
4.4 OO Design
4.4.1 Step 1: Identify Classes - CRC Card
4.4.2 Step 2: Construct Interaction Diagram
4.4.3 Step 3: Build State Machine Diagram
4.4.4 Step 4: Class Specification
4.5 Design Principles
4.5.1 Principle of Decoupling
4.5.2 Ensuring Cohesion
4.5.3 Open-Closed Principle
4.6 Summary
4.7 Self-Review Questions
4.8 Exercises
4.9 Design Exercises
4.10 Challenging Exercises
5 Data Flow Architecture
5.1 Overview
5.2 Batch Sequential
5.3 Pipe & Filter Architecture
5.4 Process-Control Architecture
5.5 Summary
5.6 Self-Review Questions
5.7 Exercises
5.8 Design Exercises
6 Data Centered Software Architecture
6.1 Overview
6.2 Repository Architecture Style
6.3 Blackboard Architecture Style
6.4 Summary
6.5 Self-Review Questions
6.6 Exercises
6.7 Design Exercises
7 Hierarchy Architecture
7.1 Overview
7.2 Main/Subroutine
7.3 Master/Slave
7.4 Layered
7.5 Virtual Machine
7.6 Summary
7.7 Self-Review Questions
7.8 Exercises
7.9 Design and Exercises
8 Implicit Asynchronous Communication Software Architecture
8.1 Overview
8.2 Non-Buffered Event-Based Implicit Invocations
8.3 Buffered Message-Based Software Architecture
8.4 Summary
8.5 Self-Review Questions
8.6 Exercises
8.7 Design and Exercises
9 Interaction Oriented Software Architecture
9.1 Overview
9.2 Model-View-Controller(MVC)
9.2.1 MVC-I
9.2.2 MVC-II
9.3 Presentation-Abstraction-Control (PAC)
9.4 Summary
9.5 Self-Review Questions
9.6 Exercises
9.7 Design Exercises
10 Distributed Architecture
10.1 Introduction
10.2 Client/Server
10.3 Multi-tiers
10.4 Broker Architectural Style
10.4.1 Broker Implementation in Common Object Request
Broker Architecture (CORBA)
10.4.2 Message Broker Architecture
10.5 Service-Oriented Architecture (SOA)
10.5.1 SOA Implementation in Web Services
10.5.2 SOA Implementation for Grid Service Computing
10.6 Summary
10.7 Self-Review Questions
10.8 Exercises
10.9 Design Exercises
11 Component-Based Software Architecture
11.1 Overview
11.2 What is a Component
11.3 Principles of Component-Based Design
11.3.1 Connections of Components
11.3.2 Component-Level Design Guidelines
11.4 Summary
11.5 Self-Review Questions
11.6 Exercises
11.7 Design Exercises
12 Heterogeneous Architecture
12.1 Overview
12.2 Methodology of Architecture Decision
12.3 Quality Attributes
12.4 Selection of Architectural Styles
12.5 Evaluation of Architecture Designs
12.6 Case Study: Online Computer Vendor
12.6.1 Overall Architecture Design of OCVS
12.6.2 Architecture Design of Order Processing Component
12.6.3 Architecture Design of Inventory Management
12.6.4 Architecture Design of Manufacture & Shipping Component
12.7 Summary
12.8 Self-Review Questions
12.9 Exercises
12.10 Design Exercises
12.11 Challenging Exercises
13 Architecture of Graphical User Interfaces
13.1 Overview
13.2 Evolution of User Interfaces
13.3 Look-and-Feel (Syntax) of User Interfaces
13.3.1 Static Style of User Interfaces
13.3.2 Dynamic Style of User Interfaces
13.3.3 Tailorable Style of User Interfaces
13.3.4 No User Interfaces
13.4 Usability (Semantics) of User Interfaces
13.5 Design Considerations of User Interfaces
13.6 Enabling Technology
13.6.1 Containers
13.6.2 Layout Managers
13.6.3 Major UI Components
13.6.4 Event Listeners
13.6.5 A Case Study
13.7 Direct Manipulation
13.8 Evaluation of User Interfaces
13.9 Summary
13.10 Self-Review Questions
13.11 Exercises
13.12 Design Exercises
14 Product Line Architectures
14.1 Overview
14.2 Introduction and Motivation
14.2.1 Software reuse and product lines
14.2.2 Methodologies, processes, and tools
14.3 Domain Engineering: Institutionalizing Software Reuse
14.3.1 Domain Analysis: Reference Requirements And Architectures
14.3.2 Domain Design: Design-For-Commonality And Control-Of-Variability
14.3.3 Domain Implementation: Configuration Model, Component Base.
14.3.4 Types of components
14.3.5 Heuristics
14.3.6 Software Technology for Systematic Reuse
14.3.7 Applications Engineering
14.4 Product Line Architectures (PLA)
14.4.1 Elements of a PLA
14.4.2 Costs and Benefits of Producing a PLA
14.4.3 Attribute-Driven Design Method
14.4.4 Process for Producing a PLA
14.5 A Product Line Analysis Example
14.5.1 WHY: mission and strategic goals
14.5.2 WHAT: Product Families
14.5.3 HOW: asset base
14.6 Summary
14.7 Self-Review Questions
14.8 Exercises
14.9 Design exercises
There are no comments on this title.