From e7832f61c801e836555b06fb8373305166763775 Mon Sep 17 00:00:00 2001 From: adrian-s02 <131303630+adrian-s02@users.noreply.github.com> Date: Mon, 20 May 2024 17:57:37 +0200 Subject: [PATCH] Excercise05 Updates to all subtitle files (#17) * Update Exercise05-Task1-de.sbv * Update Exercise05-Task1-en.sbv * Update Exercise05-Task2a-en.sbv * Update Exercise05-Task2b-en.sbv * Update Exercise05-Task3-de.sbv * Update Exercise05-Task3-en.sbv * Update Exercise05-Task3-XModeler-en.sbv --- Uebungen/Blatt05/Exercise05-Task1-de.sbv | 2 +- Uebungen/Blatt05/Exercise05-Task1-en.sbv | 16 ++--- Uebungen/Blatt05/Exercise05-Task2a-en.sbv | 64 +++++++++---------- Uebungen/Blatt05/Exercise05-Task2b-en.sbv | 30 ++++----- .../Blatt05/Exercise05-Task3-XModeler-en.sbv | 64 +++++++++---------- Uebungen/Blatt05/Exercise05-Task3-de.sbv | 2 +- Uebungen/Blatt05/Exercise05-Task3-en.sbv | 32 +++++----- 7 files changed, 105 insertions(+), 105 deletions(-) diff --git a/Uebungen/Blatt05/Exercise05-Task1-de.sbv b/Uebungen/Blatt05/Exercise05-Task1-de.sbv index 27498db..fe13482 100644 --- a/Uebungen/Blatt05/Exercise05-Task1-de.sbv +++ b/Uebungen/Blatt05/Exercise05-Task1-de.sbv @@ -19,7 +19,7 @@ und mit der nicht ausgemalte Raute eine Aggregation und diese beiden sind lesbar 0:00:28.740,0:00:33.660 -von der Seite. Also die Raten sind nicht einfach +von der Seite. Also die Rauten sind nicht einfach Pfeilspitzen, sondern die Rauten sind praktisch 0:00:33.660,0:00:39.000 diff --git a/Uebungen/Blatt05/Exercise05-Task1-en.sbv b/Uebungen/Blatt05/Exercise05-Task1-en.sbv index f777864..11dda1b 100644 --- a/Uebungen/Blatt05/Exercise05-Task1-en.sbv +++ b/Uebungen/Blatt05/Exercise05-Task1-en.sbv @@ -8,14 +8,14 @@ are simplified. So, there are no attributes and 0:00:19.260,0:00:33.660 no methods. These class diagrams simply consist -of those boxes and have relationships between +of boxes and have relationships between 0:00:33.660,0:00:44.400 them. So, we do not have to look at attributes and methods here. We can assume that these 0:00:44.400,0:00:53.820 -classes are (?well-tiered). For instance, this +classes are well-tiered. For instance, this A class here shall be treated as a valid class, 0:00:53.820,0:01:01.440 @@ -31,7 +31,7 @@ between A and B. So, A consists of B's. And we have an aggregation where B's consist of A. 0:01:30.000,0:01:40.860 -But this is not problematic because if it were +But this is not problematic. If it were just compositions, then we would have cycled between 0:01:40.860,0:01:50.460 @@ -52,7 +52,7 @@ means B's are also A's. And when this happens, 0:02:27.420,0:02:34.980 then this means that they also inherit the -composition where A consists of C's. And +composition where A's consists of C's. And 0:02:34.980,0:02:41.160 this would mean that B's consist of C's whereas @@ -79,16 +79,16 @@ of A and of C at the same time. And this is not allowed as the composition rules are that 0:03:43.740,0:03:57.060 -a part can only be a part of (?one -whole). So, this does not make sense. +one part can only be a part of one +whole. So, this does not make sense. 0:03:58.680,0:04:04.620 So, we could argue that the class diagram is valid. But if we say it's valid, 0:04:04.620,0:04:10.560 -then we also have to admit that there is (?no -instance valid). So, we can also say this class +then we also have to admit that there is no +valid instance. So, we can also say this class 0:04:10.560,0:04:21.600 diagram is invalid. But if you say it's valid, diff --git a/Uebungen/Blatt05/Exercise05-Task2a-en.sbv b/Uebungen/Blatt05/Exercise05-Task2a-en.sbv index 76532e0..029883f 100644 --- a/Uebungen/Blatt05/Exercise05-Task2a-en.sbv +++ b/Uebungen/Blatt05/Exercise05-Task2a-en.sbv @@ -1,6 +1,6 @@ 0:00:00.480,0:00:06.060 In this task, we are going to model an online -ticketing system for theater. For this system, +ticketing system for a theater. For this system, 0:00:06.060,0:00:11.460 we are already given a very thorough description @@ -19,8 +19,8 @@ some additional notes here for the data types that we might use in our attributes. We can 0:00:29.280,0:00:35.340 -use some given classes, namely price for -prices, calendar date for calendar dates, +use some given classes, namely 'Price' for +prices, 'CalendarDate' for calendar dates, 0:00:35.340,0:00:39.540 and time for clock times. We don't need to model @@ -55,11 +55,11 @@ theater class. And it consists of different rooms. We can't really do anything with that yet because 0:01:24.240,0:01:29.340 -we don't have other classes. (?But we'd hold) -each room, the room is also underlined. So, this +we don't have other classes. But we're told, +each room, the room is also underlined so this 0:01:29.340,0:01:36.660 -is going to be a class as well. Has a name, and +is going to be a class as well, has a name and each seat has a number. So, we have room and seat. 0:01:36.660,0:01:42.780 @@ -111,8 +111,8 @@ just start working out the relations between the classes here right away. 0:02:48.120,0:02:53.520 -I'm just going to start by reading this -entry here. Consists kind of implies some +I'm just going to start by reading a little +into this here. Consists kind of implies some 0:02:53.520,0:03:00.120 kind of relation to other Class because a theater @@ -140,7 +140,7 @@ So, we are going to make that a composition, 0:03:35.640,0:03:44.220 connecting theater to room. And the composition -arrow we get from the draw arrow here already +arrow we get from the drawio here already 0:03:44.220,0:03:49.920 has some multiplicity here, at least one, @@ -191,11 +191,11 @@ anything for us yet. But an event is either a film or a concert. There is underlines. Once again, 0:05:11.760,0:05:18.120 -tell us that these are classes. So, we have +that tells us that these are classes. So, we have the class event. And we have the classes 0:05:20.520,0:05:30.540 -filmed and concept. Each event has a name. +'Film' and 'Concert'. Each event has a name. So, you have the name attribute in Event. 0:05:31.380,0:05:34.800 @@ -203,7 +203,7 @@ Additionally, we have, for a film, the name of the director 0:05:39.180,0:05:47.880 -and the main actor stored. (5 sec.) +and the main actor stored. 0:05:47.880,0:05:54.160 For a concert, the name of the conductor and @@ -241,7 +241,7 @@ joined in the middle here and then just one arrow 0:06:57.960,0:07:04.740 to the event. But this works as well. We can get -rid of these extent labels. Draw arrow adds these +rid of these extent labels. Drawio adds these 0:07:04.740,0:07:09.300 automatically. But the arrow already means that @@ -265,7 +265,7 @@ Because the event isn't part of the theater, 0:07:37.260,0:07:42.600 and the theater isn't part of the event. So, this -is most likely just the simple association here. +is most likely just a simple association here. 0:07:45.660,0:07:52.860 We're not going to use the arrow that draw @@ -277,7 +277,7 @@ child. This is not really all that helpful. 0:07:59.880,0:08:06.780 Instead, we are going to add a label that gives us -some indication of what this association formed, +some indication of what this association is for, 0:08:06.780,0:08:14.100 namely conducts. So, the theater conducts an @@ -329,7 +329,7 @@ and then we can use one of those predefined 0:09:25.440,0:09:34.920 classes that we were told about in the help -text, namely the calendar date. (5 sec.) +text, namely the calendar date. 0:09:34.920,0:09:39.780 It's important here that we make use of @@ -344,16 +344,16 @@ to define our own. So, this is really helpful that these are given to us. We have the time as well. 0:09:55.800,0:10:00.960 -You need the time class that we are given. And we -have the price for the seats. Of course, we can +Using the time class that we are given. And we +have the price for the seats. Which we can 0:10:00.960,0:10:07.080 -just give us the price. And for that, we're using -the price class. And that's our three attributes. +just give as 'price'. And for that, we're using +the Price class. And that's our three attributes. 0:10:09.780,0:10:13.020 There's, once again, no indication of -finding methods here. So, we're going +any methods here. So, we're going 0:10:13.020,0:10:17.940 to delete this method placeholder. @@ -428,7 +428,7 @@ to infinity. So, this can be a relationship of one event on however many dates, at least one date. 0:12:21.240,0:12:26.520 -It can really be zero to however many +It can't really be zero to however many here because the text specifically says 0:12:26.520,0:12:32.940 @@ -453,10 +453,10 @@ then add a reading direction, once again. 0:13:02.940,0:13:07.860 A label with a reading direction -that says the date a room happens. +that says, 0:13:09.540,0:13:16.500 -For example, a room is booked for a +for example, a room is booked for a specific date. So, we can say booked 0:13:19.560,0:13:28.500 @@ -469,10 +469,10 @@ date is taking place in a specific room. So, 0:13:40.080,0:14:03.660 taking place. Or just in. And then reading arrow -in the other direction. There we go. So, happened +in the other direction. There we go. 0:14:03.660,0:14:11.220 -in. (? Do like that). So, some kind of date, some +So, some kind of date, some kind of event is happening in that specific room. 0:14:12.360,0:14:18.120 @@ -480,7 +480,7 @@ Speaking of that specific room, the text says a room where it happens. So, not multiple rooms. So, 0:14:18.120,0:14:24.480 -this is implicated in the multiplicity of one +this is implicated the multiplicity of one here. You can just leave that as the one here. 0:14:24.480,0:14:31.980 @@ -544,8 +544,8 @@ theater and reserves the selected seats. So, we're going to add another method here, 0:16:03.480,0:16:11.160 -which is called "send," which just sends the book -into the theater and reserves the selected seats. +which is called "send," which just sends the booking +to the theater and reserves the selected seats. 0:16:11.160,0:16:17.520 The booking is being sent away here. So, this @@ -593,7 +593,7 @@ booking just having a relationship to the date. 0:17:23.340,0:17:33.640 Namely, being a booking for a specific date -with reading directed from booking to date. Move +with reading direction from booking to date. Move 0:17:34.800,0:17:40.980 a little closer. Let's just leave @@ -620,11 +620,11 @@ And we're told one or more. So, 0:18:14.640,0:18:19.620 the multiplicity on the side of the seat -is going to be one, two, however many. +is going to be one to however many. 0:18:23.100,0:18:30.240 And we can remove this multiplicity down here that -draw arrow added if I can (? get it). There it is. +drawio added. 0:18:32.400,0:18:39.660 Because there's no indication that one seat diff --git a/Uebungen/Blatt05/Exercise05-Task2b-en.sbv b/Uebungen/Blatt05/Exercise05-Task2b-en.sbv index c63e907..6186aa2 100644 --- a/Uebungen/Blatt05/Exercise05-Task2b-en.sbv +++ b/Uebungen/Blatt05/Exercise05-Task2b-en.sbv @@ -40,10 +40,10 @@ attributes or methods. So, we're just going to 0:01:09.600,0:01:16.800 get rid of these placeholders here and just -leave it like this. Then we have our events +leave it like this. Then we have our event 0:01:16.800,0:01:23.640 -that are going on. In this case, this is a film. +that is going on. In this case, this is a film. Since this is a generalization going on here, we 0:01:23.640,0:01:30.420 @@ -71,7 +71,7 @@ our class diagram. So, we need those as well. 0:02:16.440,0:02:22.140 They are given in the text as well. The director -of that famous Volkert Mort. We have a director. +of that famous Volkert Mort. So we have 'director'. 0:02:28.080,0:02:30.000 The main actor is Harry Topper. @@ -93,7 +93,7 @@ With that, we have the event that's going on in our object diagram and its relation to the 0:03:10.800,0:03:17.220 -theater. And we can move on to the dates +theater. And we can move on to the date where this is happening. Or we could move 0:03:17.220,0:03:24.000 @@ -114,11 +114,11 @@ just leave it like that. We don't really 0:03:52.140,0:03:59.640 know how calendar date types are defined. -But let's just assume. Writing this down. +But let's assume it's just writing this down. 0:04:01.020,0:04:06.420 It's happening next year on a Saturday. Saturday -doesn't really come into play. But next year, we +doesn't really come into play here, but next year, we 0:04:06.420,0:04:16.800 can put this as 2021. Since it's 2020 currently. @@ -146,7 +146,7 @@ So, we're just going to pull a single line here 0:04:54.900,0:05:09.360 for which we can copy this. Didn't copy all of it. -There we go. It's a little fiddly sometimes. So, +There we go. Drawio is a little fiddly sometimes. So, 0:05:09.360,0:05:16.560 this is the date of this film. So, this is our @@ -198,11 +198,11 @@ seat number one for the attributes. And another 0:06:44.400,0:06:54.840 one, which is going to be seat number two, which -is going our two booked seats. Both of those are +is going to be our two booked seats. Both of those are 0:06:54.840,0:07:07.920 connected to booking via an aggregation, -as we did in our class diagram. (9 sec.) +as we did in our class diagram. 0:07:07.920,0:07:16.980 Some of these pre-made objects aren't that great. @@ -241,7 +241,7 @@ this room one if we wanted to, just to have one object with the actual name. Rooms have names. 0:08:20.400,0:08:26.280 -And the name is given an hour task as well. This +And the name is given in our task as well. This is the "Bluesky" room. So, the name is "Bluesky." 0:08:30.300,0:08:36.720 @@ -261,11 +261,11 @@ very fiddly. 0:09:14.400,0:09:22.860 I'm not sure what's doing that. But this sort -of works. There we go. If you're using draw, +of works. There we go. If you're using drawio, 0:09:22.860,0:09:26.880 you need to be careful to hit these little -(?angle points) that show up sometimes. So, +anchor points that show up sometimes. So, 0:09:26.880,0:09:33.900 this is our room connected to the seats now and @@ -280,8 +280,8 @@ here. So, you can pull a normal line to the room. And once again, copy this label here, which tells 0:09:50.460,0:09:56.760 -us that this event is happening on this date. -There's something happening in that room. +us, that on this date there is something +happening in that room. 0:09:57.900,0:10:04.320 And looking at our task description again. See @@ -293,7 +293,7 @@ going on. We have a room named "Bluesky." We have 0:10:10.920,0:10:15.360 our two seats. And we have -our bookings. So, that's our +our booking. So, that's our 0:10:16.440,0:10:20.400 object diagram dealt with as diff --git a/Uebungen/Blatt05/Exercise05-Task3-XModeler-en.sbv b/Uebungen/Blatt05/Exercise05-Task3-XModeler-en.sbv index af6a320..a3e9da2 100644 --- a/Uebungen/Blatt05/Exercise05-Task3-XModeler-en.sbv +++ b/Uebungen/Blatt05/Exercise05-Task3-XModeler-en.sbv @@ -1,6 +1,6 @@ 0:00:01.100,0:00:09.160 This is exercise five, task three. I'm going -to use xmodeler software to solve it. I'm +to use XModeler software to solve it. I'm 0:00:09.160,0:00:23.630 going to create a project. Let's call it e5t3. @@ -43,19 +43,19 @@ constraints are basically. We're going to see this now. Okay, let me do the first class 0:01:27.150,0:02:36.150 -diagram. So, we have A, B, C and D. (35 sec) -A subclass of B. (22 sec) There's an association +diagram. So, we have A, B, C and D. +A is a subclass of B. There's an association 0:02:36.150,0:03:12.040 -between C and D. (11 sec) And it is 1 to 1. -(15 sec) There is an association between A +between C and D. And it is 1 to 1. +There is an association between A 0:03:12.040,0:04:01.709 -and C. (10 sec) And it is an aggregation. -(32 sec) There is an association between B +and C. And it is an aggregation. +There is an association between B 0:04:01.709,0:04:25.710 -and D, and it is an aggregation. (19 sec) +and D, and it is an aggregation. And just like that we have the first class 0:04:25.710,0:04:34.900 @@ -68,7 +68,7 @@ they're connected with some kind of association. 0:04:43.320,0:05:03.740 Let's try this here. Now, let's make an A -and a C. Instance. (5 sec) Okay, no warnings, +and a C instance. Okay, no warnings, 0:05:03.740,0:05:10.080 nothing happened. So far. So, good. Let's @@ -99,8 +99,8 @@ It is because of this association here. And we have options, we can actually make the 0:06:24.770,0:06:33.030 -software ignore this issue for a while. But -we can do-, we can consider the constraints +software ignore this issue for a while. +We can consider the constraints, 0:06:33.030,0:06:40.090 we can do it correctly by either creating @@ -156,14 +156,14 @@ we can continue let's do the rest of the object 0:08:14.789,0:08:30.849 diagrams and the other class diagram. Let -me remove this one. (8 sec) Let's try the +me remove this one. Let's try the 0:08:30.849,0:08:45.580 other one. We have B, C and D connected to each other. Let's do this. Not a MetaClass, 0:08:45.580,0:09:17.510 -should be an instance. (10 sec) So, just like +should be an instance. So, just like the previous case, we have this association 0:09:17.510,0:09:31.579 @@ -179,7 +179,7 @@ it automatically named it as aggr2. So, it recognizes that we are doing this one here 0:09:53.250,0:09:59.180 -and now finally, we have link between B and +and now finally, we have a link between B and C, let's try to do this here. So, link from 0:09:59.180,0:10:06.550 @@ -192,7 +192,7 @@ This is true, there is no link between something 0:10:17.540,0:10:26.610 of class B and something of class C. If this -B-, this B that we have here, if it (?were) +B that we have here, if it was 0:10:26.610,0:10:35.100 a specific type of B, which is some A, a subclass @@ -208,26 +208,26 @@ B and C. And the software is recognizing this 0:10:45.310,0:11:42.000 fact. Now let's do the third object diagram, -we have A, B, C, D. (45 sec) And we see that +we have A, B, C, D. And we see that 0:11:42.000,0:11:50.570 this one fits, everything is fine. This one got recognized and is aggr1, this one got 0:11:50.570,0:11:58.440 -recognized two, this is aggr2, this is the +recognized too, this is aggr2, this is the association that was enforced. Everything's 0:11:58.440,0:12:58.680 fine. Now let's do class diagram D, the fourth -class diagram we have A, C, D. (1 min) Right +class diagram, we have A, C, D. Right 0:12:58.680,0:13:16.990 so, this one fits to everything's fine. Let's do the last one. We have A, D, D, we have 0:13:16.990,0:13:52.960 -two D’s. (29 sec) And it is enforcing the +two D’s. And it is enforcing the existence of C because of the same association, 0:13:52.960,0:14:02.510 @@ -243,20 +243,20 @@ first one. We have this aggregation, we just need to change the multiplicity here. We have 0:14:19.230,0:17:23.120 -this aggregation but instead of going to A -it's from-, it's with C and B. (2 min 53 sec) +this aggregation but instead of going to A, +it's with C and B. 0:17:23.120,0:17:30.251 There's a problem here, I meant to edit this one for some reason it edited this one. Let's 0:17:30.251,0:19:23.790 -fix it. (1 min 9 sec) Let's do the first one. -A and C. (41 sec) So, as soon as we created +fix it. Let's do the first one. +A and C. So, as soon as we created 0:19:23.790,0:19:35.100 an A, it required two D’s. Because and A -is inheriting. And A is a B so it’s inheriting +is inheriting. An A is a B so it’s inheriting 0:19:35.100,0:19:40.110 this aggregation here and this aggregation @@ -268,7 +268,7 @@ does not fit. The first one does not fit. 0:19:50.190,0:20:21.980 Let's do the second one. We have B C D connected -to each other. (22 sec) And now is enforcing +to each other. And now it is enforcing 0:20:21.980,0:20:31.730 the existence of a D. So, we have a D here, @@ -279,11 +279,11 @@ another D, for this instance of B. And this does not exist. So, we can already see that 0:20:37.380,0:20:51.820 -it's not fitting, let's continue, let's try. +it's not fitting, but let's continue, let's try. The object B requires a link to an instance 0:20:51.820,0:20:58.929 -of D at level 0. You tell it, Okay, let's +of D at level 0. You tell it, okay, let's choose the same D here, that D that we already 0:20:58.929,0:21:19.750 @@ -291,8 +291,8 @@ have. It does not accept. You see it? So, it wants us to create another D. 0:21:19.750,0:21:29.300 -And then it's says B requires 0, so we choose -the d1 this new d. And now it stops complaining. +And then it's says B requires a link to an instance at level 0 +so we choose the d1 this new d. And now it stops complaining. 0:21:29.300,0:21:36.270 But now it's already different from what we @@ -300,7 +300,7 @@ have here. Here we have one D. And here we 0:21:36.270,0:21:52.200 have two D’s. So, the answer is it does -not fit. Let's do the third one. (7 sec) A, +not fit. Let's do the third one. A, 0:21:52.200,0:22:09.679 B, C, D. Again, as soon as we create an A, @@ -331,12 +331,12 @@ So, we must have two Ds, but here we have just one and now here the last one. Let's 0:22:55.861,0:23:03.059 -do the last one. We have A and existence of +do the last one. We have A, and the existence of A requires the existence of two D’s. This 0:23:03.059,0:23:43.539 is fine. Let's see if there are any further -problems. (33 sec) And that's it. Nothing +problems. And that's it. Nothing 0:23:43.539,0:23:49.820 else is being enforced. Nothing is required. diff --git a/Uebungen/Blatt05/Exercise05-Task3-de.sbv b/Uebungen/Blatt05/Exercise05-Task3-de.sbv index 6a64dc2..fb2ac30 100644 --- a/Uebungen/Blatt05/Exercise05-Task3-de.sbv +++ b/Uebungen/Blatt05/Exercise05-Task3-de.sbv @@ -109,7 +109,7 @@ Allerdings erbt A die beiden Aggregation, die B hat, denn B ist die Superklasse. 0:02:21.700,0:02:29.510 -Und dementsprechend haben wir zwischen A und +Und dementsprechend haben wir zwar zwischen A und C durch die geerbte Aggregation hier mit der 0:02:29.510,0:02:32.040 diff --git a/Uebungen/Blatt05/Exercise05-Task3-en.sbv b/Uebungen/Blatt05/Exercise05-Task3-en.sbv index c24e07b..4d3878c 100644 --- a/Uebungen/Blatt05/Exercise05-Task3-en.sbv +++ b/Uebungen/Blatt05/Exercise05-Task3-en.sbv @@ -60,10 +60,10 @@ this case. And there's an edge between A and C, 0:02:38.040,0:02:45.480 which is fine as well because A's inherit -from B's and do inherit this edge here +from B's and thus inherit this edge here 0:02:46.260,0:02:59.700 -two Cs. So, this edge between A and C is fine. But +to Cs. So, this edge between A and C is fine. But then there is a missing edge to Ds because of this 0:02:59.700,0:03:12.120 @@ -123,8 +123,8 @@ second class diagram? So, here we have an edge between B and C, which is optional. 0:05:16.500,0:05:24.180 -So, this edge is fine. And this object diagram -considering this class diagram, we have an edge +So, this edge is fine in this object diagram +considering this class diagram. We have an edge 0:05:24.180,0:05:29.580 between C and D, which is optional. And that's @@ -199,11 +199,11 @@ Considering the edge between C and D. This is fine as well because there is this optional 0:08:12.840,0:08:24.060 -relationship. So, we have this disconnection as -well. Again, there is a disconnection between +relationship. So, we have this connection as +well. Again, there is this connection between 0:08:24.060,0:08:31.920 -B and C, which is optional. So, there +B and C, which is optional. So here, there is no connection. That's fine as well. 0:08:33.240,0:08:40.620 @@ -244,7 +244,7 @@ why it can have a connection to D. That is fine. 0:09:55.020,0:09:59.820 And there are no further connections, -but there is also no further connection +but there is also no further connections 0:09:59.820,0:10:05.580 required in our class diagram. So, this @@ -255,7 +255,7 @@ How about the second class diagram? In this case, we can check again for our classes. First of all, 0:10:19.380,0:10:28.920 -for our objects, take A and consider the +for our objects, let's take A and consider the connection to a C, which is fine as it is 0:10:28.920,0:10:38.760 @@ -264,7 +264,7 @@ to C. Then we have an inherited connection to D. 0:10:41.640,0:10:52.020 So, A requires a connection to D via inheritance -from B. Have a connection. But again, we require +from B. We have a connection. But again, we require 0:10:52.020,0:10:58.980 to have two connections to D, which we do not @@ -276,7 +276,7 @@ connection. As this optional connection 0:11:08.700,0:11:22.320 is in the object diagram. But again, this two -once more lead to this object diagram not being +once more leads to this object diagram not being 0:11:22.320,0:11:29.940 a valid instance for the second class diagram. @@ -296,7 +296,7 @@ So, it's totally fine because of this aggregation 0:11:55.920,0:12:04.020 here. It's totally fine to have also two -connections to the D object. But our D objects +connections to D objects. But our D objects 0:12:04.020,0:12:12.300 require a connection to a C object. And this is @@ -308,10 +308,10 @@ So, it does not fit the first class diagram. 0:12:20.940,0:12:30.840 Now, we can check for the second class diagram. -Once more, we inherit the connections from B, +Once more, we inherit the connections from B 0:12:30.840,0:12:38.160 -and we have an A object. And so, this A object may +when we have an A object. And so, this A object may be connected to a C object. It is not. But that's 0:12:38.160,0:12:51.000 @@ -320,7 +320,7 @@ check for connections to D. So, we require two D 0:12:51.000,0:12:57.480 objects for each B object. And because of the -inheritance, also required for A object. So, +inheritance, it's also required for each A object. So, 0:12:57.480,0:13:13.140 this A object is connected to two D objects. @@ -343,5 +343,5 @@ you've written what I have said more or less, or at least the reasons for 0:13:52.560,0:13:57.660 -that the object diagram cannot be an +which the object diagram cannot be an instance, then you've fulfilled the task.