OK, great guidelines for packaging, then.
So how do you go about so you know that you have this large set of elements, what's the first steps
you do to try to find the packages?
That's what we're going to talk about here.
So let's take this concrete example.
So we have load units of, for example, the subtypes train package, container truck.
And we have a shipment that is including a number of shipped units.
And it's the shipper that sent it to the receiver.
And we can have different shipment types.
And the receiver is a party who could be either a person or an organization.
So this is just a sub set of all the classes, of course, needed in complete logistics domain.
But let's say that we try to see if we can package these classes into some larger chunks.
So you start by considering the uppermost class in each generalization or aggregate structure to a package.
So do we have any generalizations going on here?
Yeah, we have one here and we have one here.
Right.
So that's rule one.
Then you consider each class not in a generalization or aggregate structure to a package.
So let's see, which other classes do we have?
We have shipment and shipment type.
Right.
Then you do three refine the packages by applying the whole part organization of the problem domain
that its experts use.
So you have to start thinking yourself and see that.
Yeah, OK, I could have a shipment type package and a shipment package, but I know semantically that
shipment types and shipments are very similar.
Right.
Or they're very connected, not similar, but they're very connected, of course.
So that for I will actually consider them to be the same package.
And then for I refine the packages for minimal interdependency between the packages.
So I try to see how could I minimize the dependencies and this case, I think it's already good.
That means that we should also have the shipment type and shipment in the same package.
So that was kind of four easy steps here.
So what will the result look like in this case?
So this would actually result in three different packages, shipments package, a load Lajeunesse package
and the party's package.
Of course, this was a very simple example.
And I sort of showed you when we now evaluating packages, you usually don't have just one or two classes
in the package.
You usually maybe have five or six or seven classes in a package.
But also you can actually start finding packages top down very early on.
And in that case, you can actually just have one or two classes because you know that they are going
to contain more when you start documenting more and finding out more about the demand.
But this was a very simple example of a kind of a four step rule that you use here.
And in the next section, I'm going to talk about how you can evaluate packages better.
Very good.