1
00:00:01,200 --> 00:00:04,710
我们首先来看一下需求图的一些要点
2
00:00:05,810 --> 00:00:07,080
需求图用来干什么
3
00:00:07,210 --> 00:00:12,080
用来记录文本形式的一些需求
4
00:00:12,090 --> 00:00:13,480
和需求的素材
5
00:00:14,540 --> 00:00:16,030
因为有很多内容
6
00:00:16,820 --> 00:00:20,290
我们知道,前面我们画活动图也好
7
00:00:21,030 --> 00:00:22,620
块定义图也好
8
00:00:23,510 --> 00:00:26,150
它内容是比较严谨的,形式化的
9
00:00:26,160 --> 00:00:31,930
而很多内容是文本形式记录的
10
00:00:32,140 --> 00:00:33,830
没有很严谨的形式化
11
00:00:34,170 --> 00:00:36,560
特别是我们获得的一些需求的素材
12
00:00:37,840 --> 00:00:42,360
还有我们写的一些目标等等
13
00:00:42,370 --> 00:00:45,000
需求图就提供了这样一个方式来记录它们
14
00:00:45,700 --> 00:00:49,610
并且建立起它们之间的跟踪的关系
15
00:00:50,990 --> 00:00:54,260
因为你后面不管是需求也好设计也好
16
00:00:54,270 --> 00:00:55,100
你这个怎么来的
17
00:00:55,110 --> 00:00:59,100
你为什么有这个block,block为什么有这个部件之类的
18
00:01:00,760 --> 00:01:02,440
你回溯到前面的话
19
00:01:02,450 --> 00:01:07,120
它的根源都在最开始
20
00:01:07,130 --> 00:01:08,280
你去调研的时候
21
00:01:08,570 --> 00:01:10,240
需求的素材
22
00:01:11,100 --> 00:01:13,090
建立起跟踪的关系
23
00:01:14,600 --> 00:01:16,030
右边这个就是需求图
24
00:01:17,150 --> 00:01:18,210
方框是需求
25
00:01:18,220 --> 00:01:19,890
然后两个属性
26
00:01:20,220 --> 00:01:22,200
一个是id,一个text
27
00:01:24,300 --> 00:01:25,180
然后,大需求
28
00:01:26,580 --> 00:01:30,240
然后圆十字表示分解
29
00:01:32,280 --> 00:01:35,120
包含关系,这个大需求包含两个小需求
30
00:01:37,310 --> 00:01:39,200
然后下面有个satisfy
31
00:01:39,900 --> 00:01:43,210
有一个block满足这个需求
32
00:01:45,210 --> 00:01:46,220
当然可以是多对多的
33
00:01:47,260 --> 00:01:49,060
很可能一个需求要多个block满足
34
00:01:49,070 --> 00:01:50,700
一个block可以满足多个需求也可能
35
00:01:50,710 --> 00:01:56,240
主要是这两个关系是比较重要的
36
00:01:56,250 --> 00:02:01,390
还有别的关系,什么精化、跟踪等等
37
00:02:03,080 --> 00:02:08,890
我感觉这两个应该是比较常用的
38
00:02:09,270 --> 00:02:12,630
用好这两个应该是优先的
39
00:02:14,820 --> 00:02:16,250
什么叫一个需求
40
00:02:16,990 --> 00:02:20,260
SysML本身也没有定义太严谨
41
00:02:20,660 --> 00:02:22,890
你看,我们前面讲,使命需求
42
00:02:23,460 --> 00:02:25,990
本来这个说法就不太严谨
43
00:02:26,600 --> 00:02:30,020
使命这是一个很大的,Vision一样的
44
00:02:30,360 --> 00:02:32,020
应该是说一个度量指标
45
00:02:32,030 --> 00:02:33,060
改进的指标
46
00:02:34,880 --> 00:02:37,910
它应该跟我们系统的需求分开的
47
00:02:39,350 --> 00:02:41,830
结果,你到底什么需求
48
00:02:41,840 --> 00:02:44,650
你说提高安全性是需求
49
00:02:46,400 --> 00:02:48,160
然后定时检测是需求
50
00:02:49,360 --> 00:02:51,240
还是里面一个小小的步骤
51
00:02:51,250 --> 00:02:55,690
判断这个房间的某一块
52
00:02:55,980 --> 00:02:57,730
到底有没有异常是需求
53
00:02:58,380 --> 00:03:00,650
还是判断异常的规则
54
00:03:01,370 --> 00:03:03,340
你怎么判断是异常,规则是什么
55
00:03:03,930 --> 00:03:06,450
这是需求?没讲清楚
56
00:03:07,910 --> 00:03:08,980
有大有小
57
00:03:10,860 --> 00:03:14,040
SysML也没有做任何的规定,是比较宽松的
58
00:03:15,370 --> 00:03:17,120
这个是不太严谨了
59
00:03:17,130 --> 00:03:21,820
但是既然书里面都这样写了
60
00:03:21,830 --> 00:03:23,060
我们就这样做就好了
61
00:03:23,600 --> 00:03:28,010
下面我们就来看EA里面怎么画需求图