To be short, a whole lot! There are a whole load of things which need to be sorted out before CMapp can be pushed towards version 1.0. The following is a short list of things which are of utmost priority (in no particular order - "utmost priority" means "utmost priority" so there's no point in ordering anything).
We need a search interface:
So far, there is no search interface for CMapp. Given that CMapp is database driven, this is means that we can implement some really cool stuff using MySQL's inbuilt searching tools and also some PHP stuff. As one can expect, the search feature has to be done properly and has to offer the user (contract manager) a lot of flexibility. Ideally, there will be a number of search methods (details of this can be found in a KDissert .kdi file here. Note: You will need KDissert for KDE or a similar XML editor to open the file). There is a cool tutorial on the Zend website in which Leon Atkinson deals with the concept of Chained Selectors in which a drop-down lists displays options to a user based on whatever a user selected in a previous drop-down list. If we could implement these into CMapp, we could link select fields together to make it possible for a user to continue narrowing down the search term as required.
An index could be made of the scanned PDF files, which would eventually allow a full text search of all the scanned documents. This might be a bit difficult to implement using PHP, but it is possible and would definitely make life a lot easier for a contract manager.
Other ideas might be to allow a user to specify ranges of documents (this would link nicely with the idea of chained selectors as described above). Your ideas are needed!
We need to implement a "template feature":
An unbelievable amount of a contract manager's time is wasted with repeating the same job over and over again, for contracts that are essentially the same - even if this only involves adding the partner company's name and address on the first page and then changing all references to this company accordingly throughout the whole document. What we need here is a link between CMapp and something like OpenOffice.org or (if we must) Microsoft Word, which will allow us to make it possible to draft a template, based on a previous agreement between two similar parties (or based on a company official template) which would incorporate the contact information (and any other information a contract manager deems necessary) from CMapp directly into the document. Thus, the contract manager's job is made considerably easier.
This could probably be done using XML directly from CMapp. It needs a lot of work, however. It has the potential to become a really cool feature, but if not done properly, it could break the whole application. Any ideas?