about summary refs log tree commit diff
path: root/usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt
diff options
context:
space:
mode:
Diffstat (limited to 'usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt')
-rw-r--r--usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt488
1 files changed, 0 insertions, 488 deletions
diff --git a/usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt b/usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt
deleted file mode 100644
index d47ef80..0000000
--- a/usth/ICT2.7/P3L2 A Tale of Analysis and Design Subtitles/6 - Adding Relationships - lang_en.srt
+++ /dev/null
@@ -1,488 +0,0 @@
-1
-00:00:00,420 --> 00:00:02,740
-OK I like the way this class diagram is
-
-2
-00:00:02,740 --> 00:00:05,850
-coming along. So at this point I think we
-
-3
-00:00:05,850 --> 00:00:08,300
-have all the classes that we need. For each
-
-4
-00:00:08,300 --> 00:00:12,250
-class we specified the attributes or the characteristics of the
-
-5
-00:00:12,250 --> 00:00:15,150
-class. And we also specified the operations so we
-
-6
-00:00:15,150 --> 00:00:18,710
-know what the class can do And, I like to
-
-7
-00:00:18,710 --> 00:00:22,110
-kind of move forward on this, but I first
-
-8
-00:00:22,110 --> 00:00:25,690
-want to see that you're fine with the class structure.
-
-9
-00:00:25,690 --> 00:00:27,500
-So that's the way the class structure is going
-
-10
-00:00:27,500 --> 00:00:29,880
-to be in terms of attributes and operations. So anything
-
-11
-00:00:29,880 --> 00:00:34,910
-that bothers you? Well, one thing I didn't understand
-
-12
-00:00:34,910 --> 00:00:38,090
-is how come you put check out over where
-
-13
-00:00:38,090 --> 00:00:40,350
-the patron when it's really the item being checked
-
-14
-00:00:40,350 --> 00:00:46,280
-out? Right. Okay. So that actually is you know, is a perfect
-
-15
-00:00:46,280 --> 00:00:48,030
-segway for the next thing that really wanted
-
-16
-00:00:48,030 --> 00:00:50,780
-to model. Because what you're talking about is basically a
-
-17
-00:00:50,780 --> 00:00:54,100
-relationship between two classes which is something we haven't touched on
-
-18
-00:00:54,100 --> 00:00:57,582
-yet. So we haven't, haven't looked at individual classes. But now, it
-
-19
-00:00:57,582 --> 00:01:00,720
-is typical, now we are looking more at requirements, we're starting to
-
-20
-00:01:00,720 --> 00:01:04,800
-find more things about our system, and what you're pointed out right
-
-21
-00:01:04,800 --> 00:01:08,370
-now is the fact that patron and item are somehow related. So
-
-22
-00:01:08,370 --> 00:01:11,020
-this checkout operation is not really something that belongs only on in
-
-23
-00:01:11,020 --> 00:01:13,660
-the patron, because it needs to know about the item. And it
-
-24
-00:01:13,660 --> 00:01:15,790
-doesn't belong only on the item because it needs to know about
-
-25
-00:01:15,790 --> 00:01:19,640
-the patron. So, it's something that associates the patron and
-
-26
-00:01:19,640 --> 00:01:22,600
-the item. Okay. And that's exactly the way we call
-
-27
-00:01:22,600 --> 00:01:24,630
-in the UML which is the notation that we're using
-
-28
-00:01:24,630 --> 00:01:29,060
-here this kind of relationship. So, we're going to represent that
-
-29
-00:01:29,060 --> 00:01:32,820
-by drawing a line between these two classes that tells
-
-30
-00:01:32,820 --> 00:01:35,220
-us there is an association. And we're also going to
-
-31
-00:01:35,220 --> 00:01:37,890
-give a name to this. Since this refers to the
-
-32
-00:01:37,890 --> 00:01:40,280
-fact of checking out items. We're just going to call
-
-33
-00:01:40,280 --> 00:01:43,794
-it, checkout. Gotcha. And notice that this basically you
-
-34
-00:01:43,794 --> 00:01:48,500
-know,eventually will end up kind of replacing this attribute. Because
-
-35
-00:01:48,500 --> 00:01:51,780
-the existence of this association will tell us that
-
-36
-00:01:51,780 --> 00:01:53,932
-this is checked out. We're, we're not going to, you know,
-
-37
-00:01:53,932 --> 00:01:55,428
-do it right now, but in the final cleanup
-
-38
-00:01:55,428 --> 00:01:58,750
-or the diagram, this name will disappear. Okay. Okay.
-
-39
-00:01:58,750 --> 00:02:02,190
-And so since we started talking about relationships and
-
-40
-00:02:02,190 --> 00:02:05,280
-associations, is there any other kind of relationship that you
-
-41
-00:02:05,280 --> 00:02:08,805
-see here? Well, what you just did with checked
-
-42
-00:02:08,805 --> 00:02:12,009
-out is, it seems similar to the whole issue
-
-43
-00:02:12,009 --> 00:02:16,090
-of requests. It is, it is. So a request
-
-44
-00:02:16,090 --> 00:02:19,580
-is something else that happens in both, you know, in
-
-45
-00:02:19,580 --> 00:02:22,090
-the patron and in the item, it involves both.
-
-46
-00:02:22,090 --> 00:02:24,070
-And in fact in a request, I would definitely
-
-47
-00:02:24,070 --> 00:02:26,950
-represent this as an additional association. So I will
-
-48
-00:02:26,950 --> 00:02:30,730
-just draw an another line between these two that represent
-
-49
-00:02:30,730 --> 00:02:33,804
-that specific kind of relationship and I will call it
-
-50
-00:02:33,804 --> 00:02:37,330
-request. So that indicates that this association refers to a
-
-51
-00:02:37,330 --> 00:02:41,660
-request that also connects the patron with an item. Okay.
-
-52
-00:02:41,660 --> 00:02:45,710
-And, let's see. Any, anything else that jumps at you?
-
-53
-00:02:45,710 --> 00:02:47,590
-Yeah, well, how about all these ones down at the
-
-54
-00:02:47,590 --> 00:02:50,080
-bottom? I mean book and item's got to be
-
-55
-00:02:50,080 --> 00:02:52,920
-related, right? A book is a kind of item, And
-
-56
-00:02:52,920 --> 00:02:55,860
-audiovisual... are there associations between them? Can you repeat
-
-57
-00:02:55,860 --> 00:02:58,790
-that, you said that the book, yeah? Is
-
-58
-00:02:58,790 --> 00:03:02,550
-a kind of item. Perfect, that's exactly what we're
-
-59
-00:03:02,550 --> 00:03:04,700
-modeling next, which is, this, what we call the
-
-60
-00:03:04,700 --> 00:03:07,900
-is-a relationship. So you said, a book is an item?
-
-61
-00:03:07,900 --> 00:03:13,346
-A book is an item. And, we can model that in the diagram. So, we do that
-
-62
-00:03:13,346 --> 00:03:17,409
-using another kind of relationship between the classes. So
-
-63
-00:03:17,409 --> 00:03:21,210
-we're going to represent that as a specialization we call it.
-
-64
-00:03:21,210 --> 00:03:24,890
-And, a specialization is indicated in this way. Okay?
-
-65
-00:03:24,890 --> 00:03:27,410
-With this arrow at the end, so a solid
-
-66
-00:03:27,410 --> 00:03:30,800
-with this kind of arrow at the end. And
-
-67
-00:03:30,800 --> 00:03:34,160
-we can do the same for book, magazine, reference book
-
-68
-00:03:34,160 --> 00:03:36,200
-and audiovisual material. So we're all going to connect,
-
-69
-00:03:36,200 --> 00:03:37,950
-we're going to connect all of them, to the
-
-70
-00:03:37,950 --> 00:03:43,190
-item, using the same kind of connection. And now
-
-71
-00:03:43,190 --> 00:03:47,200
-that we have connected all these four, with item
-
-72
-00:03:47,200 --> 00:03:50,620
-and indicated them in subclasses. That's something else that we can
-
-73
-00:03:50,620 --> 00:03:54,370
-do. So we can make this kind of cleaner. And I'll
-
-74
-00:03:54,370 --> 00:03:56,360
-tell you what I mean by that. So now we have
-
-75
-00:03:56,360 --> 00:04:00,190
-this loanable attribute that refers to item, but it seems to
-
-76
-00:04:00,190 --> 00:04:03,100
-me from what you were saying before, that loanable is not
-
-77
-00:04:03,100 --> 00:04:05,490
-really an attribute of an item. Right? It's more of a
-
-78
-00:04:05,490 --> 00:04:09,240
-characteristic of the type of item. Right. Is that right? Right.
-
-79
-00:04:09,240 --> 00:04:13,120
-Books, and audio/visual are loanable but the others aren't.
-
-80
-00:04:13,120 --> 00:04:16,450
-Okay, and so representing it here, it's okay to,
-
-81
-00:04:16,450 --> 00:04:20,579
-it will work. But it's not really right so from
-
-82
-00:04:20,579 --> 00:04:23,590
-the style standpoint it doesn't really you know,
-
-83
-00:04:23,590 --> 00:04:26,100
-it's not the best way of modeling this. What we're going to
-
-84
-00:04:26,100 --> 00:04:30,130
-do instead, we're going to use this specialization relationship to make
-
-85
-00:04:30,130 --> 00:04:33,000
-that more explicit. To make it cleaner. Okay, so what
-
-86
-00:04:33,000 --> 00:04:35,300
-I'm doing here is I'm going to take this hierarchy
-
-87
-00:04:35,300 --> 00:04:38,130
-of classes, this is just on two levels now, and I'm
-
-88
-00:04:38,130 --> 00:04:40,380
-going to kind of make it a little richer.
-
-89
-00:04:40,380 --> 00:04:43,470
-So I'm going to add an intermediate set of
-
-90
-00:04:43,470 --> 00:04:45,756
-classes. And in particular I'm going to have these two
-
-91
-00:04:45,756 --> 00:04:48,306
-classes that I'm going to call non loanable item and loanable
-
-92
-00:04:48,306 --> 00:04:51,790
-item. So, they're both items but they tell me
-
-93
-00:04:51,790 --> 00:04:55,490
-clearly that some items are loanable and some items
-
-94
-00:04:55,490 --> 00:04:59,392
-are not. Okay. Okay. And then I'm simply going to
-
-95
-00:04:59,392 --> 00:05:03,192
-put book and audio video material as subclasses of loanable
-
-96
-00:05:03,192 --> 00:05:07,980
-item and reference book and magazine as subclasses of non-loanable
-
-97
-00:05:07,980 --> 00:05:10,510
-item. So, if we look at this diagram now it's
-
-98
-00:05:10,510 --> 00:05:13,650
-pretty clear what is loanable and what is not. And
-
-99
-00:05:13,650 --> 00:05:16,070
-it's actually is a very clean, much cleaner
-
-100
-00:05:16,070 --> 00:05:18,980
-design. And, and I see you've, gotten rid of
-
-101
-00:05:18,980 --> 00:05:21,560
-the loanable attribute, too. I did. Because at
-
-102
-00:05:21,560 --> 00:05:24,130
-this point this is already represented by the fact of
-
-103
-00:05:24,130 --> 00:05:28,570
-having these two classes. And actually, something else that I did
-
-104
-00:05:28,570 --> 00:05:31,820
-is that I moved all these attributes, value,
-
-105
-00:05:31,820 --> 00:05:34,220
-due date, renewed and checked out, that makes
-
-106
-00:05:34,220 --> 00:05:37,452
-sense only for loanable item. From item to
-
-107
-00:05:37,452 --> 00:05:40,450
-loanable item. So at this point, this really
-
-108
-00:05:40,450 --> 00:05:42,600
-is telling me that, you know, these
-
-109
-00:05:42,600 --> 00:05:46,410
-characteristics are just meaningful for the loanable item,
-
-110
-00:05:46,410 --> 00:05:53,800
-and not for the other ones. Well, speaking of that, the way that you got the
-
-111
-00:05:53,800 --> 00:05:57,270
-lines going in the diagram here is you still have
-
-112
-00:05:57,270 --> 00:05:59,920
-request and checked out going to item, even though you
-
-113
-00:05:59,920 --> 00:06:02,610
-can't request non loanable Items. You can't check out non
-
-114
-00:06:02,610 --> 00:06:05,630
-loanable Items. Oh, you were right actually. You got me on
-
-115
-00:06:05,630 --> 00:06:10,940
-that one. You're exactly right. So this associations are between
-
-116
-00:06:10,940 --> 00:06:13,440
-the two wrong classes. So, I guess, at this point,
-
-117
-00:06:13,440 --> 00:06:16,450
-you can probably go and fix the diagram yourself. Well,
-
-118
-00:06:16,450 --> 00:06:19,120
-can we just make the lines go from patron to loanable
-
-119
-00:06:19,120 --> 00:06:21,640
-item instead of to item? That's exactly the way in which we
-
-120
-00:06:21,640 --> 00:06:25,550
-are going to fix it. So, we're going to move these two associations down
-
-121
-00:06:25,550 --> 00:06:29,190
-here. And at this point, this will represent the right relationships in
-
-122
-00:06:29,190 --> 00:06:31,850
-the, in the diagram, and in the system. Makes sense to me.
-