Tag Archives: Agile

Agile Enterprise Architecture – A Good to Great Evolution

By Priya Patra, Sr. Manager at IGATE Global Solutions

I have been an Agile Practitioner for years now, have been in many successful Agile executed projects. But as an Enterprise Architect I am somewhat skeptical about the fact how the eXtereme Programming and other Agile methodologies dismiss the value of analysis and design.

In this write-up I will try to blend in the flavors of Agile along with Enterprise Architecture to bring in the concept of Agile Architecture.

Enterprise Architecture is good, but when we make it agile t0 embraces change, it is great. Let’s see how we can embark on the Good to Great journey of making an Enterprise Architecture and Agile Enterprise Architecture.

Emerging and Intentional Architecture

SCRUM and XP have seen broadest adoptions in the enterprises. These methodologies are based on the assumptions that the architecture emerges out of the iterations of delivery of value driven user stories and continuous refactoring, this is what we call Emerging Architecture. What if we have to scale this to the enterprise, will it stand up to the test of scalability, here comes in the Intentional Architecture.

Intentional Architecture is a practice which is designed to produce robust architectures in an Agile fashion. The objectives of Intentional Architecture are as follows:

  1. Build Application Architecture vision
  2. Alignment of Application Architecture with Enterprise Architecture vision
  3. Leverage Architecture patterns, implementation strategies and best practices – Build robust Architecture Principles
  4. Sponsor innovation and continuous Improvement

Agile Architecture – Looking beyond the current Sprint

With the foundation laid for an intentional architecture, we will now look to see if we can make the enterprise architecture Agile.

Characteristics of an Agile Architecture

  1. Intentional Architecture, rather than an emerging architecture
  2. Integration points to facilitate Agile Development rather than hindering the same
  3. Embrace change without over building

This does not happen by accident but by design.

By The Open Group

 The Agile Enterprise Architecture

Role of an Agile Architect

There are substantial benefits when we effectively apply the intentional architecture, provided the iteration is not slowed down. An Agile Architect is a role in an agile team who provides inputs and technical direction based on the Architecture vision to the enterprise and ensures that the design and architecture of an individual application is in conformance with enterprise architecture vision.

Let’s see how an Agile Developer and Agile Architect embrace change?

Agile Developer Agile Enterprise Architect
Works to satisfy the customer and business Balances needs of all stakeholders and knows when to say “no”
Embraces change quickly assuming change is inevitable Plans for change, embraces it, by understanding it and through a flexible design
Follows “YAGNI” principle of XP Follows “Separations of concerns”, plans and designs for scalability and reliability in conformance with Enterprise Standards
Uses quick   solutions to solve problems Implement Long tern solutions to reduce technical risk / debt and improve maintainability

Evolution Strategies – Good to GreatBy The Open GroupBuild strong foundations: Agility depends on strong foundations; we can never be agile, if we keep spending time in fixing the core or Architectural building blocks.

Establish Implementation strategy: Implementation strategy to be aligned to the Architecture vision and communicated to the Agile team to ensure alignment to the vision.

Adopt a layered structure:   Layer data as well as the software. We need to separate out things with specific purpose or which changes with different rates than others. Separate the core from the business rules, loosely couple components and apply abstraction for growth and scalability.

Practice change continually: Being Great at anything requires practice. Agile teams needs to use tools and techniques which support constant change e.g. Continuous Integration, testing and refactoring

Bottom line “Think long term and act short term “. Understand the agility the business needs, understand what helps you to align to the Enterprise Architecture Vision and choose design wisely!

By Priya Patra, Sr. Manager at IGATE Global SolutionsPriya Patra is Sr. Manager at IGATE Global Solutions. She has extensive experience in managing and executing product / framework development and Technology CoE projects. She is a Certified Scrum Master, a certified TOGAF® practitioner and a member of the Association of Enterprise Architects (AEA).

5 Comments

Filed under agile, Enterprise Architecture, Enterprise Transformation, the open group

Future Shock: Why IT Needs to Embrace Agile Development or Be Left Behind

By Allen Brown, President and CEO, The Open Group

In his 1970 bestseller, Future Shock, futurist Alvin Toffler predicted that the rate of technological change and progress was beginning to accelerate at a rate faster than what people are often ready for or can handle. Looking over the course of history—from agrarian societies through the industrial age to our current post-industrial age in which more people work in service-oriented fields than agricultural ones—Toffler noted that the rapid changes brought on by technology often leave people in a state of “future shock.”

Future shock, Toffler argued, can cause not only disorientation for those who are caught up in it, but it can also induce a kind of paralysis brought on by being confronted with too many choices. In its worst form, future shock can lead to alienation and a breakdown of the social order due to “information overload” (a term originally coined by Toffler).

Toffler’s predictions were amazingly accurate for the time. We are most certainly in an era where we can barely keep up with the constant technological changes we are faced with on a daily basis. This is certainly true of how consumer technologies have changed our lives. Not only is the laptop or phone you buy today practically obsolete by the time you get it home, but we constantly struggle to keep up with our technologies and the volume of information—via email, text messages, the Internet, Twitter, etc.—that we consume on a daily basis. We are all likely suffering from some degree of information overload.

Similarly, technology change is accelerating business drivers at rates that are increasingly difficult for organizations to keep up with, not only for IT, but also for management. Trends such as Cloud, BYOD, Big Data and the Internet of Things are driving information overload for today’s enterprises putting intense pressure on lines of business to respond quickly to market drivers, data-driven imperatives and internal demands. Organizations are being forced to change—whether they are ready or not.

According to Toffler, the only way to combat future shock is to learn to adapt and to do so constantly. Toffler likens an inability to adapt to a new kind of illiteracy, with those who cannot adapt being left behind. “The illiterate of the 21st Century are not those who cannot read and write but those who cannot learn, unlearn and relearn” he said.

The problem is that most organizations today are not in a position to handle rapid change or to adapt quickly. In The Open Group Convergent Technologies Survey, only 52 percent of organizations surveyed felt they were equipped to deal with convergence of new technologies, while 27% said they were ill-prepared. Prepared or not, the tide of convergence is coming whether organizations like it or not. But to survive in our current economy, companies must learn to architect themselves in the moment.

Using Agile Development as a Model
Over the past ten years, agile software development has emerged as one of the ways for IT developers to adapt to the requirements of constant change. Based on a definition coined in the Manifesto for Agile Software Development in 2001, agile development is characterized by iterative, incremental and rapid development that evolves through collaboration. Rather than making development a process that takes years of painstaking planning before execution, the agile method puts a product out into the market at the earliest convenience, tests it with users and then adapts it accordingly. The process is then repeated with feedback and upgrades on a constant, iterative loop.

Agile development is driven by flexibility and the ability to respond rapidly to keep up with the endless change in the market. With agile principles, organizational focus shifts from processes and tools to individuals and interactions, the organization to the customer, from negotiation to collaboration, and to responding to change rather than sticking to rigid plans.

For many readers, “agile” is a loaded term and largely associated with solutions rather than the enterprise architecture but there are some appealing aspects to it.  An adaptation of the twelve principles of Agile Development to the discipline of Enterprise Architecture would be an interesting place to start.  I have just picked out half of the principles and adapted them here by way of example – using parenthesis to show possible deletions and adding a few words here and there in italics.

  •  Our highest priority is to satisfy the customer through early and continuous delivery of (valuable software) valuable architecture guidance to the enterprise
  •  Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
  • Business people and (developers) architects must work together (daily) throughout the project.
  • Simplicity–the art of maximizing the amount of work not done–is essential.
  • The best architectures, requirements, and designs emerge from self-organizing teams.
  • At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

What Organizations Can Learn from Agile Development
As Toffler predicted, the rate of business change is happening so quickly that if you take too much time to do anything, your organization is likely to lose out. Business schools have even taken a page from IT development and have begun teaching the principles of agile development to graduate students. As Toffler noted, “if you don’t have a strategy, you’re part of someone else’s strategy.” In business today, as in combatting “future shock,” adaptability must be at the core of every organization’s strategy.

Organizations that want to survive and thrive in this paradigm will need to take a page from IT, agile development and start-up cultures to become more nimble and move more quickly. Becoming agile will take significant shifts in culture for many organizations. Business and IT must work together in order to facilitate changes that will work for each organization. Enterprise architects and IT leaders can help lead the charge for change within their organizations by helping the C-Suite not only understand how to apply agile development principles to the business, but by showing the potential consequences of being slow to adapt and how business imperatives are the real drivers for these changes.

Architecting things as you go is a difficult thing for most organizations and most industries. Most of us are not used to that level of flexibility or a need to adapt that quickly. We are more comfortable with planning ahead and sticking to a well-thought out plan. Agility does not preclude planning or forethought—rather it is part of the process and action plan instead of being a precursor to action. Although many organizations are likely in for a large dose of “future” or culture shock, adaptation and business transformation is necessary for today’s organizations if they don’t want to be left behind in the face of constant change.

Allen BrownAllen Brown is President and CEO, The Open Group – a global consortium that enables the achievement of business objectives through IT standards.  For over 15 years Allen has been responsible for driving The Open Group’s strategic plan and day-to-day operations, including extending its reach into new global markets, such as China, the Middle East, South Africa and India. In addition, he was instrumental in the creation of the AEA, which was formed to increase job opportunities for all of its members and elevate their market value by advancing professional excellence.

5 Comments

Filed under Open Platform 3.0