软件设计与体系结构知识总结——第三章 The Many Contexts of Software Architecture

目录

0.前言

1.与架构有关的一些背景Some contexts with architecture

2.Technical Context

3.项目生命周期背景下的体系结构设计

4.业务背景下的架构Architecture in a Business Context

5.建筑师的背景和经验Architects’ Background and Experience

6.涉众Stakeholder (customer\end users\developers\project manager)

7.How is architecture influenced


0.前言

        本系列文章旨在软件设计与体系结构的知识点,资料来源四川大学授课内容,可用于期末复习,笔者理解尚浅,文中不正之处静待批正。加粗部分为重点。

第三章整体框架

1.与架构有关的一些背景Some contexts with architecture

Technical、Project life cycle、Business、Professional

2.Technical Context

技术环境Technical Context是影响体系结构实现系统质量属性的首要因素

①质量属性影响体系结构

架构会抑制或促进系统质量属性的实现

②技术环境Technical Environment

Today’s technical environment:Web\Object-oriented\Mobility-aware移动感知\Cloud-based\Internet of things\Block chain\AI\VR\Quantum computing量子计算

3.项目生命周期背景下的体系结构设计

体系结构与开发development流程process和开发活动activity有关

四种主流软件开发流程:

①Waterfall瀑布开发

②Iterative迭代

软件开发是一系列短周期的步骤,这些周期称为迭代

③Agile敏捷开发

核心:collaboration, simple, feedback, courage

所有敏捷开发方法都假定需求总是在变化,避免大量的前期工作

敏捷开发的特征:尽早、频繁地交付软件;开发人员与客户之间密切协作;自我组织团队;注重适应变化

④Model-driven development模型驱动开发

模型驱动开发基于这样一种理念,即人类不应该用编程语言编写代码

⑤The relationship between architecture and process

开发活动:

  • Making a business case
  • Understanding the requirement
  • Creating or selecting the architecture(principle)
  • Documenting the architecture
  • Analyzing or evaluating the architecture
  • Implementing and testing system  based on the architecture
  • Ensuring the implementation conforms to  the architecture

4.业务背景下的架构Architecture in a Business Context

①架构和业务目标Architecture and business goal

系统的创建是为了满足一个或多个组织的业务目标

②架构和开发组织Architecture and Development Organization

组织对影响架构的业务目标的影响,不同组织开发不同质量的产品

5.建筑师的背景和经验Architects’ Background and Experience

6.涉众Stakeholder (customer\end users\developers\project manager)

利益相关者是指对软件系统感兴趣的人

①利益相关者有不同的关切

建筑师:负责架构及其文件的开发

关心:在相互竞争的需求和设计方法之间进行协商和权衡。提供架构满足其要求的证据

业务经理:对拥有系统的业务/组织实体的运作负责

关心:了解架构实现业务目标的能力

客户:支付系统费用并确保系统交付。客户通常代表最终用户或为其代言

关心:确保交付所需的功能和质量;衡量进度;估算成本

用户:系统的实际最终用户。用户可分为不同类型,如管理员

关心:使用架构文档检查是否提供了所需的功能和质量

实施者:负责根据设计、要求和架构开发特定元素

关心:了解发展活动中不可侵犯的限制和可利用的自由

7.How is architecture influenced

8.What Do Architectures Influence体系结构也能反过来影响他们

①Technical context

架构可以影响利益相关者对下一个系统的要求,让客户有机会以更可靠、更及时和更经济的方式获得系统

②Project Context

架构影响开发组织的结构;架构规定了作为开发项目结构基础的软件单元

③Business Context

根据架构建立的成功系统可使公司在特定市场领域站稳脚跟;架构可为高效生产和部署类似系统提供机会

④Professional Context

一个成功构建的系统会在未来产生类似的系统;另一方面,失败的架构不太可能在未来的项目中被选用;无论如何,无论成功与否,构建一个系统都会丰富建筑师的经验

⑤Architecture Influence Cycle

受环境和反馈机制影响的架构称为架构影响周期(AIC

  • 31
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五倍子的代码空间

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值