Software Development for Financial Markets