欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    软件体系结构1-01可重构软件设计方法学.ppt

    • 资源ID:67345302       资源大小:243.50KB        全文页数:18页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件体系结构1-01可重构软件设计方法学.ppt

    面向面向2121世纪的软件方法论教材世纪的软件方法论教材软软 件件 体体 系系 结结 构构可重构软件设计方法学可重构软件设计方法学万 麟 瑞南京航空航天大学信息科学与技术学院南京航空航天大学信息科学与技术学院课程简介课程简介第一章第一章概论概论第二章第二章基本体系结构风格基本体系结构风格主程序子过程结构,事件触发结构,解释器结构,主程序子过程结构,事件触发结构,解释器结构,层次结构,管道过滤器结构,黑板结构,面向对象结构层次结构,管道过滤器结构,黑板结构,面向对象结构第三章第三章分布计算体系结构分布计算体系结构CS;CORBA,RMI;SOA,ESB,OGSA第四章第四章软件设计模式软件设计模式TemplateMethod,Strategy;Composite,MVC;Builder第五章第五章体系结构的形式描述方法体系结构的形式描述方法第六章第六章软件构架与构件设计方法软件构架与构件设计方法第七章第七章应用案例分析应用案例分析参考文献参考文献1 1 万建成等软件体系结构的原理、组成与应用万建成等软件体系结构的原理、组成与应用 科学出版社,科学出版社,200220022 2 张友生软件体系结构清华大学出版社,张友生软件体系结构清华大学出版社,200420043 3 李英军等译设计模式机械工业出版社,李英军等译设计模式机械工业出版社,200020004 4 B.P.DouglassB.P.Douglass著,麦中凡等译实时设计模式著,麦中凡等译实时设计模式.北京航空航天大学出版社,北京航空航天大学出版社,200420045 5 王志坚等软件构件技术及其应用科学出版社,王志坚等软件构件技术及其应用科学出版社,200520056 6 万麟瑞面向构件的软件开发方法学研究万麟瑞面向构件的软件开发方法学研究 小型微型计算机系统,小型微型计算机系统,20032003,Vol.24 No.3Vol.24 No.3第第1讲:软件体系结构的发展与应用概况讲:软件体系结构的发展与应用概况第一章第一章概论概论1.1软件体系结构的研究概况软件体系结构的研究概况1.1.1体系结构的模型抽象理念体系结构的模型抽象理念1.1.2体系结构描述语言体系结构描述语言1.2软件体系结构的软件体系结构的设计理念设计理念1.2.1软件结构及其设计理念软件结构及其设计理念1.2.2软件体系结构及其设计理念软件体系结构及其设计理念第一章第一章 概论概论大系统认知理念:大系统认知理念:框架过程设计方法程序数据工具框架过程设计方法程序数据工具框架构架体系结构框架构架体系结构软件框架:软件框架:从总体上从总体上架构架构主部子部主部子部结构的可结构的可实例化实例化系统系统软件构架:软件构架:可重构领域化的可重构领域化的软件体系结构软件体系结构软件体系结构:软件体系结构:系统地研究软件结构系统地研究软件结构设计与构造设计与构造的软件领域工程的软件领域工程 程序设计方法学程序设计方法学软件工程领域工程重构工程软件工程领域工程重构工程 等多学科相结合的等多学科相结合的新兴边缘学科新兴边缘学科 面向面向2121世纪的世纪的可重构软件可重构软件设计方法学设计方法学 工程性实用性强的应用学科与技术工程性实用性强的应用学科与技术1.1软件体系结构的研究概况软件体系结构的研究概况软件方法论的发展历程:软件方法论的发展历程:面向过程方法面向对象方法面向构件方法面向过程方法面向对象方法面向构件方法程序结构数据结构软件结构软件体系结构程序结构数据结构软件结构软件体系结构1.1.1体系结构的模型抽象理念体系结构的模型抽象理念1.程序结构抽象:程序结构抽象:机器指令机器指令汇编语言汇编语言子程序子程序控制流程控制流程高级语言高级语言过程函数过程函数数据结构数据结构类型类型模块模块程序程序2.软件结构抽象软件结构抽象面向过程模型(功能模型,数据流模型)面向过程模型(功能模型,数据流模型)面向数据模型(信息模型,语义数据模型)面向数据模型(信息模型,语义数据模型)面向对象模型(面向对象模型(对象对象模型,模型,组件组件模型)模型)3.软件体系结构抽象软件体系结构抽象内涵:体系结构内涵:体系结构风格风格,设计模式;构件,形式描述;,设计模式;构件,形式描述;MDA(1)体系结构风格:体系结构风格:具有相同风范或具有相同风范或族集族集特性的特定特性的特定结构类型结构类型调用返回结构:调用返回结构:静态结构的基础描述方法静态结构的基础描述方法主程序子过程结构,层次结构,客户服务器结构主程序子过程结构,层次结构,客户服务器结构请求响应结构:请求响应结构:运行结构的基础描述方法运行结构的基础描述方法中断事件结构,进程线程结构,消息结构中断事件结构,进程线程结构,消息结构虚拟机系统:虚拟机系统:编译器,解释器,规则基产生式系统编译器,解释器,规则基产生式系统数据流系统:数据流系统:顺序批处理结构,编译器,状态转换器,顺序批处理结构,编译器,状态转换器,管道管道过滤器结构,工作流结构过滤器结构,工作流结构数据中心系统:数据中心系统:黑板系统,数据仓库,超文本系统黑板系统,数据仓库,超文本系统面向对象系统:面向对象系统:对象结构,对象结构,Agent结构结构(2)设计模式:设计模式:结构行为上具有参照价值的结构行为上具有参照价值的可预制可预制设计样板设计样板可形成可形成面向模式面向模式的软件体系结构的软件体系结构三种类型:构造型,结构型,行为型三种类型:构造型,结构型,行为型构造型模式:构造型模式:生成器生成器,抽象工厂,工厂方法,原型,单例;,抽象工厂,工厂方法,原型,单例;整体整体部分,视图句柄;指针计数器部分,视图句柄;指针计数器结构型模式:结构型模式:组合器组合器;代理结构;享元,外观;代理结构;享元,外观;模型模型视图视图控制控制(MVC),),表示表示抽象抽象控制(控制(PAC););适配器,桥接器适配器,桥接器行为型模式:行为型模式:模板方法模板方法,策略策略,观察器;,观察器;迭代器,命令结构,责任链;迭代器,命令结构,责任链;发送发送接收,客户接收,客户分发分发服务,出版服务,出版订购订购1.1.2体系结构描述语言体系结构描述语言ADL:为软件系统的为软件系统的概念框架概念框架建模和建模和形式规约形式规约描述描述提供具体的提供具体的概念元概念元、语法语法和和语义语义的说明语言的说明语言(1)数学描述语言数学描述语言MDL:Z语言,类属理论,语言,类属理论,Petri网网(2)软件说明语言软件说明语言SDL:UML,XML,IDL;WPDL,XPDL(3)体系结构语言体系结构语言ADL:结构风格类:结构风格类:Aesop,C2,Wright结构实例类:结构实例类:Adage,MetaH,Rapide,Unicon约束配置类:约束配置类:Darwin,CHAM可交换体系结构描述语言可交换体系结构描述语言ACME(中介表达通用工具)中介表达通用工具)非非ADL语言:语言:编程语言,模块接口语言编程语言,模块接口语言MIL,需求描述语言;需求描述语言;数学描述语言;软件说明语言数学描述语言;软件说明语言1.2软件体系结构的设计理念软件体系结构的设计理念1.2.1软件结构及其设计理念软件结构及其设计理念1.软件的结构要素软件的结构要素程序:程序:一组数据与处理方法(操作指令)的集合一组数据与处理方法(操作指令)的集合早期:早期:Pascal语言的发明者语言的发明者NWirth提出的程序理念提出的程序理念程序程序=算法算法+数据结构数据结构发展:非交互交互性数据处理与计算方法发展:非交互交互性数据处理与计算方法程序程序界面界面算法算法数据结构数据结构三层构架三层构架软件:软件:一组程序、相关信息及其文档的集合一组程序、相关信息及其文档的集合程序程序按预定功能和性能要求设计的可执行指令序列按预定功能和性能要求设计的可执行指令序列信息信息包括驱动数据结构正常工作的数据和设计知识包括驱动数据结构正常工作的数据和设计知识文档文档与程序开发、维护和使用有关的图文资料与程序开发、维护和使用有关的图文资料(1)结构元素:结构元素:关于软件的基本关于软件的基本组成原理组成原理及软件及软件分块机制分块机制部件:部件:程序片段(指令序列),数据(数据项集);程序片段(指令序列),数据(数据项集);过程,函数,变量;模块;对象;表,库,仓过程,函数,变量;模块;对象;表,库,仓关系:关系:顺序,分支,循环;并行,嵌套,选择;回环顺序,分支,循环;并行,嵌套,选择;回环中断,参数,消息;主程序子过程;程序覆盖中断,参数,消息;主程序子过程;程序覆盖(2)控制流程:控制流程:语句结构程序结构模块结构语句结构程序结构模块结构CHE顺序结构:顺序结构:sequencei分支结构:分支结构:ifelseswitchcaseielse循环结构:循环结构:whiledorepeatuntil转移语句:转移语句:过程调用:过程名过程调用:过程名(参数(参数1,参数,参数n)中断事件设置:中断事件设置:set事件事件to过程名;过程名;2.模块结构:模块结构:体现程序体现程序语句序列语句序列的基本功能的基本功能分块分块CHE与连接与连接控制流控制流之间的构造关系之间的构造关系外部表示:外部表示:具有顺序、选择、循环及其转移连接具有顺序、选择、循环及其转移连接控制方式的程序结构抽象控制方式的程序结构抽象内部表示:内部表示:具有具有IO、处理逻辑、内部数据处理逻辑、内部数据及其运行特性的一组算法的集合及其运行特性的一组算法的集合3.基本连接机制基本连接机制(1)过程调用:过程调用:部件间通过部件间通过对方对方的过程或方法来实现的过程或方法来实现显式显式连接连接调用时必须知道对方的部件标识、操作标识及调用时必须知道对方的部件标识、操作标识及参数参数设置设置形式:形式:(参数表)(参数表)扩充模式:本地过程调用(扩充模式:本地过程调用(LPC),远程过程调用(),远程过程调用(RPC)(2)事件触发:事件触发:用特定用特定事件名事件名来标识中断号所形成的来标识中断号所形成的隐式隐式连接连接事件:对象状态转换的控制信息方法调用的消息事件:对象状态转换的控制信息方法调用的消息事件设置:事件设置:set事件事件to过程名;过程名;事件脚本定义:事件脚本定义:事件名监护条件动作表达式事件名监护条件动作表达式(3)服务接口:服务接口:部件间通过部件间通过互连互连接口进行功能交互和数据交换,接口进行功能交互和数据交换,以实现请求方和接收方之间的连接服务以实现请求方和接收方之间的连接服务接口接口(接口名,类型,事件,操作,上下文)(接口名,类型,事件,操作,上下文)4.软件结构设计的总体理念软件结构设计的总体理念设计思想概念元素表示方法通用划分策略设计思想概念元素表示方法通用划分策略层次抽象:层次抽象:体现问题复杂度分割与组块分层的结构化观点体现问题复杂度分割与组块分层的结构化观点表示方法:表示方法:程序模块功能结构(控制结构,控制关系)程序模块功能结构(控制结构,控制关系)数据结构(类型,值)数据结构(类型,值)抽象数据类型(对象,关系,操作方法,语义)抽象数据类型(对象,关系,操作方法,语义)对象结构(对象,分类,关系,消息方法)对象结构(对象,分类,关系,消息方法)通用划分:通用划分:接口实现;程序数据;型实例;实体规约接口实现;程序数据;型实例;实体规约1.2.2软件体系结构及其设计理念软件体系结构及其设计理念1.软件体系结构定义软件体系结构定义软件体系结构:是具有整体化抽象层次的软件体系结构:是具有整体化抽象层次的骨架体骨架体结构,结构,是可模式化模型化模板化的问题解决是可模式化模型化模板化的问题解决框架框架;是是可预制可预制、可替换可替换、可组合可组合和和可演化可演化的软件模型,的软件模型,是由一组是由一组构件构件、连接子连接子关系以及相关关系以及相关约束约束组成的软件系统组成的软件系统2.体系结构设计的概念模型体系结构设计的概念模型要素:要素:components,connectors,constraints;Configuration构架构架构件名(类型,端口,计算方法)构件名(类型,端口,计算方法)连接件名(类型,角色,交互方法)连接件名(类型,角色,交互方法)约束(实体约束,连接约束)约束(实体约束,连接约束)配置(构件名,连接件名,粘连特性)配置(构件名,连接件名,粘连特性)3.软件体系结构的特性软件体系结构的特性整体性:整体性:侧重侧重体系化体系化结构的描述与设计,结构的描述与设计,包括全局结构与局部结构的演化关系和宏观特性;包括全局结构与局部结构的演化关系和宏观特性;比基本软件结构具有更高层次的设计抽象,比基本软件结构具有更高层次的设计抽象,一般针对复杂和大型的软件系统一般针对复杂和大型的软件系统层次性:层次性:侧重软件抽象的侧重软件抽象的粒度级粒度级划分,划分,一般定义为一般定义为构架级构架级、构件级构件级和和对象级对象级可预制性:可预制性:单元结构成熟,可单元结构成熟,可预预先设计、实现和提供先设计、实现和提供选择选择可替换性:可替换性:不是不是可修改可修改和和可覆盖可覆盖,而是,而是可插拔可插拔和和可重载可重载可组合性:可组合性:结构结构可重组可重组,部件,部件可重用可重用,应用接口,应用接口可扩充可扩充可演化性:可演化性:框架框架规则规则实例实例;泛化特化;泛化特化;通过模板方法和创建机制通过模板方法和创建机制动态生成动态生成一个特定应用一个特定应用4.体系结构的设计层次体系结构的设计层次体现问题分割与抽象形式的体现问题分割与抽象形式的规范化规范化和和结构化结构化观点;观点;体现软件分块的粒度级划分思想与设计通则;体现软件分块的粒度级划分思想与设计通则;体现功能分割、软件分层、基于协议的层间交互和体现功能分割、软件分层、基于协议的层间交互和语义规则描述等设计思想语义规则描述等设计思想(1)层次构成特征层次构成特征高层:接近应用描述与高层:接近应用描述与领域性领域性模型,形成概念结构模型,形成概念结构中层:接近软件设计与中层:接近软件设计与原理性原理性模型,形成逻辑结构模型,形成逻辑结构低层:接近硬件程序与低层:接近硬件程序与可用性可用性模型,形成物理结构模型,形成物理结构(2)层次划分方法层次划分方法纵向:依据问题纵向:依据问题复杂度复杂度重要性形成重要性形成层间关系层间关系抽象抽象横向:依据问题横向:依据问题分块分块大小结构独立性形成大小结构独立性形成层内功能层内功能抽象抽象(3)体系结构的层次模型体系结构的层次模型按软件抽象按软件抽象粒度级粒度级和构成关系划分(层次粒度)和构成关系划分(层次粒度)

    注意事项

    本文(软件体系结构1-01可重构软件设计方法学.ppt)为本站会员(s****8)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开