2. Align with the application modernization strategy
Constructing a platform-centric approach doesn’t resemble a quick “lift-and-shift” migration or enhancements to specific applications. When embarking on building a platform, align the application modernization process accordingly.
Assess legacy IT applications that will be included and categorize them using application portfolio rationalization (APR) techniques such as 6R analysis. This exercise will help determine how best to onboard each application to cloud infrastructure and where remediation is required. Focus on implementing a capability-led application transition. Start by value-stream mapping each business capability. Then, identify where newly developed (greenfield) products are viable and required to optimize processes along the value stream.
3. Adopt customer-centricity with a product mindset
Software applications produced by IT teams need to meet ever-rising user expectations by performing on par with commercial code across all dimensions, spanning availability, usability, scalability, fault-tolerance, privacy and security. Focus on enriching the user experience and delivering quality products with maintainability, speed-to-value and a high return on investment.
Apply design thinking to understand and engineer customer experiences. Collect metrics that matter and empower frontline workers to capture the voice of the customer to fuel continuous improvement.
Embedding a product-centric mindset to software engineering requires the IT organization to take a systematic approach. Instate techniques such as continuous collaboration, customer journey mapping, data analytics and customer insight.
In this vein, a leading US life insurance company enhanced its customer experience as we applied these practices to develop a new IT platform that required migrating legacy technology to the cloud and consolidating underperforming portals into a single web experience.
4. Embrace modern technologies
A platform strategy extends well beyond migrating legacy applications to cloud ecosystems; it requires new technologies to power advanced capabilities and connectivity. Incorporate big data, IoT, AI, machine learning and blockchain to support new strategic approaches such as multichannel or omnichannel commerce.
Moreover, identify where productivity accelerators, such as process automation, can improve consistency and reduce manual work. Implement a tools-based approach for better work execution and communications across teams, improving efficiency and traceability. Seek more systematic use of high-quality, reusable software components (code) and frameworks.
For example, we applied process automation as part of a new claims processing platform for a large health plan that brought claims inventory to near-zero levels and saved $900 million in expenses over seven years.
5. Ensure continuous delivery of quality software product releases
Seek to improve application development practices and team capabilities before moving forward with new platform-related projects. Assess the current maturity levels of existing Agile and DevOps practices to identify any gaps. Consider investing in Agile coaching, where needed, to help team members unlearn any old ways of working and adopt new approaches. Establish collaborative governance to oversee Agile-DevOps progress and set release milestones, aspiring to higher levels of such practices along the journey.
Adopt a wave-based development approach and apply continuous delivery practices to each wave. A continuous delivery approach helps speed releases of minimum viable products (MVPs) as well as subsequent production releases. This will also contribute to lower costs and higher code quality.
6. Enable a cultural shift and business alignment
IT organizations with traditional software engineering practices and a charter to simply “keep the light on” often encounter culture clashes or compatibility issues when pursuing platform projects. To avoid potential roadblocks:
- Nurture an open culture that encourages experimentation and fail-fast-fail-early mindsets
- Establish a flexible funding model to help speed product and platform development
- Provide continuous feedback, rewards, recognition and performance enhancements rather than standard annual reviews
Engage a variety of learning methods, from online and instructor-led to hands-on, case-study-based teachings through experiments and exploration. Allow team members to experience how things actually work.
Create synergies across IT and the business to understand priorities, define the problem space and create solutions iteratively. Focus collaborations on problem solving and “solution-ing,” to promote a BizDevOps culture across the organization and instate an effective feedback loop and value alignment.
7. Apply multitiered governance
Orchestrate communication and collaboration across product and platform teams to help manage dependencies, reduce conflicts and avoid delays. Governance of product and platform teams requires a multitiered approach, including:
- Platform governance: Product managers, product architects and the platform leadership team should meet monthly or fortnightly based on release frequency, work complexity, ongoing changes and business criticality. Review and discuss the short-medium-long-term platform roadmaps and related product dependencies, end-user feedback and problem areas that need to be resolved.
- Product governance: This team covers product-specific enhancements and identifies fixes that require changes at the product level. For instance, before adding a new field in a product screen, ensure corresponding messages that interface with downstream systems and back-end data stores can handle the new field. Assess how any changes might affect the platform and dependent products or external interfaces, and ensure adequate testing to avoid unexpected issues and downtime.
- Talent governance: Manage talent demands, transitions and transfers across the program to mitigate risk, backfill attrition and promote knowledge sharing. Guard against impacts on the platform schedule and tend to team morale.
After launching the new platform, conduct ongoing research into market and competitive trends to identify needed enhancements. Be mindful of regulation changes, new security requirements and any compliance needs.
This article was written by Raja Bavani, an AVP in Cognizant’s Digital Engineering Practice.
To learn more, visit the Software Engineering section of our website, or contact us.