软件工程体系机构设计ppt课件.ppt
《软件工程体系机构设计ppt课件.ppt》由会员分享,可在线阅读,更多相关《软件工程体系机构设计ppt课件.ppt(102页珍藏版)》请在三一办公上搜索。
1、第 十 讲体 系 结 构 设 计,进行体系结构设计,设计的任务:从需求信息中综合出数据的表示、程序结构、接口特征和过程细节。信息、功能、行为是创建设计的三个指南。,软件体系结构,什么是软件体系结构?也称架构是关于软件系统组织的定义,一个程序和计算机系统软件体系结构是指系统的一个或者多个结构。结构中包括:软件的构件,构件的外部可见属性以及它们之间的相互关系,系统集成方法和约束。构件:是软件的组成单元,例如一个计算单元,或存储单元是一定程度上的抽象,非可运行的软件,软件体系结构,体系结构的作用凭借体系结构图,软件开发人员可以:分析设计在满足规定需求方面的有效性在设计变更相对容易的阶段,考虑体系结构
2、可能的选择方案降低与软件构造相关联的因软件构造不合理带来的风险,软件体系结构,软件体系结构设计,软件构件的结构、属性和交互作用,传统系统中体系结构的数据构件和面向对象系统中类的定义,软件体系结构(II),体系结构为何如此重要?软件体系结构的表示有助于对系统开发感兴趣的利益相关者的各方交流突出了早期设计决策,这些决策对随后的软件工程工作有深远影响,同时对系统作为一个可运行实体的最后成功有重要作用构建了一个相对小的,易于理解的模型,该模型描述了系统如何构成以及其构件如何协同工作,体系结构发展过程-1,单主机结构界面、数据和程序集中在单台主机上不需要考虑多用户并发操作的问题C/S(Client/Se
3、rver)结构常见的服务器端体现为关系数据库客户端负责显示和业务逻辑处理在部署和扩展性方面存在不足:系统升级需要一一更新所有客户端,体系结构发展过程-2,B/S(Browser/Server)结构瘦客户端:浏览器或客户端程序(Applet等)三层结构客户端:处理用户接口和用户请求Web服务器端:处理Web服务和运行业务代码数据端:关系型数据库和其他后端数据资源新的发展:多层结构Web服务器分离为Web端和业务服务端(例如J2EE应用服务器),软件工程设计过程,需求分析,体系结构设计,模块化设计,用户界面设计,数据库设计,数据结构与算法设计,实现与测试计划,高层设计阶段,概要设计阶段,详细设计阶
4、段,数据设计,把在分析模型中定义的数据对象转化成软件构件级的数据结构,并在必要时转化为应用程序级的数据库体系结构体系结构级的数据设计数据仓库构件级的数据设计关注被一个或多个构件直接访问的数据结构的表示,数据设计体系结构级的数据设计,庞大数据环境中有效信息提取的方式数据挖掘数据库中的知识发现(KDD)数据仓库 数据仓库是一种解决方案,是对原始的操作数据进行 各种处理并转换成有用信息的处理过程,用户可以通过分 析这些信息从而作出策略性的决策。因此,在很多场合,我 们也把数据仓库系统称为决策支持系统。,数据设计构件级的数据设计,数据规格说明原则:1、应用于功能和行为的系统分析原则也可应用于数据2、标
5、识所有数据结构及其完成的操作3、应该建立定义数据对象内容的机制,并且用于定义数据及其操作4、低层的数据设计决策应该延迟到设计过程的后期5、只有那些直接使用数据结构内部数据的模块才能够看到该数据结构的表示6、应该开发一个由有用的数据结构及其操作组成的库7、软件设计和程序设计语言应该支持抽象数据类型的规格说明和实现,体系结构风格,软件体系结构风格(style),每种风格描述一种系统类别,包括四个关键元素:一组构件,它们完成系统需要的某种功能一组连接器,它们实现构件间的 “通信、合作和协调”约束,定义构件如何集成为一个系统语义模型,使设计者能通过分析系统的构成成分的性质,来理解系统的整体性质,体系结
6、构模式,体系结构模式是风格的具体体现,或者体系结构设计的一个框架。(1)体系结构模式涉及的范围要小一些,它更多集中在体系结构的某一局部而不是体系结构的整体(2)模式在体系结构上施加规则,描述了软件是如何在基础设施层次上处理某些功能性方面的问题(3)体系结构模式倾向于在系统结构的环境中处理特定的行为问题,体系结构风格、程序设计样式与设计模式,程序设计样式重点在于给出开发原则、可实现抽象层次:代码级直接可用设计模式重点在于重用、概念完整性抽象层次:构件级直接可用体系结构风格重点在于重用、概念完整性抽象层次:体系结构有约束和指导作用,体系结构风格,体系结构风格定义了一系列系统的结构组织的模式,它是对
7、一类具有相似结构的系统体系结构的抽象以数据为中心的体系结构数据流体系结构调用和返回体系结构面向对象体系结构层次体系结构,以数据为中心的体系结构,也称仓库,数据存储驻留在体系结构的中心,其他构件访问该数据存储,并进行各种数据操作黑板:当用户感兴趣的数据发生变化时,它将通知客户软件。一些数据(比如一个文件或者数据库)保存在整个结构的中心,并且被其他部件频繁地使用、添加、删除、或者修改,以数据为中心的体系结构(II),提升可集成性,即现有的构件可以被修改而且新的客户构件可以加入到系统结构中,而无需考虑其他的客户。数据可以在客户间通过“黑板”机制传送,客户构件独立地执行过程。优点开放:数据对所有使用者
8、开放,客户软件可以直接决定存取方式客户构件基本独立问题客户软件难以协作中心数据的格式必须为所有客户软件所接受,数据流体系结构,也称管道/过滤器结构,这种结构适用于输入数据被一系列的计算或者处理部件变换成输出数据。拥有一组称为过滤器的构件,这些构件通过管道连接,每个过滤器独立于其上游和下游的构件而工作。,数据流体系结构(II),数据需服从输入变换输出的简单流程优点 易理解过滤器易于重用系统易维护易并行运行问题适用于批处理,不易交互流的协作需要考虑.过滤器功能重复,调用和返回体系结构,主程序/子程序体系结构:将功能分解为一个控制层次结构,其中的“主”程序调用一组程序构件,这些程序构件又去调用别的程
9、序构件(此时,对于被调者来说,这些主调者就是主程序)远程过程调用体系结构:构件分布在网络的多个计算机上。,调用和返回体系结构,这种风格使一个软件设计者设计出非常容易修改和扩充的体系结构主程序/子程序风格体系结构远程过程调用风格的体系结构,在这里要了解几个概念:程序结构的深度:程序结构的层次数称为结构的深度。结构的深度在一定意义上反映了程序结构的规模和复杂程度。程序结构的宽度:层次结构中同一层模块的最大模块个数称为结构的宽度。模块的扇入和扇出:扇出表示一个模块直接调用(或控制)的其它模块数目。扇入则定义为调用(或控制)一个给定模块的模块个数。多扇出意味着需要控制和协调许多下属模块。而多扇入的模块
10、通常是公用模块。,面向对象体系结构,系统的构件封装了数据和应用到该数据上的操作构件间通过消息传递进行通信与合作。,层次体系结构,在这种结构中,定义不同的层次,每层都完成了相对外层更靠近机器指令的操作,层次体系结构,层次体系结构定义了不同的层次,各个层次完成各自操作每一层为上层提供服务,又接受下层的服务优点:明确的抽象层次、易于增减或修改层次问题:系统并不是总能分层,编译系统体系结构(例),各个阶段共用符号表,编译系统体系结构(例),中间表示成为逐渐成为中心,编译系统体系结构(例),也许更适合看成仓库风格了,体系结构模式,不同模式操作下的一些特征:并发性持久性分布性,组织和求精,从两个方面考虑组
11、织和求精:控制数据,框架,一个特定应用领域问题的体系模式一个待实例化的完整系统实例MFC(Microsoft Foundation Classes)框架:微软把涉及文件、数据库操作、网络I/O、图形、通用数据结构、用户界面对象等应用功能构件组合在一起,封闭所得的应用框架。Struts:基于WEB应用的开发框架。专家系统外壳(行业应用框架),体系结构设计,软件必须放在所处环境进行开发设计应该定义与软件交互的外部(其他系统、设备、人)和交互的特性描述一组体系结构原始模型原始模型是一个类或者一个模式,表示体系结构中稳定的元素,它是体系结构设计中抽象的构造块。设计者通过定义、精化对应于每一个原始模型的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 体系 机构 设计 ppt 课件

链接地址:https://www.31ppt.com/p-1786852.html