A methodology for developing component-based software with generation and assembly processes | IEEE Conference Publication | IEEE Xplore