Component based architecture