软件架构复习笔记7

上传人:博****1 文档编号:499668641 上传时间:2024-01-20 格式:DOCX 页数:6 大小:24.04KB
返回 下载 相关 举报
软件架构复习笔记7_第1页
第1页 / 共6页
软件架构复习笔记7_第2页
第2页 / 共6页
软件架构复习笔记7_第3页
第3页 / 共6页
软件架构复习笔记7_第4页
第4页 / 共6页
软件架构复习笔记7_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《软件架构复习笔记7》由会员分享,可在线阅读,更多相关《软件架构复习笔记7(6页珍藏版)》请在金锄头文库上搜索。

1、软件架构复习笔记(7) - 体系结构21 Jun 2012At NJU为什么需要有体系结构的设计(高层设计)详细设计的不足 关注点偏差(载体失配)o 程序语言无法描述整理的质量要求 无法实现佳偶信息本地化(信息隐藏的局限性)o 单词匹配的需求是模块见必须依赖与对方的接口 无法有效抽象部件的整体特性(无法描述Module itself) 接口的定义缺乏结构性o 模块的众多接口之间太独立了o 无法实现区别对待 不能有效适应大型软件开发的特殊开发方法o 复用与单词匹配o 多语言/多泛型与联合编译o 遗留资产与Module Inside使用Programming in the large 的特点 载体

2、复杂度过大:过于依赖单词匹配的导入导出关系 导入导出并不适合整体结构设计 体系结构设计the set of principal design decision about the system组成部分 Components: computation and state Connector: relation among components (deserve to be first-class) Configuration注意点 Components should be independent Connectors should be independent Relations among c

3、omponents are not fixed体系结构设计的关注点 Qualities of the systemo availabilityo modifiabilityo performanceo securityo testabilityo usability Project Environmentso Develop Environmentso Business Environmentso Technology Environments Business GoalsWhy architectural design decisions are important and difficul

4、t? Design decisions are cross cutting and intertwined:o the design decision information is fragmented across various parts of the design, making it hard to find and change the decisions. Design rules and constraints are violated:o designers can easily violate design rules and constraints arisingfrom

5、 previously taken design decisionso lead to architectural drift and its associated problems Obsolete design decisions are not removedo In the current design practice removing design decisions is avoided, because of the effort needed, and the unexpected effects this removing can have on the system.So

6、ftware Architecture Description4 + 1 View传送门Logic to Process Inside-out: from Logic structureo define agent taskso Objects executed on that same agento several classes that need to be executed in mutual exclusion Outside-in: from physical structureo identify external stimuli (requests) to the system

7、o define client and servers processeso define the right set of servers,and allocate objects to the client and servers agentsLogic to Development very close, but not the same A Component is usually implemented as a module. Large one are decomposed into multiple packages Grouping to subsystems based o

8、n: Strategies and Tactics (Ch5)Availability Tactics Fault detectiono Ping echoo Heartbeato Exception Recovery preparation and repairo Votingo Active redundancy (hot restart)o Passive redundancy (warm restart/dual redundancy/)o Spare Recovery reintroductiono Shadowo State resynchronizationo Rollback

9、Preventiono Removal from serviceo Transactionso Process monitorModifiability Tactics传送门 Separate configure data Separate hardware-specific component Separate time-critical component Separate domain model from interfaces Separate domain model from technologies Separate monitor from function Separate

10、error resume from core logic Separate external interface adapterPerformance Tactics Resource Demando Increase computation efficiencyo reduce computational overheado Manage event rateo Control frequency of sampling Resource Managemento Introduce concurrencyo Maintain multiple copieso Increase availab

11、le resources Resource Abstractiono Sheduling policySecurity Tactics Resisting Attackso Authenticate Userso Authorize Userso Maintain data confidentialityo Maintain Integrityo Limit Exposureo Limit Access Detecting Attackso Intrusion detection Recorvering from an Attack Restoration availability Identification Audit trailTestability Tactics Manage input/outputo Recored/Paybacko Separate interface from implementationo Specialized access routines/interfaces Internal Monitoring Built-in monitors体系结构风格

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号