某软件公司采用ATAM进行软件架构评估,在评估过程中识别出了多个关于质量属性的描述。其中,“系统在
A.可测试性
B.互操作性
C.可移植性
D.易用性
A.可测试性
B.互操作性
C.可移植性
D.易用性
(61)
A. ATAM需要对代码的质量进行评估
B. ATAM需要对软件系统需求的正确性进行评价
C. ATAM需要对软件系统进行集成测试
D. ATAM需要对软件质量属性进行优先级排序
A. ATAM需要对代码的质量进行评估
B. ATAM需要对软件系统需求的正确性进行评价
C. ATAM需要对软件系统进行集成测试
D. ATAM需要对软件质量属性进行优先级排序
(62)
A. ATAM是一种代码评估方法
B. ATAM需要评估软件的需求是否准确
C. ATAM需要对软件系统进行测试
D. ATAM不是一种精确的评估工具
Architecture Tradeoff Analysis Method (ATAM) 是一种软件架构的评估方法,以下关于该方法的叙述中,正确的是______。
A.ATAM是一种代码评估方法
B.ATAM需要评估软件的需求是否准确
C.ATAM需要对软件系统进行测试
D.ATAM不是一种精确的评估工具
【问题1】(12分) 请用200字以内的文字解释什么是软件架构风格,并从集成开发环境与用户的交互方式、集成开发环境的扩展性、集成开发环境的数据管理三个方面说明为什么最终采用了李工的设计方案。 【问题2】(13分) 在对软件系统架构进行设计时,要对架构需求进行分析,针对特定需求选择最为合适的架构风格,因此实际的软件系统通常会混合多种软件架构风格。请对核心需求进行分析,说明为了满足需求(2)和(3),分别应采用何种架构风格,并概要说明采用相应架构风格后的架构设计过程。
论基于场景的软件体系结构评估方法
大型复杂软件系统开发所关注的问题之一是质量,在软件系统的早期设计阶段,选择合适的体系结构对系统许多关键质量属性(如可用性、可修改性、性能、安全性、易用性等)起着决定性的影响。不恰当的软件体系结构将给项目开发带来灾难。因此,尽早分析和评估一个系统的体系结构非常重要。软件体系结构分析和评估的目的是为了识别体系结构中潜在的风险,验证系统的质量需求在设计中是否得到体现,预测系统的质量并帮助开发人员进行设计决策。
软件体系结构的评估通常是指评估参与者在评估过程中利用特定评估方法对系统质量属性进行分析与评估。基于调查问卷或检查表的评估和基于场景(Scenarios)的评估是目前主要的两类评估方式。利用场景评估技术进行软件体系结构评估的主流方法包括 SAAM (Scenario-based Architecture Analysis Method)、ATAM (Architecture Tradeoff Analysis Method)和CBAM (Cost Benefit Analysis Method)。SAAM方法最初用于比较不同的体系结构,后来用于指导对体系结构的检查,使其主要关注潜在的问题,如需求冲突,或仅从某一参与者观点出发的不全面的系统设计。ATAM方法在揭示出结构满足特定质量目标的同时,也能反映出质量目标之间的联系,从而权衡多个质量目标。 CBAM方法可以看作是ATAM方法的补充,在其评估结果上对软件体系结构的经济性进行评估。
请围绕“基于场景的软件体系结构评估方法”论题,依次从以下三个方面进行论述。
1.概要叙述你参与管理和开发的软件项目以及你在其中所担任的主要工作,包括角色、工作内容等。
2.请从评估目的、评估参与者、评估活动或过程、评估结果等几个方面对SAAM或ATAM评估方法进行分析。
3.结合你参与的实际工作和项目的实际情况,具体阐述你在进行体系结构设计和评估时,采用了什么评估方法,如何具体实施,最终实际效果如何。
A.瀑布式
B.喷泉
C.增量
D.螺旋
试题三(共25分)
阅读以下关于汽车电子基础软件架构的说明,在答题纸上回答问题1至问题 3。
【说明】
某软件公司承担了某项国家重点项目的研制工作,任务重点是参考国外汽车电子发展趋势,开发某汽车公司的企业汽车电子基础软件的架构,逐步实现汽车企业未来技术发展规划。
该软件公司接收此项任务后,调动全体技术人员深入收集国外相关技术资料,经过多方调研和分析,公司提出遵照国际组织最新推出的AUTOSAR规范,按统筹规划、分步骤实施的原则,实现汽车公司的基础软件架构设计。图 3-1给出了 AUTOSAR规范所定义的工作包,图中灰色部分代表本项目工作所包含的内容,即软件架构和基础软件。
【问题1】 (7分)
AUTOSAR规范中要求,汽车电子软件开发流程应尽量满足并发、可多次迭代的特性。 为了定义汽车电子的软件开发过程,公司李工和王工分别提出了两种软件开发流程,其开发流程见图 3-2 和 3-3(图中 ECU 是指汽车电子中的电子控制单元)。请说明李工和王工谁定义的流程更符合AUTOSAR的规定,并说明理由。
【问题2】 (10分)
图3-1中的II-1.1.1项中定义了软件架构和操作系统的要求, 图3-4是满足AUTOSAR定义的操作系统各功能模块的层次结构,请说明(1)~(5)箭头所标的具体操作含义。
【问题3】 (8分)
AUTOSAR是一种开放式架构,用150字以内的文字,说明采用 AUTOSAR架构的主要优点,并说明汽车电子ECU覆盖汽车的哪三个领域。
试题一(共25分)
阅读以下关于软件系统架构选择的说明,在答题纸上回答问题1至问题 3。
【说明】
某公司欲针对 Linux操作系统开发一个KWIC(Key Word in Context)检索系统。该系统接收用户输入的查询关键字,依据字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读。在对KWIC系统进行需求分析时,公司的业务专家发现用户后续还有可能采用其它方式展示帮助内容。根据目前需求,公司的技术人员决定通过重复剪切帮助文档中的第一个单词并将其插入到行尾的方式实现帮助文档内容的循环滚动,后续还将采用其它的方法实现这一功能。
在对KWIC系统的架构进行设计时,公司的架构师王工提出采用共享数据的主程序-子程序的架构风格,而李工则主张采用管道-过滤器的架构风格。在架构评估会议上,大家从系统的算法变更、 功能变更、 数据表示变更和性能等方面对这两种方案进行评价,最终采用了李工的方案。
【问题 1】(7分)
在实际的软件项目开发中,采用恰当的架构风格是项目成功的保证。请用 200 字以内的文字说明什么是软件架构风格,并对主程序-子程序和管道-过滤器这两种架构风格的特点进行描述。
【问题 2】(12分)
请完成表1-1 中的空白部分(用+表示优、-表示差),对王工和李工提出的架构风格进行评价,并指出采用李工方案的原因。
【问题 3】(6分)
图1-1 是李工给出的架构设计示意图, 请将恰当的功能描述填入图中的(1)~(4)。