Acquiring Design and Analysis Knowledge for Knowledge-Based Systems