架构师如何做好需求分析

架构师如何做好需求分析

  • 目录
    • 概述
      • 需求:
    • 设计思路
    • 实现思路分析
      • 1.主要步骤
    • 2.主要步骤2
      • 操作步骤
  • 参考资料和推荐阅读

Survive by day and develop by night.
talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,challenge Survive.
happy for hardess to solve denpendies.

目录

在这里插入图片描述

概述

架构师如何做好需求分析是一个重要的问题

需求:

设计思路

实现思路分析

1.主要步骤

作为一名架构师,需求分析是其工作中非常重要的一环。以下是一些关键步骤,可以帮助架构师做好需求分析:

  1. 明确需求背景:从客户或业务方了解需求的背景,了解业务目标、问题和挑战。

  2. 深入了解用户需求:通过各种方法促进与最终用户的互动,例如需求调研、问卷调查、用户访谈等,以了解用户需求和期望。这里主要是开会等。

  3. 分析技术需求:技术需求是需求分析中的一个关键方面。架构师应该评估技术要求的复杂性和可行性,并将其纳入总体设计。

  4. 定义功能和系统:确定系统的功能和实现方式,包括与用户交互的界面和交互模式,以及系统的整体架构。

  5. 确定关键业务流程:关键业务流程的定义和分析,有助于架构师更好地理解客户的需求,制定更好的解决方案。

  6. 识别风险和问题:识别需求中的潜在风险和问题,并制定相应的解决方案。

  7. 撰写需求文档:将需求分析的结果和解决方案文档化,并与客户或业务方进行确认。

总之,对于架构师而言,一个好的需求分析过程可以帮助其更好地理解客户需求,制定更好的解决方案,提高项目成功的可能性。

2.主要步骤2

1:理解业务,要准确、全面、深入

这是需求分析阶段最最重要的工作。

准确的意思就是:对每个功能点的理解,要没有歧义,不可再分。

如果一个功能点,不同的人有不同的理解,这就是有歧义;另外这个功能点,里面还有很多小功能点,是可以再分的,这也是不行的。

可惜咱们在需求文档里,看过太多这样的坑,往往一两句话,就一笔带过好大一个功能块,最后为了填坑,多耗费出上月的人力和时间。

因此,架构师在做需求分析的时候,对每一个功能点,一定要准确,要求理解到没有歧义,不可再分,基本要到最细粒度的操作,比如:新增、修改这样的功能。

2:识别重难点业务

这个算是架构师的一个基本功,拿到需求后,架构师要能识别出里面的重难点业务,对它们的分析和设计,可能会影响到后面的技术选型和具体的架构设计。

毕竟,软件只是工具,是用来帮助实现业务活动的工具;而架构设计是为软件服务的,是为了更好的开发和制作软件这个工具。

因此,对于重难点业务的把握,可能直接决定了架构设计的成败,一定要非常重视。

3:识别非功能需求和质量约束

非功能需求:就是出去业务功能需求之外的需求,通常也是软件质量约束的一部分,比如对系统:性能的要求、可靠性的要求、可扩展性要求、可维护性要求、安全要求、备份恢复的要求等等。

这些要求对于架构设计的影响是非常大的,很多都是架构设计要重点考虑的问题,比如:性能、可靠性、可扩展等等。

4:业务架构

这个通常是以产品人员设计的业务架构为主,但技术架构师需要在准确、深入理解的基础之上,按照技术人员能理解的方式,对业务架构进行微调,输出一个技术落地实现的业务架构。

操作步骤

要做好需求分析,架构师需要采取以下几个步骤:

  1. 与客户沟通,明确需求:架构师需要与客户进行充分沟通,理解客户的需求和期望,并将其转化为可操作的需求文档。

  2. 创造性思维,提出建议:架构师需要运用自己的专业知识和技能,提出合理的解决方案,并与客户商讨。同时,也要注意考虑到未来的扩展和变化。

  3. 确定需求优先级:架构师应该根据客户需求的紧急程度,安排相应的优先级,以便更好地管理和规划项目。

  4. 分析技术限制和风险:架构师需要考虑到技术限制和风险,以便更好地规划和推进项目。同时,也需要根据客户需求的不同,分析各种技术方案的优劣,并做出合理的决策。

  5. 跟踪需求变化:需求是随时变化的,架构师需要时刻跟踪需求变化,并针对不同的变化制定相应的计划和方案,以保证项目能够顺利完成。

参考资料和推荐阅读

参考资料
官方文档
开源社区
博客文章

  1. https://baijiahao.baidu.com/s?id=1710123952341087577&wfr=spider&for=pc
  2. https://baijiahao.baidu.com/s?id=1710123952341087577&wfr=spider&for=pc
    3.https://cloud.tencent.com/developer/article/2190085?areaSource=102001.8&traceId=qYvIhZutxfP8HRfRVquhr
    书籍推荐

欢迎阅读,各位老铁,如果对你有帮助,点个赞加个关注呗!同时,期望各位大佬的批评指正~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/123239.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Fiddler安装与使用教程(2) —— 软测大玩家

😏作者简介:博主是一位测试管理者,同时也是一名对外企业兼职讲师。 📡主页地址:【Austin_zhai】 🙆目的与景愿:旨在于能帮助更多的测试行业人员提升软硬技能,分享行业相关最新信息。…

数据结构例题代码及其讲解-递归与树

树 ​ 树的很多题目中都包含递归的思想 递归 递归包括递归边界以及递归式 即:往下递,往上归 递归写法的特点:写起来代码较短,但是时间复杂度较高 01 利用递归求解 n 的阶乘。 int Func(int n) {if (n 0) {return 1;}else …

码云使用记录

码云使用记录 主要步骤 1、https://gitee.com 注册 2、下载Git 3、配置SSH 4、创建远程仓库 5、切到本地项目目录下将本地项目推到远程 前两步根据提示进行即可,下面从第三步开始讲解 3、配置SSH(用于提交代码和更新代码) https://gitee.…

行人属性识别数据集PA100K介绍

本文介绍pa100k数据集,是从GitHub上paddleCLA工程中提供的路径下载,针对该数据集进行介绍: 01 - 图像信息 训练集 - 80000张图像验证集 - 10000张图像测试集 - 10000张图像 02 - 标签信息 属性1:有无帽子 - [0] 属性2&#xf…

CP Autosar-Ethernet配置

文章目录 前言一、Eth层级结构介绍二、Autosar实践2.1 ETH Driver2.2 Eth InterfaceEth Interface Autosar配置2.3 TcpIp模块Eth TcpIp Autosar配置2.4 SoAdEth SoAd配置前言 因汽车E/E架构和功能的复杂度提升而带来的对车辆数据传输带宽提高和通讯方式改变(基于服务的通讯-S…

London Dock丨伦敦一区的房产明星,拥揽泰晤士河美景,尽享都市奢华生活

生活在伦敦一区,似乎就意味跻身上流阶层 皆是精英环绕,也为下一代创造了极好的社区氛围 所谓“一方水土养一方人”,泰晤士河穿过的伦敦 也孕育着伦敦人的礼貌绅士与严谨认真。 河流,是城市发展的源头。 源远流长的塞纳河&…

Text文件在MATLAB中读写示例基础

背景 为了便于和外部程序进行交换,以及查看文件中的数据,也常常采用文本数据格式与外界交换数据。在文本格式中,数据采用ASCII码格式,可以使用字母和数字字符。可以在文本编辑器中查看和编辑ASCII文本数据。MATLAB提供了导入函数…

spring boot项目上传头像

应用还是验证码使用的原理;但是代码逻辑却有所不同。 逻辑前端传给后端,然后写入本机磁盘去,文件名用uuid避免重复。写完就可以顺带把文件名保存到数据库里。上传就这样子。 怎么取用的;还是通过配置映射的方式;通过sr…

Vue3【Provide/Inject】

前言 自从使用了Provide/Inject代码的组织方式更加灵活了,但是这个灵活性的增加伴随着代码容错性的降低。我相信只要是真的在项目中引入Provide/Inject的同学,一定一定有过或者正在经历下面的状况: 注入名(Injection key&#x…

Ubuntu 22.04 桌面美化成Mac风格

安装插件 sudo apt install gnome-tweaks gnome-shell-extensions -y安装完成后在应用中可以搜索到一个名为(tweaks/优化)的应用。 下载安装主题、图标 主题 git clone https://github.com/vinceliuice/WhiteSur-gtk-theme.git cd WhiteSur-gtk-them…

iOS开发Swift-9-SFSymbols,页面跳转,view屏幕比例,启动页-和风天气AppUI

1.创建项目 2.设置好测试机型,App显示名称,以及关闭横向展示. 3.下载SF Symbols. https://developer.apple.com/sf-symbols/ 右上角搜索 search ,可以找到很多系统自带图标.选择喜欢的图标,拷贝图标的名字. 插入一个Button,在Image中粘贴图标名称并选择,即可将Button变成想要的…

Kafka3.0.0版本——文件存储机制

这里写木目录标题 一、Topic 数据的存储机制1.1、Topic 数据的存储机制的概述1.2、Topic 数据的存储机制的图解1.3、Topic 数据的存储机制的文件解释 二、Topic数据的存储位置示例 一、Topic 数据的存储机制 1.1、Topic 数据的存储机制的概述 Topic是逻辑上的概念&#xff0c…

Verilog 代码规范

搬自https://hitsz-cslab.gitee.io/cpu/home/codingstyle/ 1. 标题命名规范 1.1 标题文件命名规范 仿真文件应使用后缀“_sim”,如modulename_sim; 测试文件应使用后缀“_tb”,如modulename_tb。 1.2 模块命名规范 一个文件只定义一个m…

CPU及并发

2.9G Hz,即每秒进行2.9G次运算(即29亿次) 几个命令 us: 用户使用的cpu sy: 系统(内核)使用的cpu id: idle,即空闲cpu wa: 等待I/O的cpu st: 开虚拟机后会有的一个指标,即虚拟机的cpu使用率 一个进程拥有一整套虚拟地址空间,该进程的所有线程都共享该地址空间. 线程是CPU运算的最…

ZYNQ上的简单 FSK 基带发射器

绪论 由于某种需求需要生成正弦波,因此使用 C 应用程序中的sin()函数来计算单位圆的幅度值,然后将该幅度值转换为 AD9717 的适当 DAC 代码(当然将每个角度值转换为弧度)。 能够使用DAC生成简单的正弦波,下一个想法就是…

QT QToolBox控件使用详解

本文详细的介绍了QToolBox控件的各种操作,例如:新建界面、添加页签、索引设置当前项、获取当前项的索引、获取当前项窗口、获取索引值是int的窗口、移除索引值项、获取项的数量、获取指定索引值、设置索引项是否激活、获取索引值项是否激活、设置项的图标…

vue+antd——table组件实现动态列+表头下拉选择功能——技能提升

Table 表格 展示行列数据。 何时使用 当有大量结构化的数据需要展现时; 当需要对数据进行排序、搜索、分页、自定义操作等复杂行为时。 最近在写vueantd的框架,遇到一个需求:就是要实现table表格的动态列,并且相应的表头要实现下拉…

el-date-picker 禁止选择当前年之前或者之后的年份

<el-date-picker v-model"ruleForm.years" type"year" :disabled-date"pickerOptions"placeholder"请选择获奖年度" class"wih-650p" value-format"YYYY" />之前 const disabledDateFun (time: any) >…

用户案例 | 蜀海供应链基于 Apache DolphinScheduler 的数据表血缘探索与跨大版本升级经验

导读 蜀海供应链是集销售、研发、采购、生产、品保、仓储、运输、信息、金融为一体的餐饮供应链服务企业。2021年初&#xff0c;蜀海信息技术中心大数据技术研发团队开始测试用DolphinScheduler作为数据中台和各业务产品项目的任务调度系统工具。本文主要分享了蜀海供应链在海…

YOLO目标检测——火焰检测数据集+已标注xml和txt格式标签下载分享

实际项目应用&#xff1a;火灾预警系统、智能监控系统、工业安全管理、森林火灾监测以及城市规划和消防设计等应用场景中具有广泛的应用潜力&#xff0c;可以提高火灾检测的准确性和效率&#xff0c;保障人员和财产的安全。数据集说明&#xff1a;YOLO火焰目标检测数据集&#…