博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
系统架构师秘籍(三)建筑学的角度和关注
阅读量:4624 次
发布时间:2019-06-09

本文共 1240 字,大约阅读时间需要 4 分钟。

        最后博文,我们引入软件体系结构的基本概念,接下来,我们将介绍如何构建一个软件系统。

        当我们開始进行系统架构设计的时候。一般会考虑下面几点:

                所设计的软件体系结构的主要功能要素是什么。

                怎样将这些要素与其它系统关联。

                哪些信息须要存储、管理和展示。

                要实现这些功能要素须要什么硬件和软件。
                所设计的软件体系结构提供什么样的特性和能力。

                开发、測试、支持、培训环境都须要做什么。

        考虑上述问题的时候,我们从哪些层面来考虑呢?那就是架构视角和关注点两个层面。

架构视角

        架构视角是从一个或多个角度对软件体系架构的各个方面进行关注。它反映了软件体系架构的一个或多个利益相关者的不同关注层面。

        要确定一个架构视角通常我们能够从下面几个方面进行关注:

        1、利益相关者关注会关注软件体系结构的哪些层面。这里的利益相关者能够划分为一类或一个群体。针对这类成员我们能够从他们的兴趣和专业知识水平进行分析。
        2、这些利益相关者拥有多少专业的知识和理解力。比如,不同领域的用户尽管不大可能对硬件和软件有太多的了解,但他们对本领域内的知识和业务是很清楚的。
        3、不同的利益相关者可能的关注点不尽同样,而我们要做的就是尽量迎合这些不同利益相关者的关注点,比如,他们关注的软件体系结构的背景等等。

        4、对于这些利益相关者,他们并不须要关心过多的体系结构。所以划分出哪些他们须要关注的,对于非技术性的内容。他们很多其它的关注的是我们是否能保证按时完毕。

        对于架构师。当我们进行架构描写叙述的时候,过多的技术细节会使利益相关者不堪重负,可是技术太少。又会给我们的利益相关者造成一些担忧,所以挑选适当的技术细节对于架构描写叙述来讲很重要。

关注点

        作为一个架构师,站在系统的角度挑选一个合适的关注点进行架构描写叙述是很不easy的。值得庆幸的是,如今我们不再须要这么做了。在Kruchten对架构师所须要关注的四个关注点:逻辑、物理、流程、扩展进行的介绍中,我们能够使用一整套现成的模版库和模式进行创作和架构了。

        一个关注点就是创建一系列的模板,构建一系列的视图和约定,它反映了架构师的观点和方针,利益相关者的关注点以及架构本身的组成部分。架构所反映的关注点可以反映一个架构的相关内容,同一时候又可以作为同类型的架构创建和架构描写叙述。

        定义一种标准的方法。一个标准的语言。用来描写叙述软件体系的不同层面和不同的模型,让利益相关者可以理解不论什么的架构描写叙述。这样一旦利益相关者熟悉了这些标准,这对于架构一个软件体系结构来说是很有吸引力的。虽然在实践中。我们还没有达到这样的目标。可是我们已经创建除了一些可以被普遍接受的软件体系模型和约定,比如:实体关系模型、UML等这类被广泛接受的语言。

        到现在为止,我们已经的一个大致的了解。作为一个建筑师。我们要考虑什么,但是,这是不够,接下来,我们继续讲解其他内容。

转载于:https://www.cnblogs.com/blfshiye/p/4686876.html

你可能感兴趣的文章
C++学习之字符串
查看>>
图像化列表
查看>>
2014年10月9日——语言基础2
查看>>
How to Create Modifiers Using the API QP_MODIFIERS_PUB.PROCESS_MODIFIERS
查看>>
待飞笔记(第一天 )
查看>>
解惑好文:移动端H5页面高清多屏适配方案
查看>>
traefik添加多证书
查看>>
忽略UserInterfaceState.xcuserstate
查看>>
ReactNative--Flexbox布局
查看>>
java实现读取文件大全
查看>>
[Cordova] 无法显示Alert视窗
查看>>
借助过度区选择阈值
查看>>
评论列表显示及排序,个人中心显示
查看>>
JavaWeb学习笔记总结 目录篇
查看>>
C#根据html生成PDF
查看>>
Neutron SDN 手动实现手册
查看>>
linux下core文件调试方法
查看>>
20个创意404错误页面设计的启示
查看>>
基础训练 芯片测试
查看>>
如何用命令将本地项目上传到git
查看>>