研究软件架构的根本目的是解决软件的复用、质量和维护问题,软件架构设计是软件开发过程中关键一步,因此需要对其进行评估,在这一活动中,评估人员关注的是系统的 ( ) 属性。A.功能 B.性能 C.质量 D.安全

题目
研究软件架构的根本目的是解决软件的复用、质量和维护问题,软件架构设计是软件开发过程中关键一步,因此需要对其进行评估,在这一活动中,评估人员关注的是系统的 ( ) 属性。

A.功能
B.性能
C.质量
D.安全
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

论基于架构的软件设计方法及应用 基于架构的软件设计(Architecture-Based Software Design,ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下,递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始,因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。

请围绕“基于架构的软件开发方法及应用”论题,依次从以下三个方面进行论述。 1. 概要叙述你参与开发的、采用ABSD方法的软件项目以及你在其中所承担的主要工作。 2. 结合项目实际,详细说明采用ABSD方法进行软件开发时,需要经历哪些开发阶段?每个阶段包括哪些主要活动? 3. 阐述你在软件开发的过程中都遇到了哪些实际问题及解决方法。


正确答案:

一、论文中要具体介绍项目的背景与总体需求、系统所采用的技术路线以及你所承担的实际工作。
二、采用ABSD方法进行软件开发时,需要经历架构需求、架构设计、架构文档化、架构复审、架构实现和架构演化六个阶段。
1. 架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。其主要活动包括需求获取、标识构件和架构评审。
(1)需求获取活动需要定义开发人员必须实现的软件功能,使得用户能够完成他们的任务,从而满足功能需求。与此同时,还要获得软件质量属性,满足一些非功能性需求。
(2)标识构件活动首先需要获得系统的基本结构,然后对基本结构进行分组,最后将基本结构进行打包成构件。
(3)架构需求评审活动组织一个由系统涉众(用户、系统分析师、架构师、设计实现人员等)组成的小组,对架构需求及相关构件进行审查。审查的主要内容包括所获取的需求是否真实反映了用户需求,构件合并是否合理等。
2. 架构设计阶段是一个迭代过程,利用架构需求生成并调整架构决策。主要活动包括提出架构模型、将已标识的构件映射到架构中、分析构件之间的相互作用、产生系统架构和架构设计评审。
3. 架构文档化的主要活动是对架构设计进行分析与整理,生成架构规格说明书和测试架构需求的质量设计说明书。
4. 在一个主版本的软件架构分析之后,需要安排一次由外部人员(客户代表和领域专家)参加的架构复审。架构复审需要评价架构是否能够满足需求,质量属性需求是否在架构中得以体现、层次是否清晰、构件划分是否合理等。从而标识潜在的风险,及早发现架构设计中的缺陷和错误。
5. 架构实现主要是对架构进行实现的过程,主要活动包括架构分析与设计、构件实现、构件组装和系统测试。
6. 架构演化阶段主要解决用户在系统开发过程中发生的需求变更问题。主要活动包括架构演化计划、构件变动、更新构件的相互作用、构件的组装与测试和技术评审。
   三、在软件开发的过程中可能遇到的问题包括:在架构需求获取过程中如何对捕获的架构需求进行筛选和优先级排序;在架构复审过程中如何解决评审人员的意见不一致问题;在架构实现过程中如何根据项目组实际情况选择开发语言与开发平台;在架构演化过程中如何筛选并处理用户的需求变更,等等。


第2题:

● 架构权衡分析方法(ATAM)是一种常用的软件架构评估方法,下列关于该方法的叙述中,正确的是 (61) 。

(61)

A. ATAM需要对代码的质量进行评估

B. ATAM需要对软件系统需求的正确性进行评价

C. ATAM需要对软件系统进行集成测试

D. ATAM需要对软件质量属性进行优先级排序


正确答案:D

第3题:

试题(44)

软件架构是降低成本、改进质量、按时和按需交付产品的关键因素。以下关于软件架构的描述,错误的是 (44) 。

(44)

A. 根据用户需求,能够确定一个最佳的软件架构,指导整个软件的开发过程

B. 软件架构设计需要满足系统的质量属性,如性能、安全性和可修改性等

C. 软件架构设计需要确定组件之间的依赖关系,支持项目计划和管理活动

D. 软件架构能够指导设计人员和实现人员的工作


正确答案:A
试题(44)分析
软件架构是降低成本、改进质量、按时和按需交付产品的关键因素,软件架构设计需要满足系统的质量属性,如性能、安全性和可修改性等,软件架构设计需要确定组件之间的依赖关系,支持项目计划和管理活动,软件架构能够指导设计人员和实现人员的工作。一般在设计软件架构之初,会根据用户需求,确定多个候选架构,并从中选择一个较优的架构,并随着软件的开发,对这个架构进行微调,以达到最佳效果。
参考答案
(44)A

第4题:

架构权衡分析方法(Architecture Tradeoff Analysis Method,ATAM)是一种系统架构评估方法,主要在系统开发之前,针对性能、(57)、安全性和可修改性等质量属性进行评价和折中。ATAM可以分为4个主要的活动阶段,包括需求收集、(58)描述、属性模型构造和分析、架构决策与折中,整个评估过程强调以(59)作为架构评估的核心概念。 某软件公司采用ATAM进行软件架构评估,在评估过程中识别出了多个关于质量属性的描述。其中,“系统在进行文件保存操作时,应该与Windows系统的操作方式保持一致,主要与(60)质量属性相关:“系统应该提供一个开放的API接口,支持远程对系统的行为进行控制与调试,主要与(61)质量属性相关。在识别出上述描述后,通常采用(62)对质量属性的描述进行刻画与排序。在评估过程中,(63)是一个会影响多个质量属性的架构设计决策。

A.可测试性

B.可移植性

C.可用性

D.易用性


正确答案:C
试题前两空考纯概念:架构权衡分析方法是一种系统架构评估方法,主要在系统开发之前,针对性能、可用性、安全性和可修改性等质量属性进行评价和折中。ATAM可以分为4个主要的活动阶段,包括需求收集、架构视图描述、属性模型构造和分析、架构决策与折中,整个评估过程强调以属性作为架构评估的核心概念。题目中提到“某软件公司采用ATAM进行软件架构评估,在评估过程中识别出了多个关于质量属性的描述。其中,系统在进行文件保存操作时,应该与Windows系统的操作方式保持一致。”与用户所熟悉的操作方式,操作界面保持一致,这是一种减轻用户记忆负担,降低学习成本的做法,这有利于提高系统的易用性。“系统应该提供一个开放的API接口,支持远程对系统的行为进行控制与调试”,在此处,我们注意到描述的核心落在“支持远程对系统的行为进行控制与调试”上了,而调试是在测试之后精确定位系统错误的一种机制,所以这种做法有利于提高系统的可测试性。最后的两空也是考概念:在识别出上述描述后,通常采用效用树对质量属性的描述进行刻画与排序。在评估过程中,权衡点是一个会影响多个质量属性的架构设计决策。

第5题:

软件开发模型着重研究的是()。

A.程序设计的方法和编程技巧

B.软件系统的基本架构和常见的软件系统模型

C.软件开发全部过程、活动和任务的结构框架

D.软件系统的模型和对应不同模型的开发方法


参考答案C

第6题:

● 软件质量保证是软件项目控制的重要手段, (23) 是软件质量保证的主要活动之一。

(23)

A. 风险评估

B. 软件评审

C. 需求分析

D. 架构设计


正确答案:B

第7题:

● 软件架构评估中,评估人员主要关注系统的质量属性,并确定采用何种架构更为合适。在对某个应用软件进行评估时,该应用软件采用的Web服务器所支持的并发连接数是整个系统性能的一个(30);改变加密级别可能会对安全性和操作性均产生重要影响,则加密级别是系统的一个(31)。

(30)

A.检查点

B.敏感点

C.权衡点

D.风险点

(31)

A.检查点

B.敏感点

C.权衡点

D.风险点


正确答案:B,C
试题(30)、(31)分析
软件架构评估可以只针对一个架构,也可以针对一组架构。在架构评估中,评估人员主要关注系统的质量属性,并确定采用何种架构更为合适。敏感点和权衡点是软件架构评估中的重要概念。敏感点是一个或多个构件的特性,权衡点是影响多个质量属性的特性,是多个质量属性的敏感点。根据题干描述,在对某个应用软件进行评估时,该应用软件采用的Web服务器所支持的并发连接数是整个系统性能的一个敏感点;改变加密级别可能会对安全性和操作性均产生重要影响,则加密级别是系统的一个权衡点。
参考答案
(30)B(31)C

第8题:

基于场景的架构分析方法(Scenarios-based Architecture Analysis Method,SAAM)是卡耐基梅隆大学软件工程研究所的Kazman等人于1983年提出的一种非功能质量属性的架构分析方法,是最早形成文档并得到广泛应用的软件架构分析方法。SAAM的主要输入是问题描述、( )和架构描述文档,其分析过程主要包括场景开发、( )、单个场景评估、场景交互和总体评估。

A.问题说明 B.问题建模 C.需求说明 D.需求建模 A.架构需求 B.架构描述 C.架构设计 D.架构实现


正确答案:C,B

第9题:

软件质量保证是软件项目控制的重要手段, (23) 是软件质量保证的主要活动之一

A.风险评估

B.软件评审

C.需求分析

D.架构设计


正确答案:B
软件质量保证是软件质量管理的重要组成部分。软件质量保证主要是从软件产品的过程规范性角度来保证软件的品质。其主要活动包括:质量审计(包括软件评审)和过程分析。

第10题:

软件质量保证是软件项目控制的重要手段,(22) 是软件质量保证的主要活动之一,其主要方法是 (23)。

A.风险评估

B.软件评审

C.需求分析

D.架构设计


正确答案:B
本题考查软件质量保证的基础知识。对于软件开发项目而言,控制是十分重要的管理活动。软件质量保证(SoftwareQualityInsurance,SQA)是在软件过程中的每一步都进行的“保护性活动”。SQA主要由基于非执行的测试(也称为评审)、基于执行的测试(即通常所说的测试)和程序正确性证明。软件评审是最为重要的SQA活动之一。它的作用是,在发现及改正错误的成本相对较小时就及时发现并排除错误。审查和走查是进行正式技术评审的两类具体方法。审查过程不仅步数比走审多,而且每个步骤都是正规的。由于在开发大型软件过程中所犯的错误绝大数是规格说明错误或设计错误,而正式的技术评审发现这两类错误的有效性高达75%,因此是非常有效的软件质量保证方法。

更多相关问题