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.