Hi,
I am looking for some ideas around how ISIS could be helpful in the following 
Use Case. N.B. For non-disclosure reasons, I have to mask the real problem 
domain however at the same time try and give you a sense of what it all about 
and the degree of complexity.
UC1. "Apply for 'XYZ'"
N.B. 'XYZ' in truth has many variations ('XYZa, XYZb, XYZc, ...) which differ 
substantially in the information that must be collected from the Applicant(s). 
There is only a very small subset of information that is common.
1. The Applicant(s) (individual(s)) core details (name, contact details, dob, 
identity document number, ...). Depending on the type of 'XYZ' a very large set 
of additional information about these parties must be collected (e.g. 
educational qualifications, military history, job history, ...)2. Depending on 
the type of 'XYZ' and the answers to previous questions, information about 
other Parties ("Organisation" or "Individual") must be collected.3. The system 
needs to be reactive to the user input. The user should only be presented with 
the relevant forms question/input that comply with the rules for the 'XYZ' type 
and context (their answers to previous questions that may trigger another set 
of questions).4. The system should group questions into multiple input forms 
rather than have one large form.5. The system should allow the user to 
"navigate" between the collection of forms until the "OK to submit" rule is 
satisfied, only displaying the relevant form questions for the 'XYZ' type and 
context.
There over 1500 information elements in the superset and it is likely that even 
for the simplest 'XYZ' type (single party), at least 50 information elements 
will be required. There will be collections in some cases (e.g. "job history").
The rules while many, are not complex (no calculations) and focused around "If 
the user answered "yes" to this question then ask them to complete another 
section of information." Some rules will apply to multiple 'XYZ' types. I 
ISIS allows us to hide/unhide, enable/disable properties, objects, etc. 
dynamically. It's just a question of the rules. Coding the rules would be 
difficult to maintain because of the size of the data set and the number of 
'XYZ' types (About 10 main types, with each type having several variations).
>From a domain model perspective, there is :
A "Party" component which has Party details, Party relationships, contact 
details. fairly standard stuff
A "XyzApplication Lodgement" component that is centered around a 
Moment-Interval archetype called "XyzApplication" which as you might guess, has 
a large number of MI-Detail class/object (e.g. JobHistory). And it has a large 
number of Role archetype class/object that are roles played by "Party" wrt 
"XyzApplication". 
Any thoughts on how and what for the rules management and present "smart form" 
would be appreciated. 
N.B> If you think you might like to answer this, there is no urgency for 
answers - if I don't see anything for a few weeks, I will try again :)
Regards,David. 
 

Reply via email to