Couch cushion upholstery is often not rough enough to keep the cushions from sliding. This means that time and time again, you'll have to push the cushions back in place in order to sit comfortably, and to keep your couch from looking sloppy. A very easy solution to this problem exists, and it won't cost a lot of money.
Go to any place that sells carpeting or rugs and look for non-slip mats sold to keep rugs from sliding around on smooth surfaces. If you can't find a place locally that sells these, you can order them online. Choose one close to your couch's length.
Remove the couch cushions, if possible. Measure the length of the couch (on the inside sitting area) and compare this to the length of the non-slip mat.
Trim off any excess length (or width) from the non-slip mat. Vacuum the area beneath your couch cushions to remove dust and crumbs--this way the non-slip mat can get a firmer grip.
Place the non-slip mat firmly on the couch, pressing it down and smoothing any lumps or bumps.
Place the cushions on top of the mat, in their proper placement on your couch. Your cushions should now stick more firmly and not slide around.
Instead of these mats, you can try other materials--that you may have around your home--which provide a non-slip surface for the cushions. Even a piece of rough canvas may help--it depends partly on how slick your upholstery is.