When to Consider Hardware and Software Upgrades