高级软件技术1概述PPT课件
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高级软件技术-概述
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
源自文库的
学习J2EE及其相关技术 了解业界常用的新技术 学会各种设计开发工具的使用 学习Web应用开发的过程 培养OO的思想和编程能力 逐步理解如何做工程项目
3
不同的技术,可以分派给不同的小组承担
等。
9
软件架构设计-分而治之
所谓架构设计,就是关于如何构建软件的 一些最重要的设计决策,这些决策往往是 围绕将系统分为哪些部分,各部分之间如 何交互展开的。软件架构设计应当解决的 是全局性的、涉及不同“局部”之间交互 的设计问题。
详细设计针对每个部分的内部进行设计。
过程存储和远程调用模型
Client
5
软件架构(Architecture)
SEI:某个软件或计算机系统的软件架构是该 系统的一个或多个结构,每个结构均由软件 元素、这些元素的外部可见属性、这些元素 之间的关系组成。
软件架构包括系统组件、连接件和约束的集 合,反应不同涉众需求的集合,以及原理的 集合。其中的原理,用于说明由组件、连接 件和约束所定义的系统在实现时,是如何满 足不同涉众需求的。
10
子系统
随着软件系统的规模也越来越大,所有软件系 统都会被划分为多个模块或子系统进行开发; 当子系统也足够复杂时,子系统本身的开发也 需要经过架构设计。
另一 方面,系统整合的趋势日渐强劲,对于大 型企业来讲,直接规划近一二十年的综合信息 系统方案。于是,软件架构师也应了解软件架 构的层次(如软件超系统的架构、软件系统架 构、软件子系统架构等)以及不同层次的架构 模式。
其他公用设备 Internet
客户机1 客户机2
客户机3
客户机4
客户机5
客户机是具有较强性能的微机系统,在自身操作系统的控 制下,执行着运行在其内部的应用系统,并且向服务器发 送消息,以完成文件存取或数据库访问等服务。
C/S结构可实现分布在多个营业点的大型分布式业务系统 1717
C/S体系结构软件示意图
课时安排
8学时授课 24学时上机
– 时间安排?
考核:大作业
4
要了解的内容
软件架构、MVC模式及其他设计模式、 JSP、SERVLET、EJB、JDBC、JNDI、 应用服务器、Oracle数据库、数据库设 计、OR映射、XML技术、js技术、 Struts2框架、Spring框架、Hibernate框 架、ajax技术、常用开发工具、配置管 理……
13
框架(Framework)
为什么用框架?
– 因为软件系统发展到今天已经很复杂了,特 别是服务器端软件,设计到的知识,内容, 问题太多。在某些方面使用成熟的框架,相 当于让别人帮你完成一些基础工作,只需集 中精力完成业务逻辑设计。框架一般是成熟, 稳健的,可以处理系统很多细节问题,如事 务处理,安全性,数据流控制等。框架一般 都经过很多人使用,所以结构很好,扩展性 也很好,而且它是不断升级的,可以直接享
11
框架(Framework)
框架是可以通过某种回调机制进行扩展的软 件系统或子系统的半成品。
框架是一组相互协作的类,形成某类软件的 一个可复用设计。框架将设计划分为一组抽 象类,并定义它们各自的责任和相互之间的 协作,以此来指导体系结构级的设计。开发 者通过继承框架类中的类和组合其实例来定 制该框架以生成特定的应用。
6
软件架构(Architecture)
IEEE 610.12-1990软件工程定义架构: 架构是以组件、组件之间的关系、组件 与环境之间的关系为内容的某一系统的 基本组织结构,以及指导上述内容设计 与演化的原理(Principle)。
软件系统的架构将系统描述为计算组件 及组件之间的交互。
7
软件架构设计
受别人升级代码带来的好处。
14
架构 vs. 框架
15
C/S与B/S架构
C/S(Client/Server)结构,客户机和服 务器结构。
充分利用两端硬件环境的优势,将任务 合理分配到Client端和Server端来实现, 降低了系统的通讯开销。
16
C/S体系结构硬件示意图
打印机
服务器
调制解调器
8
软件架构设计-分而治之
一、先不把问题研究得那么深,那么细, 浅尝辄止,见好就收。这种分而治之的方 式称为“按问题深度分而治之”。例如接 口和实现。
二、先不研究整个问题,而是研究问题的
一部分,分割问题,各个击破。这种分而
治之的方式称为“按问题广度分而治之”。
展现层、业务层和数据层的开发往往需要
Spring、Struts、Swing、.NET、MFC
12
框架(Framework)
其实就是某种应用的半成品,就是 一组组件,供你选用完成你自己的 系统。简单说就是使用别人搭好的 舞台,你来做表演。而且,框架一 般是成熟的,不断升级的软件。
框架一般处在低层应用平台(如 J2EE)和高层业务逻辑之间的中间 层。
首先,随着对软件系统的依次分解,架构师 应当不断作出决策,例如需要划分成哪些模 块,模块的职责为何,模块的接口定义,模 块间交互机制,如何满足约束和质量的需求, 如何适应变化等。
之后,架构师规划整个系统的具体组成。对 于一个独立的软件系统而言,常常被划分为 不同的子系统或分系统,每个部分承担相对 独立的功能,各部分之间通过特定的交互机 制进行协作。
Server 数据存储管理
Client 用户界面
应用接口 数据库系统
Core
操作系统
接 应用系统
口
…
数据库系统 运行环境
Form Report SQL
操作系统
跨平台 跨地域
C/S软件体系结构实现资源不对等的共享机制。 数据和应用分布到不同的处理机上,客户处理机 担任应用,服务处理机担任多个客户应用的数据 管理。
1818
C/S体系结构的网络传输压力
由于全部应用程序都在Client端,有时候,一个数据查询 的循环过程需要很多的数据集合,造成大量的数据传输网 络压力。
过程存储和远程调用
分散一部分数据库存储过程在Server端,以减少大量 的网络数据传输压力。可采用进程间(LPC)的调用策 略,使两个地址空间的操作协同起来工作。
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
源自文库的
学习J2EE及其相关技术 了解业界常用的新技术 学会各种设计开发工具的使用 学习Web应用开发的过程 培养OO的思想和编程能力 逐步理解如何做工程项目
3
不同的技术,可以分派给不同的小组承担
等。
9
软件架构设计-分而治之
所谓架构设计,就是关于如何构建软件的 一些最重要的设计决策,这些决策往往是 围绕将系统分为哪些部分,各部分之间如 何交互展开的。软件架构设计应当解决的 是全局性的、涉及不同“局部”之间交互 的设计问题。
详细设计针对每个部分的内部进行设计。
过程存储和远程调用模型
Client
5
软件架构(Architecture)
SEI:某个软件或计算机系统的软件架构是该 系统的一个或多个结构,每个结构均由软件 元素、这些元素的外部可见属性、这些元素 之间的关系组成。
软件架构包括系统组件、连接件和约束的集 合,反应不同涉众需求的集合,以及原理的 集合。其中的原理,用于说明由组件、连接 件和约束所定义的系统在实现时,是如何满 足不同涉众需求的。
10
子系统
随着软件系统的规模也越来越大,所有软件系 统都会被划分为多个模块或子系统进行开发; 当子系统也足够复杂时,子系统本身的开发也 需要经过架构设计。
另一 方面,系统整合的趋势日渐强劲,对于大 型企业来讲,直接规划近一二十年的综合信息 系统方案。于是,软件架构师也应了解软件架 构的层次(如软件超系统的架构、软件系统架 构、软件子系统架构等)以及不同层次的架构 模式。
其他公用设备 Internet
客户机1 客户机2
客户机3
客户机4
客户机5
客户机是具有较强性能的微机系统,在自身操作系统的控 制下,执行着运行在其内部的应用系统,并且向服务器发 送消息,以完成文件存取或数据库访问等服务。
C/S结构可实现分布在多个营业点的大型分布式业务系统 1717
C/S体系结构软件示意图
课时安排
8学时授课 24学时上机
– 时间安排?
考核:大作业
4
要了解的内容
软件架构、MVC模式及其他设计模式、 JSP、SERVLET、EJB、JDBC、JNDI、 应用服务器、Oracle数据库、数据库设 计、OR映射、XML技术、js技术、 Struts2框架、Spring框架、Hibernate框 架、ajax技术、常用开发工具、配置管 理……
13
框架(Framework)
为什么用框架?
– 因为软件系统发展到今天已经很复杂了,特 别是服务器端软件,设计到的知识,内容, 问题太多。在某些方面使用成熟的框架,相 当于让别人帮你完成一些基础工作,只需集 中精力完成业务逻辑设计。框架一般是成熟, 稳健的,可以处理系统很多细节问题,如事 务处理,安全性,数据流控制等。框架一般 都经过很多人使用,所以结构很好,扩展性 也很好,而且它是不断升级的,可以直接享
11
框架(Framework)
框架是可以通过某种回调机制进行扩展的软 件系统或子系统的半成品。
框架是一组相互协作的类,形成某类软件的 一个可复用设计。框架将设计划分为一组抽 象类,并定义它们各自的责任和相互之间的 协作,以此来指导体系结构级的设计。开发 者通过继承框架类中的类和组合其实例来定 制该框架以生成特定的应用。
6
软件架构(Architecture)
IEEE 610.12-1990软件工程定义架构: 架构是以组件、组件之间的关系、组件 与环境之间的关系为内容的某一系统的 基本组织结构,以及指导上述内容设计 与演化的原理(Principle)。
软件系统的架构将系统描述为计算组件 及组件之间的交互。
7
软件架构设计
受别人升级代码带来的好处。
14
架构 vs. 框架
15
C/S与B/S架构
C/S(Client/Server)结构,客户机和服 务器结构。
充分利用两端硬件环境的优势,将任务 合理分配到Client端和Server端来实现, 降低了系统的通讯开销。
16
C/S体系结构硬件示意图
打印机
服务器
调制解调器
8
软件架构设计-分而治之
一、先不把问题研究得那么深,那么细, 浅尝辄止,见好就收。这种分而治之的方 式称为“按问题深度分而治之”。例如接 口和实现。
二、先不研究整个问题,而是研究问题的
一部分,分割问题,各个击破。这种分而
治之的方式称为“按问题广度分而治之”。
展现层、业务层和数据层的开发往往需要
Spring、Struts、Swing、.NET、MFC
12
框架(Framework)
其实就是某种应用的半成品,就是 一组组件,供你选用完成你自己的 系统。简单说就是使用别人搭好的 舞台,你来做表演。而且,框架一 般是成熟的,不断升级的软件。
框架一般处在低层应用平台(如 J2EE)和高层业务逻辑之间的中间 层。
首先,随着对软件系统的依次分解,架构师 应当不断作出决策,例如需要划分成哪些模 块,模块的职责为何,模块的接口定义,模 块间交互机制,如何满足约束和质量的需求, 如何适应变化等。
之后,架构师规划整个系统的具体组成。对 于一个独立的软件系统而言,常常被划分为 不同的子系统或分系统,每个部分承担相对 独立的功能,各部分之间通过特定的交互机 制进行协作。
Server 数据存储管理
Client 用户界面
应用接口 数据库系统
Core
操作系统
接 应用系统
口
…
数据库系统 运行环境
Form Report SQL
操作系统
跨平台 跨地域
C/S软件体系结构实现资源不对等的共享机制。 数据和应用分布到不同的处理机上,客户处理机 担任应用,服务处理机担任多个客户应用的数据 管理。
1818
C/S体系结构的网络传输压力
由于全部应用程序都在Client端,有时候,一个数据查询 的循环过程需要很多的数据集合,造成大量的数据传输网 络压力。
过程存储和远程调用
分散一部分数据库存储过程在Server端,以减少大量 的网络数据传输压力。可采用进程间(LPC)的调用策 略,使两个地址空间的操作协同起来工作。