General Motors (GM) interview question

How will you design a software component to send signals to different controllers using different communication protocols?