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

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

问:为什么要编写软件架构文档,它的优点是什么?

答:

有文档的架构有助于不同利益相关者之间进行有效的沟通。

有文档的架构能够提供追溯其它工作产品的上下文。

有文档的架构能够传达可供选择的架构解决方式。

有文档的架构有助于从一个现有架构转换到一个新架构计划的计划编制。

有文档的架构通常能通过识别组成架构的元素及它们之间的依赖性来帮助编制计划。

有文档的架构能够提醒架构师在其所作的某些决定背后的基本原理。

有文档的架构有助于识别哪些资源可重用以及可重用的时机。

有文档的架构有助于架构的评估。

问:编写软件架构文档的步骤是什么?

答:

识别利益相关者组。

选择视点。

创建工作产品。

给架构描写叙述打包。

问:编写软件架构文档的视点有哪些?

答:

视点分为两类,各自是基础视点和交叉视点。当中基本视点的类型有四种,分别为:

(1)功能性视点:它关注支持系统功能性的元素。

(2)部署视点:它关注支持系统分布的元素。

(3)需求视点:为形成架构的系统需求提供说明,它包含功能性需求、品质和约束。

(4)确认视点:为系统提供必需的功能、展示必需的品质和适应定义的约束提供说明。

交叉视点是从某一特定功能的视点出发,与基础视点交叉综合关注的元素,下图为一交叉视点的样例。

问:软件架构通常要描写叙述框架,应该从哪些角度去描写叙述?

答:

多重视图和场景视图的使用。

实现层级。

交叉关注。

问:软件架构的4+1视图模型是什么?

答:

软件架构的4+1视图是指逻辑视图、开发视图、过程视图、物理视图和场景(视图)。

逻辑视图是设计的对象模型。

过程视图获取设计的并发和同步方面的信息。

开发视图描写叙述的是软件开发环境中的软件静态组织。

物理视图描写叙述了软件与硬件之间的映射,还反映了它在分布式方面的信息

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

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

时间: 2024-11-19 14:41:50

向架构师进军--->怎样编写软件架构文档的相关文章

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

如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 问:为什么要编写软件架构文档,它的好处是什么? 答: 有文档的架构有助于不同利益相关者之间进行有效的沟通. 有文档的架构可以提供追溯其他工作产品的上下文. 有文档的架构可以传达可供选择的架构解决方案. 有文档的架构有助于从一个现有架构转换到一个新架构计划的计划编制. 有文档的架构通常能通过识别组成架构的元素及它们之间的依赖性来帮助编制计划. 有文档的架构可以提醒架构师在其所作的某些决定背后的

你离 精通微服务 只差一个阿里资深架构师整理的微服务实战文档

前言 什么是微服务 在介绍微服务时,首先得先理解什么是微服务,顾名思义,微服务得从两个方面去理解,什么是"微".什么是"服务", 微,狭义来讲就是体积小.著名的"2 pizza 团队"很好的诠释了这一解释(2 pizza 团队最早是亚马逊 CEO Bezos提出来的,意思是说单个服务的设计,所有参与人从设计.开发.测试.运维所有人加起来 只需要2个披萨就够了 ). 而所谓服务,一定要区别于系统,服务一个或者一组相对较小且独立的功能单元,是用户可以

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

假设你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",增加这个PM.架构师的大家庭 在解说系统架构设计之前,有必要补充一下架构相关的概念,因此本博文主要讲述架构.架构师和架构设计等相关的概念以及关系.这是系统架构设计的基础,仅仅有具备了此方面的知识之后,我们才干进一步了解架构师在软件开发过程中扮演的角色,架构师怎样编写架构文档来满足不同利益相关者的需求等相关内容. 如今我们通过定义的概念来了解架构设计中的一些相关术语. 架构:架构是体如今它的组件中的一个系统的基本组织.它们

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

如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 在讲解系统架构设计之前,有必要补充一下架构相关的概念,因此本博文主要讲述架构.架构师和架构设计等相关的概念以及关系.这是系统架构设计的基础,只有具备了此方面的知识之后,我们才能进一步了解架构师在软件开发过程中扮演的角色,架构师如何编写架构文档来满足不同利益相关者的需求等相关内容. 现在我们通过定义的概念来了解架构设计中的一些相关术语. 架构:架构是体现在它的组件中的一个系统的基本组织.它们彼

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

如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 软件架构有三个主要来源:拿取.方法以及直觉.拿取也就是可重用资源.对于一个标准的系统而言,可能包含80%的拿取.19%的方法和1%的直觉.而崭新的系统则包含30%的拿取.50%的方法和20%的直觉.由此可见,拿取在软件架构中的重要性,本节我来带领大家了解可重用架构资源. 一个可重用资源可以代表一个可重用需求(在不同系统里反复出现的需求).可重用的解决方案元素(一个架构模式或者可重用代码).可

系统架构师秘籍(二)软件架构- 续

上次的文章中,我们简单描述了一下软件架构的概念,接下来我们描述一下软件架构中的具体细节. 软件架构 所谓软件元素,即指组成软件系统的一个最基本的模块.一个软件元素的特性在很大程度上取决于系统的类型,以及你考虑和选取软件元素的背景和关注点.程序Lib库,子系统,可部署的颗粒或者控件(如企业级Java Bean,ActiveX 控件等),可重用的软件产品(如数据库管理系统),全部的应用程序都可以称为一个软件系统的软件元素,它取决于软件系统的构建. 一个软件元素所拥有的特点如下: 一个明确的界定的责任

系统架构师秘籍(一)软件架构

当我们在讨论软件系统架构的一些概念的时候,经常会借助一些其他学科(如造船.建筑等)的概念进行描述.例如当我们讨论"架构"这个概念的时候,我们就会借助微处理器的内部结构.机器的内部结构.组织网络.软件架构和其他许多东西进行对比和理解.今天主要介绍一下软件架构.架构元素.架构描述和一些其他相关内容. 什么是软件架构 在现在社会中到处都可以看到计算机的身影,不仅仅是数据中心的桌面上,甚至在汽车.洗衣机和信用卡上.这些计算机无论体积大或小.结构简单或者复杂,所有的计算机都是由三个基本组成部分:

办公室日常管理信息系统 软件架构文档

大三下学期,我们学习的软件工程这门课的课程设计,主要是针对一个管理系统,从需求分析到概要设计再到详细设计,还好,不要求写代码. 下面是我做的办公室日常信息管理系统的设计. 软件架构文档 1. 介绍 1.1 目的 这篇文档提供了对办公室日常信息管理系统架构的总揽,从不同的视角描述了该系统.包含架构分析的关键决策,目的在于帮助开发人员理解办公室日常信息管理系统的基本结构,系统的功能和非功能的需求. 1.2 范围 介绍了办公室日常信息管理系统的登录系统.注册系统.会议管理系统.文件管理系统.考勤系统和

[API]使用Blueprint来高雅的编写接口文档

Blueprint(http://apiary.io/)是apiary公司的工具包,用来编写API文档,类似于Markdown,是一种标记语言. 对于习惯使用RESTful API的同志们来说,使用Blueprint可以快速的写出高雅大气的文档: 下面以一个Github中的Gist服务为例,简单的演示一下Blueprint的应用. 原文地址:http://blog.callmewhy.com/2014/06/05/blueprint-tutorial/ API Blueprint是一套API描述