Re: Help with design please
From: Danny (danube-dan_at_example.com)
Date: 01/31/04
- Next message: qazmlp: "Design problem while using Builder pattern"
- Previous message: Daniel T.: "Re: Holub on getters/setters again"
- In reply to: H. S. Lahman: "Re: Help with design please"
- Next in thread: H. S. Lahman: "Re: Help with design please"
- Reply: H. S. Lahman: "Re: Help with design please"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sat, 31 Jan 2004 07:57:51 GMT
H. S. Lahman wrote:
>Responding to Danny...
>
>> I'm working on a production reporting system for a manufacturing
>> company and am trying to define the objects.
>>
>> This is my first real life attempt at OOAD outside of university, so
>> I'm kinda nervous. I wondered if anyone could look at my diagram and
>> see if there are any fundamental errors with A) the diagram techniques
>> or B) the objects and the relationships/aggregations etc...
>>
>> http://www.replint.com/class/production.gif
>>
>> I'm basically building a system that will report on the
>> production/activities of several different types of machines and
>> processes (such as extrusion of plastics thru to quality control and
>> packing)
>
>Without more information about what these classes abstract from the
>problem space, it is impossible to say. However, a couple of things
>bother me...
>
>Your high level description says you are reporting on ... machines and
>processes. However I see no Machine class. If it is important enough
>to mention in a one-sentence problem description, I would expect it to
>show up in the model.
Well I decided to call it a process, for want of a better tern, this
was because the process may involve several machines or a persons
task, such as packing.
>I think you are overusing aggregation. An Operator is part of a
>Process?!? Aggregation and composition are special associations that
>describe Whole/Part semantics.
A machine has an operator, and packing is carried out by a person. The
idea of the program is to give some idea of who is doing what amd when
on the factory floor, therefore I thought I may as well encapsulate
the operator in the process, as the factory thinks in processes
related to shifts and products.
>You have roles on only some of your relationships and even then only for
>one end. Roles enhance the understanding of a Class Diagram enormously,
>especially when the roles on each end of a relationship capture
>different aspects of the participation semantics.
Lazyness on my part i'm afraid.
>I assume the arrows with solid arrows and no multiplicity are subclass
>relationships with the arrow on the superclass end. If so, all your
>superclasses have only one subclass. That's a no-no. In the is-a
>relationship the union of subclass members must be a complete set of the
>immediate superclass members. So a single subclass must contain all the
>members of its superclass, which would make it redundant with the
>superclass.
Sorry, don't know what youre saying. Do you mean that I should show
all the derived classes from the base in the diagram?
>You seem to have a multiplicity of 1..= on the Manufacturing Stage /
>Process relationship. B-)
Ack. My error.
>> Each process may have materials input and material output -- WIP or
>> final stock -- there will be labour and an actual process. These will
>> then be wrapped up into a manufacturing stage which -- I'm unsure
>> about -- is also encapsulated in a shift, etc..
>
>Provide a class description and more relationship roles and it may be
>possible to offer more constructive advice. The Class Diagram is where
>all of the crucial problem space abstraction is done. To understand
>that abstraction, much less judge its correctness, requires more
>knowledge about the problem space and what you application is trying to do.
Ok, i'll get back on the case on Monday. Thank you for your advice.
- Next message: qazmlp: "Design problem while using Builder pattern"
- Previous message: Daniel T.: "Re: Holub on getters/setters again"
- In reply to: H. S. Lahman: "Re: Help with design please"
- Next in thread: H. S. Lahman: "Re: Help with design please"
- Reply: H. S. Lahman: "Re: Help with design please"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|