James McGovern is an industry thought leader whose focus is on the human aspects of technology around open source, SOA, software security, enterprise architecture and agile software development.

The opinions expressed herein may or may not represent my own personal opinions and definitively do not represent my employer's view in any way...

Wednesday, March 28, 2007

Enterprise Architecture and Boredom Automation

Last week I listened to a presentation by Gene Laganza of Forrester on collecting EA metrics and thought to myself that if enterprise architects are keepers of the flame what is our fiduciary duty to collect metrics around boredom in corporations...

I have drunk the Kool-aid and get that everything should be business-driven and have a positive ROI. What if though we asked ourselves if it makes good business sense to automate not just tasks that are repetitive but those tasks which are boring? For example, I have been noodling the notion of coding standards that are more rigorous but it would be wildly boring to actually go and reformat an entire code base to conform.

Likewise planning is always something that I have enjoyed but collecting metrics and other clerical activities after the fact is something I eschew. Some folks make fun of architects who don't code which at some level should occur but in all reality it is not boring determining how software should be built while it can be boring actually building software. Actually, let me say that building software in of itself is never boring as I write tons of it at home. I can say that building software within an enterprise environment can be boring because of all the process that is attached to it.

Its kinda interesting at all the folks one can meet that are employed by a Fortune enterprise and how the constantly rant outside of work about how quality is going downhill after the advent of outsourcing and how they are glad that they don't have to write code anymore as part of their day job yet they run home and play with portal software, AI, rules engines, etc and write their own applications. Coding seems to be more fun outside of work than at work, hence an opportunity for automation.

I have asked Gene laganza a very difficult question. I want to know how one can collect metrics to determine whether a process is too-heavyweight? What occurs today is that most metrics uncover value or lack of, but none of them get at whether a process could become more optimized. Likewise, I would love to have metrics that compare/contrast IT leadership management across enterprises where on one axis they compare those who have strong technical leadership backgrounds to those who are process-oriented and on another axis, those who have truly done innovative work vs those whose only saving grace is expense reduction. I bet the numbers would be telling...

JT showed me a wonderful AI demo on something he is working on from home. I was thinking about suggesting to him some ideas along with code of my own. My current thinking says that we could automate the boredom induced by process-weenies into a nicely packaged AI module. Every thirty minutes the module would choose words/phrases such as: best practices, ROI, TCO, process, synergy, leadership, innovation, governance and inject it into a sentence. Maybe JT could take his codebase and inject it into secondlife and attach it to an avatar. Of course, this avatar would need to do lots of hand-waving which would be a best practice and have a positive ROI and TCO for automating the boredom within the enterprise and innovating the next generation of outsourcing...