I am currently collaborating to a draft proposal for a new system where the main goal is to plan and then manage "assets" to satisfy "needs". An example (intentionally vague) - let's suppose you want to use this provide hotel rooms for people attending conferences and technical events - so you have a list of dates/places/expected attendances for the next year, and for each you have to contract rooms at hotels, based on various criteria including distance from the event location, price, transportation, catering, etc.
During the preliminary phase (let's say, 1 year before) you play with different scenarios, so after having created a "first draft" plan based on the actual conferences dates and attendance, you start fiddling with the numbers.
So for example
- "clone scenario 1 and create scenario 2" (this would just bulk copy everything)
- "increase expected room costs by 3% for all hotel space in Philadelphia from March 1st to April 15th"
- "split all hotel space in Detroit in Autumn - split moves 20% of spaces in a LUXURY allotment and increases cost for these by 15%, the remaining 80% stays at the same cost but is labelled as BUDGET"
- "For all LUXURY spaces in Detroit create requirements for Shuttle Services from Hotel to Location where the HTL-LOC distance is > .4 Km"
- "drop all LUXURY spaces in Detroit on September-15 along with linked services over "
Being a developer, I would find a sort of "mini-SQL" language more appropriate for this kind of operations (even if coupled with some graphical representation of the various allotments, always synched to the last executed command, so that the user can get a visual feedback of what is happening), but maybe I am just missing something due to ignorance/cognitive bias.
Is there some way to make this workable with a purely graphical interface (take in account that the number of "assets" in a specific scenario may be in the 3000-5000 range)?
Any specific site, application or book where I can find more about such an approach?
Additional note: I understand that users (even if in the specific case they would not be "infrequent users") might find a language cumbersome or not intuitive enough - what if we provided a sort of wizard to compose queries, bit like the one used in Outlook to define rules?
E.g. you first select the action from a drop down menu:
If you select
Increase the wizard will ask you for which of the (numerical) values you want to alter (
number of rooms,
number of beds...) then by how much, then over which period, which city and so on. Once the query is "completed" you could have a button to "simulate" the effect (so the sistem will tell you
this will modify 63 records by just performing a
count(*) using your parameters for the where clause and therefore the user can get an idea if this is roughly what he or she was expecting: if you get
this will modify 78605 records you would realize that maybe
city=all was not what you wanted) and when the user is satisfied another button allows the action to be performed for real.