Hola,
De software (aunque no ande mucho por este tema) puedes probar con Google SketchUP o Microsoft Office Visio.
Para crear los mapas, puedes utilizar el tag (etiqueta) html "<map>"
Un ejemplo de su implementación:
<img src="planetas.gif" width="145" height="126" alt="Planetas" usemap="#planetmap">
<area shape="rect" coords="0,0,82,126" href="sol.htm" alt="Sol">
<area shape="circle" coords="90,58,3" href="mercurio.htm" alt="Mercurio">
<area shape="circle" coords="124,58,8" href="venus.htm" alt="Venus">
Demo en vivo.Y para añadirle ciertos efectos puedes utilizar la librería
jQuery y sus efectos (o algún plugin adicional).
Adicionalmente si no quieres usar <map>, puedes meter una imagen y utilizar la técnica de
CSS Sprites.
Saludos