Agile ppt final

Preview:

Citation preview

Click to add Title

Agile Architecture

e-Infochips Institute of Training Research and Academics Limited

Prepared By:Monika SanghaniNirali Savani

2

Motivation

Design Process

Construction Flavor

Conclusion

Takeaways

Innovation Drives Business…

• Evolutionary Innovation keeps your business running only and is not in focus of the business nowadays (e.g. VW Beetle).

• Revolutionary Innovation guarantees nowadays the business success (e.g. electric car)

• Disruptive Innovation changes existing or creates new markets causing old business to die (e.g. digital camera).

…and requires supporting IT.

Motivation

Revolutionary or Disruptive Driven Business…

• Architecture is the fundamental organization of a system embodied in its components, their relationships to each other, and to the environment and the principles guiding its design and evolution.

• Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change.

• Architecture is non-functional. Architecture is about Quality.

…needs Architecture, Agile Architecture.

Architecture Empowers…

• Declarative knowledge is the type of knowledge that is, by its very nature, expressed in declarative sentences or indicative propositions.

• Declarative knowledge focuses on the answer to the question “why am I able to do it”.

• Procedural knowledge in opposition focuses on the answer to the question “how to do it”.

…Declarative Knowledge.

The Promise of the Agile Architecture

• Reduction of risks throughout transparency, abstractions and partitioning.

• Precise definition and understanding of your business.

• Active collaboration of the domain and IT experts on the software design.

• Clean definition of the boundaries around abstractions.

• Better organization of your enterprise architecture.

Agile Architecture Focuses On Simplicity using Transparency, Abstractions and Partitioning

• Transparency investigates the “as-is” architectural state.

• Abstractions focus using models on the essential architectural challenges.

• Partitioning creates taxonomy for grouping architectural elements.

…Complexity is the Disease , Simplicity is the Cure

Transparency Helps to Define As-Is and Desired State.

Abstractions Help to Find Solutions to the Real World Problems.

Partitioning Helps to Structure the Functionality of a Software System

• Reduces complexity of any system.• Closely related to a mathematical

concept known as equivalence relations.

• The most important equivalence relation, from the perspective of enterprise architecture, is synergy.

• Two functions are synergistic when each requires the other to be effective.

• Synergy is closely related to an inverse equivalence relation called autonomy.

Interaction Between Business and IT Architectures

Design Process

Functional Domains Represent the Glue between Business and IT Architectures

Agile Architecture is Based on the Lean Process Principles

• Defer commitment and decide as late as possible• Deliver as fast as possible• See and optimize the whole• Work iterative and incremental

How Much Architecture Remains Agile?

Agile Architecture in 10 Steps

Are From Design Process : Step 1: Identification of the Business Domains

Step 2: Creation of a Business Entity Model

Step 3: Creation of the Ubiquitous Language

Step 4: Definition of the Initial Process Architecture

Step 5: Modelling of the Core Business Processes

Step 6: Definition of Vertical Requirements Based on Process Models

Are From Construction flavor :

Step 7: Definition of the Bounded Contexts

Step 8: Definition of the BD/QA(Business Domain/Quality Attribute) Relevancy Matrix

Step 9: Definition of the Solution Strategies

Step 10: Definition of the Building Blocks

Agile Architecture is Business Centric

Construction Flavor

Agile Architecture Uses Core Concepts of Domain Driven Design

• At the heart of DDD (Domain Driven Design) lies the concept of the domain model.

• Domain models are typically composed of elements such as entities, value objects, aggregates, and described using terms from a ubiquitous language.

• A bounded context is the context for one particular domain model and defines implementation boundaries.

Quality(non-Functional) Attributes that Drive Agile Architecture

• Performance and Scalability -ability of asystem to predictably execute within its mandated performance profile and to handle increased processing volumes in the future.

• Availability and Resilience -ability of a system to be fully or partly operational as and when required and to effectively handle failures that could affect system availability.

• Evolution-ability of a system to be flexible in the face of the inevitable change that all systems experience after deployment, balanced against the costs of providing such flexibility.

• Security-ability of the system to reliably control, monitor, and audit who can perform what actions on which resources and the ability to detect and recover from security breaches.

Solution Strategies Are Backbone of the Agile Architecture

• Solution strategies are core concept of the agile architecture due their focus on business value delivered by the solution.

• Solution strategies allow proper reasoning about architecture describing internal structure of the elements and collaboration between them.

• Best created using composite UML diagram type.

Building Blocks Make Business Architecture Part of IT

• Building Blocks are counterparts to the Solution Strategies

• They focus on the technical design used where it should have most pay-off

• Similar to the solution strategies, building blocks describe elements and their relations

• Best created using components UML diagram type

Agile Architecture Process Summary Review, Refine & Extend, Repeat

Agile Architecture : Takeaways

Thank you