1
00:00:00,005 --> 00:00:01,005
- [narrator] Once you have your product vision,

2
00:00:01,005 --> 00:00:06,006
you are ready to start working on detailed requirements.

3
00:00:06,006 --> 00:00:10,001
You can use any of the techniques such as interviews,

4
00:00:10,001 --> 00:00:14,004
workshops, focus groups, surveys, and several others.

5
00:00:14,004 --> 00:00:17,004
If you're interested, you can learn about these techniques

6
00:00:17,004 --> 00:00:21,004
in my other course on developing effective requirements.

7
00:00:21,004 --> 00:00:24,003
In this case study, let us say we decide

8
00:00:24,003 --> 00:00:26,007
on first conducting individual interviews

9
00:00:26,007 --> 00:00:29,004
and then bringing all key stakeholders together

10
00:00:29,004 --> 00:00:31,001
in a workshop.

11
00:00:31,001 --> 00:00:34,007
Interviews give us individual perspectives and needs

12
00:00:34,007 --> 00:00:38,005
and workshop help us collectively define the scope,

13
00:00:38,005 --> 00:00:41,009
prioritize requirements and bring everyone onto

14
00:00:41,009 --> 00:00:43,003
the same page.

15
00:00:43,003 --> 00:00:46,007
Both these techniques require some preparation.

16
00:00:46,007 --> 00:00:50,007
For interviews, we need to first identify the roles

17
00:00:50,007 --> 00:00:55,000
and for that our stakeholder map will come handy.

18
00:00:55,000 --> 00:00:57,007
From there we will then identify

19
00:00:57,007 --> 00:01:00,005
who specifically we want to interview.

20
00:01:00,005 --> 00:01:03,004
Sometimes these decisions are fairly easy,

21
00:01:03,004 --> 00:01:06,004
but in large organizations this may require

22
00:01:06,004 --> 00:01:09,002
some asking around, some observations,

23
00:01:09,002 --> 00:01:11,008
a study of the organization structure,

24
00:01:11,008 --> 00:01:14,003
or a mix of all these things.

25
00:01:14,003 --> 00:01:16,001
You could also use what is called

26
00:01:16,001 --> 00:01:18,000
as a Snowballing Technique.

27
00:01:18,000 --> 00:01:21,003
In which you start with one user and in the course

28
00:01:21,003 --> 00:01:24,001
of the interview, you ask the names of those who

29
00:01:24,001 --> 00:01:26,007
can give you more information that you may need.

30
00:01:26,007 --> 00:01:30,004
Whichever way you do it, it is important that you cover all

31
00:01:30,004 --> 00:01:32,005
the roles for your product.

32
00:01:32,005 --> 00:01:35,006
The next step is to figure out what you want

33
00:01:35,006 --> 00:01:37,005
to ask in these interviews.

34
00:01:37,005 --> 00:01:40,008
At a high level, write down some key questions you want

35
00:01:40,008 --> 00:01:42,007
to ask for each role.

36
00:01:42,007 --> 00:01:46,009
You could group these questions into categories for example,

37
00:01:46,009 --> 00:01:49,005
how they are currently doing their activities,

38
00:01:49,005 --> 00:01:51,002
what challenges they face,

39
00:01:51,002 --> 00:01:53,008
and any suggestions they may have.

40
00:01:53,008 --> 00:01:57,001
This framework can help give some structure

41
00:01:57,001 --> 00:01:59,000
to your interviews.

42
00:01:59,000 --> 00:02:02,004
As you compile your interview findings, an initial set

43
00:02:02,004 --> 00:02:05,006
of system requirements will begin to emerge.

44
00:02:05,006 --> 00:02:09,003
For example here, Red30 shall search

45
00:02:09,003 --> 00:02:12,001
and compare various food products.

46
00:02:12,001 --> 00:02:14,004
It should allow members to record

47
00:02:14,004 --> 00:02:18,007
and view their daily diet logs, and it should allow coaches

48
00:02:18,007 --> 00:02:20,008
to track and analyze them.

49
00:02:20,008 --> 00:02:24,002
When you talk to the IT team representatives,

50
00:02:24,002 --> 00:02:27,000
they express the need to track the usage

51
00:02:27,000 --> 00:02:29,007
of various application features.

52
00:02:29,007 --> 00:02:33,003
During these discussions, the coaches also tell you

53
00:02:33,003 --> 00:02:36,006
that they want their members to use the data available

54
00:02:36,006 --> 00:02:41,004
from the US Department of Agriculture, that is USDA.

55
00:02:41,004 --> 00:02:43,004
USDA is a government agency

56
00:02:43,004 --> 00:02:46,003
that offers food products related data,

57
00:02:46,003 --> 00:02:48,006
and we are going to take a closer look

58
00:02:48,006 --> 00:02:51,003
at it later in this course.

59
00:02:51,003 --> 00:02:54,008
Some non functional requirements will also emerge.

60
00:02:54,008 --> 00:02:58,004
For example, that system response should be fast

61
00:02:58,004 --> 00:03:01,007
and that the application should be easy to learn.

62
00:03:01,007 --> 00:03:06,003
Next step, translate all these requirements into user needs

63
00:03:06,003 --> 00:03:09,001
and features, and group them together

64
00:03:09,001 --> 00:03:12,004
so that you can begin to see some structure.

65
00:03:12,004 --> 00:03:15,005
For example, one of the most basic needs

66
00:03:15,005 --> 00:03:17,009
is to look up a food product.

67
00:03:17,009 --> 00:03:21,009
This translates to search and display feature.

68
00:03:21,009 --> 00:03:25,001
Next need is to compare the nutritional values

69
00:03:25,001 --> 00:03:27,006
of food products in terms of their nutrients

70
00:03:27,006 --> 00:03:29,009
and their ingredients.

71
00:03:29,009 --> 00:03:32,007
Another need is to maintain dialogues.

72
00:03:32,007 --> 00:03:35,004
For that the product should have the feature

73
00:03:35,004 --> 00:03:40,003
to allow the user to log in, then the user can record a meal

74
00:03:40,003 --> 00:03:44,004
in terms of what they ate, quantity, date and time.

75
00:03:44,004 --> 00:03:46,000
The member should also be able

76
00:03:46,000 --> 00:03:48,007
to view the history of dialogues.

77
00:03:48,007 --> 00:03:52,004
For more advanced functionality, a member should be able

78
00:03:52,004 --> 00:03:55,007
to maintain his or her health profile based

79
00:03:55,007 --> 00:03:59,006
on which the system may provide some diet recommendations.

80
00:03:59,006 --> 00:04:02,001
Finally, the system should give a feature

81
00:04:02,001 --> 00:04:05,004
to track and analyze a members diet logs.

82
00:04:05,004 --> 00:04:07,005
It should also give some analytics

83
00:04:07,005 --> 00:04:10,007
on the feature usage of the product.

84
00:04:10,007 --> 00:04:13,003
Looking at all these requirements together gives

85
00:04:13,003 --> 00:04:15,004
us broadly three themes.

86
00:04:15,004 --> 00:04:19,003
One theme focuses on food product data lookup,

87
00:04:19,003 --> 00:04:22,007
and other theme focuses on recording diet logs,

88
00:04:22,007 --> 00:04:26,002
and the third theme is analytics, which will use all

89
00:04:26,002 --> 00:04:29,004
the data generated in previous two themes.

90
00:04:29,004 --> 00:04:34,004
You can also see that there is some dependency among them.

91
00:04:34,004 --> 00:04:38,003
The first theme of looking up products has to be in place

92
00:04:38,003 --> 00:04:42,009
before users can record their meals, and both lookup

93
00:04:42,009 --> 00:04:45,002
and recording meals have to be in place

94
00:04:45,002 --> 00:04:48,005
before we can do any analytics.

95
00:04:48,005 --> 00:04:50,007
At this point, we are ready to shift

96
00:04:50,007 --> 00:04:54,007
from a system oriented view of functional requirements

97
00:04:54,007 --> 00:05:00,005
to a user oriented view of use cases and user stories.

98
00:05:00,005 --> 00:05:04,004
This use case diagram shows different types of users

99
00:05:04,004 --> 00:05:07,005
in a sort of inheritance hierarchy.

100
00:05:07,005 --> 00:05:11,002
A user, which represents everyone, can search

101
00:05:11,002 --> 00:05:15,005
and compare food products shown as two use cases.

102
00:05:15,005 --> 00:05:18,004
Both these use cases need to use the data

103
00:05:18,004 --> 00:05:22,004
from the external data source from USDA.

104
00:05:22,004 --> 00:05:26,002
Then there are registered users as members, coaches

105
00:05:26,002 --> 00:05:30,009
and Red30 IDT members such as admin, they must log

106
00:05:30,009 --> 00:05:34,002
in to perform any of these use cases.

107
00:05:34,002 --> 00:05:37,006
All of them can record meals, view meal history,

108
00:05:37,006 --> 00:05:41,004
track nutrients, and create health profiles.

109
00:05:41,004 --> 00:05:45,000
Coaches can additionally analyze member diet logs

110
00:05:45,000 --> 00:05:48,001
and Red30 admin can manage user accounts

111
00:05:48,001 --> 00:05:51,000
to analyze their product feature usage.

