I use to make a few maps back in the day, 5star came to mind.
Personally, a map is a reflection of the style of CS you love to play.
They built iceworld because they want hard and fast gameplay, they made jump maps because people liked to jump and they made soccer maps (where I Jerms actually lol) because we wanted to knife balls around the place.
A great map has 3 things;
(a) Chokepoint: A place where all the action that concerns winning or loosing runs through this place, it can be a room or section of map but to win the round, controlling that chokepoint is vital. It also centralises play and stop spawn camping (like in dust lol)
(b) Fluid balance: Needs a flow, going from a room to a desert isnt good "Chi" as they say. Have consistant mapping throughout, if its a underground base; dont put a freaking car in a room.
(c) Stratergy: Every map has a stratergy, even iceworld. If its a bomb map, make snipe points to protect your bombsite. If its a hostage rescue, put them behind alot of barracades.
Majority of people who play dont see the difference, but a great mapper doesnt need to make his greatest tweaks even known.
Lastly, make a map YOU want to play, not how someone wants you to play. Notice the wording, if youre making a map for a friend or clan mate, thats different. But making a map that youll play makes the process of making better!