软件结构设计的一般过程.ppt_第1页
软件结构设计的一般过程.ppt_第2页
软件结构设计的一般过程.ppt_第3页
软件结构设计的一般过程.ppt_第4页
软件结构设计的一般过程.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件体系结构 (Software Architecture),软件体系结构设计,从软件设计约束与非功能需求角度谈起,基于体系结构的软件开发模型,ABSDM,基于体系结构的软件开发模型,体系结构需求,基于体系结构的软件开发模型,体系结构设计,基于体系结构的软件开发模型,体系结构文档化 文档是在系统演化的每一个阶段,系统设计与开发人员的通讯媒介,是为验证体系结构设计和提炼或修改这些设计(必要时)所执行预先分析的基础。 体系结构文档化过程的主要输出结果是体系结构需求规格说明和测试体系结构需求的质量设计说明书这两个文档。生成需求模型构件的精确的形式化的描述,作为用户和开发者之间的一个协约。 软件体系结构的文档要求与软件开发项目中的其他文档是类似的。文档的完整性和质量是软件体系结构成功的关键因素。文档要从使用者的角度进行编写,必须分发给所有与系统有关的开发人员,且必须保证开发者手上的文档是最新的。,基于体系结构的软件开发模型,体系结构复审 体系结构设计、文档化和复审是一个迭代过程。从这个方面来说,在一个主版本的软件体系结构分析之后,要安排一次由外部人员(用户代表和领域专家)参加的复审。 复审的目的是标识潜在的风险,及早发现体系结构设计中的缺陷和错误,包括体系结构能否满足需求、质量需求是否在设计中得到体现、层次是否清晰、构件的划分是否合理、文档表达是否明确、构件的设计是否满足功能与性能的要求等等。 由外部人员进行复审的目的是保证体系结构的设计能够公正地进行检验,使组织的管理者能够决定正式实现体系结构。,基于体系结构的软件开发模型,体系结构实现,基于体系结构的软件开发模型,体系结构演化,软件体系结构设计方法,软件体系结构设计已经成为大型软件系统开发过程中不可或缺的步骤,因为非功能需求的介入,这个任务变得非常复杂和随意,基于模式的设计,模式的使用在许多工程领域是普遍的,对公共设计形式的确定和共享的理解是成熟工程领域的特点之一 一个模式提供了有效的语义环境:关注点、期望的演化路径、计算范型和与其他相似系统之间的关系 依据其规模不同,模式经常被分为三个层次: 体系结构风格 (architecture styles) 设计模式 (design patterns) 编程泛型 基于模式的体系结构设计方法使用丰富的风格知识库,指导体系结构的设计,有助于分析冲突的需求和不同设计的折衷,设计模式*,设计模式概述 模式是指从某个具体的形式中得到的一种抽象,在特殊的非任意性的环境中,该形式不断地重复出现。 一个软件体系结构的模式描述了一个出现在特定设计语境中的特殊的再现设计问题,并为它的解决方案提供了一个经过充分验证的通用图示。解决方案图示通过描述其组成构件及其责任和相互关系以及它们的协作方式来具体指定。,设计模式*,设计模式概述 MVC模式,设计模式*,一个好的模式必须做到以下几点: 解决一个问题:从模式可以得到解,而不仅仅是抽象的原则或策略。 是一个被证明了的概念:模式通过个记录得到解而不是通过理论或推测。 描述了一种关系:模式并不仅仅描述模块,它给出更深层的系统结构和机理。 模式有重要的人为因素:所有的软件服务于人类的舒适或生活质量,而最好的模式追求它的实用性和美学,设计模式*,模式的组成成分: 模式名称 用简单的词汇描述一个设计问题、解法或者后果 问题 什么时候要使用设计模式、解释问题及其背景 用一个强制条件集来表达 解决方案必须满足的需求 必须考虑的约束 必须具有哪些期望的特性 解决方案 描述设计的基本要素,它们的关系、各自的任务以及相互之间的合作 规定了特定的结构、规定了运行期间的行为 后果 描述应用设计模式后的结果和权衡,一个简单的例子(1/2),需求:假设在一个系统中,需要有一个数据源和多种不同的显示方式,例如,电子表格、柱状图、饼图等,不同视图中的数据需要保持一致,并且可能会在今后增加新的显示方式 如何设计这样一个系统,同时满足功能需求和非功能需求? 如果体系结构设计人员熟悉各种模式或者有一个模式列表可供参考,那么Observer模式(又称为Publish-Subscribe模式)是个可能的候选者 在Observer模式的环境描述中,“当把系统划分为一组相互协作的类时,需要维护相关对象之间的一致性。Observer模式不希望通过类的紧密耦合实现一致性,因为这样会降低它们的可复用性。” 这正是我们所需要的模式!,一个简单的例子(2/2),基于结构描述和例子,不难设计出该系统。设计人员还知道使用这种模式的后果,例如 主体和观察者可以独立变化 复用主体,而不必复用相关的观察者 复用观察者,而不必复用相关的主体,等等 这个例子似乎是直接和完美的,但实际上,因为系统规模和复杂性的增加,应用这些模式到实际的环境中并不容易 事实上,这种方法为你提供了有价值的风格和模式的列表,但并没有告诉你多少关于如何使用这个知识库。这使得体系结构设计缺少正规化,更像直觉的工艺,而非理性的工程!,结论:体系结构设计趋势,非功能需求成为焦点 不同于大多数传统的软件设计方法,强调功能需求、直觉地处理非功能需求,现代软件体系结构设计认为非功能需求同功能需求同样重要 这些方法的一个中心任务是使非功能质量可观察和可预测 例如,在基于模式的设计中,许多结构被作为获得高质量设计的指导;在多重视图模型中,功能视图(即逻辑视图)同其他视图相分离;在基于评估和转换的设计中,非功能需求被评估 体系结构风格和设计模式在所有方法中扮演重要的角色 这些模式既作为获得好的设计范型的知识库,又是分析非功能质量的有效途径 后者在基于目标图的推理和基于属性的体系结构风格中变得更为明显,从企业信息战略与规划方法角度,信息系统架构规划的方法,自60年代以来,随着信息系统在组织中越来越广泛的运用,许多专家和企业界开始了对信息系统架构规划方法的探索和研究,并且形成了一些比较典型的信息系统架构规划的方法: 企业系统规划法(Business System Planning,BSP) 战略集合转移法(Strategy Set Transformation,SST) 关键成功因素法(Critical Success Factors,CSF) 应用系统组合法(Application Portfolio Approach,APA) 信息工程法(Information Engineering,IE) 战略栅格法(Strategic Grid,SG) 价值链分析法(Value-chain Analysis,VCA) 战略系统规划法(Strategic System Planning,SSP) ,企业系统规划法(Business System Planning, BSP),企业系统规划法是一种对企业信息系统进行规划和设计的结构化方法,由IBM公司于20世纪70年代提出。这里所说的“企业”也可以是非盈利的单位或部门。 基本思想 : 信息支持企业运行。通过自上而下地识别系统目标、企业过程和数据,然后对数据进行分析,自下而上地设计管理信息系统。该管理信息系统支持企业目标的实现,表达所有管理层次的要求,向企业提供一致性信息,对组织机构的变动具有适应性。 优点: 企业系统规划法的优点在于利用它能保证管理信息系统独立于企业的组织机构,也就是能够使信息系统具有对环境变更的适应性。,战略集合转移法(SST),战略集合转移法提供一种建立起企业信息战略规划与组织战略相关联的方法,将组织战略转化为信息系统战略,它首先识别组织的战略集合,然后转化为信息系统战略,包括信息系统的目标、约束和设计原则等,最后提交整个信息系统的结构。,关键成功因素法,关键成功因素法是通过与高级管理者的交流,了解企业的发展战略及其相关的企业问题,识别企业的关键成功因素,根据这些关键成功因素来决定信息资源分配的优先级别,并帮助企业利用信息技术发掘新的机遇。 优点:能直观的引导高级管理者综观整个企业与信息技术之间的关系; 不足:在进行较低一层次的信息需求分析时,效率不是很高。,应用系统组合法 (Application Portfolio Approach,APA),应用系统组合法着重强调,在企业应用系统的分离和组合方面,对信息系统项目进行风险分析和评估,是进行信息决策和项目成功的保证。APA方法认为,企业在信息系统方面的经验和项目的大小与结构,是风险分析应该考虑的两个非常重要的因素。对企业应用系统进行合理的分离与组合,可以有效地降低风险。,信息工程法(IE),信息工程法(IE)提供了建立企业模型、数据模型和过程模型的技术手段,它首先利用业务分析来建立企业模型;其次进行实体分析建立主题数据模型;最后是进行数据的分布分析,结合数据的存储地点,确定主题数据库的内容和结构,制定数据库的开发策略。信息工程法在很大程度上是一种面向技术的方法。,战略栅格法(SG),战略栅格法是一种诊断企业中信息系统作用的工具。该方法利用栅格表,依据现行的应用项目和预计将开发的应用项目的战略影响,确定出4种不同的信息系统架构规划条件,即战略、转换、工厂、辅助; 栅格表中每一方格确定了企业中信息系统的位置,通过对当前应用项目和将开发应用项目可能产生的影响分析,以诊断当前状态和调整战略方向的作用。,价值链分析法(VCA),价值链分析法认为信息技术在组织的战略牵引方面能起关键作用。价值链方法将一个组织视为一系列的输入、转换与输出的活动的集合,而每一个活动都有可能相对于最终服务或产品产生增值行为,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论