欢迎来到天天文库
浏览记录
ID:57448449
大小:1.10 MB
页数:18页
时间:2020-08-19
《软件架构实践12.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、软件架构实践SOFTWAREARCHITECTUREINPRACTICE软件系统设计与体系结构软件架构实践第1章认识软件架构•1.1软件架构与软件工程1.2软件架构概述1.3感受身边的架构存在1.4两个简单程序的架构实现与分析1.5本章小结第1章认识软件架构1.2软件架构概述1.2.1软件架构的定义什么是软件架构,网上有60多个定义多数人认可的定义:软件系统的一个或多个结构,包括软件组件、这些组件的外部可见特性,以及这些组件之间的相互关系。软件架构包含了组件组件的外部可见特性组件之间的相互关系1.2.1软件架
2、构定义1.2.1软件架构的定义进一步理解软件架构定义架构是一个或多个系统的抽象是由抽象的组件来表示的组件具有外部的可见特性组件相互之间是有联系的系统抽象屏蔽了组件内部特有的细节系统抽象:组件与联系用视图的方式表示1.2.1软件架构的定义常见的软件架构:由结构和功能各异、相互作用组件的集合,按照层次构成。软件架构包含了系统的基础构成单元(组件)它们之间的作用关系(连接/连接件)在构成系统时,它们的集成方法以及对集成约束的描述。什么是软件架构?架构={组件、连接件、约束}组件:一组程序代码、进程、接口连接件:调用
3、、管道、消息约束:组件之间的连接关系由于架构是关于软件系统组织的配置定义因此它定义了:组成系统的结构(结构元素/组件)结构或组件间特定的构成和协作关系系统的集成方法和约束所以,软件架构不但决定了系统的物理构成也支配了开发的组织行为需求分配、范围和任务定义、进度计划、测试方案、集成方法、配置项与基线管理……这是现代软件工程更关注的地方。1.2.2软件架构的作用1.2.2软件架构的作用(1)软件架构定义了软件计算的组件、局部和总体的构成关系、以及这些组件之间的相互作用计算组件:客户、服务器、数据库、中间件、程序包
4、、过程、子程序、进程等——切碎、再切碎(粒度)相互作用关系:过程调用、共享变量访问、信号灯、进程通信、消息传递、访问/网络协议等《操作系统原理》课程其实最主要的意义和价值就是介绍一个实际的软件系统构架的案例1.2.2软件架构的作用(2)除了描述系统的构成和结构关系外,软件构架还表达了系统关键需求与系统构成之间的对应关系,这为系统的设计,提供了分析和评价的依据因为软件构架比需求更进一步要面对或满足系统非功能性的内容,如:容量、数据吞吐量、一致性、兼容性、安全性、可靠性1.2.3软件架构的表示方法最简单的架构视图
5、:物理视图(计算机系统构架)图例传感器监控传感器输入控制报警器条件控制报警器输出控制产生显示信息规范显示信息产生报警信号选择空线拨号等待线路空闲显示信息规范化产生报警信号选择空线拨号产生显示信息等待线路空闲传感器监控的功能视图产生显示信息功能组件依赖关系基于WEB的应用系统架构视图UML架构视图抽象工厂的类代码视图AbstractFactory:声明创建2个抽象产品对象的接口ConcreatFactory1/2:实现创建具体产品对象的操作AbstractProductA/B:为各产品对象声明一个接口Produ
6、ctA1/A2/B1/B2:定义一个将被相应的具体工厂创建的产品对象、实现AbstractProduct接口Client:仅使用声明的接口MVC构架的并发视图一个由Struts实现的MVC构架
此文档下载收益归作者所有