Erwin and Visio can reverse-engineer tables/views. SQL itself can provide the code for all objects and you can look at sysdepends/syscomments for additional information (may not always be 100% accurate though)
Good Hunting!
AJ Ahrens
webmaster@kritter.net