1) Customer Experience Focus
The quality of customer experience is becoming a critical success factor.
Customer experience focus is a way of doing business that meets the expectations of customers. Expectations that are shaped by Internet Giants. For example, they include free shipping, preset ordering options, give return options with printed return labels, …
By analyzing the interactions between the enterprise and its customers, Agile Architecture shall enable the delivery of a pleasant and differentiated customer experience.
2) Outside-In Thinking
Just asking clients what they need is not enough to create a differentiated customer experience. Discovering the hidden or untold customer needs is the key to success.
Agile Architecture shall use marketing and design methods to discover how customers are likely to use products and services. Job-to-be-done analysis, customer journey mapping, and design thinking are examples of methods used by Agile enterprises.
3) Rapid Feedback Loops
Research seeks to understand the needs and desires, both explicit and latent, of target customers and users. Prototyping helps to experiment with research assumptions before a product or service is released. It can be done at any stage and helps to architect better solutions.
Agile Architecture shall seek rapid feedback loops to verify customer and user assumptions.
4) Touchpoint Orchestration
Clients and users are empowered to take control of their relationship with the enterprise and its media.Touchpoint orchestration delivers relevant utility or enjoyment at the right time, place, and social or physical context to the right people.
Agile Architecture shall enable a holistic orchestration of every single touchpoint of an enterprise and its ecosystem.
5) Value Stream Alignment
The analysis of value streams helps make the workflow by giving visibility to problems such as delay, rework, excessive handoff, or interruption. Identifying common steps across several value streams is a key input to operating model design.
Agile Architecture shall identify the enterprise value streams. Value shall be specified from the standpoint of the customer.
6) Autonomous Cross-Functional Teams
Team autonomy is a prerequisite to speed. Why? If teams spend too much time coordinating with other teams, it increases lead time.
Agile Architecture shall segment the organization into autonomous cross-functional teams.
7) Authority, Responsibility and Accountability Distribution
Experience quality and operational excellence require effective coordination and cooperation between autonomous teams. Why? Accountability and responsibility improve predictability, which is a prerequisite to: meeting the customer promise and industrializing operations.
Agile Architecture shall distribute authority, responsibility, and accountability at each layer of the organization.
8) Loosely Coupled Systems
When dependencies are minimized, teams can develop, test, and deploy new functions and features without depending on other teams for additional work, resources, or approvals, and with less back-and-forth communication.
Agile Architecture shall create new modular systems or decompose monolithic legacy ones into loosely coupled sub-systems and components. The modularity will shorten the development time and will increase product flexibility.
9) Modular Data Platform
Source domain datasets represent closely the raw data at the point of creation and are not fitted or modeled for a particular consumer. Data consumers can always go back to the business facts and create new aggregations or projections. They use data platform self-service capabilities to retrieve the data they need, formatted the way they want.
Agile Architecture shall create modular data platforms using domain decomposition logic.
10) Simple Common Operation Principles
In the software domain all components or services will expose functionality using standard APIs and all inter-services communication will use these APIs.
Agile Architecture shall use a set of simple mechanisms that all elements and connections will use.
11) Partitioning over Layering
Functional organizational units such as marketing, finance, or operations are equivalent to layers. Layering tends to create silos, which reduces agility and scalability.
Agile Architecture shall partition the enterprise and its systems. Partitioning shall be market-driven at the business level, capability-driven at the operating model level, and domain-driven at the software level.
12) Organization Mirroring Architecture
Conway’s law states: “Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization’s communication structure.” The Inverse Conway Maneuver is about shaping the enterprise’s organization in a way that mirrors its intentional product and software architectures.
Agile Architecture shall structure Agile teams in a way that maps the system’s intentional architecture.
13) Organizational Leveling
Organizations shall be described at different granularity levels: group level (agencies), entity level (enterprise or government), team of teams (large organizational units) and agile teams.
Agile teams do not exceed 10 to 12 members.
14) Bias for Change
Intentional architecture provides value if it is done differently. Intentional architecture represents a set of assumptions that must be verified. It should not slow down the integration of new requirements.
Agile Architecture shall welcome changing requirements, even late in development. The architecture model is a living artifact that evolves and is continuously refined as requirements evolve and the organization learns.
15) Project to Product Shift
In an Agile context, product-centricity refers to the shift from temporary organizational structures (projects) to permanent ones. A product-centric organization is composed of cross-functional Agile teams which are responsible for developing products and operating them. The DevOps principle “you build it, you run it” is core to product-centricity.
A true Agile team does not deliver a project but a product. Product-centricity shall drive the Agile Organization.
16) Secure by Design
The Agile enterprise will shift from DevOps to DevSecOps, where security is embedded at every stage of the software delivery lifecycle.
Agile Architecture shall create an environment that helps developers to build security into their design and codebase from the start.
Concluding note:
Once free to work in an agile method, employees become empowered, innovative and more productive. With agile working comes improved job satisfaction, better talent attraction and hopefully, a better work-life balance for your team. Employees are more motivated and agile working leads to better customer satisfaction, and ultimately better bottom-line profit for your organization.
But remember, there are several different styles and methods of agile working. Finding the right one for your business can be daunting. If you would like to speak through the different options and discover how agile working could work for you, please don’t hesitate to get in touch!
Source: © 2019-2020 – Open Agile Architecture ™: A Standard of The Open Group