软件设计与体系结构知识点_第1页
软件设计与体系结构知识点_第2页
软件设计与体系结构知识点_第3页
软件设计与体系结构知识点_第4页
全文预览已结束

下载本文档

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

文档简介

软件设计与体系结构知识点软件设计的特征软件设计的开端是出现某些新的问题需要软件来解决,这些需要促使设计工作的开始,并成为整个设计工作最初的基础软件设计的结果是给出一个方案,它能够用来实现所需的、可以解决问题的软件,方案的描述可能是文字、图表,甚至数学符号、公式等组成的文档或模型软件设计包含一系列的转换过程,即把一种描述或模型转换为另一种描述或模型,转换后的形态可能更加具体,或更接近于实现产生新的想法或思路对软件设计非常重要,因为设计也是一个创造性的过程,不同的问题或需求总会存在各自的特点,即使同样的问题在不同时期和环境下也会存在区别,因此设计不会是一成不变的软件设计的过程是不断解决问题和实施决策的过程,因为整个设计是解决一个大的问题,在设计过程中将会分解成众多小问题,涉及真需要一次解决这些小的问题,并在出现多种方案或策略时进行决策,选择其中最合适的软件设计也是一个满足各种约束的过程,因为软件可能在性能、运行环境、开发时间、成本、人员技术水平等各个方面存在约束,设计必须在满足这些约束的情况下给出最佳的设计方案大多数的软件实际是一个不断演化的过程,因为需求在一开始很可能是不完整或不精确的,在设计过程中还会不断发生变化并逐步稳定下来,因此设计需要根据需求的变化而不断演化。软件设计的要素目标描述(2)设计约束(3)产品描述(4)设计原理(5)开发规划(6)使用描述软件设计体系的定义软件设计体系结构是软件系统的结构,包含软件元素、软件元素外部可见的属性以及这些软件元素之间的关系软件体系结构是软件系统的基本组织,包含构建、构件之间、构件与环境之间的关系,以及相关的设计与演化原则软件设计的主要活动软件设计计划(2)体系结构设计(3)界面设计(4)模块/子系统设计(5)过程/算法设计(6)数据模型设计体系结构“4+1”多视图建模逻辑视图:该视图关注功能需求,即系统应该为最终用户提供什么服务,它与应用领域精密相关进程视图:该视图捕获设计中关于并发和同步的内容,重视一些非功能需求,例如性能、可扩展性等,定义了运行实体和它们的属性。开发视图:该试图主要描述软件在开发环境中的静态结构,开发人员和项目经理对比都会感兴趣。物理视图:该视图描述软件到硬件的映射关系,反映了软件的分布特征。场景:可以使用一组重要场景也就是用例的实例,把上述四种视图紧密的联系起来什么是软件产品线方法软件产品线是软件复用发展的一个更高阶段,它并不仅仅局限于以前人们在软件复用中考虑的对函数、模块、类、体系结构甚至子系统的重用。软件产品线指一组具有公共的、可管理特征(系统需求)的软件系统,这些系统满足特定的市场需求或者任务领域需求,并且按照预定义的方式基于公共的核心资产集合开发得到。软件产品线主要由两部分组成:核心资产库和产品集合产品线方法的基本活动包括核心资产开发、产品开发和管理。可信软件可行软件是指软件系统的运行行为极其结果总是符合人们的预期,且在受到干扰(包括操作错误、环境影响、外部攻击等)时仍能提供连续服务本质属性:(1)可靠性(2)安全性(3)正确性(4)实时性(5)可维护性(6)可生存性ATM用例图参与者:顾客(存款取款查询转账),操作管理员(开机关机),银行服务器(存款取款查询转账),读卡器(存款取款查询转账),存款器(存款),取款器(取款),打印机(存款取款查询转账)交互:存款,取款,转账,查询余额,开机,关机ATM细化交互:操作管理员(开机关机),顾客、银行服务器,、读卡器、打印机(会话),取款器(取款),存款器(存款),会话扩展非法密码,会话包涵传输业务,传输业务继承存款取款查询转账。ATM系统顶级数据流银行ATM系统(用户口令)用户控制面板银行ATM系统(管理员口令)管理员控制开关银行ATM系统(银行信息)读卡器银行ATM系统(存入款项信息)存款器银行ATM系统(帐户信息)银行系统银行ATM系统(显示信息)显示器银行ATM系统(帐户变更信息)银行系统银行ATM系统(打印信息)打印机银行ATM系统(取出款项信息)取款器界面设计的基本原则用户熟悉程度:界面应该采用经常使用系统的用户所熟悉的术语和概念一致性:界面必须一致,在任何可能的情况下,相同的操作应该以同样的方式被激活使惊讶最小化:尽量避免使用户对系统的行为感到惊讶可恢复性:界面应该为用户提供错误恢复机制用户帮助:界面应该在错误发生时提供有意义的反馈,并且提供上下文敏感的用户帮助系统用户多样性:界面应该为不同类型的用户提供恰当的交互方式软件体系结构风格和设计模式软件体系结构风格:在构件和连接子的层次描述的可重复使用的软件设计问题解决方案软件体系结构设计模式:在类和对象的层次描述的可重复使用的软件设计问题解决方案软件评估的目的软件评估的目的就是为了在开发过程的早期,通过分析系统的质量需求是否在软件体系结构中得到体现,来识别软件体系结构设计中的潜在风险,预测系统质量属性,并辅助软件体系结构决策的制定。常用的三个软件体系结构评估方法ATAM方法:能够反映一个软件体系结构满足某些特定质量目标的程度,同时还能给出这些质量目标相互之间的交互方式,即它们之间的折中方案。步骤为:介绍,调查和分析,调试,报告步骤1:介绍ATAM方法;步骤2:商业动机的介绍;步骤3:软件体系机构介绍步骤4:确定软件体系结构方案;步骤5:产生质量属性效果树;步骤6:分析软件体系结构方案;步骤7:集体讨论并确定场景的优先级;步骤8:进一步分析软件体系结构方案;步骤9:展示结果。SAAM方法步骤1:场景的形成;步骤2:描述软件体系结构;步骤3:场景分类和优先级划分;步骤4:间接场景的单独评估;步骤5:评估场景交互;

温馨提示

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

评论

0/150

提交评论