When modelling semiautomatics there are a few things to remember. Firstly, the top portion of the gun should be modelled seperately so that you can animate the gun cycling. (Not sure if you did that or not). Next, when a semiauto is ready to fire, the hammer is back (unless it is a double action semi auto which is few and far between). For some reason, most people model the hammer in its forward position, presumably because that's where it is in the reference picture.
This particular model is very good considering your amount of experience, but it does have a few technical difficulties...
Firstly, the back sight is wrong. As it is modelled it would be tough to aim this gun. It should actually be wider and have a notch that lines up with the front sight. The trigger looks a little thin, you might want to make it wider.
On the barrel issue, modelling a barrel is not a waste of polys unless the player is never going to see the gun from the front (which may be the case in a FPS).
If you are going to have an animated reloading sequence, you might want to model the magazine well and a magazine. You might also want to model a spent shell casing for the firing sequence.
You mention that your model is 684 polys. Do remember that the model will need to be tesselated (all polys converted to tris) to be used in DB. So the number of polygons is probably going to almost double.
All in all though let me reiterate that this is an excellent model thus far.
Intel Pentium 4, 3.4GHz, 1280MB RAM, NVidia Quadro FX3000/256MB, 240GB HD, XP Pro