Richard,
Hope this helps.
Ken
Data in flat files and spreadsheets
Even
though it is not immediately apparent, such data represents propositions that
can be stated in language. For example:
Student
(.nr) achieved Score ( ) in Test (.code) on Date ()
So your
first task is to study the flat files and spreadsheets and extract the fact
types. Then you can put the fact types into NORMA using the CSDP.
Student Understanding
I’m
having a debate about similar matters in a discussion forum hosted by Professor
Dan McFarland at Stanford University. My conclusion is that one must begin with
some very fundamental stuff that is rarely if ever challenged by academics and managers at
Universities.
For
example, exactly what is “understanding” and how can it be measured? People
often say things like “We have to ensure that students understand (insert
subject name)”. But when you question
these folks they often define one set of words with another set of words.
My
position on this is that you have to define things by providing a set of binary
propositions for which evidence can be provided to test whether the propositions
are either true or false. I’ll give an example from my piloting experience:
The student understands how to perform a steep turn
when the following propositions are all true:
P1: The steep turn starts
and ends on the same heading.
P2: After entering the turn, the
aircraft maintains a constant 60 degree angle of bank (plus or minus one
degree) until the roll-out manoeuvre starts.
P3: The aircraft maintains a
constant altitude (plus or minus 20 feet) between the start of the turn until
the roll-out has been completed.
P4: Throughout the turn, the aircraft
maintains a constant speed (plus or minus 2 knots)
In other
words, it seems to me that the only way that you can measure “understanding” is
by measuring some kind of observable behaviour. (Same thing goes for “knowledge”)
Generating Reports
As
you say, if you get the schema right then you can generate any kind of report
that you like.
Getting insight into how you can improve
the education process.
This
is related to the scope of the model (and by inference the scope of the database).
You have to begin by defining the metrics (indicators in business speak). This
has nothing whatsoever to do with ORM.
Either you know what you have to measure to monitor the performance of
the “education process” or you don’t. I’d say that a good place to start is to
define what you mean by “the education process”
You said: “It is difficult to anticipate
questions”
Maybe
I misunderstand you but I must say that I don’t see what the problem is. If you
have implemented a database then you can use SQL to ask any question that you
like so you don’t have to “anticipate questions”, you just have to be good at
writing SQL queries.
Adding new types of data
Again
I don’t see the problem. If you want to change your schema than the procedure
is to begin by changing your object-role model, then you generate a new schema
and then you move the existing data from the “old” schema to the “new” schema.
Don’t see what “flexibility” has to do with it.
“Similar, yet different, ways of looking at
the UoD”
Yes
it is sometimes the case that you can model a UoD in several different ways.
However, the acid test is whether the domain experts agree with the fact types
in each different model.
Limiting the UoD to a single academic
institution
Well,
I just used that as an example of to highlight the relationship between an
atomic fact and a given UoD. It was not my intention to “recommend” that you
limited the scope of your model to a single University. If you need to model a
UoD with multiple Universities then that’s what you have to do (Don’t forget to
follow the CSDP)
“I am wondering if that decision was
correct…”
Well,
at some stage you have to make a decision about the scope of the UoD that you
want to model. I don’t see that the concept of “correctness” enters into it.
“The choice of reference modes seemed
inconsistent with the real world…there is a finite, albeit extremely small,
possibility that this notice can change for whatever reason, even though the
room itself does not change.”
Again,
you just have to make up your mind about what you want to model. According to Dr
Graeme Simsion’s work, data modeling is a creative act not a descriptive act. (See
the research page)
“The
same notice may actually appear on doors to rooms in different buildings.” Then
you model it by defining a fact type that uses Building (.name) and Room (.code)
in a way that means that uniqueness is related to the combination of building
and room. (Same for Campus (.name) and University (.name))
This is
all about figuring out the nature of the “atomic” facts in your UoD.
Name change for a state university
I
can think of two ways to handle this.
(a) You accept that whatever name is in the database is “true today” and put
good procedures in place to update the appropriate columns.
(b) Add “temporal” fact types such as:
“University (.nr) has Name () from Date ()
to Date ()
The problem of changing names and
identifiers is especially true for buildings. You can treat the
changes of building names in the same way as I have suggested that you can
change University names.
There exists a building (or room, or
campus, etc.) That building may have one or more names. It also has one or more
codes/identifiers that appear in various documents, such as class schedules,
maps, etc. to represent the building…Searching for a way to model the
distinction between an actual room and the notice on its door.
However you model it, I recommend that you do NOT use an “ID” (i.e. a GUID) because GUID’s are definitely not
related to a conceptual model.
I
recommend that you use an identifier that you can write down on a piece of
paper and give to someone with the instruction “Please go to this room” (You
could not do that with a GUID)
Previous work (before the year 2000)
indicated that our facilities management organization had assigned identifiers
to rooms (not the same as the notices on the door)……
Yes, it seems to be the case that very few organisations have got a grip on
the “data management” problem. Many organisations that I have seen have the “departmentalitis”
disease.
In other words, departments behave as though they are independent and assign
their own “identifiers” to all sorts of things. This is just a costly way of
creating an expensive mess!