Sunday, February 18, 2007
Studying again early this morning. Awaiting my study group
meeting. You know that I think because of the ways that I have to
study to learn things that precision is something that always bothers
me and makes me unsure of my answers. Take for instance my current
work in studying OCL. The questions at hand needed to be answered for
the test are kind of like requirements for a system. I am reviewing
what it means for a UML diagram to be complete. I am studying how to
make it complete OCL expressions are added to round out the diagrams
completeness. It may be apparent to you but it was not to me that the
answers on the test can only be as complete as the questions are
complete. I read that in OCL attributes and associations are the
values of the derived element must always be determined from other
(BASE) values in the model i.e. diagrams. Omitting the way to derive
the element value results in an incomplete model. So using OCL, the
derivation can be expressed in a derivation rule. The question states
clearly, "Express the following requirements formally." The question
is restricted to what requirements are expressed. It goes on to say,
"Define suitable predicates and functions to represent the basic
element or concepts in the requirements when necessary." The "when
necessary" part I missed until typing it just this moment. The skill
comes in here in how you can read the question. A learning disability
disadvantage that I possess. I immediately feel uneasy by this
question because I intuitively see it as unspecifiable because there
are not enough requirements to be complete. For instance, the last
question says, "Each file is owned by and authorized user of the
system." The word authorized is in italics. Does this mean that I
should specify what authorized means or does it mean that authorized
is understood and it is a restriction on an entity called owner. Can
owner be specified or is it understood and is a relationship between a
file and a user and user is the entity. Now I chose authorized to be
the unspecified attribute of user. What does the script say for the
graders of this test. Did I choose it the same way that they did? My
uneasiness makes this question unbearably hard in my mind and makes
for a testing session of punishment. So I often come up with a canned
answer that I think is good enough. What I think is good enough is
often not complete enough for the tester. So given more time I will
give more answer. I have answers to this question but the study group
has yet to respond with whether they think that they are good
answers. Also my answer without a UML class diagram makes it, in my
mind and maybe not in the mind of the tester, more complete ...but
maybe they don`t want a diagram. If they answered the question with
ZED could they be able to have a diagram? It seems as if when this
question was just ZED it would have been impossible for me to tell
what was pertinent to a respectable answer and what was not. At least
with UML and OCL it feels more complete to me. A boolean in the
diagram that represents "authorized" seems to be well specified to
me. But today....I learn that Attributes or operations may be defined
in the class diagram by adding them to a type, but they may also be
defined in an OCL expression. In that case, the new attribute or
operation need not be shown in the diagram. This brings me back to
the question is not well specified. If they don`t want diagrams in
the answer then you would have to specify all attributes and
association role names but some are not specifiable because the
question does not go into any depth as I have said above. This kind
of thing just sucks the study time right out of any productivity I may
have had.