Posts Tagged ‘Russell Ackoff’

Slice By Slice Over Layer By Layer

December 5, 2014 3 comments

Assume that your team was tasked with developing a large software system in any application domain of your choice. Also, assume that in order to manage the functional complexity of the system, your team iteratively applied the “separation of concerns” heuristic during the design process and settled on a cleanly layered system as such:

Three Layers

So, how are you gonna manifest your elegant paper design as a working system running on real, tangible hardware? Should you build it from the bottom up like you make a cake, one layer at a time?

Layer By Layer

Or, should you build it like you eat a cake, one slice at a time?

Slice By Slice

The problem with growing the system layer-by-layer is that you can end up developing functionality in a lower layer that may not ever be needed in the higher layers (an error of commission). You may also miss coding up some lower layer functionality that is indeed required by higher layers because you didn’t know it was needed during the upfront design phase (an error of omission). By employing the incremental slice-by-slice method, you’ll mitigate these commission/omission errors and you’ll have a partially working system at the end of each development step – instead of waiting until layers 1 and 2 are solid enough to start adding layer 3 domain functionality into the mix.

In the context of organizational growth, Russell Ackoff once stated something like: “it is better to grow horizontally than vertically“. Applying Russ’s wisdom to the growth of a large software system:

It’s better to grow a software system horizontally, one slice at a time, than vertically, one layer at a time.

The above quote is not some profound, original, BD00 quote. It’s been stated over and over again by multitudes of smart people over the years. BD00 just put his own spin on it.

Not So Nice And Tidy

February 19, 2014 Leave a comment

Assume we have a valuable, revenue-critical software system in operation. The figure below shows one nice and tidy, powerpoint-worthy way to model the system; as a static, enumerated set of executables and libraries.

Enumerated View

Given the model above, we can express the size of the system as:

size eq

Now, say we run a tool on the code base and it spits out a system size of 200K “somethings” (lines of code, function points, loops, branches, etc).

What does this 200K number of “somethingsabsolutely tell us about the non-functional qualities of the system? It tells us absolutely nothing. All we know at the moment is that the system is operating and supporting the critical, revenue generating processes of our borg. Even relatively speaking, when we compare our 200K “somethings” system against a 100K “somethings” system, it still doesn’t tell us squat about the qualities of our system.

So, what’s missing here? One missing link is that our nice and tidy enumerations view and equation don’t tell us nuttin’ about what Russ Ackoff calls “the product of the interactions of the parts” (e.g Lib-to-Lib, Exe-Exe). To remedy the situation, let’s update our nice and tidy model with the part-to-part associations that enable our heap of individual parts to behave as a system:

connectivity view

Our updated model is still nice and tidy, but just not as nice and tidy as before. But wait! We are still missing something important. We’re missing a visual cue of our system’s interactions with “other” systems external to us; you know, “them”. The “them” we blame when something goes wrong during operation with the supra-system containing us and them.

connectivity view

Our updated model is once again still nice and tidy, but just not as nice and tidy as before. Next, let’s take a single snapshot of the flow of (red) “blood” in our system at a given point of time:

Blood Flow

Finally, if we super-impose the astronomic number of all possible blood flow snapshots onto one diagram, we get:

Quag View

D’oh! We’re not so nice and tidy anymore. Time for some heroic debugging on the bleeding mess. Is there a doctor in da house?

Who’s Left Standing?

November 22, 2013 1 comment

First W. E. Deming, then Russell Ackoff, and now Chris Argyris. They’re all gone. Bummer.

ArgyrisWhen I first encountered the work of each of these three original thinkers, it blew me away. Their insights on organizational and management behaviors were like a breath of fresh air compared to the C-suite pandering, jargonized junk that business schools spew and pop business icons like Tom Peters promulgate (no offense Tom, I like some of your ideas).

Managers who are skilled communicators may also be good at covering up real problems – Chris Argyris

AFAIK, there’s nobody like this trio of intellectual giants left standing (maybe they’ve won?). There are, however, a handful of second string, accessible, truth-tellers out there. Henry Mintzberg, Sam Culbert, and Steve Denning come to mind. Who can you add to this list?

Leaders, Followers, Standers

November 2, 2012 3 comments

Everybody knows what leaders and followers are, but what about “standers“? A stander is not a slacker. It’s a capable person who is content to stay within his/her comfort zone doing the same thing over and over again.

BD00 thinks that all people are capable and they innately want to “move” forward either as a leader or a follower. It’s a social system’s culture that molds “standers” out of capable people.

In cultures where mistakes of commission are penalized and mistakes of omission go undetected and unacknowledged, the optimum strategy, courtesy of Russell Ackoff, is simply to do as little as needed to elude ex-communication. It’s stagnation city with a burgeoning population of standers; sad for the people and sad for the org.

The Real Customer

October 8, 2012 7 comments

In “12 ‘best practices’ IT should avoid at all costs”, InfoWorld‘s Bob Lewis asserts:

I enjoy Bob’s books and columns, but I have to side with the likes of Russell Ackoff and Vineet Nayar on this one. All of an org’s “enabling” functions: HR, QA, Finance, Purchasing, IT, etc; should indeed serve the direct revenue-generating business functions and treat them as paying customers. Otherwise, the natural tendency of these groups in hierarchical orgs is to turn into obstacle-inserting, unresponsive, monopolistic dictatorships. Of course, in the “real world” this rarely happens because rational adults are in charge – and Bob is right. What is your opinion?

Monopolistic Providers

September 19, 2012 Leave a comment

In search of economies of scale, centrally planned and controlled economies in nations and corporations tend to create monopolistic providers of goods and services. For example, in corporations, accounting, personnel, and R&D departments are usually deliberately organized as subsidized monopolies. They are subsidized in the sense that the users of their products or services do not pay for them directly; the supplying units are supported financially by funds that are allocated to them from above. The pool from which these funds are drawn is filled by a “tax” allocated from above to the units served. Monopolistic units that are subsidized are generally insensitive and unresponsive to the users of their services, but they are sensitive and responsive to the desires of the higher-level units that subsidize them. These higher level units are even more removed from the units served than the serving units. As a result, they are often unaware of, or unresponsive to, the needs and desires of the internal users of monopolistically provided goods and services. – Russell Ackoff (Ackoff’s Best: His Classic Writings on Management)

OK, time to practice my “bent” UML modeling skills and test your understanding with the class and sequence diagram pair below. The class diagram provides a structural view of a fictional Ackoffian system.  The sequence diagram steps through an amalgam of behaviors in a world where monopolies rule. Any questions, comments, critiques, accolades, WTFs?

Espoused Vs. In-Use

July 15, 2012 6 comments

Although we say we value openness, honesty, integrity, respect, and caring, we act in ways that undercut these values. For example, rather than being open and honest, we say one thing in public and another in private—and pretend that this is the rational thing to do. We then deny we are doing this and cover up our denial. – Chris Argyris

Guys like Chris Argyris, Russell Ackoff, and W. E. Deming have been virtually ignored over the years by the guild of professional management because of their in your face style. The potentates in the head shed don’t want to hear that they and their hand picked superstars are the main forces holding their borgs in the dark ages while the 2nd law of thermodynamics relentlessly chips away at the cozy environment that envelopes their (not-so) firm.

Chris Argyris’s theory of behavior in an organizational setting is based on two conflicting mental models of action:

  • Model I: The objectives of this theory of action are to: (1) be in unilateral control; (2) win and do not lose; (3) suppress negative feelings; and (4) behave rationally.
  • Model II:  The objectives of this theory of action are to: (1) seek valid (testable) information; (2) create informed choice; and (3) monitor vigilantly to detect and correct error.

The purpose of Model I is to protect and defend the fabricated “self” against fundamental, disruptive change. The patterns of behavior invoked by model I are used by people to protect themselves against threats to their self-esteem and confidence and to protect groups, intergroups, and organizations to which they belong against fundamental, disruptive change. D’oh!

From over 10,000 empirical cases collected over decades of study, Mr. Argyris has discovered that most people (at all levels in an org) espouse Model II guidance while their daily theory in-use is driven by Model I. The tool he uses to expose this espoused vs. in-use model discrepancy is the left-hand-column/right-hand-column method, which goes something like this:

  1. In a sentence or two identify a problem that you believe is crucial and that you would like to solve in more productive ways than you have hitherto been able to produce.
  2. Assume that you are free to interact with the individuals involved in the problem in ways that you believe are necessary if progress is to be made. What would you say or do with the individuals involved in ways that you believe would begin to lead to progress. In the right hand column write what you said (or would say if the session is in the future). Write the conversation in the form of a play.
  3. In the left-hand column write whatever feelings and thoughts you had while you were speaking that you did not express. You do not have to explain why you did not make the feelings and thoughts public.

What follows is an example case titled “Submerging The Primary Issue” from Chris’s book, “Organizational Traps:Leadership, Culture, Organizational Design“. A superior (S) wrote it in regard to his relationship with a subordinate (O) regarding O’s performance.

The primary issue in the superior’s mind, never directly spoken in the dialog, is his perception that the subordinate lacks a sense of responsibility. The issue that *did* end up being discussed was a technical one. (I’d love to see the same case as written by the subordinate. I’d also like to see the case re-written by the superior in a non-supervised environment.)

When Mr. Argyris pointed out the discrepancy between the left and right side themes to the case writer and 1000s of other study participants, they said they didn’t speak their true thoughts out of a concern for others. They did not want to embarrass or make others defensive. Their intention was to show respect and caring.

So, are the reasons given for speaking one way while thinking a different way legitimately altruistic, or are they simply camouflage for the desire to maintain unilateral control and “win“? The evidence Chris Argyris has amassed over the years indicates the latter. But hey, those are traits that lead to the upper echelons in corpoland, no?

%d bloggers like this: