问题 单项选择题

基于架构的软件设计(ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。以下关于ABSD的叙述中,错误的是______。

A.使用ABSD方法,设计活动可以从项目总体功能框架明确就开始
B.ABSD方法是一个自顶向下,递归细化的过程
C.ABSD方法有三个基础:功能分解、选择架构风格实现质量和商业需求以及软件模板的使用
D.使用ABSD方法,设计活动的开始意味着需求抽取和分析活动可以终止

答案

参考答案:D

解析: ABSD方法为产生软件系统的概念架构提供基础,概念架构是由Hofimeister、Nord和Soni提出的四种不同的架构中的一种,它描述了系统的主要设计元素及其关系。概念架构代表了在开发过程中作出的第一个选择,相应地,它是达到系统质量和业务目标的关键,为达到预定功能提供了一个基础。
ABSD方法取决于决定系统的架构驱动。所谓架构驱动,是指构成架构的业务、质量和功能需求的组合。使用ABSD方法,设计活动可以在架构驱动一决定就开始,这意味着需求获取和分析还没有完成(甚至远远没有完成),就开始了软件设计。设计活动的开始并不意味着需求获取和分析活动就可以终止,而是应该与设计活动并行。特别是在不可能预先决定所有需求时,例如产品线系统或长期运行的系统,快速开始设计是至关重要的。
ABSD方法有3个基础。第一个基础是功能的分解。在功能分解中,ABSD方法使用已有的基于模块的内聚和耦合技术。第二个基础是通过选择架构风格来实现质量和业务需求。第三个基础是软件模板的使用。软件模板利用了一些软件系统的结构。然而,对于设计方法来说,软件模板的使用是一个新概念,简单介绍如下。
软件模板是一个特殊类型的软件元素,包括描述所有这种类型的元素在共享服务和底层构造的基础上如何进行交互。软件模板还包括属于这种类型的所有元素的功能,这些功能的例子有:每个元素必须记录某些重大事件,每个元素必须为运行期间的外部诊断提供测试点等。在软件产品线系统中,软件模板显得格外重要,因为新元素的引入是一项通用的技术,这种技术用来使产品线体系结构适应一个特定的产品。
ABSD方法是递归的,且迭代的每一个步骤都是清晰地定义的。因此,不管设计是否完成,体系结构总是清晰的,这有助于降低体系结构设计的随意性。

问答题

某市煤气公司液化气站的102号400m3液化石油气球罐发生破裂,大量液化石油气喷出,顺风向北扩散,遇明火发生燃烧,引起球罐爆炸。由于该球罐爆炸燃烧,大火烧了19h致使5个400m3球罐、4个450m3卧罐和8000多只液化石油气瓶(其中空瓶3000多只)爆炸或烧毁,罐区相邻的厂房、建筑物、机动车及设备等被烧毁或受到不同程度的损坏,直接经济损失约627万元,死亡36人,重伤50人。
在该球罐两年零两个月的使用期间内,球罐经常处于较低容量,只有3次达到额定容量,第三次封装后4d,即在18日破裂。该球罐自投用后一直没有进行过检查,破裂前,安全阀正常,排污阀正常关闭。球罐的主体材质为15MnVR,内径9200mm,壁厚25mm,容积400m3,用于储存液化石油气。
经检查发现以下原因:①根据断口特征和断裂力学的估算,该球罐的破裂是属于低应力的脆性断裂,主断裂源在上环焊缝的内壁焊趾上,长约65mm。②经宏观及无损检验,上、下环焊缝焊接质量很差,焊缝表面及内部存在很多咬边、错边、裂纹,熔合不良、夹渣及气孔等缺陷。③事故发生前,在上下环焊缝内壁焊趾的一些部位已存在纵向裂纹,这些裂纹与焊接缺陷(如咬边)有关。④球罐自投入使用后,从未进行检验,制造、安装中的先天性缺陷未及时发现和消除,使裂纹扩展。当球罐内压力稍有波动便造成低应力脆性断裂。

根据以上场景,回答下列问题:


针对上述事故案例,分析避免同类事故发生的措施。

单项选择题 A1/A2型题