软件体系结构

什么是软件体系结构?

可以从多个角度来看这个问题

  • 软件体系结构的定义:是具有一定形式的结构化元素,即构件的集合(包括处理构件、数据构件、连接构件)

从工程的角度来看

软件体系结构是软件设计过程中的一个层次,是处理关于整体系统结构设计和描述方面的一些问题

从重用的角度来看

软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接、结构和关系

从维护角度来看

软件体系结构是一个程序/系统各构件的结构、它们之间的相互关系以及进行设计的原则和随时间演化的指导方针

从工程的作用来看

软件体系结构包括一个软件和系统构件、互联及约束的集合;一个系统需求说明的集合;一个基本原理用以说明这一构件、互联和约束能够满足条件

一些常见的软件体系结构

C/S体系结构

Client/Server(客户机/服务器)结构是一种两层结构的系统

  1. C/S 模式的优点:
    (1)由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度较快。
    (2)C/S结构的管理信息系统具有较强的事务处理能力。
  2. C/S 模式的缺点:
    (1)只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。
    (2)客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
    (3)对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于win2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。

B/S体系结构

Browser/Server(浏览器/服务器)结构是客户端是标准的浏览器(如Internet Explore,Netscape Navigator等),服务器端为标准的WEB服务器协同应用服务器响应浏览器的请求。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。

  1. B/S结构的优点:
    (1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。
    (2)业务扩展简单方便,通过增加页面即可增加服务器功能。
    (3)维护简单方便,只需要改变网面,即可实现所有用户的同步更新。
    (4)共享性强
  2. B/S 模式的缺点:
    (1)响应速度不及C/S,随着AJAX技术的发展,相比传统B/S结构软件提升一倍速度。
    (2)用户体验效果不是很理想,B/S需要单独界面设计,厂商之间的界面也是千差万别,由于浏览器刷新机制,使用时有刷屏现象,好在AJAX技术解决这一难题,像用友,智赢等开发的B/S架构软件用户体验效果与C/S差不多。

管道/过滤器体系结构

管道-过滤器, Pipes and Filters是面向数据流的软件体系结构。
它为处理数据流的系统提供了一种结构。
单步数据处理封装在一个过滤器中,数据在过滤器之间的管道传输。
以便实现对数据的多次操作。
请添加图片描述
优点:
1.高效的并行效率(灵活使用active(主动) 过滤器)
2.过滤器可以重组/重用/可替换
3.不需要中间保存
缺点:
1.数据传输和转化开销大
2.错误处理复杂

三层客户/服务器体系结构

相对于二层体系结构(Client/Server构架)是由逻辑上相互分离的表示层、业务层和数据层构成。表示层向客户提供数据,业务层实施业务和数据规则,数据层定义数据访问标准。三层体系结构中的核心是组件对象模型。

在网络连接模式中,除对等网外,还有另一种形式的网络,即服务器/客户机网,Client/Server。在客户机/服务器网络中,服务器是网络的核心,而客户机是网络的基础,客户机依靠服务器获得所需要的网络资源,而服务器为客户机提供网络必须的资源。

它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端 来实现,降低了系统的通讯开销。大多数应用软件系统都是Client/Server形式的两层结构,由于软件应用系统正在向分布式的Web应用发 展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应 用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是应用系统的发展方向。

异构体系结构

C/S与B/S混合;查改有别的模型

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AlbertOS

还会有大爷会打钱?

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值