文章目录
一、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