A design methodology for geoinformatic systems