31.4. Suggested improvements

As means for further individual exploration the CCBPGraph class could be extended by adding (for example) the following features. (There is always a balance to be had between adding a lot of feature and still keeping the interface simple enough to be manageable)

  1. Add customization for the titles of the two axis

  2. Make it possible to adjust the margin color

  3. Make the number of background color bands user adjustable

  4. Add data manipulation so that the input data is specified as a number of historic values for each task. The latest value should be displayed as a mark and the last n values (user selectable window size) shown as a trailing path behind the mark to see how it has moved as shown in for example Figure 31.4

  5. Make use of the MGraph class to make it possible to create multiple CCBP charts in the same image. In order to identify which graph is affected by commands ti would be possible to just add a new argument giving the index to all the existing methods. However, a cleaner implementation would probably use the concept of a "current" graph which receives all the method calls. Implementing it that way would allow us to keep the existing signatures for all existing methods. In order to position the graphs it is probably a good idea to make use of some easy way for the user just to select how many rows should be used and many charts should be displayed on each row (to avoid the end user from having to position the graphs pixel by pixel)