A Comparative Analysis of Software Engineering With Knowledge Engineering
Software engineering is not only a technical discipline of its own. It is also a problem domain where technologies coming from other disciplines are relevant and can play an important role. One important example is knowledge engineering, a term that the authors use in the broad sense to encompass artificial intelligence, computational intelligence, knowledge bases, data mining and machine learning. They see a number of typical software development issues that can benefit from these disciplines and, for the sake of clarifying the discussion, they have divided them into four categories: planning, monitoring and quality control of projects, the quality and process improvement of software organizations, decision making support, and automation.