[图解]需要≠需求-《分析模式》漫谈
1
00:00:00,760 --> 00:00:02,910
今天的《分析模式》漫谈
2
00:00:02,920 --> 00:00:04,180
我们来说一下
3
00:00:04,490 --> 00:00:06,490
需要不等于需求
4
00:00:10,490 --> 00:00:11,760
还是第一章
5
00:00:13,120 --> 00:00:15,020
这里
6
00:00:15,030 --> 00:00:15,740
原文我就不念了
7
00:00:15,750 --> 00:00:17,020
这里有个needs
8
00:00:17,030 --> 00:00:19,980
然后
9
00:00:21,060 --> 00:00:22,060
2004中译本
10
00:00:22,310 --> 00:00:24,710
就是机械工业出版社的译本
11
00:00:25,960 --> 00:00:29,230
翻译“要求”,这是正确的
12
00:00:30,640 --> 00:00:32,280
但是2020中译本
13
00:00:32,490 --> 00:00:37,370
人民邮电出版社的译本,需求
14
00:00:38,290 --> 00:00:39,640
这个就不太对了
15
00:00:40,200 --> 00:00:44,080
需求的话,我们往往会想到什么
16
00:00:44,560 --> 00:00:45,330
Requirements
17
00:00:45,340 --> 00:00:49,940
你看,我们可以看其他地方
18
00:00:49,950 --> 00:00:53,030
你看,这里要求,需求
19
00:00:53,800 --> 00:00:54,810
还是第一章
20
00:00:55,140 --> 00:01:00,640
这里。requirements这里。需求
21
00:01:01,080 --> 00:01:01,390
这个对
22
00:01:01,930 --> 00:01:03,090
你看,这里也是需求
23
00:01:04,970 --> 00:01:08,520
2020中译本needs你也是需求
24
00:01:09,370 --> 00:01:11,090
requirements也是需求
25
00:01:13,210 --> 00:01:14,240
这两个怎么区分
26
00:01:16,890 --> 00:01:17,470
那么我们来看
27
00:01:19,510 --> 00:01:22,380
需求,跟要求或者需要
28
00:01:22,390 --> 00:01:24,620
它不是一个东西
29
00:01:26,150 --> 00:01:31,150
我们可以用这句话来区分
30
00:01:31,710 --> 00:01:35,040
系统的需求,就是requirements
31
00:01:35,050 --> 00:01:36,440
是平衡各方用户需要
32
00:01:36,450 --> 00:01:39,540
needs的结果
33
00:01:40,740 --> 00:01:44,140
当然用户需要这个说法也不对
34
00:01:44,430 --> 00:01:46,180
更严格应该是涉众利益
35
00:01:46,190 --> 00:01:48,970
因为用户这个词就已经有问题了
36
00:01:49,500 --> 00:01:55,290
我在这个文章,在书里面也有讲
37
00:01:56,520 --> 00:02:00,410
文章公众号上可以看,网址在这里
38
00:02:01,090 --> 00:02:02,900
CTO也糊涂的常用术语
39
00:02:03,310 --> 00:02:04,780
这里就提到用户需求
40
00:02:04,790 --> 00:02:07,010
这个术语是怎么不对的
41
00:02:08,050 --> 00:02:09,450
内容我摘录在这里
42
00:02:12,840 --> 00:02:14,470
需求是系统的需求
43
00:02:15,120 --> 00:02:16,020
它不是你的
44
00:02:16,030 --> 00:02:19,370
我的,谁的,是系统的,就这么一份
45
00:02:19,950 --> 00:02:22,630
它是你我他最终达成的一份
46
00:02:22,640 --> 00:02:24,510
关于系统的一份契约
47
00:02:25,310 --> 00:02:27,290
系统作为一个整体
48
00:02:27,700 --> 00:02:30,890
必须要提供的一些功能性能
49
00:02:32,890 --> 00:02:36,850
用户后面跟什么,可以跟要求或者需要
50
00:02:37,360 --> 00:02:38,310
这个就是needs
51
00:02:39,740 --> 00:02:41,170
不能跟requirements
52
00:02:44,160 --> 00:02:45,700
比如说,拿取款机为例
53
00:02:45,710 --> 00:02:46,830
54
00:02:46,840 --> 00:02:51,610
你储户提出一个要求
55
00:02:51,620 --> 00:02:52,650
说最好拉开就拿
56
00:02:53,490 --> 00:02:54,940
这是大实话
57
00:02:55,960 --> 00:02:57,190
但你不能真的这样做
58
00:02:57,280 --> 00:03:00,900
因为你还要(考虑)别的涉众的利益
59
00:03:01,420 --> 00:03:02,900
就像工厂的工人
60
00:03:02,910 --> 00:03:05,290
你做一个系统给工厂的工人用
61
00:03:05,300 --> 00:03:08,050
你问工人,这个系统该怎么做
62
00:03:08,960 --> 00:03:09,480
你最爽
63
00:03:09,990 --> 00:03:12,100
工人就说,最好操作越简单越好
64
00:03:12,110 --> 00:03:14,240
随便敲两下就搞定
65
00:03:15,170 --> 00:03:16,170
好,你是爽了
66
00:03:16,720 --> 00:03:18,660
但是该采集的数据没采集到
67
00:03:19,560 --> 00:03:21,280
后面的其他同事怎么办
68
00:03:21,600 --> 00:03:22,430
领导怎么办
69
00:03:22,770 --> 00:03:23,110
70
00:03:24,720 --> 00:03:27,900
你说我希望越简单越好
71
00:03:28,330 --> 00:03:29,570
最好敲两下就搞定
72
00:03:31,070 --> 00:03:32,620
这只是你自己的要求
73
00:03:33,190 --> 00:03:35,030
它不能成为系统的需求
74
00:03:36,410 --> 00:03:38,390
最终系统需求要照顾什么
75
00:03:39,430 --> 00:03:40,500
领导的利益
76
00:03:40,830 --> 00:03:41,850
其他同事的利益
77
00:03:42,460 --> 00:03:44,250
当然,在适当的情况下
78
00:03:44,260 --> 00:03:45,770
可以照顾一下你的利益
79
00:03:47,170 --> 00:03:48,850
那就看你的排位了
80
00:03:51,090 --> 00:03:52,860
如果说你这个位置很重要
81
00:03:53,110 --> 00:03:56,320
你提的要求当然是会比较大的程度
82
00:03:56,330 --> 00:03:57,160
得到尊重
83
00:03:57,900 --> 00:03:59,200
如果你是一个屌丝
84
00:04:00,650 --> 00:04:02,770
可能这个系统就要苦一苦你了
85
00:04:03,670 --> 00:04:04,600
就要欺负你了
86
00:04:05,740 --> 00:04:07,420
谁让你排位这么低
87
00:04:08,650 --> 00:04:10,910
这个的话,我们可以看一段
88
00:04:12,160 --> 00:04:14,230
我之前录的教学视频
1
00:00:03,130 --> 00:00:06,800
既然为了方便做卡给我们用
2
00:00:06,810 --> 00:00:07,720
那干嘛不方便到底
3
00:00:07,730 --> 00:00:09,930
为什么要验密码
4
00:00:11,100 --> 00:00:12,060
不验不行吗
5
00:00:13,360 --> 00:00:16,560
储户插卡,系统就弹出一个钱框
6
00:00:17,070 --> 00:00:18,310
储户抓一把就走
7
00:00:19,320 --> 00:00:20,580
这多爽
8
00:00:20,870 --> 00:00:22,380
但是这样就不安全了
9
00:00:24,600 --> 00:00:25,660
所以要验密码
10
00:00:27,480 --> 00:00:28,790
为了安全验密码
11
00:00:28,800 --> 00:00:30,390
密码怎么才6位数字
12
00:00:31,600 --> 00:00:32,400
是不是少了一点
13
00:00:35,540 --> 00:00:36,710
搞个20位密码
14
00:00:37,740 --> 00:00:41,150
或者说数字、大小写字母
15
00:00:41,570 --> 00:00:42,950
特殊符号都要有
16
00:00:43,510 --> 00:00:44,620
那不是更安全吗
17
00:00:45,400 --> 00:00:47,330
但是这样就不方便了
18
00:00:48,040 --> 00:00:52,300
所以6位数字是安全和方便
19
00:00:52,730 --> 00:00:56,510
在当前时间的平衡点,平衡
20
00:00:57,520 --> 00:01:00,650
还有,你看这个,系统验证
21
00:01:00,660 --> 00:01:03,460
金额合法
22
00:01:03,470 --> 00:01:05,540
规则是必须为100元的倍数
23
00:01:06,500 --> 00:01:08,780
¥%……&&,为什么
24
00:01:10,770 --> 00:01:13,540
假设取款机能够取小数点
25
00:01:13,550 --> 00:01:16,890
比如说,我取102块5毛3
26
00:01:18,290 --> 00:01:19,060
然后提交
27
00:01:19,580 --> 00:01:22,710
然后系统就蹦蹦蹦蹦
28
00:01:23,570 --> 00:01:28,470
出钞票,大额的、小额的,硬币都有
29
00:01:29,170 --> 00:01:30,480
那不是更好吗
30
00:01:30,950 --> 00:01:32,320
储户更开心
31
00:01:33,050 --> 00:01:33,980
但是谁不开心
32
00:01:34,920 --> 00:01:36,360
银行这边就不开心了
33
00:01:37,740 --> 00:01:38,840
成本太高了
34
00:01:40,840 --> 00:01:42,840
所以要有这一条
35
00:01:44,910 --> 00:01:49,610
还有这个,为什么要更新账户信息,不更新不行吗
36
00:01:50,910 --> 00:01:52,090
储户喜不喜欢更新
37
00:01:52,950 --> 00:01:56,420
他不喜欢的,比如说,我账户里有2万
38
00:01:57,000 --> 00:01:58,160
我取了5000
39
00:01:59,280 --> 00:02:00,870
我喜不喜欢更新
40
00:02:01,000 --> 00:02:04,440
不更新的,最好还是2万
41
00:02:05,030 --> 00:02:06,100
但是你不更新不行
42
00:02:06,310 --> 00:02:08,140
不更新银行就吃亏了
43
00:02:08,770 --> 00:02:13,080
所以你看这一句,看不见摸不着
44
00:02:14,410 --> 00:02:15,600
储户也不喜欢
45
00:02:16,390 --> 00:02:17,330
但是怎么样
46
00:02:18,730 --> 00:02:20,850
系统必须要写这一句
47
00:02:21,290 --> 00:02:23,170
必须要实现这一句
48
00:02:23,180 --> 00:02:26,130
否则涉众利益就会受到侵害了
49
00:02:27,800 --> 00:02:30,470
每一条背后都有涉众利益的存在
50
00:02:31,440 --> 00:02:32,910
如果没有,就可以把它删掉
相关文章:

[图解]需要≠需求-《分析模式》漫谈
1 00:00:00,760 --> 00:00:02,910 今天的《分析模式》漫谈 2 00:00:02,920 --> 00:00:04,180 我们来说一下 3 00:00:04,490 --> 00:00:06,490 需要不等于需求 4 00:00:10,490 --> 00:00:11,760 还是第一章 5 00:00:13,120 --> 00:00:15,020 这里 6 00:00:1…...

刷到好听的音频怎么办
在短视频平台上,我们常常会刷到那些好听得让人陶醉的视频,可却无法直接下载保存其中的音频,是不是感觉很遗憾? 比如刷到林俊杰这首前奏超好听的《江南》,却禁止下载无法直接下载保存。 别担心,下面就为您揭…...

怎么在网络攻击中屹立不倒
在当今蓬勃发展的网络游戏产业中,服务器安全无疑是企业生存与发展的基石。面对互联网环境中无处不在的DDoS(分布式拒绝服务)与CC(挑战碰撞)攻击威胁,游戏服务器的防御能力与高效处理能力显得尤为重要。相较…...

详解 Python 中的面向对象编程(2)
引言 面向对象编程(OOP)是一种编程范式,它通过将属性和行为整合到对象中来构建程序。本教程将带你了解Python语言中面向对象编程的基本概念。 想象一下,对象就像是系统中的各个部件。可以把程序比作一条工厂流水线。在流水线的每一…...
数据结构-线性表-顺序表
一. 了解顺序表 顺序表定义: 顺序表(也称为线性数组)是一种线性数据结构,它将数据元素按顺序存储在一块连续的内存空间中。顺序表的基本特征包括: 元素的顺序性:顺序表中的元素具有线性关系,每…...

AI绘画大模型-StableDiffusion最强模型sd3(本地安装方法)
前言/introduction Stable Diffusion 3(简称SD3)是Stability AI最新推出的文本到图像生成模型。相比前代模型,SD3在生成质量、细节表现以及运行效率上有了显著提升,尤其在细腻的图像渲染和复杂的场景构建方面表现出色。SD3模型…...
SpringBoot调用外部接口的几种方式
SpringBoot调用外部接口的几种方式 使用FeignClient调用1、在使用方引入依赖2、服务接口调用方2.1、在启动类上加上EnableFeigncliens注解2.2、编写Feign接口调用服务controller层2.3、服务接口调用service层 3、服务接口提供者4、说明 使用RestTemplate调用1、引入依赖2、Rest…...
MySQL:information_schema查找某个表的主键是否在数据的其他位置出现之二
上一篇: MySQL:information_schema查找某个表的主键是否在数据的其他位置出现之一-CSDN博客 摘要 遍历数据库每一张表的每一个字段,是否存在字符串search_term 正文 源码 import pymysql from datetime import datetime# 测试函数 if __n…...
Linux进程和计划任务管理
目录 一、进程基本概念 1.进程 2.程序和进程的关系 二、查看进程信息 1.ps命令 1.1 ps aux命令 1.2 ps -elf 命令 2. top 命令 3.pgrep 命令 4.jobs 命令 三、查看进程树 四、进程的启动方式 1.手动启动 2.调度启动 五、终止进程的运行 1.CtrlC组合键 2.kill、kil…...

【Angular18】封装自定义组件
1. 准备组件 2. 创建打包文件夹及部分配置文件 创建 文件夹app-legalentities-root拷贝组件源文件到新的文件夹app-legalentities中创建文件 .npmrc registry发布地址always-authtrue创建文件 ng-package.json {"$schema": "./node_modules/ng-packagr/ng-pac…...

【流媒体】RTMPDump—RTMP_ConnectStream(创建流连接)
目录 1. RTMP_ConnectStream函数1.1 读取packet(RTMP_ReadPacket)1.2 解析packet(RTMP_ClientPacket)1.2.1 设置Chunk Size(HandleChangeChunkSize)1.2.2 用户控制信息(HandleCtrl)1…...
MySQL学习3之锁机制
一、什么是锁粒度? 锁粒度(Lock Granularity)是指在数据库中锁定数据资源的最小单位。锁粒度决定了锁定操作的范围,即锁定的是整个数据库、整个表、表中的某个分区、表中的某一页还是表中的某一行。 在MySQL中常见的锁粒度有&am…...

2004-2023年上市公司过度负债数据(含原始数据+计算结果)
2004-2023年上市公司过度负债数据(含原始数据计算结果) 1、时间:2004-2023年 2、来源:上市公司年报 3、指标:证券代码、证券简称、统计截止日期、是否剔除ST或*ST股、是否剔除当年新上市、已经退市或被暂停退市的公…...

[机器学习]--KNN算法(K邻近算法)
KNN (K-Nearest Neihbor,KNN)K近邻是机器学习算法中理论最简单,最好理解的算法,是一个 非常适合入门的算法,拥有如下特性: 思想极度简单,应用数学知识少(近乎为零),对于很多不擅长数学的小伙伴十分友好虽然算法简单,但效果也不错 KNN算法原理 上图是每一个点都是一个肿瘤病例…...

跨平台控制神器Escrcpy,您的智能生活助手
Escrcpy 是一款基于 Scrcpy 开发的图形化安卓手机投屏控制软件,它允许用户将 Android 手机屏幕实时镜像到电脑上,并使用电脑的鼠标和键盘直接操作手机,实现了无线且高效的操控。这款软件是免费开源的,支持跨平台使用,包…...

AR 眼镜之-开关机定制-实现方案
目录 📂 前言 AR 眼镜系统版本 开关机定制 1. 🔱 技术方案 1.1 技术方案概述 1.2 实现方案 1)开机 Logo 2)开机音效 3)开机动画 4)关机动画 5)关机弹窗 2. 💠 开机 Logo…...

论文阅读-Transformer Layers as Painters
1. 摘要 尽管大语言模型现在已经被广泛的应用于各种任务,但是目前对其并没有一个很好的认知。为了弄清楚删除和重组预训练模型不同层的影响,本文设计了一系列的实验。通过实验表明,预训练语言模型中的lower和final layers与中间层分布不一致…...

【STL】vector模拟实现
vector引入 vector的实现主要依靠三个成员变量:start,finish和end_of_storage 其中: [start]指向容器中的起始位置 [finish]指向容器中最后一个有效数据的下一个位置 [end_of_storage]指向容器中现有容量的位置 通过这三个指针,就使得vector的size…...
静态成员static关键字
定义: 静态成员在C类中是一个重要的概念,它包括静态成员变量和静态成员函数。 静态成员变量 1定义:静态成员变量是类的所有对象共享的变量。与普通成员变量相比,无论创建了多少个类的实 例,静态成员变量只有一份拷贝…...
本地项目git同步到线上
将本地创建的项目同步到你的 GitHub 账号线上仓库,可以按照以下步骤进行操作: 1. 在 GitHub 上创建一个新仓库 登录你的 GitHub 账号。点击右上角的加号(),然后选择 New repository。填写仓库的名称、描述等信息。选…...

网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...

理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
OpenLayers 分屏对比(地图联动)
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能,和卷帘图层不一样的是,分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
【Java学习笔记】BigInteger 和 BigDecimal 类
BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点:传参类型必须是类对象 一、BigInteger 1. 作用:适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...

uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...