假设你对项目管理、系统架构有兴趣,请加微信订阅号“softjg”,增加这个PM、架构师的大家庭

在解说系统架构设计之前,有必要补充一下架构相关的概念,因此本博文主要讲述架构、架构师和架构设计等相关的概念以及关系。这是系统架构设计的基础,仅仅有具备了此方面的知识之后,我们才干进一步了解架构师在软件开发过程中扮演的角色,架构师怎样编写架构文档来满足不同利益相关者的需求等相关内容。

如今我们通过定义的概念来了解架构设计中的一些相关术语。

架构:架构是体如今它的组件中的一个系统的基本组织、它们彼此的关系、与环境的关系及指导它的设计和发展的原则。

系统:系统是组织起来完毕某一特定功能或一组功能的组件集。系统包含了单独的应用程序、传统意义上的系统、子系统、系统之系统、产品线、产品组、整个企业及感兴趣的其它集合。

架构设计:一个架构的定义、文档编写、维护、改进和验证正确实现的活动。

架构描写叙述:描写叙述一个架构的文档集。

架构机制:对常常遇到的问题的共同的详细解决方式。

架构决策:关于一个软件系统总体或它的一个或多个核心组件的刻意设计决策。这些决策决定非功能性特性和质量指标。

企业架构:当与业务战略和信息需求保持一致时,指导与将来的业务方向保持一致的解决方式的选择、创建和实现的一组原则、指导、政策、模型、标准和流程。

通过以上定义,我们了解了架构中的一些相关概念,通过这些概念,我们可以更好的理解什么是架构、什么是架构、架构师在架构决策中的作用是什么,然后我们以一幅图来具体解释架构、架构师和架构设计之间的关系。

关于架构的描写叙述:

架构定义组件的结构,同一时候还定义这些组件之间的交互。比方在一个订单管理系统中,我们有客户组件、账户管理组件、订单实体组件等,我们能够通过时序图来定义这些组件之间的调用过程(交互)。架构尽管定义结构和行为,可是它不关注定义全部的结构和行为。它仅仅关注被觉得很重要的元素。

架构的特点:

架构必须平衡利益相关者的须要。

架构基于合理证据使决策详细化。

架构会遵循一种架构风格。

架构受它的环境影响。

架构影响开发团队的结构。

关于架构师的说法:

架构师是负责系统架构的人、团队或组织。

架构师的特点:

架构师是技术领导。

架构师的角色可能由一个团队来履行。

架构师理解软件开发流程。

架构师掌握业务领域的知识。

架构师掌握技术知识。

架构师掌握设计技能。

架构师具备编程技能。

架构师是优秀的沟通人员。

架构师进行决策。

架构师知道组织政策。

架构师是谈判专家。

关于架构设计的事

定义见上面。

架构设计的长处:

架构设计解决系统的质量问题。

架构设计促进达成共识。

架构设计支持计划编制流程。

架构设计促进架构的完整性。

架构设计有助于管理复杂性。

架构设计为重用提供基础。

架构设计减少维护成本。

架构设计支持影响分析。

本文仅仅是粗枝大叶的介绍了架构设计中的相关概念及特点,这是我们向架构进军的一个前提,如你想了解很多其它架构设计方面的知识,请持续关注本站,O(∩_∩)O谢谢!

假设你对项目管理、系统架构有兴趣,请加微信订阅号“softjg”,增加这个PM、架构师的大家庭

向架构师进军--->系统架构设计基础知识的更多相关文章

  1. 向架构师进军--->系统架构设计基础知识

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 在讲解系统架构设计之前,有必要补充一下架构相关的概念,因此本博文主要讲述架构.架构师 ...

  2. WEB架构师成长之路-架构师都要懂哪些知识 转

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  3. WEB架构师成长之路之三-架构师都要懂哪些知识

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

  4. 架构师之路->架构师思维的培养

    公司的CMS(综合赋码管理系统)是WINFORM的CS架构.这套系统的架构师换了3届,到现在已经几年没有架构师了.本来入职时,岗位目标就是这个“自动化架构师”. 后来和领导达成共识先争取成为储备架构师 ...

  5. 向架构师进军-->可重用架构资源

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 软件架构有三个主要来源:拿取.方法以及直觉.拿取也就是可重用资源.对于一个标准的系统 ...

  6. 向架构师进军--->如何编写软件架构文档

    如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 问:为什么要编写软件架构文档,它的好处是什么? 答: 有文档的架构有助于不同利益相关 ...

  7. 向架构师进军--->怎样编写软件架构文档

    假设你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",增加这个PM.架构师的大家庭 问:为什么要编写软件架构文档,它的优点是什么? 答: 有文档的架构有助于不同利益相关 ...

  8. 新零售SaaS架构:商品系统架构设计

    SaaS产品就像一座冰山,冰山以上的部分是功能.数据(可见部分).用户界面,冰山以下是系统架构.完整的数据模型.开放体系.非功能性需求(扩展性.可维护性.性能.安全等). 短期内想要快速上线产品,可能 ...

  9. 架构师技能树skill-map

    # 架构师技能树 ## 系统架构能力 ### 基本理论- 扩展性设计- 可用性设计- 可靠性设计- 一致性设计- 负载均衡设计- 过载保护设计 ### 协议设计- 二进制协议- 文本协议 ### 接入 ...

随机推荐

  1. Mybatis 逆向工程

    Mybatis逆向工程: 推荐用Java和XML Configuration的方式生成逆向文件 Java类: package generation; import java.io.File; impo ...

  2. OpenSSL命令---rsa

    用途: Rsa命令用于处理RSA密钥.格式转换和打印信息.其实其用法和dsa的差不多. 用法: openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET| ...

  3. Apache+php+mysql+phpadmin搭建

    一,准备工具. httpd-2.4.12-win32-VC9.zip php-5.4.40-Win32-VC9-x86.zip phpMyAdmin-4.2.13.2-all-languages my ...

  4. What is Webhook ( Introduction to Webhook )

    A webhook in web development is a method of augmenting or altering the behavior of a web page, or we ...

  5. 转:30分钟掌握STL

    三十分钟掌握STL 这是本小人书.原名是<using stl>,不知道是谁写的.不过我倒觉得很有趣,所以化了两个晚上把它翻译出来.我没有对翻译出来的内容校验过.如果你没法在三十分钟内觉得有 ...

  6. 链接分析算法之:HITS算法

    链接分析算法之:HITS算法     HITS(HITS(Hyperlink - Induced Topic Search) ) 算法是由康奈尔大学( Cornell University ) 的Jo ...

  7. 文本图片自适应高度小bug以及解决办法

    自定义cell的文本图片自适应高度代码,如果存在自定义的cell赋值封装,就必须将自适应高度代码写在这个方法中 点击效果: 注:- (void)layoutSubviews 方法不能同时操作,否则会出 ...

  8. 从零开始学C++之IO流类库(三):文件的读写、二进制文件的读写、文件随机读写

    一.文件的读写 如前面所提,流的读写主要有<<, >>, get, put, read, write 等操作,ofstream 继承自ostream, ifstream 继承自 ...

  9. SQL常用语句集合(不断更新)

    1.多条件 查询 上下级 所有数据 select * from OrgUnit where (ParentId = '3' or OrgId='3' or ParentId in (select Or ...

  10. C语言结构体变量内存分配与地址对齐

    地址对齐简单来说就是为了提高访问内存的速度. 数组的地址分配比较简单,由于数据类型相同,地址对齐是一件自然而然的事情. 结构体由于存在不同基本数据类型的组合,所以地址对齐存在不同情况,但总体来说有以下 ...