Resource allocation and optimal release time in software systems