31
1 www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License The open and flexible middleware solution realized and managed by Engineering Group www.eng.it The open and flexible middleware solution realized and managed by Engineering Group www.eng.it

The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

1www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

The open and flexible middleware solution realized and managed by Engineering Groupwww.eng.it

The open and flexible middleware solution realized and managed by Engineering Groupwww.eng.it

Page 2: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

2www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

� Objectives

� Overview

� Governance

� Architecture

The universal middleware for the development of ext ensible SOA/BPM solutions and the governance of services

Page 3: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

3www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Objectives

� Play an active role in transformation and innovation pro cesses .

� Supporting a constantly evolving ecosystem of flexible applicatio n services.

Technlogical view

Open source solution supporting the realization of various types of distributed middleware:Open source solution supporting the realization of various types of distributed middleware:

� Integration

� Orchestration

� Modular applications

� Container of innovative services.

� Integration

� Orchestration

� Modular applications

� Container of innovative services.

� Innovation – a business opportunity rather than a technological interest

� Change – improving the existing code and fostering innovation:

� The existing applications will grow through the integration of new services

� The new code will be more widely integrated into consolidated applications.

Business view

Page 4: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

4www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Universal Middleware

� Core components (service bundles) for the integration and management of services; for the definition of business rules and the realization of application modules in SOA architectures.

� By parametrizing each component, the solution gains a considerable modularity , allowing to meet even the most complex requirements.

� Core components (service bundles) for the integration and management of services; for the definition of business rules and the realization of application modules in SOA architectures.

� By parametrizing each component, the solution gains a considerable modularity , allowing to meet even the most complex requirements.

Integration ProcessesProcesses

Innovation / reuse(Future Internet – mobile)

Management& Intelligence

Adaptable Middleware ServicesAdaptable Middleware Services

IT & Businessgoals

Universal Universal MiddlewareMiddleware

IntegrationIntegrationESBESB

CooperationCooperationConnectorsConnectors

OrchestrationOrchestrationCollaborationCollaboration

BPMBPM

eFormeForm LifecycleLifecyclePDFPDF

Business RulesBusiness Rulesmanagementmanagement

SOA ApplicationSOA Application(Web (Web –– Mobile)Mobile)

GovernanceGovernance

Design Design & develop.& develop.Tools IDETools IDE

Process Process & services& services

managementmanagement

Business Business ActivityActivitymonitormonitor

Page 5: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

5www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Integration middleware (ESB)

� It acts as a SOA dorsal enabling the integration and cooperation of applications, providing messaging, routing and transformation services, in a consistent and secure way.

� It allows advanced users to define a homogeneous solution for the virtualization of heterogeneous and decentralized services.

� It acts as a SOA dorsal enabling the integration and cooperation of applications, providing messaging, routing and transformation services, in a consistent and secure way.

� It allows advanced users to define a homogeneous solution for the virtualization of heterogeneous and decentralized services.

� Service-oriented middleware

� Abstraction / Collaboration patterns

� It can be combined with orchestration

� Governance

Enterprise Service Bus

Messaging MQ

ConnectorsConnectors

Routing Transformation

Adapters Web ServicesData services

SOA applications Orchestration

BPMCustom bundes

Page 6: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

6www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Cooperation middleware (connectors)

� Middleware layer for the communication among distributed and heterogeneous systems, adherent to different security and reliability specifications.

� Various use modalities: � within an application architecture (even an existing one)� as communication services and wrapper supporting the ESB / BPM middleware

� Middleware layer for the communication among distributed and heterogeneous systems, adherent to different security and reliability specifications.

� Various use modalities: � within an application architecture (even an existing one)� as communication services and wrapper supporting the ESB / BPM middleware

Custom application

CHATDBMS

ETL/DataWarehouse

LegacySystem

eBusiness XML

RSS

SMS & Wireless

EDI HL7

ApplicationOrchestrationBPM

IntegrationESB

SOAP JMS

FILE / FTP

Page 7: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

7www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Orchestration Middleware (BPM)

Process ModelingProcess Modeling

� Standard BPMN� Business vision� Technical extension (services, security)

Historical & real time analysisHistorical & real time analysis

Metadata &Historical / real time info

BPM

Connectors

� Various installation modalities � as a stand-alone server� as an application service

� independent from the BPM Engine

� use of existing authorization policies (i.e. LDAP or DBMS)

BPM EngineBPM Engine

Business

Technical

Tec

hnic

al p

aram

eter

Deploy / tuning

Analysis / tuningBusiness Modeling

Page 8: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

8www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Collaboration Middleware (BPM)

� Real-time iteration between users/processes and external systems

� Iteration through web forms and/or PDF documents

� Definition of processes, allowing the management of collaborative services through human tasks

� User Notifications by e-mail, sms, web services…

� Various use modalities: � web worklists, which can be recalled by any web application � API Java and Web Services

� Definition of processes, allowing the management of collaborative services through human tasks

� User Notifications by e-mail, sms, web services…

� Various use modalities: � web worklists, which can be recalled by any web application � API Java and Web Services

Page 9: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

9www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / eForm lifecycle middleware

� Creation of forms

� Integration of forms with external document management systems

� Status management through specific business components (i.e. digital signature, certified electronic mail)

� Automatic generation of documents (also in PDF) and management of their entire life-cycle through processes

� Automatic generation of documents (also in PDF) and management of their entire life-cycle through processes

Mapping & Creation

Page 10: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

10www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / Business Rules Management

� More value to business knowledge and management of a company policy repository.� More value to business knowledge and management of a company policy repository.

� The use of a system based on BPM and of a rule engine does not increase the system complexity: it provides it with more flexibility and makes analysts’ activities easier.

� The use of rules that are externally defined by the application components facilitates the maintenance and adaptability of the services to new business requirements

Rules defined using Excel/OpenOffice or within the IDE

BPMN process

Page 11: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

11www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Overview / SOA Application middleware

The Web is no longer a collection of static pages of HTML that describe something in the world. Increasingly, the Web is the world – everything and everyone in the world casts an "information shadow," an aura of data which, when captured and processed intelligently, offers extraordinary opportunity and mind bending implications. (O’Reilly & Battele, 2009)

The Web is no longer a collection of static pages of HTML that describe something in the world. Increasingly, the Web is the world – everything and everyone in the world casts an "information shadow," an aura of data which, when captured and processed intelligently, offers extraordinary opportunity and mind bending implications. (O’Reilly & Battele, 2009)

…. From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the user-object interaction model.

� Virtualization of information systems – No longer just hierarchical information structures. Each service is considered as an application made of data to be exported, integrated and shared.

� Mashup of user services – It supports the integration of all functionalities within a service, instead of using simple links to services suppliers, as happened with the “2.0” applications.

� Independence from devices – An application/a service must exploit at best the device on which it is installed: geo-referencing, camera/barcodes, resources (i.e. address book, documents, photos).

� User-system interaction, based on the models used b y the best-known social networks .

The challenge consists in realizing a solution that implements:The challenge consists in realizing a solution that implements:

Page 12: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

12www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

User Interface Processes & Rules Components

Governance / Projects definition

Governance

Governance

User Interface Design

Widget Research from Provisioning Registry

Ajax UI Development

Business LogicUI Development

PublishingProvisioning Registry

Proxy Configuration

Release Application(WAR)

Process Definition(BPMN)

Rules Definition(rules engine)

New ComponentsDesign

New ComponentsDevelopment

Component Researchfrom Provisioning Registry

PublishingConfiguration

Technical CompletionBPMN

PublishingProvisioning Registry

Architect/Developer Architect/DeveloperAnalyst

Page 13: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

13www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Governance / Relationship among the involved actors

GOVERNANCE PORTAL

SERVICES GOVERNANCE

INFRASTRCTURE GOVERNANCE

SECURITY GOVERNANCE

KNOWLEDGE MANAGEMENT

APPLICATION GOVERNANCE

ADMINISTRATIVE GOVERNANCE

PM

SERVICE CONTRACT MANAGER

OPERATIONAL STAFF

SERVICE/APPLICATION USERS

CLIENT REFERENCE PERSON

Page 14: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

14www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Governance / Tools

� Tools supporting the efficiency of all the involved actors.� Tools supporting the efficiency of all the involved actors.

Registry

ServicesImplementation

Process Definition& Implementation

Deploy & Versioning

RulesManagement

Tools IDETools IDE

Management

Monitoring

Administration

JMX

Web consoleWeb console

Metadata &Historical / real time info

Metadata &Historical / real time info

MiddlewareMiddleware

� Analysts� Architects� Developers� Managers

Page 15: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

15www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Governance / Monitoring & Management

� The information is available in real-time

� The information can be used from different points of view

� The information is available in real-time

� The information can be used from different points of view

� Monitoring� Management� Business Intelligence & BAM

Page 16: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

16www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Governance / Monitoring & Management

� Real-time evaluation of the process and service lifecycle

� Search for a service/process, also using relevant applicative information

� Navigation through correlated activities� Visualization of interchangeable data (messages, documents)

� Errors management, also allowing to re-execute a blocked service or process.

Page 17: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

17www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Governance / BI & Business Activity Monitor

� Definition of one’s own KPIs

� Dynamic graphs

� Reports

� Drill-Down and Drill-Up� Filters

� Aggregated documents

It allows to share information with Business Intelligence systems, in order to quickly get dashboards monitoring one’s own operational and business indicators, even in real-time.

It allows to share information with Business Intelligence systems, in order to quickly get dashboards monitoring one’s own operational and business indicators, even in real-time.

Spagic MetaDB data schema, shared with eBAM / SpagoBI

Page 18: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

18www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture

Page 19: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

19www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / XaaS reference model

Clear organizational separation of:� Applications� Integration infrastructure � Specific governance services

From the applications cooperation through ESBFrom the applications cooperation through ESB

Everything is based on distributed nodes to provide specialized services:� SaaS Software (front-end & back-end)� PaaS Platform� CaaS Communication

ToTo the outsourcing the outsourcing basedbased on the on the XaaSXaaS patternpattern

A new approach for innovative modelsA new approach for innovative models

Cross GovernanceCross Governance

Page 20: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

20www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / OSGi Universal Middleware

“Software that you write once and can use in binary form universally: in many different platforms, many different industries, and for many different purposes.” Peter Kriens (OSGi evangelist)

“Software that you write once and can use in binary form universally: in many different platforms, many different industries, and for many different purposes.” Peter Kriens (OSGi evangelist)

� Adherence to SOA

� Modularization� Management of components life-cycle

� Dynamic runtime

OSGiOSGi ObjectivesObjectives

SpagicSpagic Universal Universal MiddlewareMiddleware ObjectivesObjectives

Enterprise SOA Framework made of components allowing to realize a modular and configurable Universal Middleware around an OSGi kernel

OSGi Eclipse Equinox

Page 21: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

21www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / OSGi overview

� Execution Environment – middleware execution� Modules – software modularity and dynamicity� Life Cycle – service lifecycle management� Registry – service registry and search� Services – service container� Security – security management services

Extensions

Execution environment

Modules

Life Cycle

Registry

ServicesS

ecur

ity

OSGi technology supports the dynamic management of bundles for the realization of modular application services.

OSGi technology supports the dynamic management of bundles for the realization of modular application services.

FundamentalFundamental LayerLayer

Page 22: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

22www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / Component Model

� Services, connectors and modules are implemented into the Component Model pattern

� Each component can provide new services while referencing other ones

� The dynamic behaviour of the components is guaranteed by the OSGi Declarative Services.

Page 23: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

23www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / OSGi bundles development – reuse – deploy

Config

Publishing rules

Deploy

Implements

Spagic Interface

Jar Library Transformation

OSGi Bundles

Develop new

component

Spagic Bundles

Spagic MetaDB

Registration

Spagic Service

Manager...

New

Requirement

Reusing Jar Library

Supported by Eclipse Visual Tools

Page 24: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

24www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / Message Bus and distributed nodes

� Services interact with each other through messages

Page 25: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

25www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / Message Bus and distributed nodes

� ECF Distributed EventAdmin Service : Eclipse project supporting the communication among services distributed on different nodes

Page 26: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

26www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / Message Bus & BPM

Normalized Message RouterNormalized Message Router

OSGi Event AdminOSGi Event Admin

Normalized Message Router

� it manages the exchange ofmessages among components.

� it is internally based on the OSGiEvent Admin Service Communication.

Mes

sag

eB

us

laye

rB

PM

laye

r

Page 27: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

27www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Eclipse Business Process Management for OSGi

Architecture / BPM middleware

� BPMN2 modelling� Orchestration of application modules (OSGi Bundles) and external systems (OSGi Connectors)� Deployment on BPM engine (JBPM OSGi bundles, Apache ODE BPEL Server)

www.eclipse.org/ebpm

Page 28: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

28www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Architecture / User Services & MVP

Presentation UI

Widget Base Widget composite

Business Logic(user)

Data Access Interface(RPC Client)

Data Access Implementation(RPC Server)

Business Logic(procedure)

Clie

nt

(RIA

)M

idd

lew

are

(Sp

agic

)

VIEW

Presenter

Model

MVP MVP PatterPatter

� Presentation Pattern: from MVC to MVP � Clear separation of user services (VIEW & PRESENTER) and backend services � Widget libraries (i.e. GWT)� High browser compatibility� Support to W3C ARIA accessibility specifications� Support to internationalization

Page 29: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

29www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Technology architecture / SOA Application

DBMSData application

DBMSDBMSData Data applicationapplication

WAR - backend servicesWAR WAR -- backend servicesbackend services

Spagic CommandSpagicSpagic CommandCommand

Business logicBusiness Business logiclogic

Spagicpersistence

SpagicSpagicpersistencepersistence

Other Spagicservices

OtherOther SpagicSpagicservicesservices

WAR - User Services App.WAR WAR -- UserUser ServicesServices App.App.

ServletServletServletGWTwidgetGWTGWT

widgetwidget

Spagic ClientSpagicSpagic ClientClient

WAR - User Services App.WAR WAR -- UserUser ServicesServices App.App.

ServletServletServletGWTwidgetGWTGWT

widgetwidget

Spagic ClientSpagicSpagic ClientClient

Spagicconnectors

SpagicSpagicconnectorsconnectors

ApplicationApplication NodeNode (es. (es. JBossJBoss o Apache o Apache TomcatTomcat))

Remote Spagic NodeRemote Remote SpagicSpagic NodeNode

External systemExternal system

JVM

Remote Spagic NodeRemote Remote SpagicSpagic NodeNode

Remote

JPA (Eclipse Link)

Remote

� It implements the business logic through command patterns.� Configuration of the interaction with the other components – Application Composition.

� Separation between the front-end and the sole backend layer � We can switch from a remote modality to a VM one without modifying the code� Separation between the front-end and the sole backend layer � We can switch from a remote modality to a VM one without modifying the code

Page 30: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

30www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Technology architecture / Business Rules management

It defines the set of “concepts” (entity, property, relations) of a specific domain (rule), supporting the requirements of flexibility and modularity of SOA applications and BPM processes.

Definition of rules supported by a specialized editor or by tables on a spreadsheet (Excel or OpenOffice).

Meta model

Meta information

Type

Parameters

Constraints

Documents

Rule

BRMS(rules)

DocumentalRepository

Page 31: The open and flexible middleware solution realized …...From the Internet of things (IoT), a neologism referring to the extension of the internet to the world of objects and to the

31www.spagic.org Creative Commons Attribution-Share Alike 3.0 Unported License

Technology architecture / Monitoring – Management - BAM

� Connector� Service� Process

� Connector� Service� Process

Monitor & ManagementMonitor & Management

� SLA� PKI

BAM

� Networking� Applic.& Web Server� SO� DBMS

System MonitorBPM

Spagic Universal Middleware

Bundles Eventlistener Spagic JMX

Spagic MetaDB

� Plugin Eclipse� Design� Deploy

� Plugin Eclipse� Design� Deploy

Spagic StudioSpagic Studio

A listener (Eclipse Event Admin) allows to gather the information that are produced by the middleware nodes and afterwards shared among the monitoring tools.

Optional External SystemsOptional Optional ExternalExternal SystemsSystems