Enterprise Architecture Management and Agile Software Development: A paradox or a fruitful combination?

Kornek Daniela
KIN Research
Published in
5 min readJul 10, 2020

“Agile teams aim to ensure short-term success and follow an evolutionary approach. An enterprise architect has a long-term horizon and likes to plan. The different perspectives are the core problem!”

Enterprise architecture management (EAM) and agile software development are often perceived as being at odds that cannot blend due to their opposing perspectives and focus areas. Is that really the case? Or can the two opposing disciplines be merged? Can agile teams and architects collaborate successfully?

Top down versus bottom up, Enterprse Architecture versus Agile. Can they be combined?

In the digital era, large organizations are increasingly adopting agile methods across multiple software development teams to cope with the relentless pace of change and technological advancements [ref]. These bottom-up methods assume that architecture and requirements emerge naturally from incremental development cycles. However, organizations cannot solely count on emergent architecture design when agile is applied at scale, as this could lead to problems such as low reusability and excessive redesign [ref]. In an agile environment, a mechanism that coordinates the teams towards a shared objective and provides a certain degree of intentionality and planning is still required [ref]. In recent years, EAM has positioned itself towards such an overarching discipline that guides digital transformation from a strategic perspective [ref] and embraces intentional architecture design.

At first glance, the incremental nature of agile might seem incompatible with the plan-driven, top-down perspective of EAM. The idea is not completely unfounded. The clash of two opposing approaches is not always frictionless [ref] and occasionally characterized by a lack of collaboration between enterprise architects and agile teams. However, despite their inherently different nature, they can be fruitfully combined, as my study shows.

The barriers to collaboration between enterprise architects and agile teams

My study, which is based on 16 interviews with respondents from the field of enterprise architecture and agile software development, explored the barriers to collaboration. In a nutshell, it revealed three tensions as the fundamental cause of a malfunctioning interplay:

  1. Opposing perspectives (long-term vs. short-term) and planning approaches (abstract vs. detailed) pursued by agile teams and architects lead to friction.
  2. Different areas of expertise (functional requirements/what vs. non-functional requirements/how) and opposing depths of knowledge (high-level vs. low-level view) trigger a knowledge tension.
  3. Divergent views and cultural differences (traditional vs. agile) frequently cause a mindset tension that can impede a fruitful collaboration.

These underlying tensions can trigger challenges related to communication, documentation, and availability/support (see figure below).

The underlying tensions manifest themselves in different challenges

Reconciling conflicting interests between enterprise architects and agile teams

“By 2022, 80 % of digital businesses will take a collaborative approach to EA, involving participants across business and IT, and potentially beyond.” [ref]

Establishing a truly collaborative approach is neither easy nor quick, and deploying new practices will take mutual effort and time. However, instead of waiting until collaboration starts to flourish out of the blue, organizations can take simple measures to start bringing EAM and agile closer together and establishing a competitive advantage. My study sheds light on the importance of resolving the barriers mentioned above and reveals that the obstacles can be alleviated by a set of “enabling drivers” combined with the proper capabilities of enterprise architects and agile teams.

Five ways to boost collaboration between enterprise architects and agile teams

1. Create a culture of transparency

To improve collaboration, radical architectural transparency must be embraced. This requires that all information (EA decisions, blueprints, interface descriptions, etc.) is shared and accessible. Transparency does not only allow to identify dependencies early but also prevents unnecessary refactoring or misalignment. Moreover, sharing knowledge, information, and best practices will help both parties to execute their work better.

2. Foster frequent communication & support constructive discussions

Face-to-face communication and regular communities of practice turned out to be the most effective way to align conflicting interests and reduce knowledge and planning gaps. Ad-hoc meetings, communication via third roles, and discussions on the fly are less suitable as they could lead to pain points being identified late, misinterpretations, and an inconsistent understanding of goals.

3. Establish shared visions & values

Shifting from a “us vs. them” to a “us” culture requires the development of a shared purpose and similar values. The easiest way to make this happen is to collectively develop guiding principles, visions, and concepts instead of imposing strict specifications top-down.

4. Define clear roles & responsibilities

The study also shows that collaboration demands a clearly defined set of areas of responsibility and boundaries. Role clarity can overcome challenges such as a lack of ownership and shifting tasks back and forth while boosting the willingness to invest time and effort in collaboration. Moreover, the value of EAM is more accepted if enterprise architects give agile teams the perception that they have a say and can contribute ideas.

5. Ensure the requisite skills

To support the establishment of a collaborative environment optimally, enterprise architects should act as “facilitator” and demonstrate a bunch of skills: a mixture of technical & professional knowledge, aligning strategic objectives with operational ones to shepherd the organization towards a common purpose, being able to engage in meaningful conversations, an agile mindset and the ability to say “no” when required. At the same time, agile teams should develop a sound understanding of architectural topics (architectural thinking) to comprehend how their actions impact the big picture.

While existing studies mainly focus on proposing a new lean or agile EAM approach, my study addressed the underlying issues and explored the expectations, desires, and already implemented best practices of enterprise architects and agile teams regarding collaboration. Considering the “enabling drivers” is a good starting point to reconcile conflicting interests and find a proper balance between stability and agility. By tackling the root causes of lacking collaboration through collective effort, agile teams and enterprise architects can quickly unlock the potential of a collaborative EA approach.

About Daniela Kornek

As a consultant in Accenture’s Strategy & Consulting practice, Daniela helps clients in transitioning to an agile organization and implementing future-proof technologies. She has a passion for emerging technologies, new ways of working, and tackling challenges of today’s fast-paced world. With a master’s degree in digital business & innovation at VU and a great deal of hands-on experience, she is eager to drive agility and innovation. Contact Daniela on Linkedin.

--

--