Software engineering, both as a discipline and as a profession, is at a pivotal point in its evo-lution. Although software has become critical in the development of most new human-created systems, the concepts, principles, and methods for engineering software are still neither well defined nor uniformly agreed upon. The lack of consensus regarding software engineering practice and the requisite competencies creates confusion and has serious consequences for the evaluation, acquisition, and application of software engineering knowledge. This report presents an effort to organize and catalogue a body of knowledge for software engineering and to provide a systematic, concise, and complete description of the software engineering discipline. This body of knowledge can assist organizations in defining and improving the software engineering competencies of their workforces; it can help educational institutions in defining software engineering curricula; it can provide a basis for classifying academic and industrial research and development efforts; and it can improve the understanding and prac-tice of software engineering.
Date added: 10/23/2008Bodies of Knowledge (BoK)