The ability of your bank's financial software to detect potentially fraudulent activity on your accounts or alter your credit score when you miss a mortgage payment are just two of many common examples of AI at work, says Mow. Speech and handwriting recognition, business process management, data mining, and medical diagnostics -- they all owe a debt to AI.
Now AI is going through another resurgence. Backed by Google and NASA, AI research may provide the intelligence behind next-generation search engines and interplanetary travel systems. The next game-changing technologies could emerge not from MIT or Stanford but Ray Kurzweil's Singularity University, an institution dedicated to the convergence of machine and man. The hype continues to flow freely.
Who knows? We may yet earn the respect of our computers -- at least, enough for them to keep us around a little longer.
2. Computer-aided software engineering (CASE)
Era: Mid-1980s to mid-1990s
The pitch: "The key benefits of CASE are increases in software quality and development productivity. ... The result is better vision and understanding of the business problem and how the system works, and a clearer understanding of the system's design. With their disciplined, highly structured engineering approach and emphasis on rigid design rules, CASE tools verify consistency and completeness at early stages of the development process." -- Douglas Menendez, Internal Auditor, 1991
In the 1980s, computer-aided coding was thought to be the wave of the programming future. According to the sales pitch, software engineers would become largely obsolete, thanks to CASE tools that generated code automatically using intelligent algorithms.
One problem? Automated tools were able to perform basic tasks that saved programmers time, but they did not eliminate significant amounts of coding, let alone the programmers themselves, says Mark Shavlik, CEO of Shavlik Technologies, a provider of automated solutions for critical IT management. Shavlik says he worked on a CASE project for Boeing in the mid-1980s, until it was ultimately abandoned.
The other big problem: CASE did nothing to solve the "garbage in, garbage out" issue, says business blogger and former programmer Philip McLean.
"The idea of CASE was to produce better code faster by having a computer do it," says McLean. "Just feed your specifications into the front end, and it'll spit out flawless code. The vendors counted on customers who did not realize that the biggest problem in these projects is bad specifications, and they found a lot of those customers. So, people fed bad specs in one end and got bad code out of the other."
CASE was also supposed to eliminate an enterprise's applications backlog, so the apps would always be current with what the business needed, says Virtusa's Mow.
"That was a complete fallacy," he says. "Your business needs change so rapidly that there has to be a backlog at all times or your business becomes stagnant."
Where are CASE tools today?
"Today there are some very basic forms of automatic programming in the Microsoft development tools," says Shavlik. "They speed initial development of commonly used tasks, but they're very limited. I believe we found out that creating advanced computer programs is much more difficult than what people thought it was in the early 1980s. Maybe it was a false belief in the upside of AI at the time."