Issue No. 06 - November/December (2006 vol. 23)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2006.154
Annette D. Reilly , Lockheed Martin
This is the final installment of the Software Engineering Glossary department, started in 2003 to replace the outdated IEEE Standard 610.12-1990. Since then, the ISO/IEC JTC1/SC7 Working Group on Vocabulary has assumed the role of developing and distributing software engineering vocabulary standards. This glossary will assimilate IEEE Std. 610.12-1990 and the IEEE Software articles on software engineering standards. Annette D. Reilly describes the new standards effort as a bridge between the past and the future in software engineering glossaries. We thank Richard E. Fairley, Hassan Gomaa, Steve McConnell, Diomidis Spinellis, Steve Tockey, and Geri Winters for their contributions.—Richard H. Thayer and Merlin Dorfman
The struggle for common software engineering terminology will take a new turn in 2007. The release of a Web-accessible, freely available vocabulary sponsored by the IEEE Computer Society will make current, standardized terms and definitions available to software developers, students, and researchers. SEVOCA (Systems/Software Engineering Vocabulary) is nearing its initial public release, and periodic updates and the publication of a new ISO 24765 software and systems engineering vocabulary standard will follow.
IEEE Std. 610.12-1990, the IEEE Standard Glossary of Software Engineering Terminology, was the last published attempt to standardize terminology in the field. With nearly 1,400 definitions drawn from ISO and IEEE standards, it covered the state of the art in the late '80s, when computers worked in Mflops, microprogramming was the alternative to hard-wiring control signals, and object-oriented design and airline reservation systems were the latest developments.
The fact that IEEE 610.12-1990 hasn't been updated reflects the difficulty of keeping up with continual shifts in software technology. If terms from 10 years ago are obsolete, why document today's neologisms, which will likely be unusable five years hence? Yet strong incentives exist to capture current terminology in a fast-changing field. This series of definitive articles in IEEE Software shows that naming is the first step toward knowing and controlling.
In contrast to the accelerating changes in systems, the SEVOCA project benefits from a growing consensus on engineering and management processes and products, seen in the publication of the Software Engineering Body of Knowledge and more than 150 IEEE and ISO standards for systems and software engineering. Including a definition in a balloted standard shows that it results from international consensus developed through open processes. The challenge has been to find these authoritative, consistent definitions in one convenient place.
The initial Web-accessible view of SEVOCA will include the terms and definitions compiled from all current IEEE and ISO software and systems engineering standards. Definitions in SEVOCA can be freely reprinted with credit to the copyright holders. Each definition will show its source, with links to sites where users can purchase the source standards from the IEEE or ISO. The concept of operations calls for SEVOCA to be updated every three to six months, and snapshots of the database could become a balloted ISO standard (24765) by 2008.
SEVOCA's advance reviewers have liked its search function, which displays and highlights the term in question (both by itself and if it's part of a compound term). SEVOCA also highlights where the term is used in other terms' definitions or included as a synonym or contrasting term (a "see also"). In addition, SEVOCA includes graphics, examples, and notes from the original sources. The search returns provide a rich set for comparing related concepts, which users can pursue in the source standards. Meanwhile, standards developers can use SEVOCA to identify redundancies, discrepancies, and gaps in terminology and to harmonize vocabulary among related standards.
Annette D. Reilly is the project editor for ISO 24765 and a senior manager with Lockheed Martin. Contact her at firstname.lastname@example.org.