Knowledge Based Tools For Design