资源预览内容
第1页 / 共39页
第2页 / 共39页
第3页 / 共39页
第4页 / 共39页
第5页 / 共39页
第6页 / 共39页
第7页 / 共39页
第8页 / 共39页
第9页 / 共39页
第10页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
软件设计模式与体系结构课程概览主讲教师:陈星 助教:曾雪娥、刘艳萍等 福州大学 数学与计算机科学学院 福建省网络计算与智能信息处理重点实验室软件设计模式与体系结构软件设计模式与体系结构课程概览:课程定位课程概览:课程定位2计算机系统结构操作系统程序设计实习 & 编程语言数据库数据结构与算法面向对象的分析与设计软件工程 & 软件体系结构系 统 软 件编 程 方 法工 程 方 法课程概览:跟谁学?课程概览:跟谁学?3陈星 博士 讲师曾雪娥 硕士生 一年级刘艳萍 硕士生 二年级课程概览:学什么课程概览:学什么 本门课程学什么?本门课程学什么?4引言引言5狗窝、架构和建模的故事狗窝、架构和建模的故事我们在用建狗窝的方法建设软件的摩天大楼我们在用建狗窝的方法建设软件的摩天大楼狗窝的架构设计狗窝的架构设计一个人一个人就能就能搭建搭建需要:需要: 设计方案(构思)在建造者的脑子里设计方案(构思)在建造者的脑子里 简单简单的的过程:边建造边构思过程:边建造边构思 简单的工具简单的工具别墅的架构设计别墅的架构设计由一由一个个团队,必须有效团队,必须有效且高效且高效地地建造建造,需要需要 有设计,要建模有设计,要建模 良好定义的过程良好定义的过程 强大强大的的工具工具楼群的架构设计楼群的架构设计怎么建设?怎么建设?要点2:建模和实现故事寓意:重视架构的设计故事寓意:重视架构的设计讨论:盖房子和编程序哪个更难?讨论:盖房子和编程序哪个更难?课程概览:学什么课程概览:学什么 我们是否应该像盖房子那样写程序呢?我们是否应该像盖房子那样写程序呢? 盖房子需要“蓝图”,房子建成不仅意味不会塌倒,还意盖房子需要“蓝图”,房子建成不仅意味不会塌倒,还意 味达到了业主的要求的。味达到了业主的要求的。 那么,软件开发呢?那么,软件开发呢? 盖房子有常见的“设计问题及其解决方法”。那么,软件盖房子有常见的“设计问题及其解决方法”。那么,软件 开发呢?开发呢?11例子:教学系统例子:教学系统12例子:微软例子:微软 e e- -Gov Gov 架构架构13例子:例子:MVCMVC软件体系结构软件体系结构14课程概览:学什么课程概览:学什么 软件设计模式软件设计模式 由来:设计模式为软件设计经常遇到的问题提供了易于由来:设计模式为软件设计经常遇到的问题提供了易于 复用且可维护的高级解决方案。复用且可维护的高级解决方案。 概念:软件设计模式是对软件设计经验的总结,是对软概念:软件设计模式是对软件设计经验的总结,是对软 件设计中反复出现的设计问题的成功解决方案的描述。件设计中反复出现的设计问题的成功解决方案的描述。 软件设计模式通常包含软件设计模式通常包含4 4个基本要素:模式名称、问题、个基本要素:模式名称、问题、 解决方案以及效果。解决方案以及效果。 意义:设计模式可以使设计者更加方便地借鉴或直接使意义:设计模式可以使设计者更加方便地借鉴或直接使 用已经过证实的成功设计方案,而不必花费时间进行重用已经过证实的成功设计方案,而不必花费时间进行重 复设计。复设计。15课程概览:学什么课程概览:学什么 创建型软件设计模式(掌握)创建型软件设计模式(掌握) 工厂模式工厂模式 生成器模式生成器模式 单例模式单例模式 结构型软件设计模式(掌握)结构型软件设计模式(掌握) 组合模式组合模式 适配器模式适配器模式 外观模式外观模式 桥接模式桥接模式 行为型软件设计模式(掌握)行为型软件设计模式(掌握) 迭代器模式迭代器模式 访问者模式访问者模式 命令模式命令模式 中介者模式中介者模式 策略模式策略模式 状态模式状态模式16课程概览:学什么课程概览:学什么 软件体系结构软件体系结构 概念:软件体系结构是系统的基本组织结构,包括系统概念:软件体系结构是系统的基本组织结构,包括系统 构成要素、这些构成要素相互之间以及与运行环境之间构成要素、这些构成要素相互之间以及与运行环境之间 的关系,还包括系统设计及演化时应遵循的原则。的关系,还包括系统设计及演化时应遵循的原则。 意义:意义: 软件体系结构是软件相关人员之间进行交流的手段。 软件体系结构是一种高层次的设计复用手段。 软件体系结构是早期关键设计决策的体现。17课程概览:学什么课程概览:学什么 经典软件体系结构(掌握)经典软件体系结构(掌握) 调用调用- -返回风格软件体系结构返回风格软件体系结构 数据流风格软件体系结构数据流风格软件体系结构 事件系统软件体系结构事件系统软件体系结构 层次软件体系结构层次软件体系结构 MVCMVC软件体系结构软件体系结构 基于网络的软件体系结构(了解)基于网络的软件体系结构(了解) 客户端客户端- -服务器软件体系结构服务器软件体系结构 P2PP2P软件体系结构软件体系结构 网格计算软件体系结构网格计算软件体系结构 SOASOA软件体系结构与软件体系结构与Web ServiceWeb Service 云计算软件体系结构云计算软件体系结构18课程概览:怎么学课程概览:怎么学 授课方式授课方式 课堂讲授课堂讲授 案例分析案例分析 考核方式考核方式 30%30%平时成绩平时成绩 70%70%期末成绩期末成绩 教材及参考书教材及参考书 孙玉山等著,孙玉山等著,软件设计模式与体系结构软件设计模式与体系结构,高等教育出版社,高等教育出版社, 2013. Erich Gamma等著,李英军等译,设计模式,机械工业出版社, 2007. 张友生等著,软件体系结构(第2版),清华大学出版社, 2014.19云计算发展与应用200320072009云计算由来云计算由来云计算由来云计算由来2008云计算由来云计算由来为中小商家提供 网站托管服务2008云计算由来云计算由来2008200320072009云计算由来云计算由来云计算定义云计算定义云计算是一种把能够动态伸缩的虚拟化资源通过互联 网以服务的方式提供给用户的计算模式。用户不需要知道 如何管理那些支持云计算的基础设施。维基百科维基百科云计算是一种通过网络连接起来获取软件和服务的计 算模式,云计算使得用户可以获得超级计算机的体验,用 户通过笔记本电脑与手机上的瘦客户端接入云中获取需要 的资源。信息技术信息技术 术语库术语库云计算是一种共享的网络交付信息服务的模式。云服 务的使用者看到的只有服务本身,而不用关心基础设施的 具体实现。IBMIBM云计算定义云计算定义基本特点服务模型部署模型NIST definition of cloud computing. P. Mell and T. Grance National Institute of Standards and Technology云计算定义云计算定义 定义定义 云计算是一种能够通过网络以便利的、按需付费的方式获取计算资源(包括 网络、服务器、存储、应用和服务等)的范型,这些资源来自一个共享的、 可配置的资源池,并能够以最省力和无人干预的方式获取和释放。 基本特点基本特点 按需自助服务:用户可以随时获得包括计算、存储、带宽等在内的计算资 源,而不需要云服务提供者的人工参与。 不受限的网络访问:云服务可以通过各类型的远程访问机制和客户端来获 取(例如,移动电话、笔记本电脑或掌上电脑等)。 资源池:服务提供者将计算资源汇集到资源池中,通过多租户模式共享给 多个消费者,根据消费者的需求对不同的物理资源和虚拟资源进行动态分 配或重分配。 快速灵活:云服务可以快速提供、扩展和释放。对于用户来说,云服务是 取之不尽的,并且在任意时间均可以使用。 可计量的服务:云系统通过不同层次的计量功能自动化地管理和优化资源 使用。云服务的使用情况会被监测、控制和汇报,而这一过程对用户和提 供者来说都是透明的。云计算定义云计算定义 服务模型服务模型 基础设施即服务(IaaS):该模式的云服务,提供处理器、存储、网络和 其他基本计算资源的租用服务,允许消费者在其上部署、运行任意软件。 平台即服务(PaaS):该模式的云服务,提供指定类型应用的托管服务, 消费者可以把用指定语言编写的程序创建和部署在云上。 软件即服务(SaaS):该模式的云服务,提供在云基础设施上运行的、由 提供者创建的应用服务。这些应用可以被不同客户端设备访问、配置和使 用,而应用的用户则不直接管理或控制包括网络、服务器、操作系统和存 储等在内的底层云基础设施。云计算应用Sales forceSales forceSoftware as a ServiceSoftware as a ServiceGoogle App EngineGoogle App EnginePlatform as a ServicePlatform as a ServiceAmazon Elastic Compute CloudAmazon Elastic Compute CloudInfrastructure as a ServiceInfrastructure as a Service云计算应用云计算应用云计算应用研究工作:基于运行时模型的云计算系统管理技术研究工作:基于运行时模型的云计算系统管理技术CloudStackHyperic37多样化的受管资源和不断变化的管 理需求使得云管理面临很大的难度和复 杂度。为了能够根据管理需求快速定制、 集成、扩展已有的管理软件,我们提出 一种基于运行时模型的云计算系统管理 技术;同时,在CloudStack与Hyperic两 款独立管理软件的基础上,使用上述方法 构造了基于运行时模型的虚拟化基础设 施软硬件资源协同管理系统。阶段性成果: 1.国家自然科学基金青年创新项目 2.基于运行时模型的多样化运资源管理方法. 软件学报. 3.Architecture-based Integrated Management of Diverse Cloud Resources. Journal of Cloud Computing: Advances, Systems and Applications. 研究工作:基于运行时模型的无线传感网管理研究工作:基于运行时模型的无线传感网管理技术技术模型层关系描述系统访问模型系统元模型物联网设备无线传感网是物联网的核心,主要解决 物联网中的信息感知问题,通过散布在特定 区域的成千上万的传感器节点,采集环境中 各种信息并连接到互联网上。为了快速定制 和开发物联网系统,我们提出一种基于模型 的无线传感网管理框架,使得能够面向应用 场景进行物联网系统的开发。同时,我们还 实现了基于模型的智慧办公系统原型,并对 框架的可行性和有效性进行了验证。阶段性成果: 1.国家创新项目(本科生):智慧办公室. 2.国家创新项目(本科生):校园一点通. 3.基于运行时模型的无线传感网管理方法. 软件学报. 本周任务本周任务39 准备教材准备教材软件设计模式与体系结构软件设计模式与体系结构 回顾类图的相关概念及知识回顾类图的相关概念及知识 熟悉熟悉JAVAJAVA语言基本语法,能够读懂简单程序语言基本语法,能够读懂简单程序
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号