I wonder if Shockwaves cannon arm always stays as a cannon? Or does it ever transform back to a "normal" hand and arm? Other characters such as Ironhide seemed to just develop and grow the guns on his arms when ever a fight was going to occur.
In its original appearance it was a hand, it wasn't until subsequent appearances that it was a cannon.
I believe Ironhide stores his cannons in side of his altmode (like a hollow place in his alt mode). Shockwave's cannon becomes the cannon on his cybertronian tank mode.