Copyright © 2009 Corvus International Inc.  All Rights Reserved

Home      About Corvus       Contact Us       Articles/Resources       Clients          Affiliations  

He who knows not and knows not that he knows not, is a fool—shun him!
He who knows not and knows that he knows not, is unlearned—teach him!
He who knows and knows not that he knows, is asleep—awaken him!
He who knows and knows that he knows, is enlightened—follow him!

                                An Arab Proverb quoted by
                        Isabel Lady Burton (1831-1896)
                        "The Life of Captain Sir Richard F. Burton"

ACM DL Author-ize serviceThe five orders of ignorance
Phillip G. Armour
Communications of the ACM, 2000

Software Development = Knowledge Acquisition = Ignorance Reduction                    

Software is not a product, it's a medium for storing knowledge (see The Case for a New Business Model). 

Therefore, software development is not a product producing activity--it is a knowledge acquiring activity. 

Knowledge is just the other side of the coin of ignorance, therefore software development is an ignorance-reduction activity.

There are five levels or "Orders of Ignorance".  They are (starting from zero--computer people always count from zero):

   0th Order Ignorance (0OI)—Lack of Ignorance
I have Zeroth Order Ignorance (0OI) when I provably know something…
…and can demonstrate my lack of ignorance in some tangible form, such as by building a system that satisfies the user.  The presence of the knowledge has to be "provable" otherwise we might simply be self-deceived and not know it at all.  This is why we require developers to test (and proved they've tested) their systems rather than simply taking their word for it.

   1st Order Ignorance (1OI)—Lack of Knowledge
I have First Order Ignorance (1OI) when I don’t know something

but I know I don't know it1OI is actually a kind of knowledge (I do know what I don't know).

   2nd Order Ignorance (2OI)—Lack of Awareness
I have Second Order Ignorance (2OI) when I don’t know that I don’t know something.
…not only am I ignorant of something, I am unaware of what that something might be.  Sometimes called the "unknown, unknowns" or "unk, unk"
(See Don Rumsfeld quote below).

   3rd Order Ignorance (3OI)—Lack of Process
I have Third Order Ignorance (3OI) when I don’t know of a suitably efficient way to find out that I don’t know that I don’t know something
so I cannot resolve my 2OI.  For systems development, I have to add the qualifiers "suitably efficient" since there is a default 3OI process: ship it! 
If you ship a system and simply wait by the phone, the customer will be sure to call you up and tell you all the things you didn't know you didn't know about the system you just shipped. 
Shipping the system is an effective process, but it is neither suitable nor efficient.

   4th Order Ignorance (4OI)—Meta Ignorance
I have Fourth Order Ignorance (4OI) when I don’t know about the Five Orders of Ignorance…
…which, dear reader, you no longer have.

These Five Orders of Ignorance play an tremendously important role in systems development.  For example: our job is the reduction of 2OI. 
As another example: all systems processes and methodologies are actually 3OI processes whose job is to convert 2OI into 1OI (and more rarely 0OI).

2OI and 3OI explain most of our problems in systems development.  Our management systems are set up to deal only with 0OI and 1OI (the application of what we already know), they don't properly deal with the activity of uncovering what we don't know and are rather inadequate for the modern world of systems development.  This is mostly because of most organizations suffer form 4OI. 

Support from an unlikely source:

    "Reports that say that something hasn't happened are always interesting to me,
because as we know, there are known knowns—there  are things we know we know…
We also know there are known unknowns; that is to say we know there are some things we do not know…
But there are also unknown unknowns—the ones we don't know we don't know.” 

Donald Rumsfeld, US Secretary of Defense.

Department of Defense News Briefing.  Feb 12 2002

Thanks Don, but I beat you by a few years on this one.  Also, shame about that Iraq War thing.



The Five Orders of Ignorance...