“software is a critical strategic asset, not an operational nice-to- have”
-John C. McCarthy, Forrester Research
A confluence of technology trends such as mobility, social connectivity, data analytics and cloud computing have fundamentally transformed how enterprises interact and connect with their customers. Almost every facet of a modern enterprise’s engagement with the customer has a digital interface; it could be via a mobile app, website, social media connection, or through a connected product/device. More than ever, the customer experience of an enterprises’ products and services is not only defined but also deeply influenced by the nature of digital experience delivered through software. Therefore, it is only logical that the role of software in an enterprise is being transformed from an IT-led back office function to that of a business-driven front line function, making it a critical, and strategic business asset.
As enterprises gear up to acquire this critical software competency, they are realizing that they need a fundamental digital makeover, requiring significant changes in how they are organized, how they approach software development, and in overall technology management. With our extensive experience and insights in every aspect of software product development, we strongly recommend that enterprises consider the following strategies as part of their overall digital transformation framework:
Develop a Product mindset
While an “IT mindset"While an "IT mindset" can ensure business continuity and support for mission critical systems, it is utterly incapable of innovation and serving the real needs of the customer. To withstand and survive the tectonic shifts in the business and technology landscape, enterprises must transform their "IT mindset" and develop a “Product mindset” and shift from a “risk averse” culture to that of “value addition”. The product development environment of an enterprise will be characterized, and differentiated from a typical IT setup in the following ways:
- Product Development led by a self-contained team with deep domain expertise, focused on delivering the desired functionality, as opposed to an “IT” team focused only on technology.
- Staffed by developers, UX designers, and product architects reporting to a product manager, instead of business analysts and project managers reporting to a CIO
- Focus on serving the direct, real needs of the customer as opposed to the perceived business needs
- Requirements or customer needs are discovered, implemented and validated with real customers in real-time, in a continuous cycle as opposed to requirements prioritized and implemented in a roadmap
- Typically follow agile, and iterative processes for product development as opposed to the slow, waterfall processes of an IT setup
- Technology management that will support a governance framework to facilitate rapid development and deployment of applications
Nurture deep domain expertise
While a strong IT team needs robust technology skills, a strong product development team needs much more. It needs people with deep insights into the business domain, who are capable of translating the business requirements into tangible, functional requirements for the software product/service. This will be possible only when you have a core team of people working dedicatedly through the various lifecycle phases of a product. It is essential to nurture a dedicated team, which would develop deep domain expertise over a period of time to deliver cutting edge products and services.
Adopt agile processes
The internal processes adopted for handling typical IT work are designed with “stability” as the key goal. As enterprises move towards an “agile approach” they have to adapt best practices, processes, and workflow to facilitate rapid product (IP) development. The redesigned agile IT processes must be based on speed, innovation, time-to-market, and capability to deliver tangible customer value.
Refactor backend architecture
Enterprises will need to refactor their traditional technology architecture to facilitate innovation without sacrificing the stability of backend systems. The redesigned framework should enable rapid front- end application development, which calls for a multi-tiered enterprise architecture that can meet the demands of millisecond response time of mobile and cloud-based apps. This also calls for an organizational transformation (Refer to my earlier blog In The Absence of Organizational Transformation, Technology Innovation will Fail) to support the frontline role of product development as well as an enterprise level architectural body.
Focus on UX
Enterprises must either acquire or leverage third-party expertise to ensure that their products and services are designed with robust and intuitive interfaces, capable of delivering a great customer experience.
Develop an ecosystem of trusted partners
The rapid rate of technology change and the resultant organizational transformation clearly dictates that enterprises will not be able to do everything in-house. As enterprises struggle to acquire the skills and competencies needed to develop sophisticated software products and services, they must explore distributed development with mature offshore service providers who can be strategic partners in their efforts to embrace innovation and transform their businesses.