Design and Development of Knowledge-Based Systems: From Life Cycle to Methodology