- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高级软件工程(第九章) 软件体系结构(2017课件)
客户机/服务器体系结构风格 与两层C/S结构相比,三层C/S体系结构具有以下优点: 如果合理地划分三层结构的功能,可以使系统的逻辑结构更加清晰,提高了软件的可维护性和可扩充性; 在实现三层C/S结构时,可以更有效地选择运行平台和硬件环境,从而使每一层都具有清晰的逻辑结构、良好的负荷处理能力和较好的开放性,清晰和合理地划分三层C/S结构,使各层之间保持相互独立,可以降低每一层应用的修改难度; * 客户机/服务器体系结构风格 在三层C/S结构中,可以分别选择合适的编程语言来并行地开发每一层的逻辑功能,以提高开发效率,同时,每一层的维护也更加容易; 系统具有较高的安全性,可以充分利用功能层来将数据层和表示层分隔开来,使未授权用户难以绕过功能层,无法利用数据库工具和黑客手段来非法访问数据层,从而保证了中心数据库的安全性,整个系统也更加便于控制,管理层次也更加合理。 * 浏览器/服务器体系结构风格 浏览器/服务器(Browser/Server,B/S),是三层C/S体系结构的一种实现方式,主要包括:浏览器、Web服务器和数据库服务器; B/S结构主要利用了不断成熟的WWW技术,结合浏览器的多脚本语言,采用通用浏览器来实现原来需要复杂的专用软件才能实现的强大功能,节约了开发成本; 与三层C/S结构的解决方案相比,B/S体系结构在客户机上采用了WWW浏览器,将Web服务器作为应用服务器; * 浏览器/服务器体系结构风格 当用户运行某个应用程序时,只需要在客户端的浏览器中键入相应的URL,向Web服务器提出HTTP请求; 当Web服务器接收HTTP请求之后,会调用相关的应用程序,同时向数据库服务器发送数据操作请求; 数据库服务器对数据操作请求进行响应,将结果返回给Web服务器的应用程序; * 浏览器/服务器体系结构风格 在使用系统时,用户仅使用一个浏览器就可以运行全部的应用程序,真正实现了“零客户端”的运作模式; 在系统运行期间,可以对浏览器进行自动升级,B/S结构为异构机、异构网和异构应用服务的集成提供了有效的框架基础; B/S体系结构具有以下优点: 客户端只需要安装浏览器,操作简单,能够发布动态信息和静态信息 * 浏览器/服务器体系结构风格 运用HTTP标准协议和统一客户端软件,能够实现跨平台通信; 开发成本比较低,只需要维护Web服务器程序和中心数据库,客户端升级可以通过升级浏览器来实现,使所有用户同步更新。 B/S体系结构风格也存在着一些问题: 个性化程度比较低,所有客户端程序的功能都是一样的; * 浏览器/服务器体系结构风格 客户端数据处理能力比较差,加重了Web服务器的工作负担,影响系统的整体性能; 在B/S结构的系统中,数据提交一般以页面为单位,动态交互性不强,不利于在线事务处理。(OLTP) * MVC体系结构风格 模型-视图-控制器( model-view-controller ,MVC )体系结构。 模型(M):是应用程序的核心,封装了问题的核心数据、逻辑关系和计算功能,提供了处理问题的操作过程; 视图(V):是模型的表示,提供了交互界面,为用户显示模型信息; 控制器(C):负责处理用户与系统之间的交互,为用户提供操作接口。 * MVC体系结构风格 MVC的处理过程为:首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理;然后模型用业务逻辑来处理用户的请求并返回数据;最后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。 其中,模型是核心数据和功能,视图只关心显示数据,控制只关心用户输入,这种结构由于将数据和业务规则从表示层分开,因此可以最大化地重用代码。 * 课堂练习 你如何理解软件体系结构? 典型的软件体系结构风格有哪些? 简述2层和3层C/S软件体系结构的优缺点? MVC体系结构风格中M、V、C的作用。 * * * * * * 第九章软件体系结构 什么是软件体系结构? 软件体系结构表示系统的框架结构,用于从较高的层次上来描述各部分之间的关系和接口,主要包括:构件、构件性质和构件之间的关系。 软件体系结构是构件和连接件之间相互作用的形式化说明,用以指导将多个模块组织成一个完整的应用程序。 * 软件体系结构描述语言 软件体系结构描述语言(Architectural Description Language,简称ADL)是用来描述软件密集型系统的总体结构的语言,说明系统众多构件之间的结构关系。 代表性的体系结构描述语言包括: Wright Rapide Darwin Unicon ACME ABC/ADL XYZ/ADL XADL 大部分结构描述语言都有构件、连接子、配置等概念。 * 几种典型的软件体系结构风格 软件体系结构表示系统的框架结构,用于从较高的层次上来描述各部分之间的关系和接口,主
文档评论(0)