使用ABSD方法,设计活动可以从项目总体功能框架明确就开始
ABSD方法是一个自顶向下,递归细化的过程
ABSD方法有3个基础:功能分解、选择架构风格实现质量和商业需求及软件模板的使用
使用ABSD方法,设计活动的开始意味着需求抽取和分析活动可以终止
第1题:
论基于架构的软件设计方法及应用 基于架构的软件设计(Architecture-Based Software Design,ABSD)方法以构成软件架构的商业、质量和功能需求等要素来驱动整个软件开发过程。ABSD是一个自顶向下,递归细化的软件开发方法,它以软件系统功能的分解为基础,通过选择架构风格实现质量和商业需求,并强调在架构设计过程中使用软件架构模板。采用ABSD方法,设计活动可以从项目总体功能框架明确后就开始,因此该方法特别适用于开发一些不能预先决定所有需求的软件系统,如软件产品线系统或长生命周期系统等,也可为需求不能在短时间内明确的软件项目提供指导。
请围绕“基于架构的软件开发方法及应用”论题,依次从以下三个方面进行论述。 1. 概要叙述你参与开发的、采用ABSD方法的软件项目以及你在其中所承担的主要工作。 2. 结合项目实际,详细说明采用ABSD方法进行软件开发时,需要经历哪些开发阶段?每个阶段包括哪些主要活动? 3. 阐述你在软件开发的过程中都遇到了哪些实际问题及解决方法。
一、论文中要具体介绍项目的背景与总体需求、系统所采用的技术路线以及你所承担的实际工作。
二、采用ABSD方法进行软件开发时,需要经历架构需求、架构设计、架构文档化、架构复审、架构实现和架构演化六个阶段。
1. 架构需求阶段需要明确用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。其主要活动包括需求获取、标识构件和架构评审。
(1)需求获取活动需要定义开发人员必须实现的软件功能,使得用户能够完成他们的任务,从而满足功能需求。与此同时,还要获得软件质量属性,满足一些非功能性需求。
(2)标识构件活动首先需要获得系统的基本结构,然后对基本结构进行分组,最后将基本结构进行打包成构件。
(3)架构需求评审活动组织一个由系统涉众(用户、系统分析师、架构师、设计实现人员等)组成的小组,对架构需求及相关构件进行审查。审查的主要内容包括所获取的需求是否真实反映了用户需求,构件合并是否合理等。
2. 架构设计阶段是一个迭代过程,利用架构需求生成并调整架构决策。主要活动包括提出架构模型、将已标识的构件映射到架构中、分析构件之间的相互作用、产生系统架构和架构设计评审。
3. 架构文档化的主要活动是对架构设计进行分析与整理,生成架构规格说明书和测试架构需求的质量设计说明书。
4. 在一个主版本的软件架构分析之后,需要安排一次由外部人员(客户代表和领域专家)参加的架构复审。架构复审需要评价架构是否能够满足需求,质量属性需求是否在架构中得以体现、层次是否清晰、构件划分是否合理等。从而标识潜在的风险,及早发现架构设计中的缺陷和错误。
5. 架构实现主要是对架构进行实现的过程,主要活动包括架构分析与设计、构件实现、构件组装和系统测试。
6. 架构演化阶段主要解决用户在系统开发过程中发生的需求变更问题。主要活动包括架构演化计划、构件变动、更新构件的相互作用、构件的组装与测试和技术评审。
三、在软件开发的过程中可能遇到的问题包括:在架构需求获取过程中如何对捕获的架构需求进行筛选和优先级排序;在架构复审过程中如何解决评审人员的意见不一致问题;在架构实现过程中如何根据项目组实际情况选择开发语言与开发平台;在架构演化过程中如何筛选并处理用户的需求变更,等等。
第2题:
关于软件架构设计所处的阶段,以下说法正确的是( )。( )A.可行性分析与需求分析之间B.需求分析与软件设计之间C.软件设计与软件编码之间D.测试阶段
第3题:
ABSD方法主要包括架构需求等6个主要活动,其中(53)活动的目标是标识潜在的风险,及早发现架构设计中的缺陷和错误;(54)活动针对用户的需求变化,修改应用架构,满足新的需求。
A.架构设计
B.架构实现
C.架构复审
D.架构演化
第4题:
以下关于软件需求分析和软件设计的叙述中,不正确的是( )
A.需求分析可以检测和解决需求之间的冲突,并发现系统的边界
B.软件设计是数据软件需求,产生一个软件内部结构的描述,并将其作为软件构造的基础
C.需求分析是为了评价和改进产品质量,识别产品的缺陷和问题而进行的活动
D.软件设计是为了描述出软件架构及相关组件之间的接口
第5题:
第6题:
第7题:
第8题:
第9题:
软件架构设计是降低成本、改进质量、按时和按需交付产品的关键活动。以下关于软件架构重要性的叙述中,错误的是()
第10题:
软件设计包括软件架构设计和软件详细设计。架构设计属于高层设计,主要描述软件的结构和组织,标识各种不同的组件。由此可知,在信息系统开发中,()属于软件架构设计师要完成的主要任务之一。
第11题:
基于软件架构的设计(ArchitectureBasedSoftwareDevelopment,ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。它强调采用(1)来描述软件架构,采用(2)来描述需求。 空白(1)处应选择()
第12题:
软件复用
模式设计
需求获取
需求分配
第13题:
● 基于架构的软件设计(ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。ABSD方法有三个基础:功能分解、 (49) 和软件模板的使用。
(49)
A. 对需求进行优先级排列
B. 根据需求自行设计系统的总体架构
C. 选择架构风格实现质量及商业需求
D. 开发系统原型用于测试
第14题:
基于软件架构的设计(Architecture Based Software Development,ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。它强调采用 (46) 来描述软件架构,采用 (47) 来描述需求。
(46)
A. 类图和序列图
B. 视角与视图
C. 构件和类图
D. 构件与功能
(47)
A. 用例与类图
B. 用例与视角
C. 用例与质量场景
D. 视角与质量场景
第15题:
某公司采用基于架构的软件设计(Architecture-Based Software Design,ABSD)方法进行软件设计与开发。ABSD方法有三个基础,分别是对系统进行功能分解、采用(52)实现质量属性与商业需求、采用软件模板设计软件结构。 ABSD方法主要包括架构需求等6个主要活动,其中(53)活动的目标是标识潜在的风险,及早发现架构设计中的缺陷和错误;(54)活动针对用户的需求变化,修改应用架构,满足新的需求。 小王是该公司的一位新任架构师,在某项目中主要负责架构文档化方面的工作。小王(55)的做法不符合架构文档化的原则。架构文档化的主要输出结果是架构规格说明书和(56)。
A.架构风格
B.设计模式
C.架构策略
D.架构描述
第16题:
基于架构的软件开发(Architecture Based Software Development,ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。它强调采用( )描述软件架构,用( )来描述需求。
A.类图和序列图 B.视角与视图 C.构建和类图 D.构建与功能 A.用例与类图 B.用例与视角 C.用例与质量场景 D.视角与质量场景
第17题:
第18题:
第19题:
第20题:
第21题:
基于架构的软件设计(ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。以下关于ABSD的叙述中,错误的是()
第22题:
基于软件架构的设计(ArchitectureBasedSoftwareDevelopment,ABSD)强调由商业、质量和功能需求的组合驱动软件架构设计。它强调采用(1)来描述软件架构,采用(2)来描述需求。 空白(2)处应选择()
第23题:
使用ABSD方法,设计活动可以从项目总体功能框架明确就开始
ABSD方法是一个自顶向下,递归细化的过程
ABSD方法有3个基础:功能分解、选择架构风格实现质量和商业需求及软件模板的使用
使用ABSD方法,设计活动的开始意味着需求抽取和分析活动可以终止
第24题:
根据用户需求,能够确定一个最佳的软件架构,指导整个软件的开发过程
软件架构设计需要满足系统的质量属性,如性能、安全性和可修改性等
软件架构设计需要确定组件之间的依赖关系,支持项目计划和管理活动
软件架构能够指导设计人员和实现人员的工作