When you rotate multiple selected objects and they all rotate about their own axis it is probable that your pivot point is set to 'Individual Origins'. This would mean exactly as you describe that each object selected will rotate about their own origin.
If you don't really care about where they rotate about, you can just use the 'Median Point' as the pivot point, but if you want to make a precise rotation around a specific point, an easy way to do this would be creating an empty at the point of rotation and parenting all the objects you want to that empty. Then, you can simply rotate that empty and all of the parented objects will rotate around that empty. There are other ways to do this but from personal experience I think that if you are just doing a 2 key frame animation then using an empty as a center of rotation is one of easiest ways to rotate about a specific point.
Here is your .blend edited with the group parented to an empty cube and with the correct rotations.