I come up with the shape of the town to try and capture what I want to draw attention to, might be more difficult to do on a 2D tiled map, but if you have something like a clock-tower in the centre of town you want that to be the first thing you see when you walk in, from there I build the town around it, with shops then quest locations then side-quest locations.
The kind of things I build are separate shops for sundries, equipments and magic, then a pub, all of which in the world have a shared jobs board for side-quests, then story locations. I'd bulk out with houses and fake-shops that you can't enter, things like slums and guild-halls I believe should be in their own area, not combined with towns.
In terms of setting, in medieval style games I think a large town should be built around a single, straight road with shops that have houses above them, smaller towns would be built up with a few scattered buildings, I'd only include the internals of buildings that are to do with game-play, so I wouldn't map the indoors of a stable for the sake of it, I'd make the stable out-doorsy, same deal with blacksmiths that don't do any smithy work for the player, I'd make it a dude outside his house with an anvil and a sign above his door.