Effects of component commonality and perishability on inventory control in assemble-to-order systems