In David's example there would be three classes on the diagram: a Person (green), a Student (yellow), and an Enrollment (pink).
In your later example, the system will need to take a "snapshot" (I think there's a class there!) of the master data at the download event to save for comparison when you get the upload event. You're right that this is a typical problem for long running processes.
From: Gyula
<csomgyula@...> To: colormodeling@yahoogroups.com Sent: Tue, October 27, 2009 3:14:46 PM Subject: [colormodeling] Re: Everything is changing?
Thank you for your answer!:)
Regarding the student question... When you refer to the term "student" do you mean the general term (the student role!) or a particular person being a student (a concrete person who is a student)?:)
Regarding versioning.. . You caught me:) My current project experience comes from the govermental area, from a large program of multiple projects. However within this context I've met the following problem domain which is not goverment-specific (at least I think it isn't) and requires versioning:
The authority we are working for does many "offline" works. Here "offline" means something that is far from the central office, and detached from the system we are building.
The general workflow is the following. The person downloads the master data from the system to his workspace, goes out, does his home work, comes back, uploads his work data into the system, which is then postprocessesed (audited, evaluated, reported, etc.).
In this context there can be a significant difference between the two dates (downloading the master data and postprocessing the work data), even a month can elapse... And here comes the trick:) The office's main activity is to check business entities represented by the master datas in the system. Thus when postprocessing someone's work results, the system must work against the master data that was valid when the work was executed. Hence the system must preserve older versions of master data.
I think this might be a general problem eg. for systems dealing with long running tasks and processes.
Opinion?:)
Cheers,
Gyula
--- In colormodeling@ yahoogroups. com, "David Anderson" <dja@...> wrote:
>
> It's great to see some traffic on this list. :-)
>
> Student is a role played by a person - correct. It is never a moment-interval. A Student might enroll for a class or have a period of registration for a degree or a set of classes. The pink moment-interval would be the PeriodOfRegistratio n or Enrollment.
>
> The other example is interesting. To some extent you need to decide on the scope of what you are doing. Is Address just a useful piece of data about a person? Are you interested or not in tracking the lifecycle of the location?
>
> For example you could describe a green thing Builing and it in turn has a Location (green) which has a Street (green) which would have a NameAssignment (pink) to a Name (green).
>
> You are very unlikely to want this level of detail if you were building a system to track eCommerce purchases. You'd only want it if you were building a GIS system for a local government, for example.
>
> David
> http://www.agilemanagement.net/
>
> --- In colormodeling@ yahoogroups. com, "Gyula" <csomgyula@> wrote:
> >
> > Hi everyone!:)
> >
> > Having some experience in modeling, though limited in color modeling I have a question which seems typical for me:
> >
> > (At least for me) it seems that everything is changing and bound to time: things, parties and descriptions, too. And in many cases (office-like, auditing, etc.) systems has to preserve the older record versions and many of them needs to store time data. How does this effect colour modeling?
> >
> > For instance take the Student Registration domain:
> >
> > From one viewpoint the Adress is a thing, from another it's a moment-interval (for instance the street can be renamed resulting in different address versions for the same place). How should one model this situation? What will be the archetype of an address version?
> >
> > From one viewpoint the Student is a role, from another it's a moment-interval ("being a student" has a start and end date). How should one model this situation? Should we split the student entity into a role- and a moment-interval entity, introducing unnecessary complexity? Or should we merge them introducing an entity having two different archetypes.
> >
> > Any idea? Anyone who met similar situations?
> >
> > Cheers,
> > Gyula
> >
>
Hi everyone!:) Having some experience in modeling, though limited in color modeling I have a question which seems typical for me: (At least for me) it seems...
You are correct. Colors are defined by the relationship of the object with others ... collaborations. Yet there is usually a color that is dominant. If there...
Thanks for your reply:) As you adviced I ran through the "Choosing your Model Context Strategy" chapter. Just to make sure I understand your thoughts: do you...
... Yes. ... Yes. In a particular context there is a dominant color. If the dominant color of the concept of student is Pink (Moment-Interval) probably for ...
You might be interested in another related discussion on the featuredrivendevelopment.com website if you've not looked there already. Color may indeed change...
Thanks for your reply! Just to make sure, do you mean the "DNC and the Moment-Interval Archetype" thread? I've searched through the forum for the "archetype"...
It's great to see some traffic on this list. :-) Student is a role played by a person - correct. It is never a moment-interval. A Student might enroll for a...
Thank you for your answer!:) Regarding the student question... When you refer to the term "student" do you mean the general term (the student role!) or a...
In David's example there would be three classes on the diagram: a Person (green), a Student (yellow), and an Enrollment (pink). In your later example, the...
Hi Gyula, ... I suggest you to have a look at the Event Sourcing pattern to capture events from the mobile system. ... I understand the need to preserve older...
I'm not authorized to go into details, so I try other but similar samples. 1. Say you have a weather forecasting company. You run a central system which stores...
Hi Gyula ... I would say you need both the data and the rules lead to such decision. ... If it is functional business requirement belongs to analysis as much ...
Yes! It makes sense:) Storing events (eg. the changes, the deltas) is a nifty approach. I think this approach also relates to non-functional apsects of the...
... True. But you can use rolling snapshots. But the question is how many times you need to dig in to the far past to find justifications for a business...
The rolling snapshot is a nifty idea:) Regarding the banking example I see your opinion (at least I think so). Processing operative data (actual rules) and...
Hi For brief introduction to historic values and snapshots see http://www.step-10.com/SoftwareDesign/ModellingInColour/HistoricValues.html For a brief...
I'm going out in the limb here. There are far more proficient people reading this list then me so they may correct me any time. Price is usually a value object...
Hi Nuno -- Try starting with Product (description), in blue of course, rather than a (thing). That description may include certain "fixed" value attributes...
PS, Nuno -- I just saw Palmer's message... [Date: Oct 28, 2009 10:40 AM] Start with his first link, on "Historic Values" ...and keep reading. Steve -- you...
Thanks for the input Ken. ... It depends on the domain. In a warehouse all products have an SKU so product is this context is a thing. Yet for cataloguing, UPC...
Hi David, ... Agreed, ... Not so sure here. From analysis point of view yes, but from a design stand point not so sure ... ... In a domain you might find for...
Nuno, I can't disagree with your post. You are clearly very good at color modeling. However, I would caution against mixing implementation detail with...
... Agreed. That is the beauty of DNC and SOM Patterns. They help discovering the domain to great detail, not leaving one rock unturned. ... I'm very...