假设你对项目管理、系统架构有兴趣,请加微信订阅号“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. 解析ASP.NET Mvc开发之删除修改数据

    目录: 1)从明源动力到创新工场这一路走来 2)解析ASP.NET WebForm和Mvc开发的区别 3)解析ASP.NET Mvc开发之查询数据实例 4)解析ASP.NET Mvc开发之EF延迟加载 ...

  2. git配合tortoiseGit的基础使用

    转载自:http://www.cnblogs.com/ssor/archive/2012/02/04/2337823.html 一定要自己写出来才能牢记,所以我来写一下 git确实比svn好用的多了, ...

  3. Controller.RedirectToAction 方法

    此成员被重载.有关此成员的完整信息,包括语法.用法和示例,请单击重载列表中的名称.

  4. Go与Docker的几本书的作者

    http://thenewstack.io/ebookseries/http://thenewstack.io/building-a-web-server-in-go/

  5. DataReader的例子

    前: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DataReader对 ...

  6. MySQL root密码重置报错:mysqladmin: connect to server at 'localhost' failed的解决方案!

    -- ==================================================================== --  mysqladmin: connect to s ...

  7. Android 进程和线程

    进程和线程 如果某个应用程序组件是第一次被启动,且这时应用程序也没有其他组件在运行,则Android系统会为应用程序创建一个包含单个线程的linux进程.默认情况下,同一个应用程序的所有组件都运行在同 ...

  8. 为了肾六(dp)

    为了肾六 时间限制:4000 ms  |  内存限制:210535 KB 难度:2   描述 最近肾六很流行,goshawk看身边的朋友都用上了apple.自己还用着W年前的Samsung.于是决定去 ...

  9. if else配对问题

    else语句总是与离它最近的if语句配对,所以在if语句的嵌套中一定要注意else语句与哪个if语句匹配 #include <iostream> using namespace std; ...

  10. python中enumerate 函数

    enumerate 函数用于遍历序列中的元素以及它们的下标: >>> for i,j in enumerate(('a','b','c')):  print i,j 0 a 1 b ...