Computer Society Learning Series Webinar Guide to the Software Engineering Body of Knowledge (SWEBOK) V3.0 Intro, Usages and Ongoing Work Pierre Bourque, SWEBOK V3.0 Lead Coeditor 29 June 2016
Project Objectives Promote a consistent view of software engineering worldwide Clarify the place of, and set the boundary of, software engineering with respect to other disciplines Characterize the contents of the Software Engineering Body of Knowledge Provide a topical access to the Software Engineering Body of Knowledge Provide a foundation for curriculum development and individual certification and licensing material For SWEBOK Version 3, objective 1 – to promote a consistent view of software engineering worldwide – has been achieved by a development process that engaged approximately 150 reviewers from 33 countries, whose comments were adjudicated during preparation of Version 3. The editors who edited the knowledge areas were from eight countries. Objective 2, to specify the scope of software engineering with respect to other related disciplines, has been achieved by defining the scope of the software engineering discipline in terms of the first 10 knowledge areas (KAs) listed below. In addition, seven related disciplines are listed below. Objective 3, to characterize the contents of the software engineering discipline, has been achieved by using a hierarchical structure for content. The hierarchical organization partitions each KA into a set of topics with distinct and recognizable labels. Furthermore, each topic is further broken down into subtopics. The topics in each KA are included in column 2 of the Appendix to this paper.
Categories of Knowledge in the SWEBOK Target of the SWEBOK Guide «Applicable to most projects, most of the time, and widespread consensus about their value and usefulness» Project Management Institute - PMI North American Bachelor’s degree + 4 years of experience
Three Underlying Principles of the Project Transparency: the development process is itself published and fully documented Consensus-building: the development process is designed to build, over time, consensus in industry, among professional societies and standards-setting bodies and in academia Available free on the web at least in one format on www.swebok.org
Deliverables: Consensus on a list of Knowledge Areas Consensus on a list of topics and relevant reference materials for each Knowledge Area Consensus on a list of Related Disciplines
Updated Knowledge Areas in V3 Descriptions of all existing KAs have been updated often by newly recruited coeditor(s) Reference material citations have been renewed for all topics of all KAs Breakdown of topics and included topics have been revisited for all KAs
Updated Knowledge Areas in V3 Software Requirements Software Design User Interface Design is a new subarea Software Construction Software Construction Technologies is a new subarea Software Testing Software Maintenance
Updated Knowledge Areas in V3 Software Configuration Management Software Engineering Management Software Engineering Process Significantly different structure Software Quality
New Knowledge Areas in V3 Software Engineering Models & Methods Includes material from previous Software Engineering Tools and Methods KA. Previous Software Engineering Tools subarea has been distributed across all existing KAs Three new subareas on Software Engineering Models Software Engineering Professional Practice Software Engineering Economics Computing Foundations Engineering Foundations Mathematical Foundations
Recognized Related Disciplines Computer Engineering Computer Science Mathematics Project Management Management Quality Management Systems Engineering
Sample Subarea Breakdown of Topics for Software Requirements
Two Useful Appendices Appendix B: An annotated list of IEEE and ISO/IEC standards applicable to each of the KAs. Appendix C: Consolidated Reference List Final consolidated reference list contains 36 reference items
Number of Hits of SWEBOK (As of 25 June 2016) books.google.com identifies 4060 hits for “SWEBOK” scholar.google.com identifies 5930 hits for “SWEBOK” Google.com identifies 95900 hits for “SWEBOK” IEEE Xplore identifies 828 hits for “SWEBOK”
Usage Opportunities of SWEBOK V3 Studying about generally accepted knowledge in software engineering Identifying relevant reference material and standards within a given knowledge area Reviewing software engineering courses focusing on particular KAs. Reviewing coverage of KAs in graduate and undergraduate curricula.
Usage Opportunities of SWEBOK V3 Incorporating consolidated reference list items and standards listed in Appendix B into educational and training materials Developing certification and training programs Developing other frameworks: model curricula, competency models, program accreditation criteria, licensing criteria… Developing educational and training materials Developing software engineering career development programs
Usage Opportunities of SWEBOK V3 Developing job descriptions or competency profiles Situating research contributions within the field of software engineering Structuring asset libraries or repositories Developing survey questionnaires on the state of software engineering practice within an organization or region
Usage Opportunities of SWEBOK V3 Classifying software engineering tools Developing ontologies or knowledge models of software engineering Comparing with bodies of knowledge of other related fields Adopting the development process for bodies of knowledge of other fields or for more specialized bodies of knowledge within software engineering
Call for Submissions and Participation SWEBOK Evolution: Virtual Town Hall Meeting 25 August 2016 Contribute ideas, lessons learned to the next edition of the SWEBOK Submissions due:29 July 2016 Details: www.computer.org/web/peb/engineering-disciplines-committee Contact: Rich Hilliard, r.hilliard@computer.org
Call for Submissions and Participation Topics include (but are not limited to): user feedback, experiences, lessons learned new knowledge areas, knowledge areas in need of refreshment or update integration with other resources (including standards, publications, other bodies of knowledge such as EITBoK and SEBoK) release strategies (e.g., 4.0 vs incremental) enabling technologies for delivery and usage (e.g., wiki, meta data, rich media) All submissions will be made available to the SWEBOK team Selected submissions will be identified for presentation and discussion during the town meeting
Concluding Remarks SWEBOK V3 is a significant new edition of the SWEBOK Guide SWEBOK V3 offers many opportunities for usage Already seeking participation and submissions for next version
pierre.bourque@etsmtl.ca www.swebok.org
Backup Slides 2/22/2019
Intended Audience Public and private organizations Practicing software engineers Makers of public policy Professional societies Software engineering students Educators and trainers
V3 Review Process Approval by the SWEBOK Change Control Board of all changes to initial baseline breakdown of topics, consolidated reference list items and KA specifications Editors from 9 countries All KAs were submitted for public review. Roughly 150 reviewers from over 30 countries Public adjudication of roughly 2000 review comments Formal ballot among IEEE CS members (259 Yes, 5 No) Formal resolutions by IEEE CS PAB and BOG Formal adoption as ISO/IEC TR 19759:2015
Selected Usage Examples « The depth and breadth of SWEBOK coverage in required and semirequired courses varied signifi- cantly. Figure 4 shows radial plots of SWEBOK coverage in a sample of 20 of the 28 programs. The circumferential axes are the SWEBOK knowledge areas as in Figure 3. A radial axis of 0 means no coverage of a topic, a radial axis of 1 means some coverage in a single course, a radial axis of 2 means one required or semirequired course dedicated to the topic, and a radial axis of 3 means two or more dedicated required or semirequired courses. The plots in Figure 4 make clear the wide di- versity of what the sample programs consider core material. Few programs cover all SWEBOK areas well. The most-covered knowledge areas are requirements, design, and management. The least-covered areas are maintenance, configura- tion management, quality, and tools and meth- ods. Many programs skip some SWEBOK areas completely. « Figure 4. Radial plots of SWEBOK coverage in 20 of the 28 programs. The circumferential axes correspond to the SWEBOK knowledge areas in Figure 3. Pyster, A.; Lasfer, K.; Turner, R.; Bernstein, L.; Henry, D., Master’s Degrees in Software Engineering: An Analysis of 28 University Programs, , IEEE Software, Vol. 26, no. 5, Sept.-Oct. 2009 pp.94 – 101.
Consolidated Reference List Not well commented in previous review cycles Few documented examples of usage of the 2004 SWEBOK reference list 2004 list was OK in terms of page count but much too long in terms of the number of references. A consolidated reference baseline list across all KAs was therefore proposed at the onset of the V3 project and all changes to items in this list was tightly controlled Final consolidated reference list contains 36 reference items (see Appendix C of Guide)