首页 > 其他分享 >需求分析之道——需求分析要做什么(C系架构设计法,sishuok)

需求分析之道——需求分析要做什么(C系架构设计法,sishuok)

时间:2023-03-09 17:02:35浏览次数:31  
标签:需求 架构设计 sishuok 业务 分析 重难点 架构师

需求分析之道——需求分析要做什么。

需求分析是架构师开始做架构设计的第一步,对架构师来讲非常非常的重要。因为需求分析能够告诉我们,到底我们要做什么,架构设计就是为了去完成这件事情而做的。

接下来,我们就从实战的角度来讲一讲,需求分析的一些方法,都是咱们多年经验的总结,也许听上去或者说大家看上去,没有那么高大上,但是是非常实用的知识,从几10万的小项目到数千万的大项目都可以用得上这些方法。

咱们要做一件事情,首先要紧盯目标,这样你才能够找到自己前进的方向;然后再盯脚下的路,找到具体做事的方法。一步一步,认认真真去做,最终达到这个目标。这里也一样,先来看看需求分析的目标是什么?

一:需求分析的目标:

是尽可能准确、全面、深入的理解业务。

关于这个话题,内容比较多,特别在上一篇《深入理解需求分析的目标》详细讲述了,这里就不再啰嗦了。

二:识别重难点业务

第二个大的任务,就是识别重难点业务。这个可能要求架构师有一定的业务经验,这个也算是架构师的一个基本功。拿到需求过后,架构师要能够快速的识别出里面的一些重难点的业务,足够的业务经验,就能告诉我们,要做这样子的业务,里面有哪些功能是非常重要的,有哪些业务可能是比较难做的,也就是咱们俗称的重难点的业务。

 

识别出重难点业务有什么样的作用呢?就是接下来,在进行分析设计的时候,我们要重点去考虑这些重点业务、难点业务的实现,如果能够把重难点的业务都解决了,一般来说,常规的、相对普通一些的业务功能,咱们的架构设计,是能够很好的去满足的。

这些重难点业务,很可能会影响到咱们后面的,包括像技术选型、具体的架构设计、架构形式,可能都会受到它的影响。

毕竟,软件只是一个工具,工具嘛,不就是用来干活的吗?软件是用来干什么的呢?就是帮助用户或者客户,实现业务活动的工具。架构设计是干什么的呢?架构设计是为了把软件造好,也可以说它是为了软件服务的,开发和制作软件这个工具

所以,我们要去识别重难点业务,软件就是来解决这些业务问题的,肯定首先盯的,就是要解决重难点的业务,这些解决了,那些普通业务肯定能解决。是这个道理吧。

咱们的架构设计,就是在考虑,我怎么能够把这个软件做好。因此,对于重难点业务的把握,可能就直接决定了架构设计的成败,咱们一定要非常非常的重视。

这一点对于经验弱一些的架构师,可能就是一个小小的问题了,因为刚开始,他可能不能很快的去识别这些重难点的业务,但这个也没有关系,即使你刚开始没有识别出来,那你就尽量验证的全面一些。比方说,做完你的架构设计了,在做架构验证的时候,你就多挑一些业务来验证你的这个架构设计,这样也能够避免出现一些问题。

三:识别非功能需求,还有质量约束

第三的一个,要去识别非功能需求,还有质量约束。

啥叫非功能需求呢?就是除去咱们的业务功能需求之外的,剩下的这些需求,统称为非功能性需求,通常也是软件质量约束的一部分。

 

比如说,我们对这个系统提出了一些要求,但不是功能性的,常见的有:性能方面的要求,可靠性方面的要求,可扩展性方面的要求,可维护性方面的要求等等的。当然也还有其他的,比如说安全的要求,备份、恢复的要求等等,这些要求对于架构设计的影响也是非常非常大的。

很多都是架构设计要重点考虑的一些问题,比如说像性能问题,可靠性问题,高并发问题,海量数据的问题,可扩展的问题等。这些对咱们做架构设计都是有非常大的影响的,所以,在做需求分析的时候,就要把这些识别出来。

最后想要强调一点,需求分析对架构师而言,是非常非常重要的。可以这么说,需求分析是架构师做架构设计的起点,需求分析没有做好,后面的全部都是在瞎做

因为,需求分析会告诉我们:到底要做什么?如果说,连要做什么,我们都不知道,那你想想,如果一片迷茫的情况下,就去做所谓的架构设计,请问这个架构设计为谁做的?做来干什么?

现在有一些所谓的架构师,轻业务而重技术,成天高谈阔论很多新的技术,各种技术大词、名词满天飞,为了技术而技术。但是他忘了架构设计的初心,架构设计的目的是为了软件服务的,是为了更好的去开发和制作软件这个工具,仅此而已,不是为了你去炫耀技术的。

可以毫不客气的说这些人,根本就算不上是真正的架构师,我们可以称之为是伪架构师,或者说是PPT架构师,有那么一句话:“离开业务场景谈架构设计,那就是在耍流氓”。所以说,大家一定要重视起来,业务很重要,需求分析很重要。

为了大家更好的交流架构设计的思想和知识,大家可以加sishuok,拉你进架构设计群,一起共同学习,共同进步。

标签:需求,架构设计,sishuok,业务,分析,重难点,架构师
From: https://www.cnblogs.com/yflx/p/17199126.html

相关文章

  • 架构设计思想-“开闭原则”
    架构设计思想,其中有一种设计原则叫“开闭原则”,其核心是:一个对象对扩展开放,对修改关闭。就是说,一旦写好了某个类,就不要去轻易改动他,而是要保证它一直能运行下去,而面对新的......
  • BI需求分析
    1.需求项分析维度:时间维度(粒度:年,月,周,日,时等),产品维度,机器维度分析值KPI:数据来源:公式计算:展示形式:穿透分析:横向穿透,纵向穿透2.需求格式可以考虑标准化报表编号,便......
  • 浅析三款大规模分布式文件系统架构设计
    什么是文件系统当提到文件系统,大部分人都很陌生。但我们每个人几乎每天都会使用到文件系统,比如大家打开Windows、macOS或者Linux,不管是用资源管理器还是Finder,都是在......
  • 深入理解需求分析的目标(C系架构设计法)
    需求分析的目标:是尽可能准确、全面、深入的理解业务。1:理解“尽可能准确”首先,需求分析,要做的事,肯定是去理解业务,但是要达到什么样的程度,才算是我们理解了这个业务呢?第......
  • 08、从安全合规信息系统备案的角度看资产管理需求
    转载公众号《微言晓意》,仅用于个人学习在网络安全等级保护测评中,需要对测评对象所包含的资产进行梳理,形成《网络安全等级测评调研表》以能够支撑测评工作的顺利开展。《网......
  • Pod资源需求和资源限制
    [root@masterresource]#kubectlapply-fresource-requests-demo.yaml[root@masterresource]#catresource-requests-demo.yamlapiVersion:v1kind:Podmetadat......
  • ES 深度分页问题及针对不同需求下的解决方案(Deep paging)
    转:https://developer.aliyun.com/article/1081846 1什么是深度分页(Deeppaging)1.1ES中from+size分页分页问题是Elasticsearch中最常见的查询场景之一,正常情......
  • 2021年系统架构设计师论文---论微服务架构及其应用
    论微服务架构及其应用*忠旭(石家庄铁道大学河北省石家庄市长安区061600)摘要:随着互联网应用的发展,单体应用架构已经不能满足业务需求,微服务架构应运而生。微服务架构是......
  • 大型分布式网站架构设计与实践第一章读后感
    1.1基于TCP协议的RPCRPC之远程过程调用,应用广泛,实现方法多因为单台服务器的硬件无法无限提升,所以RPC将需要在本地调用转换为调用远端服务器生的方法,给系统处理能力与吞吐......
  • 《大型分布式网站架构设计与实践》阅读笔记
    本书主要介绍了如何设计和构建大型分布式网站的架构,内容包括分布式系统的基础知识、分布式系统架构设计的原则和方法、分布式系统的核心技术和实践等方面。1.分布式系统基......