drawScout is a tool, developed as part of my third year project work on
timetabling. There were three key motivations for its development:
- Part of my work involves improving the interface of the existing
timetable model. A timetabler wishing to schedule project orals on paper
would be able to arrange information in a number of different ways. A lot of
this may be down to personal preference, but the layout may, nevertheless,
also aid the timetabler in his/her task. I wanted to provide the timetabler
with a tool that could be used in conjunction with the structured interface,
to carry out the timetabling task.
The timetabler shouldn't be required to repeatedly type '?' into the tkeden
input window, every time they wanted to know the current value of an
observable. Surely, the observables should be, well, observable!
- Arguably, the best way of understanding an existing model is to interact
with it, changing the values of observables and tracing the updates of other
observables by dependency. After spending many hours attempting to understand
various models, I realised that I was frequently asking tkeden to tell me the
current value of certain observables, using '?observable_name'. This repetition
became frustrating, and I decided to create some scout windows, the content of
which was linked to observables in the model by dependency. This method, whilst
effective, was not ideal. It still took a considerable amount of effort to make
the observables observable.
- In the early stages of model development, there is no interface through
which to observe the model, and changes to observables. Surely it is sensible
to suggest that a "mock interface" construction tool would aid the process of
development by providing a means to observe changes more readily, and to
experiment with interface design issues, such as a colour scheme.
I hope that drawScout helps to address these issues, and that it is something
not only of use to me, but to anyone developing, or interacting with any EDEN
- drawScout has been developed for use with tkeden-1.46
- Variable names all begin with "DS_" (considering namespace issues), and
the drawing board and mode switcher are opened in separate windows so that the
tool can be used in conjunction with other models.
- To create a scout window, first click on "create" in the modeSwitcher
window, and then click on the drawingboard, and drag the cursor as desired.
The first window you create will be DS_win1. To define the content of this
window, type "DS_win1content is x;" into the standard tkeden input window. "x"
MUST be a string. If "x" is not of string type, you will need to type
"DS_win1content is str(x);" The next window to be created will be DS_win2, the
next, DS_win3 and so on.... The infobar just below the drawingboard should
display the name of a scout window on mouseover. To move, resize or bring a
scout window to the foreground, use the manipulate mode.
See the drawScout tutorial for more information.
- Currently, you can only create TEXT windows. However, the "expert user",
might like to redefine a scout window that they have created. To do this,
simply view the scout window definitions, copy the appropriate window
definition into the tkeden input window, and change as desired.
- You cannot currently destroy any window that you have created. You can,
however drag it out of view. A tip - If you wish to move a scout window to one
side, temporarily, drag it off the right hand side of the drawing board in
manipulate mode. It can then be retrieved by simply resizing the main drawing
board window, and dragging it back on to the board. If you wish to remove a
scout window from view permanently, simply drag it off the left hand side of
the board. I anticipate that, the majority of the time, those using the tool
will simply redefine the content of created windows as required, rather than
destroying those no longer required, and creating more.