We are a group of Digital Architects at Capgemini that are tooling agnostic and addresses the full width of the Customer Experience landscape. The group consists of Hans van Rijs, Robin van den Hoven, David Salguero Kuiters and Remco Stolp. Together we address five architectural challenges for 2020 and beyond, in a series of blogs. The challenges we see are:
- Challenge 1: Increase in touchpoints and data
- Challenge 2: Manage a complex and dynamic ecosystem
- Challenge 3: Outdated techniques and tools
- Challenge 4: Work silos
- Challenge 5: Getting insight in both private and work domains
In this fourth challenge of the series I will focus on what it means to work Agile for DCX Architects.
Organizations are increasingly switching to an Agile way of working. Introducing Agile within your (digital) organization means that new processes, practices and ways of working together need to continuously add business value to your digital services and the ever-changing need for delivering a perfect customer experience. At the same time, there is a rapid increase in the number of new platforms on the market which offer potential valuable additions to your existing digital services. Working Agile helps you react fast to market changes which makes this approach powerful. But how can you build a solid architectural foundation, as you are continuously adding new applications and your CX landscape is evolving rapidly?
Fragmentation of knowledge
Keeping up with the latest trends and implementing new platforms that support this, also requires specific expertise to design and support these new platforms. Knowledge is often localized in different Agile teams, each with their own area of expertise, either working internally or externally for the organization and all working on a part of the digital customer experience. This results into teams becoming increasingly fragmented and aligning them becomes a big challenge for the Digital Architect who orchestrates design and development. Because of all the different teams that are working on a part of the digital customer experience, in sometimes (not desired) different sprint lengths, the Digital Architect needs to be in the driving seat of the coordination and monitoring of work.
The challenges of the Digital Architect
Applications, market offerings, people, processes and the way of working in organizations are changing and this affects the work of a Digital Architect. There are multiple ways in which the architect can adapt to these changes. One of them is combining roles where the Digital Architect is part of the Agile team. This reduces lines of communication between the Agile team, the business and the Digital Architect. This can be effective when the digital service is built by one team, or the architect operates on a software architectural level. But, when working on a digital customer experience with many different Agile teams, it becomes difficult to introduce this way of working. In such scenarios, the Digital Architect (and thus Scrum Master or Product Owner) must be part of every team.
So, the question is whether this is a sustainable way of working when the number of teams grows? In addition, in many such cases the Digital Architect needs to swim against the tide all the time, because in every team, the architect is the one who is responsible for the long term vision, while the Agile teams are mostly thinking in terms of short sprints.
The Digital Architect holds the key to solving the puzzle
For the Digital Architect, working Agile in sprints does not do the trick, but connecting to the teams that work Agile, does. To start with, the Digital Architect must create a solid architectural foundation, on which you can add other applications and functionalities. By adopting a strong foundation that does not change all the time, and also allowing the individual teams with the ability to adapt to the market by creating a flexible layer, you ensure that the landscape is sustainable. Mostly, applications that are flexible in terms of API functionalities are required, for both the base and flexible layer. This way of working makes sure the individual teams are less restricted in the work they are doing. Think of an e-commerce platform for example. Adding an application to your platform that immediately gets real time available delivery times of your carriers, that you can show in your check-out so the customer can choose a delivery time that fits the customers’ situation best, can really boost the customer experience. Such additions, however, must not impact your e-commerce core architecture.
So, the Digital Architect is acting as a kind of servant leader, but not as a member of the Agile team, who is continuously helping the teams to do their work. Changing the base architecture as little as possible, does not ensure that the continuous development of different teams in the flexible layer can never cause any unforeseen impact. Development in sprints that may have a negative impact on other systems can possibly be minimized by closely aligning the teams. It’s all about anticipating what’s coming and the Digital Architect is in the centre of it all.
To do this successfully, the Digital Architect must attend to sprint refinements, speed grooming sessions and PO alignment meetings to name a few. This way, the Digital Architect continues to play a central role, applies a long-term vision and supervises the whole scope. In some situations, the span of control is just too big to handle, and a structure is needed to bring together all the teams successfully. In this case, Scaled Agile (SAFe) can be your preferred method.
Agile way of working lets you adapt and respond fast to market changes. This requires new knowledge and expertise to be able to react quickly to the change. Ensuring that Agile teams do not have too many restrictions, building a flexible layer on top of your core architectural framework can help organizations to build a sustainable landscape. Furthermore, the Digital Architect must act as a leader to help the teams and also stay in the driving seat to coordinate and monitor work.
Do not miss out on the other architecture challenges and read the other blogs: