Saturday, April 10, 2010

What is the SWEBOK Guide?

SWEBOK  SWEBOK or Software Engineering Body Of Knowledge is an all-inclusive term that describes the sum of knowledge within the profession of software engineering. Since it is usually not possible to put the full body of knowledge of even an emerging discipline, such as software engineering, into a single document, there is a need for a Guide to the Software Engineering Body of Knowledge. This Guide will seek to identify and describe that subset of the body of knowledge that is generally accepted.

SWEBOK Guide is developed by the IEEE Computer Society with leaders from industry and academia. It is ratified by ISO-IEC 24773 standard as the BOK for software engineering certifications internationally. The CSDA and CSDP are the first 2 certifications to conform to the ISO-IEC standard.

Here are the SWEBOK knowledge areas, its sub areas, and it’s references and suggested books.

1. Business Practices and Engineering Economics (3-4% questions in CSDP)

    1. Engineering Economics
    2. Ethics
    3. Professional Practice
    4. Standards

No book-length references are recommended for this topic.

The following books are suggested as supplemental reading in this area:

    • Morality and Machines: Perspectives on Computer Ethics, Edgar, S. L., Sudbury, Massachusetts: Jones and Bartlett, 1997. ISBN 0763717673
    • Computer Ethics, 2d Ed., Johnson, Deborah G, Upper Saddle River, NJ: Prentice-Hall, 1994. ISBN 0130836990
    • Smith and Roberson's Business Law, 11th ed., Mann, Richard A., & Barry S. Roberts, Cincinnati, OH: West Thomson Learning, 2000. ISBN 0324121849
    • Engineering Economy, Thusen, G.J., Prentice-Hall, 2000. ISBN 013028128X

 2. Software Requirements (13-15% questions in CSDP)

    1. Requirements Engineering Process
    2. Requirements Elicitation
    3. Requirements Analysis
    4. Software Requirements Specification
    5. Requirements Validation
    6. Requirements Management

Any one of the following books is recommended in this area:

    • Software Requirements: Objects, Functions, & States, Davis, Alan. Upper Saddle River, New Jersey: Prentice Hall, 1993. ISBN 013805763X
    • Practical Software Requirements: A Manual of Content and Style, Kovitz, Benjamin L., Manning Publications Company, 1998. ISBN 1884777597
    • Mastering the Requirements Process, Robertson, James and Suzanne Robertson, New York: Dorset House, 2000. ISBN 0201360462
    • Requirements Engineering: A Good Practice Guide, Sommerville, Ian, New York: John Wiley & Sons, 1997. ISBN 0471974447
    • Software Requirements, Wiegers, Karl. Microsoft Press, 1999. ISBN 0735606315

3. Software Design (22-24% questions in CSDP)

    1. Software Design Concepts
    2. Software Architecture
    3. Software Design Quality Analysis and Evaluation
    4. Software Design Notations and Documentation
    5. Software Design Strategies and Methods
    6. Human Factors in Software Design
    7. Software and System Safety

Any one of the following books is recommended in this area:

    • Software Architecture in Practice, Bass, Len, Paul Clements and Rick Kazman. Reading, Massachusetts: Addison-Wesley, 1998. ISBN 0201199300
    • Pattern Oriented Software Architecture: A System of Patterns, Buschmann, Frank, et al, John Wiley & Sons, 1996. ISBN 0471958697
    • Fundamentals of Object-Oriented Design in UML, Page-Jones, Meilir, Addison-Wesley, 1999. ISBN 0201699946X

The following books are suggested as supplemental reading in this area:

    • Fundamentals of Database Systems, Elmasri, Ramez and Shamkant Navathe, 3d Ed., Reading, Mass.: Addison Wesley, 2000. ISBN 0805317554
    • Software Reuse: Architecture, Process and Optimization for Business Success, Jacobsen, Ivar, Martin Griss, and Patrik Jonson, Reading, Massachusetts: Addison-Wesley, 1997. ISBN 0201924765

 4. Software Construction (10-12% questions in CSDP)

    1. Construction planning
    2. Code design
    3. Data design and management
    4. Error processing
    5. Source code organization
    6. Code documentation
    7. Construction QA
    8. System integration and deployment
    9. Code tuning
    10. Construction tools

The following book is recommended on this topic:

    • Code Complete, McConnell, Steve, Microsoft Press, 1993. ISBN 1-5561-5484-4

The following books are suggested as supplemental reading in this area:

    • The Practice of Programming, Kernighan, Brian W. and Rob Pike, Reading, Mass.: Addison Wesley, 1999. ISBN 020161586X
    • The Pragmatic Programmer: From Journeyman to Master, Hunt, Andrew, David Thomas, and Ward Cunningham, Reading, Mass.: Addison Wesley, 1999. ISBN020161622X

5. Software Testing (15-17% questions in CSDP)

    1. Types of Tests
    2. Test Levels
    3. Testing Strategies
    4. Test Design
    5. Test Coverage of Code
    6. Test Coverage of Specifications
    7. Test Execution
    8. Test Documentation
    9. Test Management

Any one of the following books is recommended in this area:

    • Testing Object-Oriented Systems, Binder, Robert V. Reading, Massachusetts: Addison-Wesley, 2000. ISBN 0201809389
    • Complete Guide to Software Testing, 2nd Ed., Hetzel, Bill, New York, New York: John Wiley & Son, 1993. ISBN 0471565679
    • Software Testing : A Craftsman's Approach, Jorgensen, Paul C. CRC Press, 1995. ISBN 0849308097
    • Testing Computer Software, 2nd Ed., Kaner, Clem, Jack Falk, and Hung Quoc Nguyen, New York, New York: John Wiley and Sons, 1999. ISBN 0471358460
    • Software Testing and Continuous Quality Improvement, Lewis, William. CRC Press 2000. ISBN 0849398339
    • The Craft of Software Testing: Subsystems Testing Including Object-Based and Object-Oriented Testing, Marick, Brian. Prentice Hall, 1997. ISBN 0131774115

6. Software Maintenance (3-5% questions in CSDP)

    1. Software Maintainability
    2. Software Maintenance Process
    3. Software Maintenance Measurement
    4. Software Maintenance Planning
    5. Software Maintenance Management
    6. Software Maintenance Documentation

The following book is recommended on this topic:

    • Practical Software Maintenance, Pigoski, Thomas M. New York, Wiley Computer Publishing, 1997. ISBN 0471170011

7. Software Configuration Management (3-4% questions in CSDP)

    1. Management of SCM Process
    2. Software Configuration Identification
    3. Software Configuration Control
    4. Software Configuration Status Accounting
    5. Software Configuration Auditing
    6. Software Release Management and Delivery
    • IEEE Standards 828-1990 and 1042-1987

8. Software Engineering Management (10-12% questions in CSDP)

    1. Measurement
    2. Organizational Management and Coordination
    3. Initiation and Scope Definition
    4. Planning
    5. Software Acquisition
    6. Enactment
    7. Risk Management
    8. Review and Evaluation
    9. Project Close Out
    10. Post-closure Activities

Any one of the following books is recommended in this area:

    • Principles of Software Engineering Management, Gilb, Tom, Reading, Mass.: Addison Wesley, 1988. ISBN 0-2011-9246-2
    • Rapid Development, McConnell, Steve, Microsoft Press, 1996. ISBN 1556159005
    • Software Engineering Project Management, 2d ed, Thayer, Richard H., IEEE Computer Society Press, Los Alamitos, CA 1997. ISBN 0-8186-8000-8
    • Quality Software Management, Vol. 1, Systems Thinking, Weinberg, Gerald M.. New York: Dorset House, 1992. ISBN 0932633226

The following book is suggested as supplemental reading in this area:

    • Developing Managerial Skills in Engineers and Scientists, Badawy, Michael K. Van Hostrand, NY, 1995. ISBN 0471286346

9. Software Engineering Process (2-4% questions in CSDP)

    1. Process Infrastructure
    2. Process Measurement
    3. Process Definition
    4. Qualitative Process Analysis
    5. Process Implementation and Change

Either of the following books is recommended in this area:

    • The Capability Maturity Model: Guidelines for Improving the Software Process, Paulk, Mark, et al (Carnegie Mellon University / Software Engineering Institute). Reading, Mass.: Addison Wesley, 1995. ISBN 0201546647
    • Managing the Software Process, Humphrey, Watts S. Reading, Massachusetts, Addison-Wesley, 1989. ISBN 0201180952

10. Software Engineering Tools and Methods (2-4% questions in CSDP)

    1. Management Tools and Methods
    2. Development Tools and Methods
    3. Maintenance Tools and Methods
    4. Support Tools and Methods

11. Software Quality (6-8% questions in CSDP)

    1. Software Quality Concepts
    2. Planning for SQA and V&V
    3. Methods for SQA and V&V
    4. Measurement Applied to SQA and V&V

No book-length references are recommended for this topic:

The following books are suggested as supplemental reading in this area:

    • Software Engineering, Dorfman, M. & Thayer, R., eds. Los Alamitos, California: IEEE Computer Society Press, 1997. ISBN 0-8186-7609-4
    • Software Inspection, Gilb, Tom., and Dorothy Graham, Reading, MA, Addison-Wesley, 1994. ISBN 0-2016-3181-4
    • Practical Guide to Software Quality Management, Horch, John, Artech House, 1996. ISBN 0890068658
    • A Discipline for Software Engineering, Humphrey, Watts S. Reading, Massachusetts: Addison-Wesley, 1995. ISBN 0201546108
    • Metrics and Models in Software Quality Engineering, Kan, Stephen H. Addison Wesley, 1995. ISBN 0201729156