A methodology for the concurrent design of products and their assembly sequence