




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选学习资料 - - - 欢迎下载软件体系结构第四章作业题 1. 请把基于体系结构的软件开发模型与其他软件开发模型进行比较;答:一.基于体系结构为基础的基于构件组装的软件开发模型,如基于构件的开发模型和基于体系结构的开发模型等;基于体系结构的开发模型为以软件体系结构为核心,以基于构件的开发方法为基础;然后采纳迭代增量方式进行分析和设计,将功能设计空间映射到结构设计空间,再由结构设计空间映射到系统设计空间的过程;该开发模型把软件生命周期分为软件定义.需求分析和定义.体系结构设计.软件系统设计和软件实现 5 个阶段 .特点:为利用需求分析结果设计出软件的总体结构,通过基于构件的组装方法来构造软件系
2、统;优点:基于构件的开发方法使得软件开发不再一切从头开发,开发的过程就为构件组装的过程,爱护的过程就为构件升级.替换和扩充的过程;构件组装模型导致了软件的复用,提高了软件开发 的效率;软件体系结构的显现使得软件的结构框架更清楚,有利于系统的设计.开发和爱护;并且 软件复用从代码级的复用提升到构件和体系结构级的复用;缺点:由于采纳自定义的组装结构标准,缺乏通用的组装结构标准,因而引入了较大的风险;可重用性和软件高效性不易和谐,需要精干的有体会的分析和开发人员,一般开发人员插不上手;客户的中意度低,并且由于过分依靠于构件,所以构件库的质量影响着产品质量;二.以软件需求完全确定为前提软件开发模型,如
3、瀑布模型等;特点:软件需求在开发阶段已经被完全确定,将生命周期的各项活动依次序固定,强调开发的阶段性;优点:开发流程简洁;缺点:为开发后期要改正早期存在的问题需要付出很高的代价,用户需要等待较长时间才能够看到软件产品,增加了风险系数;并且假如在开发过程存在堵塞问题,就影响开发效率;三.在开头阶段只能供应基本需求的渐进式开发模型,如螺旋模型和原型实现软件开发模型等; 特点:软件开发开头阶段只有基本的需求,软件开发过程的各个活动为迭代的;通过迭代过程实现软件的逐步演化,最终得到软件产品;在此引入了风险治理,实行早期预防措施,增加项目胜利几率,提高软件质量;优点:强调了其他模型均忽视了的风险分析;逐
4、步调整原型使其满意客户的要求,而同时也使开发者对将要做的事情有更好的懂得;使得开发人员和用户对每个演化层显现的风险有所明白,继而做出应有的反应,因此特殊适用于巨大.复杂并具有高风险的系统;缺点:由于需求的不完全性,从而为软件的总体设计带来了困难和减弱了产品设计的完整性,并要求对风险技能治理水平的高要求;题 2. 请把基于体系结构的软件设计方法与其他软件设计方法进行比较;答:基于体系结构的软件设计方法为产生软件系统的概念体系结构供应构造,概念体系结构为由 hofimeister .nord 和 soni 提出的四种不同的体系结构中的一种,它描述了系统的主要设计元素及其关系;概念体系结构代表了在开
5、发过程中作出的第一个挑选,相应地,它为达到系统质量和商业目标的关键,为达到预定功能供应了一个基础;体系结构驱动,为指构成体系结构的商业.质量和功能需求的组合;使用基于体系结构的软件设计方法,设计活动可以在体系结构驱动一打算就开头,需求抽取和分析活动与设计活动并行;特殊为在不行能预先打算全部需求时,例如产品线系统或长期运行的系统,快速开头设计为至关重要的;商业用例软件设计师的体会遗留系统需求分析精品学习资料精选学习资料 - - - 欢迎下载基于体系结构的开发方法从系统的总体结构入手,将一个系统的体系结构显示化,以在高抽象层次处理诸如全局组织和掌握结构.功能到运算元素的安排.运算元素间的高层交互等
6、设计问题;基于体系结构的开发方法相比其他软件设计方法,显现了基于构件.基于框架.基于模板的开发技术,项目利用基于体系结构开发的思想,从需求到高层框架设计.架构设计.平台实现,充分表达了基于体系结构开发中从高层设计入手,复用体系结构框架.设计和实现可复用的构件的原就;此外,与其他软件设计方法的区分仍有:1. 在基于软件体系结构的开发方法中、单个用户界面和业务规律的改动不会影响到系统整体,可依据新的需求挑选或设计新的构件进行组装;2. 在基于软件体系结构的开发方法中、开发人员的组织用户界面和业务规律的定制可由领域人员来完成,不必专业运算机软件人员参加;专业运算机人员就集中精力做构件库的部分,完成业
7、 务规律的抽象,制作不同粒度的构件,完成模型的开发;3. 在基于软件体系结构的开发方法中、不同业务对象有相像的业务规律,可直接复用其构件;不同的业务规律可以有相像业务流程.业务规章.和原子数据操作,这些都直接可复用构件库, 这种构件级的重用将大大节约了开发成本4. 在基于软件体系结构的开发方法中、在针对新的需求的开发,可以复用原有系统的设计和实现,在系统爱护过程更新某一模块,不会影响系统的其它部分;题 3. 如何才能提高软件系统的可演化性;答:在生物学里面演化又称进化,为指生物在不同世代之间具有差异的现象,以及说明这些现 象的各种理论;但为在运算机软件领域里,“演化”这个术语一般为指在性质和特
8、性方面的递增式的转变;在某种意义上来说,这个在某个方面或某些方面属性的转变的过程,导致了新特性的显现或 进行改进;一般来说,这种转变都为诸如转变类的成员以适应环境的转变;转变会使得它们更有用 或更有意义,而且在某种程度上会增加它们的价值;与此同时,演化也会去掉一些不合适的特性; 也可以认为,软件系统的演化指的为在软件系统的生命周期内软件爱护和软件更新的行为和过程; 在软件系统的生命周期中,演化为一项贯穿始终的活动;在如何提高软件系统的可演化性上,lehman提出了软件演化的八条规律:(1) 必需频繁地变化以适应要求;(2) 软件的复杂度不断地增长;(3) 通过自我调剂以符合产品需求和过程特性;
9、(4) 在软件的生命周期中保持肯定的组织稳固性;(5) 不同的版本之间保持肯定的连贯性;(6) 功能连续地增加;(7) 在没有严格的爱护和适应性修改的情形下会显现质量衰退;精品学习资料精选学习资料 - - - 欢迎下载(8) 为一个反馈系统;第五章作业题 1. 为什么要评估软件体系结构?答:对一个系统的体系结构进行评估、 为为了在系统被构建之前猜测它的质量、 并不需要精确的评估结果、 通过分析sa体系结构对于系统质量的主要影响、 进而提出改进;此外,软件体系结构的设计为整个软件开发过程中关键的一步;而对于当今世界上巨大而复杂的系统来说,如没有一个合适的体系结构,却想要要有一个胜利的软件设计几乎
10、为不行想象的;不同类型的系统需要不同的软件体系结构,甚至一个系统的不同子系统也需要不同的体系结构;因此,体系结构的挑选往往会成为一个系统设计成败的关键;题 2. 从哪些方面评估软件体系结构?答:可以从以下9 个方面来评估软件体系结构1.性能性能为指系统的响应才能,即要经过多长时间才能对某个大事做出响应,或者在某段大事内系统所能处理的大事的个数;常常用单位时间内所处理事务的数量或系统完成某个事务处理所需的时间来对性能进行定量的表示;2.牢靠性牢靠性为软件系统在应用或系统错误面前,在意外或错误使用的情形下爱护软件系统的功能特性的基本才能;牢靠性可以分为两个方面:( 1)容错;在错误发生时确保系统正
11、确的行为,并进行内部“修复”;例如在一个分布式软件系统中失去了一个与远程构件的连接,接下来复原了连接;在修复这样的错误之后,软件系统可以重新或重复执行进程间的操作直到错误再次发生;( 2)健壮性;这里说的为爱护应用程序不受错误使用和错误输入的影响,在遇到意外错误大事时确保应用系统处于已经定义好的状态;值得留意的为,和容错相比,健壮性并不为说在错误发生时软件可以连续运行,它只能保证软件依据某种已经定义好的方式终止执行;3.可用性可用性为系统能够正常运行的时间比例;常常用两次故障之间的时间长度或在显现故障时系统能够复原正常的速度来表示;4.安全性安全性为指系统在向合法用户供应服务的同时能够阻挡非授
12、权用户使用的妄想或拒绝服务的才能;安全性为依据系统可能受到的安全威逼的类型来分类的;安全性又可划分为秘密性.完整性.不行否认性及可控性等特性;其中,秘密性保证信息不泄露给未授权的用户.实体或过程;完整性保证信息的完整和精确,防止信息被非法修改;可控性保证对信息的传播及内容具有掌握的才能,防止为非法者所用;5.可修改性可修改性为指能够快速地以较高的性能价格比对系统进行变更的才能;通常以某些详细的变更为基准,通过考察这些变更的代价衡量可修改性;可修改性包含四个方面:( 1)可爱护性;这主要表达在问题的修复上:在错误发生后“修复”软件系统;( 2)可扩展性;这一点关注的为使用新特性来扩展软件系统,以
13、及使用改进版原来替换构件并删除不需要或不必要的特性和构件;( 3)结构重组;这一点处理的为重新组织软件系统的构件及构件间的关系,( 4)可移植性;可移植性使软件系统适用于多种硬件平台.用户界面.操作系统.编程语言或编译器;6.功能性功能性为系统所能完成所期望的工作的才能;一项任务的完成需要系统中很多或大多数构件的相互协作;7.可变性可变性为指体系结构经扩充或变更而成为新体系结构的才能;这种新体系结构应当符合预先定义的规章,在某些详细方面不同于原有的体系结构;当要将某个体系结构作为一系列相关产品(例如,软件产品线)的基础时,可变性为很重要的;精品学习资料精选学习资料 - - - 欢迎下载8.可集
14、成性可集成性为指系统能与其他系统协作的程度;9.互操作性作为系统组成部分的软件不为独立存在的,常常与其他系统或自身环境相互作用;为了支持互操作性,软件体系结构必需为外部可视的功能特性和数据结构供应细心设计的软件入口;程序和用其他编程语言编写的软件系统的交互作用就为互操作性的问题,这种互操作性也影响应用的软件体系结构; 10.概念完整性能够统一全部层面系统设计概念的才能11.可分解性支持生产系统某个子集的才能题 3. a 公司为一家相对较大的软件和硬件企业,专业从事网络设备的开发;从单一的产品开头,现在, 已经延长到包括摄相服务器.扫描服务器.光盘服务器以及其他的储备服务器在内的产品;公司原先的
15、产品都为一个一个地开发,每个软件组织一个项目组;为了适应快速变化的市场,降低开发成本,公司想引入产品线方法;然而,软件产品线开发涉及了一个软件开发组织的多个产品,挑选了软件产品线意味着要承担由此带来的很多风险;所以,公司的 cto王总打算在弄清三个问题之后再做打算,第一就为本公司的业务范畴为否适合使用产品线方法,其次为如何在原有产品的基础上建立产品线,最终为胜利实施产品线的主要因素为什么? 问题 1请用 100 字以内文字说明a 公司为否适合采纳产品线方法?为什么? 问题 2请用 200 字以内文字说明如何在原有产品的基础上建立产品线? 问题 3请用 150 字以内文字说明胜利实施产品线的主要
16、因素为什么?答: 问题 1适合;缘由:(1) 该公司为一家相对较大的软件和硬件企业,产品都为在同一个领域 网络设备;该公司原有产品相对比较成熟,可以在原有产品的基础上建立产品线,满意软件产品线建设的基本要求;(2) 该公司原先的产品都为一个一个地开发,每个软件组织一个项目组,这样不行防止造成了肯定程度的资源铺张;此外,公司需要适应快速变化的市场和降低开发成本,而软件产品线方法可以达到这一目的;问题 2在原有产品的基础上,可采纳以下方式之一建立产品线:1演化方式,即基于现有产品演化为产品线,将特定产品的构件逐步转化为产品线的共用构件,从基于产品的方法逐步转化为基于产品线的软件开发;2革命方式,即用软件产品线替代现有产品集,停止现有产品的开发,全部工作直接针对软件产品线的核心资源开发;遗留系统只有在符合体系结构和构件需求的情形下,才可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届云南省保山市高三化学第一学期期末教学质量检测试题含解析
- 2025年铅压延加工材项目立项申请报告
- 湖北省武汉新区第一学校2026届化学高三上期末经典试题含解析
- 城市照明系统2025年升级改造项目环境影响评价及修复措施报告
- XX监护类器械制造商2022年度环境、社会与公司治理报告
- 2025年饮料行业市场细分与品牌建设报告
- 2025年食品冷链物流温控技术对新鲜度保持与延长保质期研究报告
- 风电场并网接入与电力调度方案
- 冷链物流运营成本控制方案
- 小学数学教学全年计划及教学进度安排
- 2025年秋季教导处工作计划-深耕细作教研路笃行不怠启新程
- 党建品牌创新活动创新路径与实践探索
- 2025年保山辅警考试题库(附答案)
- 合同基础知识培训课件教学
- 2025-2030中国家政服务从业人员培训体系与职业发展白皮书
- 安全生产事故分级标准
- 营养指导员试题附答案
- 初中英语新人教版八年级上册全册单词(2025秋)
- 2025年广西中考道德与法治试题答案详解讲评课件
- 传染病防治法培训课件
- DB42T 1521-2019 电梯能效测试与评价规则
评论
0/150
提交评论