The US Department of State'sRegistration for the 2013 Diversity Visa lotterybegan on Tuesday, October 4th, and will close on Saturday, November 5th at 1600 hours Greenwich Mean Time. Hopefully, there will not be a repeat of the problems experienced during the 2012 lottery.

As you may recall, in May, the State Department announced that the results of the 2012 Diversity Visa lottery were no longer valid because of what was called at the time a "computer programming error" which skewed the selection to those registering early. The some 22,000 visa lottery selectees who thought they won were highly disappointed, to say the least.

Some of the "lottery winners" later tried to sue over the incident, but were unsuccessful.

In the aftermath of the fiasco, the State Department's Office of Inspector General (OIG) conducted a limited-scope review to determine what the heck happened. Last week, the OIG's report (PDF) was released, and it wasn't a pretty read and a bit more than merely a "computer programming error."

According to the OIG report:

"The OIG team found three problems that led to this failure, all of which stem from the lack of adherence to sound project management and systems development principles. First, CA's [Consular Affairs] Office of Consular Systems and Technology (CST) [PDF] implemented a system programming change without performing adequate testing. Second, CST changed contract task orders without notifying the Office of Acquisition Management (AQM). Third, CST management failed to adequately discuss the changes with all stakeholders and thus did not fully understand how overseas consular officers administer the DV [Diversity Visa] program."

Rather than try to summarize the OIG report, I think the following sections from the report explain the reasons for the screw-up very well.

"CST management decided [For reasons unfortunately not made clear in the OIG report - ed.] in November 2010 not to use the commercial off-the-shelf statistics analysis program that it had used successfully for random rank-ordering in numerous previous years. Instead, CST management asked one of its contractors to develop a program. This new computer program had a coding error that produced a nonrandom rank ordering and thus failed to meet INA [Immigration and Nationality Act] requirements. The program not only selected 98 percent of the applicants from the first two dates of the allowed submission dates, it also selected multiple individuals from the same families."

Now comes the first good part of the OIG report:

"According to CST management and the contractor staff who developed the new DV computer program, testing scenarios were limited to validating that all geographic regions were assigned the correct numerical limitation and that the total number of selectees to be drawn was accurate. In addition, the development, testing, and production implementation of the program were done exclusively by one contracting company that, due to poor planning and failure to consult with all DV stakeholders, did not have adequate information to create a complete test plan for the computer program. Key stakeholders such as CST's independent validation and verification team, the Visa Office, and the contractor that operated and managed the legacy computer program were not involved in planning and implementing the new computer program."

The pitiful project risk mismanagement only gets better, for as:

"... the new contractor was developing the new program, the incumbent contractor tasked with operating and maintaining the legacy selection program was unaware of the new development effort and was preparing to run the old program. CST did not notify the incumbent contractor until it was time to run the selection process. Thus there was no opportunity for the two contracting companies to share information and plan the implementation."

The OIG made four recommendations in the report that can be basically summed up as, "Will you please follow some basic Project Management and Software Development 101?"

In addition, the OIG also noted in the report that the CST manager "left his position" in early October.

The OIG report doesn't state whether this year's Diversity Visa lottery is using the original, perfectly fine COTS random statistics analysis program or the "new one". If the new one is not being used, it would be nice to know just how many taxpayers' dollars were wasted on the effort.

The Conversation (0)

Why Functional Programming Should Be the Future of Software Development

It’s hard to learn, but your code will produce fewer nasty surprises

11 min read
A plate of spaghetti made from code
Shira Inbar

You’d expectthe longest and most costly phase in the lifecycle of a software product to be the initial development of the system, when all those great features are first imagined and then created. In fact, the hardest part comes later, during the maintenance phase. That’s when programmers pay the price for the shortcuts they took during development.

So why did they take shortcuts? Maybe they didn’t realize that they were cutting any corners. Only when their code was deployed and exercised by a lot of users did its hidden flaws come to light. And maybe the developers were rushed. Time-to-market pressures would almost guarantee that their software will contain more bugs than it would otherwise.

Keep Reading ↓Show less