The first thing you do when you design software is do a cost/benefit analysis.