Developing a trading system can be challenging, and streamlining—that is, industrializing—this process is one way that businesses can achieve high performance.
Most traders, when asked about the group who builds and develops the software for trading systems, cite two main challenges: the features they need are not available when they need them, and they discover bugs when using the software.
For trading systems, waterfall methodology in the development is often too onerous and slow. On the other end of the spectrum, chaos can ensue from releasing code without sufficient testing. Agile lies somewhere in the middle, requiring interactive, dynamic collaboration between team members.
Accenture's methodology for trading systems development
At Accenture, we recently worked with a client on the agile development of a trading system and saw the following results:
- Twice the number of releases each year.
- Twice the revenue-generating features per release.
- A drastic reduction in the number of bugs.
This methodology builds on the agile method by developing miniature specifications and plans. We provide revenue-cost estimates for requested features, and a profit profile per request. This allows traders to see the break-even point of feature requests, and to prioritize which features they would like to see in future releases.
Another important offering is regression testing: ensuring that new releases are compatible with previous ones to reduce the risk of production defects.
What methodology do you use to develop your trading systems? What challenges do you encounter in this process?