An agile contract model based on trouble tickets