DocumentCode :
882694
Title :
Cyclomatic complexity and the year 2000
Author :
McCabe, T.
Author_Institution :
McCabe & Associates, Columbia, MD
Volume :
13
Issue :
3
fYear :
1996
fDate :
5/1/1996 12:00:00 AM
Firstpage :
115
Lastpage :
117
Abstract :
The year 2000 problem is omnipresent, fast approaching, and will present us with something we´re not used to: a deadline that can´t slip. It will also confront us with two problems, one technical, the other managerial. My cyclomatic complexity measure, implemented using my company´s tools, can address both of these concerns directly. The technical problem is that most of the programs using a date or time function have abbreviated the year field to two digits. Thus, as the rest of society progresses into the 21st century, our software will think it´s the year 00. The managerial problem is that date references in software are everywhere; every line of code in every program in every system will have to be examined and made date compliant. In this article, I elaborate on an adaptation of the cyclomatic complexity measure to quantify and derive the specific tests for date conversion. I originated the use of cyclomatic complexity as a software metric. The specified data-complexity metric is calculated by first removing all control constructs that do not interact with the referenced data elements in the specified set, and then computing cyclomatic complexity. Specifying all global data elements gives an external coupling measure that determines encapsulation. Specifying all the date elements would quantify the effort for a year-2000 upgrade. This effort will vary depending on the quality of the code that must be changed
Keywords :
data encapsulation; data integrity; program diagnostics; program testing; software metrics; software tools; 2-digit year field; code quality; control constructs; cyclomatic complexity measure; date conversion tests; date references; encapsulation; external coupling measure; referenced data elements; year 2000 problem; Computer aided software engineering; Economic forecasting; Equations; Licenses; Portfolios; Predictive models; Software algorithms; Software testing; Software tools; Stock markets;
fLanguage :
English
Journal_Title :
Software, IEEE
Publisher :
ieee
ISSN :
0740-7459
Type :
jour
DOI :
10.1109/52.493032
Filename :
493032
Link To Document :
بازگشت