There is a lot of noise today about the use of Agile in digital business. In my experience leading Agile development projects, helping early “eBanks” innovate their web development and operations, and advising some of the leading digital enterprises today with their transformation and innovation initiatives, I have come to realize that there is an fundamental misunderstanding of Agile as it pertains to this thing called “digital business.” Furthermore, there is a pervasive misconception that Agile practices somehow translate into business agility and adaptability. Not true.
Let’s get things straight and real. Just because you are making moves to become a “digital business” (whatever that really means and topic of a separate series) it does not mean that you need to start applying software development, DevOps (get to this in a moment) and ITSM (get to this in a moment) principles and practices to the way that you run and manage your business. Methodologies are just tools that should be adapted to the particulars of your industry, your business and your organization, especially in consideration of the way your people like to work. Whether you are a business looking to digitize, or a service provider looking to provide digital transformation advisory to your client, it is important to bridge the semantic disconnects and the nexus of ignorance (I mean this in the kindest way) that can cause miscommunication, misaligned expectations, and ultimately a troubled digital journey for you or your client’s business.
So what is Agile? For those of you who are new to software development, here is a short, easy-to-swallow definition. Agile is wide range of methods and practices (e.g. SCRUM, Extreme Programing, DSDM, etc.) that share the common methodological traits of iterative cycles of analysis, design, coding and testing to progressively elaborate/define a software product through the quick and frequent release of, feature-prioritized, working code (a.k.a. minimal viable product). It is frequently used to de-risk software develop efforts when the “customer” is not clear on the requirements and what the outcome of investment is supposed to look and feel like. In short, it is a great method for dealing with ambiguity whether you are trying to develop software or a digital service. Agile methodologies are not intrinsically methods for innovation, much less business innovation. Don’t let anyone confuse you in this regard – red flag!
If you have been hanging around techie folks, you have probably heard the term “DevOps” floating around in conversation. If you haven’t, you will. You will get an earful from your digital business consultant or CIO for sure. In the most simple terms that I can come up with, DevOps is a way of managing non-production (development, testing, QA) IT environments to rapidly deploy configurations and environment instances needed to support the frequent develop-test iterations associated with Agile development approaches. Why DevOps? DevOps can accelerate software development cycles (build, test, release) so that you can get more stuff into production faster. It’s a really cool concept that came about to address the rapidly increasing velocity of web application development during the Dotcom era. Think of software development activities, whether executed based on Agile or traditional (“waterfall”) software development and project management practices, happening on top of a digital operational environment managed using DevOps practices and principles. If that confuses you still, give me a call and we can set up a private session with your team to go over DevOps in detail and why you should or shouldn’t care. Maybe you can help me come up with a simpler explanation.
The third dimension of the IT universe that you will likely get hit on the head with is IT service management (a.k.a. ITSM), which is the the discipline/framework for managing the ongoing delivery of IT or digital services to users and customers. These digital services can be infrastructure services (network and servers), platform (development platforms, middleware and tools), or software applications (think Oracle or SAP applications), or all of the aforementioned. For business folks, IT service management is synonymous with your supply chain and business operations. ITSM boils down to how you manage the delivery of value to your customer. For the most part, IT service management is primarily focused on production environments and managing the process of release management and controls for introducing new applications and IT services into production from the software development process – think of this as the tie back from ITSM to Agile.
Okay, now that your attention span has expired, we will continue this topic in the next article in this series, which will explore the nature of business agility and how it does and doesn’t relate to Agile methods and practices. I’m going to finish my Barbera D’Asti and my wonderful Tagliatelle al Bolognese. Homemade pasta, so good! If you have any questions, set up an advisory call with me and some of my experienced subject matter experts and we will help you bridge the semantic and conversational divide between Agile and your digital business. I can be reached at firstname.lastname@example.org.
Reporting from a little hole-in-the-wall restaurant in Torino, Italy, this is Leonard Lee, managing director of neXt Curve. Ciao!