What Knowledge Is Important to a Software

0
352

Software engineering licensing bodies, uni-versities designing curricula, companies focusing on better training for their staff,and the IEEE in its Software Engineering Body of Knowledge (SWEBOK) project areall pursuing efforts to define the subject matter thatsoftware professionals should know. Whereas mostgroups are basing their decisions about the softwareengineering curriculum on the opinions of experts inthe field, we were more interested in learning whatsubject matter practitioners themselves actually findmost important in their work.From May to October 1998, my colleagues and Isurveyed software professionals representing a widevariety of industries, job functions, and countries tolearn which educational topics have proved mostimportant to them in their careers and to identify thetopics for which their education or current knowledgecould be improved. We used the responses to the 75questions in our survey to develop three sets of data:the importance of various topics taught in computerscience, software engineering, and computer engi-neering curricula, the emphasis educational institu-tions place on these topics, and what practitionersbelieve they currently know about the topics. Our survey reinforces current perceptions about theimportance of some topics, but it also highlights top-ics that are sometimes underemphasized or overem-phasized. For example, the survey results indicate thateducation programs emphasize mathematics, chem-istry, and physics more than their importance to prac-titioners seems to warrant; furthermore, practitionerstend to forget this material. On the other hand, thereis a clear knowledge gap and a reliance on on-the-joblearning for topics related to software processes, peo-ple skills, and human-computer interaction.The sources of information about the knowledgethat is important to software engineering include thelatest technical literature, existing educational pro-grams and licensing requirements, and the overviewsof the field that experts are developing.This survey incorporates significant improvementsin methodology, questions, and sampling comparedto our original survey on the importance of softwareengineering topics conducted in 1997.