文章目录
- 一、What is a design?
- 二、Decomposition and modularity分解和模块
-
- 1.High level – lower level
-
- (1)Modular decomposition
- (2)Data-oriented decomposition
- (3)Event-oriented decomposition
- (4)Outside-in design
- (5)Object-oriented design
- 2.Modules/ components
- 三、Architectural styles and strategies
-
- 1.Three design levels: architecture, code design, and executable design
- 2.Architectural styles – description, properties, and examples
-
- (1)Pipes and filters
- (2)C/S
- (3)Layering
- (4)Repositories仓库
- (5)P2P
- (6)Publish-subscribe
- 四、Issues in design creation
一、What is a design?
Conceptual design/ system design
Technical design
【简答题】
- Identify the characteristics of a good design.
- 构建独立性
- 异常标识和处理
- 防错和容错技术
二、Decomposition and modularity分解和模块
1.High level – lower level
(1)Modular decomposition
【选择题】
- In Modular decomposition, the construction of software is based on assigning functions to components.
(2)Data-oriented decomposition
(3)Event-oriented decomposition
(4)Outside-in design
(5)Object-oriented design
2.Modules/ components
三、Architectural styles and strategies
1.Three design levels: architecture, code design, and executable design
2.Architectural styles – description, properties, and examples
(1)Pipes and filters
(2)C/S
【选择题】
- Client/Server(C/S) is a popular ( architecture style )
(3)Layering
【选择题】
- ( Layering )architectures make use of abstraction,and represent the software as different levels of abstraction.
(4)Repositories仓库
【选择题】
- Designers usually adopt ( Repositories )when designing search engines.(搜索引擎)
- Designers usually adopt ( Repositories )when designing libraries of reusable components.(库)
(5)P2P
(6)Publish-subscribe
四、Issues in design creation
Modularity and levels of abstraction
Collaborative design
Concurrency