Personally, myself, I pick the fish first and then design the tank around it. My goal is to replicate the natural environment of the fish enough to make it happy, and hopefully enough to encourage it to breed.
For example, one of the fish species that I keep is Elassoma gilberti. They live in Florida, in the densely vegetated swamps. They eat a lot of insect larvae and they're territorial; only the dominant males color up completely. They're also one inch long, so a strong current can push them around a little bit more than it would a larger fish.
With that in mind, I designed their tank. It is a 55 gallon long instead of tall, because the Elassoma enjoy occasionally sitting on the bottom. There is kitty litter substrate (any nutritious substrate would do) and full spectrum light bulbs, to encourage growth of live aquatic plants. I have colonies of grindal worms and packages of frozen bloodworms for the adults to eat. The current is on a gradient with some regions of the tank faster than others, so the fish can swim in the strong part if they want to play and take a break in the stagnant part if they get overwhelmed. There are no larger fish in the tank to eat my little one inch Elassoma. They have enough space to claim territory and for there to be multiple dominant males at one time. The subdominant males have enough room and vegetation to be able to flee from the dominant males and not get beaten up. It's a tank designed just for them, and recently I saw fry.
Pick the fish species you want first, and then research what type of environment it needs. The tank I described above would be awful for riffle dwellers like darters and shiners. There are lots of different types of tank biomes, actually, from the rock setups of Mbuna cichlid keepers to the blackwater of Amazon River fishkeepers to the planted tanks I have. What kind of environment is your tank? What fish live in such environments in the wild? That's what you have to look at. Find a list of fish species and look at as many species as you can. Do your own research to discover if that fish would be comfortable with the tank you have now.
http://en.wikipedia.org/wiki/List_of_fr ... sh_species
Make sure the new fish is compatible with the fish you already have, too. For example, my Elassoma gilberti spend most of their time on the bottom. But they'd get massacred by the other fish already in your tank, so you couldn't put them in your aquarium. A crayfish is also a bottom dweller, but it might rip up the fins of the fish you already have. So species compatibility is also something you should research.
You have to ask yourself what kind of tank you want. It the aquarium simply a box within which you place pretty shiny object-fish? Or is it a true home centered around and catering to your favorite species, within which they can really have enough room and comfort to reproduce? If you have the second, you may get the opportunity to observe fish spawning behavior. Some fish, like sunfish, darters, and my own Elassoma, are far more colorful, active, and interesting when spawning then they ever are otherwise.