agile enterprise

25
Based on a presentation given to “19 th Banking Forum 2014” Athens, Feb 12 - 13, 2014 Nikos Karamolegos

Upload: nick-karamolegos

Post on 08-May-2015

200 views

Category:

Education


1 download

DESCRIPTION

Short presentation of the Agile Enterprise through the open source "Agile Banking project".

TRANSCRIPT

Page 1: Agile enterprise

Based on a presentation given to“19th Banking Forum 2014”Athens, Feb 12 - 13, 2014

Nikos Karamolegos

Page 2: Agile enterprise

While the presentation addresses the Enterprises, in general, the examples are from the Banking

domain.

2

Page 3: Agile enterprise

The Business landscape

1. High failure rate of Strategy execution (> 70%)

2. The majority of Information Systems, evolved from older ones, are inflexible complex systems (high risk and cost)

3. “Business – IT” are not alignment

4. Any change in systems increases disproportionately the operational risk

5. Many big enterprises are approaching their level of unmanageability

6. Highly competitive market, with high-tech companies to penetrate all domains

7. The digital products and services dominate the market

8. Technology affects all societies, sciences, markets and businesses

9. Enterprises have to adapt to new and unknown business models.

3

We have entered the era of “Accelerating changes” leading to “Increasing Uncertainty”, “Rapid obsolescence” and “Continuous reshuffling” where survival is a competitive advantage.

Page 4: Agile enterprise

Agility

We must drive, faster and faster, on an unknown road, on a mountain, in a storm with thick fog. To survive we must be AGILE.

4

Agility is the capability to react efficiently to surprises

1. Detail plans2. Detail design3. Advance CommitmentX

The “Agile Enterprise” is something totally different from what we have now!

Page 5: Agile enterprise

Theory and Practice

• Agility is, possibly, the most valuable capability in order to survive in the fast changing environment.

• Theory and patterns: We continue to study the “Toyota way”. There is no sound theory and tested approach. Only steps toward this direction.

• Practice: • There are already many tools and methods to support the implementation of the “Agile

Enterprise”.

• Transforming an established and conservative organization to Agile Enterprise is a very challenging project, since it has to change culture, before anything else.

• The transformation should be a long running project, that needs strong commitment.

5

Page 6: Agile enterprise

Agility Principles

1. Innovative culture

2. Systems Thinking

3. Apply Lean and Agile Methods

4. Separation of Concerns and Loose coupling

5. Decide as late as possible

6. Implement very fast, the most critical part

7. Continues adaptation (OODA Loop)

6

Observe

Orient

Decide

Act

Current IT Contribution

Page 7: Agile enterprise

Tech

StrategyFormulation

Strategy Implementation

Operation

Fee

db

ack

(BSC

, KP

Is)

Agile Enterprise Adaptation Loop

7

MarketDecide as late as possibleChange even the business model

Implement as soon as possible

Continuous, low cost operation

Page 8: Agile enterprise

Adaptability layers

8

Processes

Rules

Domain

Entities

Ch

ange

s

Rare

Frequent

Person, Address, Currency, …

Debit=Credit, Withdraw if Balance>Debit…

Open new Customer, Approve Loan…

The speed of Processes implementation is a key factor to the agility of the Enterprise.

Page 9: Agile enterprise

Cu

sto

mer

s

Co

ntr

acts

Pro

du

cts

Ge

ne

ral L

ed

ger

Loan

s

Gen

eral

Led

ger

Fin

anci

als

Sale

s

• Performance• Information Management• Availability• Scalability• Continuity• Low Cost• Infrastructure• Elementary Services

Agile System Layers

9

Business need cross-cutting, horizontal, processes, not isolated uncoordinated access to silos.

Page 10: Agile enterprise

Cu

sto

mer

s

Co

ntr

acts

Pro

du

cts

Ge

ne

ral L

ed

ger

Composition/Business RulesBusiness Services

Loan

s

Gen

eral

Led

ger

Fin

anci

als

Sale

s

Composition Layer

Multi-Channel

Automated Processes

Agents’ Network

B 2 B

Transfers

Policies

Brokerage/Transformation/Routing

• Performance• Information Management• Availability• Scalability• Continuity• Low Cost• Infrastructure• Elementary Services

•Business alignment• Fast Products and Services

Deployment•Reporting-Monitoring, BI•Omni-channel User

experience

Agile System Layers

Abstract Enterprise System(Changes in one part do not affect the other)

10

Bu

sin

ess

Dri

ven

Tech

no

logy

Dri

ven

It hides the silos and present a unified and integrated system.

Page 11: Agile enterprise

Core Assets

Agile Banking Model

11

WEBBanking Workflows B2B, AgentsBranch

Network

Serv

ice

Fact

ory

Serv

ice

Del

iver

y

ComplementarySystems Local System

Business Services Governance

Composition/Decomposition & Business Rules

Integration Brokerage (Proxy)

Services Data Models

Channels

Business Models

Implement a model connecting things

Page 12: Agile enterprise

Agility implementation

Requirements

1. Manageable complexity

2. Limitless scalability

3. Low cost for development and operation

4. 24/7 operation

5. Vendor independent implementation

6. Connect things to create new capabilities

Implementation

1. Abstraction, components, documentation

2. WEB architecture, Asynch Processing, Stateless, Decoupling

3. Hybrid Cloud, Lean & Agile Methods, Open Source

4. OSGi, Asynch Processing, Compensation

5. Standard technologies (OO, SOA, HTTP, MQ, JSON, REST, SAML, ORM, BPMN, …)

6. Web Services, Repository, BPEL, BPMN, Business Rules, …

12

Be open minded and innovative

Page 13: Agile enterprise

Scalability & Elasticity

13

Raised Issues• Referential Integrity• Transaction Processing• Federated Security

Fun

ctio

nal

Dec

om

po

siti

on

Scale out - clones

Michael T. Fisher &

Martin L. Abbott

Page 14: Agile enterprise

The “Agile Banking”

14

WWW.AgileBanking.com

Implements a model of an Agile Enterprise Information System

Page 15: Agile enterprise

The scope of the Project

• The “Agile Banking” project is primarily educational, intending to:

1. facilitate the common understanding, on Enterprise Systems, between Business and Technical people and the establishment of an ubiquitous language.

2. suggest a road map and raise issues towards the Enterprise Agile System.

3. setup a working environment for the development and operation of the suggested system, giving the chance to participants to touch a range of technologies and methods.

4. allow participants understand that the Enterprise Systems are beyond the capabilities of a single person and only with a well organized team we can deliver in this area.

5. allow participants realize the strategic value of the Enterprise Architecture.

6. Finally, the participants should actively contribute in the evolution of their Enterprise.

15

Page 16: Agile enterprise

Facilities

Serv

ice

Co

mp

osi

tio

n

Domain EntitiesAPI Rep

Component Diagram

As exposed from the system itself (without colors)

Instant of using an ESB, we develop the required functionality, for educational purposes.

Clients

BusinessProcesses

IAM,SSO,RBAC

Page 17: Agile enterprise

Asynchronous Processing Engine

17

TP -

SQL

DB

No

SQL

JSO

N Pro

of

Acc

rual

s

Cle

arin

g

Gen

eral

Led

ger

Au

dit

Asynchronous Processors Bus Real Time

Pu

blis

her

s

Sub

scri

ber

s

Sto

re &

Fo

rew

ord

Publisher

Page 18: Agile enterprise

API Management

• API is the Window and Shopping Catalog for modern Enterprises.

• REST API, based on HTTP request/response standard

• API is self documented, constantly current.

• API is published as a complete repository, on demand, and as Hypermedia Links in each HTTP response.

• API allows devices, partners and channels easy link with the system.

• It allows the system and the users to change without break compatibility.

• API is protected for unauthorized use.

Page 19: Agile enterprise

execute

REST API demo

• www.agilebanking.net/country?iso=gr

• www.agilebanking.net/currency?iso=eur

• www.agilebanking.net/channel/shortList

19

Bilingual data (local & International)

Responses are three parts, implementing the Hypermedia as Engine model (HATEOAS).

Page 20: Agile enterprise

20

Page 21: Agile enterprise

Self Documented (for the developer)

21

Sch

em

a

On

line

Re

po

sito

ry o

f El

em

en

tary

Se

rvic

es

Ava

ilab

le D

ynam

ic M

eth

od

s

Page 22: Agile enterprise

Self Documented

22

Parties:Persons (Customers, Prospect, Employees, Shareholders, ….)Legal Entities (Customers, Prospects, Partners, …)

Each component exposes its Relations Diagram.

Page 23: Agile enterprise

Services/Data Models

Orchestration/Rules

Integration

Domains

Persistence

Channel Portal

Choreography

Clients

Platform

RCP, HTML, HTML5, Javascript, Ajax, PHP …

Liferay EE Portal

Bonita/Activity/Stardust, jBPM, Drools

WSO2, Mule/Taled/Intalio, XML, XSD, Grails, JSON

WSO2, Mule/Taled/Intalio, Grails, RabbitMQ

Grails, Rails, Java, Scala,Spring Framework

MySQL, PostgreSQL , ORACLE, DB2, SQL ServerGrails, Hibernate, Alfresco, MongoDB/CouchDB

Linux, Windows, Spring, JBOSS, Tomcat, CAS, Maven, WebSphere, hybrid Cloud

Development & Production Tools Standards

BPMN, Web Services,

BPMN

REST, WSDL, RSS, XSD, XML

DDD, XSD

XML

SQL, JSON, NoSQL

Frameworks, Tools & DSL

HTML, HTML5, XML, JSON

Bonita/Activiti/Stardust, jBPM, Drools

Kerberos, LDAP, jasig CAS

The blue ones are used in the Working Demo

Page 24: Agile enterprise

Conclusions

1. Agility is a “must have” trait, to survive in the era of the increasing uncertainty.

2. The Agile Enterprise should be able to change business model, not only products, policies, channels etc.

3. Agility demands Enterprise Architecture and innovative corporate culture.

4. An Agile Enterprise should be founded on an Agile Enterprise Information System.

5. We cannot build an Agile System in a non-Agile Enterprise.

25

Page 25: Agile enterprise

Contact

26

Subscribe hear

Nikos Karamolegos

[email protected]

www.AgileBanking.com

http://www.linkedin.com/in/nickkaramolegos