A system that is getting slow often does so because of fragmentation of the data and not having enough free space to swap out (more so in limited memory based systems).
First do you have at least 10% free of disk space on your HD?
Have you ever defraged your HD?
If the answer to both of these questions is no you need to do some basic housecleaning. How you do this then becomes the question.
Do you have a spare (clean) external FireWire 800 drive that is the same size if not bigger than your internal HD which you can use to copy your files to? If you do this is the fastest way to clean things up. Just copy the entire Internal HD to the external (drag the HD icon over to the other HD). Once your files are copied over go into prefs and change out the boot drive to the external and restart making sure your external is the active boot HD. If you have problems at this point you will need to figure out why before proceeding. Once your sure delete all of your files on the internal HD and empty the trash (hold the Option key) so protected files are also trashed. Then copy back from the external HD your files. At this point in time think about what files you don't need to copy back to leave some space.
The other option is getting a defrag program I like 'Drive Genius' but others will also work. Before you use you will need to free up about a 1/4 of the HD to make room for it to work effectively. It also will take more time to run though. I would still backup all my files to an external HD (like above).
One thing I like to do is setup two (three on larger HD's) partitions on my systems HD's where the first holds my Apps and the second holds my data. That way once this is done I only need to have my OS backup HD hold my Apps and then I have a second backup HD which I use backup program to backup the data partition so only altered or new files are backed up (Apples Time Machine will also work here (newest version). The OS backup HD give me a way to switch out the bootable HD so I can defrag the HD twice a year.
In any case you may also want to increase the amount of memory and if you can't free up free space on your current HD (too small) think about using the first method to prep a new larger HD to swap out your current HD.