This article was written March 2002, and availability of professional development programs can change quickly. Please consult the resources at the end of the article for up-to-date information.
IEEE Computer Society (IEECS) launched to the public the Certified Software Development Professional (CSDP) Program in March 2002. This program offers software professionals a new opportunity: for a highly-respected, non-profit, software-professional organization to certify their professional status. Existing certification programs test knowledge of specific tools, and are run by vendors or consulting organizations with a vested interest in product sales or educational programs. IEEE CS stands by this new certification as a community of software professionals, without bias towards a particular vendor’s tools, and without bias towards a particular vendor’s methodology.
The Guide to the Software Engineering Body of Knowledge (SWEBOK) – The Foundation
The foundation of the exam is The Guide to the Software Engineering Body of Knowledge (SWEBOK). The committee that created the book was sponsored by many organizations and companies.. It is an attempt to classify and categorize all of the knowledge used by software engineering professionals. It does not document the full body of knowledge; that would take many, many volumes and it would be subject to debate and disagreement, even among experienced professionals. Instead, the SWEBOK offers a hierarchy of categories for knowledge about software engineering. The hierarchy is technology- and vendor-neutral, and should raise little controversy.
The SWEBOK breaks down the body of knowledge into eleven parts. All software engineering knowledge should somehow fit into these categories. The CSDP exam uses these categories both to qualify applicants and to classify questions on the test. For more detailed information about SWEBOK including a free download of the full text, visit http://www.swebok.org/.
Qualifying for the Exam
The typical applicant needs at least five years of experience to qualify, plus a baccalaureate or equivalent university degree. IEEE CS asks for documentation of at least 9,000 hours of professional work in software development, and they require experience with at least six of the eleven knowledge areas in SWEBOK. Because of this distribution requirement, experienced professionals may not qualify. A $100 fee is required with the application, and a $350 to $500 fee is required to sit for the exam. For full information on logistics, application forms, approval times, and costs, please visit http://www.computer.org/certification/.
IEEE CS also requires applicants to agree to adhere to a code of ethics. Any member of IEEE CS or ACM already signed the “Software Engineering Code of Ethics and Professional Practice”. All CSDP candidates must agree to this code of ethics, whether or not they are members of IEEE CS or ACM. This requirement brings the CSDP one step closer to the licensing and certification programs of established professions like doctors and lawyers. A code of ethics is a key element of that separates specialists from professionals, in U.S. courts.
The exam consists of 180 multiple-choice questions covering all of the knowledge areas in the SWEBOK. The test results are converted to a score of 120 to 200, and a passing score is 170. The score is not a percentage, but is weighted based upon the difficulty of questions. It is impossible to say how many questions must be answered correctly to pass.
The exam is designed for the well-rounded software professional, with emphasis on design, testing, requirements gathering, and construction. Questions are distributed as follows between the knowledge areas. The list is sorted by percentage of questions:
|22-24%||III. Software Design|
|15-17%||V. Software Testing|
|13-15%||II. Software Requirements|
|10-12%||IV. Software Construction|
|10-12%||VIII. Software Engineering Management|
|6-8%||XI. Software Quality|
|3-4%||I. Business Practices and Engineering Economics|
|3-4%||VII. Software Configuration Management|
|3-5%||VI. Software Maintenance|
|2-4%||IX. Software Engineering Process|
|2-4%||X. Software Engineering Tools and Methods|
The sample questions on the IEEE CS web site are tough, well-constructed, multiple-choice questions covering a wide range of disciplines. The well-prepared candidate will be very familiar with many design techniques. Questions cover the entire range of techniques and knowledge, including financial issues and management.
The software industry has a wide range of terms for a wide range of tools, techniques, and phenomena. Experience may work against some candidates, if the exam uses unfamiliar words to describe familiar techniques. Even very highly experienced practitioners should spend time studying SWEBOK and the titles on the recommended reading list. The exam is not an IEEE CS vocabulary test, but understanding the questions requires understanding the terms in the exam. Since many practitioners still argue about basic questions, like where “design” ends and “construction” begins, everyone needs to study.
Preparing for the Exam
Advice on preparation for such a new exam is difficult to give. SWEBOK is clearly useful reading, and IEEE CS has published a two-volume resource guide entitled “Software Engineering” by Richard H. Thayer, Merlin Dorfman, and Mark J. Christensen (click here for ordering info). There is also a reading list for the CSDP, recommending at least one book for most of the eleven knowledge areas. All the books are modern, up-to-date texts. A well-read candidate may already have two or three on the shelf.
To purchase all this material would certainly run over $500, and leave the candidate with thousands of pages of materials to study. We know it is possible to pass knowing only some of that material; with 180 questions, the test cannot possibly cover it all. The trick is figuring out how much material the candidate needs to know in order to pass. My recommendation is to at least get to know SWEBOK and the two volumes of “Software Engineering” well. The best-prepared candidate should study a dozen or more books. Until more people have taken the exam, it is difficult to set expectations.
Candidates looking for classroom preparation may be disappointed by the selection. Dr. Thayer is offering three classes in Sacramento, CA, Austin, TX, and Washington, DC. These three classes are the only opportunity for classroom training offered as of March 2002. As more people take the exam, companies will offer focused preparation books and courses.
Life as a CSDP
Once a candidate passes the exam, he or she is a Certified Software Development Professional, and has the right to promote himself or herself as such. Being a CSDP is no guarantee of on-the-job success, but it shows special professional commitment, professional experience, and broad professional knowledge. Over time, I expect that some software engineering jobs will have requirements that state, “CSDP preferred” or even “CSDP required.” Certification will be an asset to those who want to act as a practitioner or as an academic in the software community.
To maintain the quality of the CSDP community, IEEE CS has continuing education requirements for the program. Every three years, every CSDP will need to show their commitment to and continued learning about software engineering. Details of this requirement are still being determined. Every CSDP also needs to live by the IEEE/ACM code of professional ethics. Being a CSDP is more than just showing experience and passing a test; it is a continuing commitment. The ethics and continuing education requirements will help maintain the value of the CSDP designation for everyone who earns it.
Now or Later?
The most difficult decision any candidate for the CSDP has to face is whether to take the exam now or to wait. Months or years from now, there will be established books, classes, and study-guides available for purchase. There will be more certified CSDP professionals, to coach and mentor prospective candidates.
Some people may wait until the certification program is more popular, to see its value in the marketplace. At this point there is no guarantee about how many months or years it will take for the certification to become well-known and respected. No one should fault a peer for wanting to wait.
On the other hand, there is a thrill and there is prestige associated with being one of the first CSDP professionals. This certification program is a landmark for the profession. Only recently did software have an official document describing its body of knowledge. This certification program is another landmark for software engineering. Current certificates demonstrate knowledge of proprietary technologies, and the certificates quickly become obsolete. CSDP certification is about cross-platform methods that have stood the test of time. Any technologist who is tired of getting re-certified on new technologies every few years should consider the CSDP a welcome change. IEEE CS has raised the standards for certification programs with the CSDP, and any software practitioner who joins this program early will surely see rewards.
Sidebar: Two Options for IT Managers: CSDP and PMP
Project Managers in the Information Systems Software industry have two important certification programs to consider: PMI Project Management Professional (PMP) and the CSDP. Both programs share a very similar structure, purpose, and attributes, but they each test very different knowledge. PMI is developing a Certificate of Added Qualification (CAQ) in Information Technology in the second quarter 2002, making certification even more complex. Ultimately, many professionals may choose to earn all these certificates. Below find a table to help compare the programs:
|Experience Required||9,000 hours, at least two (2) years experience in the last four (4) years||4,500 hours, at least three (3) years experience in the last six (6) years|
|Distribution of Experience||At least six (6) out of eleven (11) knowledge areas from SWEBOK||All of the five (5) process groups from PMBOK|
|Education Required||Baccalaureate or equivalent||Baccalaureate or equivalent (outdated “Option 2″ replaces this education with additional work requirement, but few people now qualify for it)|
|Sponsoring Organization||IEEE Computer Society||Project Management Institute|
|Exam Format||180 multiple-choice questions||200 multiple-choice questions|
|Body of Knowledge (BOK)||Software Engineering BOK||Project Management BOK|
|Top Three Knowledge Areas||Software design, testing, and requirements||Project planning, execution, and control|
|Continuing Education Requirement||Renewal every three years, requirements TBD||60 PDP credits every 3 years – approximately 60 hours of professional training or activity|
|Exam Based upon Job Analysis||Yes||Yes|
|Created by professional practitioners||Yes||Yes|
|Validated by beta testing||Yes||Yes|
|Promotes specific vendors, technologies, or methods||No||No|
|Ethical Code||“Software Engineering Code of Ethics and Professional Practice”||“PMP Code of Professional Conduct”|
|Preparation Classes Available||Only three, only in U.S.||Available from numerous private companies and from virtually all local PMI chapters|
|Sample Exams Available||Sample questions on web. No books or CDs of sample questions published as of March 2002.||Sample questions on web. Many sample questions published in book, CD, and flashcard format. Eight sample tests and two sets of flashcards available from PMI Bookstore, more from other sources. Candidates have a wide selection of choices.|
|Total Certified Professionals||Almost 200||Over 30,000|
|Year First Offered||2002||1984|
Final information on the CAQ requirements is not available as of this publication date, but a candidate for the CAQ must already be a PMP.
Except for the content being tested, the similarities between CSDP and PMP are profound. Both IEEE CS and PMI are providing similar vehicles for their members to certify their professional status. The PMP certification has proved its value in the marketplace. It is likely that the CSDP, with the backing of IEEE CS, will achieve a similar level of respect.
IEEE CS Certification Home Page: Updated with the latest information about the CSDP exam. Includes sample questions, details of the exam make-up, reading lists, and educational providers.
Software Engineering Body of Knowledge: Contains a downloadable version of the SWEBOK. Lists the people involved in creating the document, the strategy and purpose of the document, and plans to develop the document further.
“Software Engineering Code of Ethics and Professional Practice”: The code of ethics for IEEE CS and ACM members. CSDP candidates must agree to live by this code as well.
PMI Certification Home Page: Launching point for information about all PMI’s certification programs, including the PMP and CAQ programs.
PMI Certificate of Added Qualification Home Page: Up-to-date information about the CAQ programs offered by PMI. Earned by PMPs, a CAQ shows expertise in a given specialty. In March 2002, only the Automotive Product Development CAQ is available. Two new CAQs are due in 2nd or 3rd Quarter 2002: an IT-Systems and IT-Networking CAQ.
Yahoo! Group for the CSDP Exam: A volunteer-organized on-line discussion group for people interested in the CSDP exam. People are using the discussion group to exchange study tips, experience taking the test, and organizing study groups all over the world.