The movie “Finding Forrester” portrays the friendship between an award-winning, reclusive, and elderly writer named William Forrester (portrayed by Sean Connery) and an extremely talented teenager known as Jamal Wallace (played by Rob Brown). Both share a love of writing and develop a deep friendship. The following is an excerpt from the script:
Jamal: Did you ever enter a writin’ contest?
Forrester: Yeah, once.
Jamal: Did you win?
Forrester: Well of course I won!
Jamal: You win like money or somethin’?
Jamal: Well, whadchu win?
Forrester: The Pulitzer.
Akin to this, the fictional protagonist of this blog, Bill, is a hands-on tech geek and an IT industry veteran, while James is in his late 20s. Bill has been an active player through many industry cycles: client server technology, global delivery model, data warehousing, eCommerce, business intelligence, social media, real-time analytics, artificial intelligence, and so on. He can quickly absorb new IT advances and apply them to gainful code in production. From the start, James, too, is a techie geek. Throughout his professional career, he has also picked up highly valuable project experience as a business analyst. Having worked together on assignments, Bill and James develop strong camaraderie and respect for each other’s perspectives. They constantly bounce ideas off one another to sharpen insights. One such tête-à-tête led to…
An upcoming hackathon on speed to market compelling new products and services.
In this context, Bill cited his recent experiences witnessing how DevOps, in conjunction with Agile and well-implemented SOA, accelerated product development by putting a large volume of high-quality code rapidly into production. James asked Bill to expand on the practices, processes, and tools he applied in such projects. To further enhance their presentation and reinforce his understanding of Agile-DevOps, James replayed a story that Bill had once shared, shown below.
“In the early 2000s, when Java J2EE was a “hot” technology, I was working on an ADM assignment using the Global Delivery Model for the marketing organization of a large manufacturer. My project was dedicated to the development of a software application for product advertisement and lead generation aimed at generating considerable P&L impact. It was a large-scale project encompassing nine brands, 20 countries and three multilingual continents. The business requirements evolved and churned continuously and in a chaotic manner. Deliverables from other vendors were delayed and sometimes incomplete. However, this perfect storm of circumstances led to us to deploy a few best practices:
James ended his recap with an appending remark, saying “You know the reality on the extent of business success achieved by the manufacturer—despite this well-executed IT project with a hot new technology!”
Bill and James realized that while IT agility aided by Agile-DevOps paired with good implementation of SOA is helpful and perhaps necessary, it simply isn’t sufficient to generate business agility as manifested by the speed to market of compelling new products and services. Upon further debate, they realize that business agility could be enabled by:
With these insights, Bill and James immersed themselves in the upcoming hackathon to identify: a few powerful business use cases, the relevant architectural patterns, relevant functional IT components and APIs that would support realization of prioritized business use cases, and Agile-DevOps practices, tools for use and capable team mates to ensure robust execution in the competition.
To quote again from the movie, “No thinking—that comes later. You must write your first draft with your heart. You rewrite with your head. The first key to writing is… to write, not to think!” This is understandable given the oft-occurring “writer’s block.” However, an enterprise aiming at business agility always benefits from the following adage: “An ounce of thinking on business use cases is worth of pound of code in production.” After all, reams of less-than-well-thought-out code in production makes it inevitable that “technical debt will manage the enterprise” rather than “the enterprise managing technical debt to ensure business agility.”