2.5测试你的知识
以下是从 iSAQB 课程[isaqb-curriculum]中“软件架构背景下的基本术语”部分的一些详细摘录,以帮助您巩固所学内容。
LG1-1:讨论软件架构的定义 o 对软件架构的几种定义进行比较,并识别它们的相似之处。 o 理解软件架构的术语和定义 o 软件架构不是解决方案,而是解决方案的设计和描述。
LG1-2:理解和识别软件架构的好处和目标 o 软件架构更侧重于耐用性、可维护性、可变更性和健壮性等质量属性,而非纯粹的功能。 o 软件架构支持软件等创建、维护和实施。 o 软件架构支持质量要求的实现。 o 软件架构支持所有利益相关者对系统的理解。
LG1-3:把软件架构理解为软件生命周期的一部分 o 理解与信息系统的业务和操作流程的相关性 o 理解与决策支持系统(数据仓库,管理信息系统)的业务和运营流程等相关性 o 理解需求、质量目标、技术或系统环境的变化可能需要对软件架构进行更改
LG1-4:了解软件架构师的任务和职责 o 软件架构师负责实现解决方案所需的或必要的质量和功能。根据所使用的方法或过程模型,他们必须使这一职责与项目管理和/或其他角色的总体职责保持一致。 o 软件架构师澄清和质疑需求与约束,并在必要时进行完善。这包括所需的质量属性(所需的约束)以及功能需求(所需的功能)。 o 软件架构师决定如何将系统分解为构建块,同时确定构建块之间的依赖关系和接口。 o 软件架构师确定并决定横切的技术问题(如持久性、通信、图形用户界面等)。 o 软件架构师基于视图、架构模式和技术概念进行软件架构的沟通和文档记录。 o 软件架构师伴随架构的实现和实施;如有必要,他们将相关利益相关者的反馈整合到架构中;他们审查并确保源代码和软件架构的一致性。 o 软件架构师评估软件架构,特别是关于所需质量特征的风险。 o 软件架构师有责任识别并强调架构决策的后果,并与其他利益相关者讨论。他们的角色包括认识到所有任务中迭代的必要性,并指出提供相关反馈的机会。
LG1-5:将软件架构师的角色与其他利益相关者联系起来 o 软件架构师能够解释他们的角色。他们应该根据特定的上下文和与其他利益相关者的关系调整他们对软件开发的贡献,特别是对于: 需求分析(系统分析、需求管理、专业领域) 实现 项目领导和管理 产品管理/产品负责人 质量保证 IT运营(生产、数据中心)。这主要适用于信息系统。 硬件开发
LG1-6:能够解释开发方法和软件架构之间的相关性 o 软件架构师能够解释迭代方法对架构决策的影响(特别是关于风险和可预测性)。 o 由于固有的不确定性,软件架构师经常需要迭代地工作和决策。为此,他们必须系统地寻求其他利益相关者的反馈。
LG1-7:区分架构和项目目标 o 系统可以在项目、Scrum 冲刺、迭代、发布或其他方法中进行开发。上述“项目”一词指的是任何这些工作组织的方法。 o 软件架构师应该能够展示架构目标、约束和影响因素对软件架构设计的重要性。 o 他们可以解释需求和解决方案之间的联系。 o 他们可以根据现有需求识别和指定架构目标。 o 他们可以解释(长期)架构目标以及这些目标与(短期)项目目标之间的区别。
LG1-8:区分显式声明和隐式的假设 o 软件架构师应该明确地提出假设或先决条件,避免隐含的假设。他们知道,隐含的假设可能会导致利益相关者之间的误解。
LG1-9:了解软件架构师在组织环境中的角色和责任 o 软件架构师了解其他架构级别,例如基础设施架构、硬件架构、软件架构、企业IT架构和业务流程架构。
LG1-10:理解不同类型IT系统之间的差异 o 软件架构师能够区分不同类型 IT 系统的软件架构需求和方法。 1AD =架构描述
Last updated