Keep the team together
By focusing on the execution we were able to keep the project on track, and deliver on time. Despite knowing, that it’s inevitably our last project together, we kept our heads down and worked through all difficulties.
Use technology creatively
Combining the document model with the data model is quite an unorthodox way of storing financial data. The volume of aggregation and the amount of data has made it possible. This saved a huge amount of development time, as we didn’t have to consolidate two data layers.
Use only trusted suppliers
We have made the mistake of outsourcing some report generation tasks to a former colleague. Unfortunately he never delivered, and if it wasn’t for the goodwill of the University (and the time pressure on them) we would have had to do those parts as well.
Make sure the specification is complete
The report requirements were so poorly thought out, we had to go over and over them with the customer so many times. I’m sure we wasted at least a week just on that. The customer had no idea what they want there, besides the reports that were already implemented in the user interface. We were quite lucky, as we would not be able to deliver anyway.