A methodology for optimal design of shells