Advanced software tools narrow the prototyping-implementation gap