Evolving Your Architecture: Essential Steps and Tools for Modernization

code red code red

Modernization is a continuous necessity, from transitioning on-premises systems to the cloud to adopting new technology. As both technology and market demands evolve, so does the need for modernization. Senior technologists and developers constantly seek opportunities to improve code, project structure, frameworks, and overall architecture. However, the reasons behind these changes are often overlooked, yet they are crucial in shaping the approach.

In this presentation, we will explore the key considerations before embarking on modernization efforts. You will learn about the essential aspects of architecture that require assessment, methods for conducting these assessments, and the tools available to facilitate the process and support informed decision-making.

What's the focus of your work these days?

I am currently working on a finance institution modernization. My current focus is on ensuring the initiative succeeds. One key challenge I've encountered is balancing the wish of the team for a complete rewrite of the legacy system while adopting modern architectural styles without considering time to cost and business needs. The tendency toward big bang releases is another common challenge. This often leads to delays and increased risks. Through my work, I've learned the importance of promoting lean-based strategy for splitting the work (modernization in thin-slice) and meeting the business expectations while building a strong technical foundation that will guide the architectural evolution.

What technical aspects of your role are most important?

Modernization initiatives thrive on the ability to deliver working software frequently. Unfortunately, a limited understanding of iterative delivery methods can lead to cumbersome big bang releases. I possess the expertise to overcome this by promoting a thin-slice modernization approach, focusing on meeting business outcomes while building the technical foundation by leveraging engineering excellence – automated tests, frequent integration (CI), TDD, refactoring, clean code, pair programming, along with feature toggles and techniques such as transitional architectures, ensuring smooth and low-risk transitions from depending on the legacy system to the target state.
 

Another critical aspect is preventing past architectural issues from resurfacing. Through the application of evolutionary architecture principles and robust fitness functions (architectural tests, layered integrity, code static analysis, security checks, etc), I can guide the architecture's evolution without compromising its quality attributes and the agreed architectural principles. My deep knowledge in XP-based engineering practices further empowers the team to deliver value frequently and reliably. 

In essence, I bridge the gap between the on-the-ground development work and business goals, ensuring a high-quality software foundation that is built incrementally while delivering tangible business outcomes.

How does your InfoQ Dev Summit Boston session address current challenges or trends in the industry?

It's no secret that outdated technology and reliance on legacy systems hinder businesses from achieving their goals. While architecture modernization can be daunting and complex, the risks of inaction often outweigh the challenges of transformation. Unfortunately, some executive leaders defer modernization initiatives due to short-term priorities or a misunderstanding of the process itself. They might believe that simply updating technology will deliver benefits like agility, resilience, and growth. However, modernization is far more than a technical exercise. It encompasses a holistic approach that addresses funding allocation, prioritization, collaboration across teams, adoption of best practices, and fostering a culture of alignment.  Sadly, this broader perspective is often overlooked, leading to a high failure rate (nearly three-quarters) for legacy modernization projects.

How do you see the concepts discussed in your InfoQ Dev Summit Boston session shaping the future of the industry?

My session is a combination of pre-existing consolidated principles, practices and patterns – but many times seen and applied in isolation. Providing a broader view of the modernization journey – why, what, how and how to measure success – I want to broaden people's perspective not only in the process and how-tos but also in their role as senior practitioners in such a context.


Speaker

Camilla Crispim

Principal Consultant Engineer @Thoughtworks, Member of the Technology Advisory Board, Co-Author of @Thoughtworks Technology Radar

Camilla is currently a Principal Technologist, Member of the Technology Advisory Board and Co-author of the Thoughtworks Technology Radar and also Technical Director at Thoughtworks Brazil. Having a broad experience in technology and industry domains, with great focus and passion on Agile Practices and Architecture, Engineering Excellence and DevOps. Camilla ultimately is invested in how these areas can deliver value and leverage business performance.

Read more

Date

Tuesday Jun 25 / 10:20AM EDT ( 50 minutes )

Location

Metcalf Hall

Topics

Modernization Architecture AI-Assisted Development Teams Engineering Effectiveness

Share