Conway’s Law and Technical Debt

Everyone wants to be agile. It is the catch cry of the day, along with cloud computing, big data and payments processing. Agile software development boils down to do more with less, and communicate more with less. Do more with less is about using fewer but better suited tools to improve productivity. Communicate more with less is … Continue reading Conway’s Law and Technical Debt

If “Buy Before Build” is the answer then what was the question?

If you made a list of the "Top Five All Time Favourite" principles, then I'm sure "Buy Before Build" would be on the list. It just seems like one of those obvious statements. Why wouldn't you buy of the shelf - proven - software to reduce delivery risk, outsource (non-core) software development, and gain incremental improvements … Continue reading If “Buy Before Build” is the answer then what was the question?

Waterfalls don’t exist…

"We use the waterfall methodology". You can literally see the scorn on the developer's face. No one wants to use the waterfall methodology. Except if you are a project manager, of course. They secretly prefer the waterfall, because it shows progression. All these agile iterations, rework, and daily stand-ups are difficult to fit into the … Continue reading Waterfalls don’t exist…

Why do we have balls of mud?

IT complexity is often described using metaphors such as "the big ball of mud" or the "software hairball syndrome" to illustrate a haphazardly structured software system. What intrigues me about these systems is their stubborn ability to morph into existence and their persistence. Almost all the companies that I've worked with over the years have at … Continue reading Why do we have balls of mud?

Is “architecture” the best metaphor?

We often rely on metaphors and analogies to explain software, its structure and function. We cannot see software (except for its user interface), so we use metaphors to illustrate. It is true that we can print out the source code and look at it, but such static representation can mislead as far as the software's true … Continue reading Is “architecture” the best metaphor?

The Elusive Knowledge

"If only they had written a better design document" complained the (to remain unknown) architect in frustration after a series of "he said", "she said", and "no, that's not what I meant". Software development is tricky business and more so the larger the system. Large systems mean more people with smaller pieces of responsibilities (relative … Continue reading The Elusive Knowledge

The Social Enterprise – what problem are we trying to solve?

Social Computing along with Cloud Computing is one of the hot IT buzz words - i.e., the Social Cloud must then be the ultimate in buzz word compliance. This is in fact what Andrew McAfee from MIT's Management school and Mike Gotta from Cisco are discussing. Andrew presents his Enterprise 2.0 the Indian Way in … Continue reading The Social Enterprise – what problem are we trying to solve?

IT confuses (again)

I occasionally read Nick Malik's blog, Inside Architecture, and his latest post about 'Business Capability' reminded me of IT people's general ability to take a perfectly understandable word, such as capability, and turn it into something confusing. This is not a criticism of Nick or Paul Harmon who wrote the article, Capabilities and Processes, that … Continue reading IT confuses (again)

Architects as facilitators

Arthur Wright, a software architect from Credit Suisse, wrote an interesting article in an issue of the IEEE Software magazine, called: Lessons Learned: Architects Are Facilitators, Too! He describes a number of divergent behaviours causing the architecture to fragment through unauthorised interfaces, ill-considered technologies and protest designs. The article is an 'anti-pattern' to Conway's Law. … Continue reading Architects as facilitators