The presentation supported the webinar delivered by Antonietta Miele, Spagic Developer, on 28th July 2011, within SpagoWorld Webinar Center.
http://www.spagoworld.org/
Webinar - Spagic: Beyond the SOA/BPM frontiers, towards a complete open cooperative environment
1. Beyond the SOA/BPM frontiers
Towards a complete open cooperative environment
This presentation has been used during a webinar delivered within SpagoWorld Webinar Center:
http://www.spagoworld.org/xwiki/bin/view/SpagoWorld/WebinarCenter
Visit it regularly to check the available webinars!
www.spagic.org 1
3. Mission / A new pattern for the development of applications
Application
Application
Front End …instead of services that
Front End reference to each other, in
Back End different ways
Back End
Business Service
Business Service
Business Service
Business Service
Application
Application
Front End
Front End
Back End
Back End
Business Service
Business Service
Business Service
Business Service
www.spagic.org 3
4. Mission / From middleware to Spagic Environment
Governance
Process &
BPM
Service
modeling
management
Business
Business Rules
Activity
management Inte
gra monitoring
e nt tion
m /Co
ge ope
a rati
eForm
a n on M
Lifecycle M BPM/ETL iddl
d ewa
an Engine re
g
elin Cooperation
od
M Connectors
e ss SOA
Integration
s in Application
ESB
Bu (Web-Mobile)
(Web-
www.spagic.org 4
5. Mission / A new pattern for the development of applications/2
Application Application
Front End Front End
Back End
Business Service
Business Service
Business Service
Business Service
Business Service
Business Service
Application
Application
Front End
Front End
… a full user-oriented application, which retrieves the information from a business area,
accessing it using a common, defined and standardized communication
www.spagic.org 5
6. Overview / ESB – Integration/Cooperation middleware
SOA middleware for integration and cooperation
SOA middleware for integration and cooperation
Messaging, dynamic routing and transformation services, provided in aareliable way
Messaging, dynamic routing and transformation services, provided in reliable way
Virtualization of heterogeneous and distributed services
Virtualization of heterogeneous and distributed services
Middleware layer supporting the communication among distributed and heterogeneous
Middleware layer supporting the communication among distributed and heterogeneous
systems
systems
SOA Applications Orchestration
Custom bundes BPM
Messaging MQ Routing Transformation
Data services Adapters Web Services
Connectors
SOAP JMS Custom
ETL/Data
application SMS & Wireless
eBusiness Warehouse
XML
EDI HL7 FILE / FTP Legacy CHAT RSS
System DBMS
www.spagic.org 6
7. Overview / Business Modeling and Management
Business Modeling Analysis / tuning
Business
Technical parameter
Process Modeling
Process Modeling Historical & real-time analysis
Historical & real-time analysis
Standard BPMN
Business vision
Technical extension
(services, security) Connectors BPM Engine
BPM Engine
BPM Different installation models available as
Deploy / tuning Stand-alone server
Technical
Application service
Independence from BPM Engine
Full compatible with existing authorization
Metadata & policy (ex. LDAP or DBMS)
Historical / real-time info
www.spagic.org 7
8. Overview / Business Rules Management
Give more value to business knowledge managing company policy repository
Give more value to business knowledge managing company policy repository
BPMN process
Rules in Excel/Openoffice or inside IDE
Using BPM and/or a rule engine inside the system gives more flexibility to and makes
easier analysts’ activities.
Using rules externally, defined by the components, increases the maintainability of the
services and improves their adaptability to new business requirements.
www.spagic.org 8
9. Overview / BPM - Collaboration Middleware
Processes composed of collaborative services through the definition of human tasks
Processes composed of collaborative services through the definition of human tasks
Generation of documents (PDF) and management of their lifecycle within the processes
Generation of documents (PDF) and management of their lifecycle within the processes
User notification by mail, sms, web services …
User notification by mail, sms, web services …
Real-time interaction among user, processes and the external system, using web forms or
Real-time interaction among user, processes and the external system, using web forms or
docs (PDF)
docs (PDF)
Different use models:
Different use models:
calling aaready-to-use web worklist
calling ready-to-use web worklist
API Java eeWeb Services
API Java Web Services
www.spagic.org 9
10. Governance / Monitoring Tools
Information is available in real-time
Information is available in real-time
Each piece of information can be involved from different points of view
Each piece of information can be involved from different points of view
Monitoring
Management
Business Intelligence & BAM
www.spagic.org 10
11. Technology Architecture / OSGi overview
OSGi (Open Source Gateway Initiative ) )is the technology used to implement the
OSGi (Open Source Gateway Initiative is the technology used to implement the
collaboration and management of software modules composing Spagic
collaboration and management of software modules composing Spagic
Extensions
Services Security
Registry
Life Cycle
Modules
Execution environment
Services and connectors implements the Component Model pattern
Each component provides services and can refer to other ones
The dynamic behaviour of services is implemented with OSGi Declarative Services
www.spagic.org 11
12. Technology Architecture / BPM middleware
BPMN editor as a tool of Process Modeling
Orchestration of internal modules (OSGi Bundles) and external systems (OSGi Connectors)
Deploy and publishing in the BPM engine (JBPM OSGi bundles, Apache ODE BPEL Server)
www.spagic.org 12
13. Technology Architecture / Message Bus & BPM
BPM layer
Message Bus layer
Normalized Message Router
Normalized Message Router
Normalized Message Router is responsible for the communication
among the components
Spagic communication pattern based
OSGi Event Admin
OSGi Event Admin on xml messages
Built over OSGi Event Admin Service.
www.spagic.org 13
14. Technology Architecture / Monitoring – Management - BAM
Spagic Studio
Spagic Studio
Plugin Eclipse
Plugin Eclipse
Design
Design
Monitor & Management
Monitor & Management Deploy
Deploy
Connector
Connector
Service
Service BAM
Process
Process SLA
PKI
Spagic Universal Middleware Optional External Systems
Optional External Systems
Bundles
Spagic MetaDB
Event
listener
BPM Spagic JMX System Monitor
Networking
Using a listener (Eclipse Event Admin) all Applic.& Web Server
information spread through messages SOA
between nodes are collected and shared DBMS
through monitoring tools.
www.spagic.org 14
15. Governance / Project Organization
User Interface Processes & Rules Components
Architect/Developer Analyst Architect/Developer
User Interface New Components
Design Design
Governance
Governance
Widget Research Component Research
from Provisioning Registry from Provisioning Registry
New Components
Ajax UI Development
Development
Business Logic Publishing
UI Development Configuration
Publishing Process Definition
Provisioning Registry (BPMN) Technical Completion
BPMN
Rules Definition
Proxy Configuration
(rules engine)
Release Application Publishing
(WAR) Provisioning Registry
www.spagic.org 15
16. Technology Architecture / User Services & MVP
Presentation Pattern: from MVC to MVP
Separation between user services (VIEW & PRESENTER) / backend
Open widget libraries (ex. GWT)
Browser Compatibility
Support to W3C ARIA accessibility requirements
Internationalization MVP
Pattern Presentation UI
VIEW Widget Base Widget composite
Client (RIA)
Business Logic
(user)
Presenter
Data Access Interface
(RPC Client)
Data Access Implementation
Middleware
Model (RPC Server)
(Spagic)
Business Logic
(procedure)
www.spagic.org 16
17. Technology Architecture / SOA Application
Definition of a command pattern to implement the business logic
Configurable interaction among the components – Application composition.
Application Node (es. JBoss o Apache Tomcat)
WAR -- User Services App.
WAR User Services App. WAR -- backend services
WAR backend services
Business Analysts
GWT
GWT Spagic Command
Spagic Command
Servlet
Servlet
widget
widget Remote Spagic Node
Remote Spagic Node
JVM Business logic
Business logic Remote
Spagic Client
Spagic Client
External system
External system
WAR -- User Services App.
WAR User Services App. Other Spagic
Other Spagic Spagic
Spagic
services
services connectors
connectors
GWT
GWT Servlet
Servlet
widget
widget DBMS
Spagic
Spagic JPA (Eclipse Link) DBMS
persistence
persistence Data application
Data application
Spagic Client
Spagic Client
Different front-end layers versus a unique back-end layer
Different front-end layers versus a unique back-end layer
Remote
Different deployment models that can be set by configuration
Different deployment models that can be set by configuration
Monolithic
Monolithic
Remote Spagic Node
Remote Spagic Node Enterprise node
Enterprise node
In VM
In VM
www.spagic.org 17
18. Business case / Web Portal for Artistic Heritage
www.spagic.org 18
19. Business case / Web Portal for Artistic Heritage
Application Node (es. JBoss o Apache Tomcat)
Web Portal RIA
Web Portal RIA backend services
backend services
Business Analysts
Spagic
Spagic
GWT
GWT Orchestration
Orchestration
widget
widget
Process
Process
JVM
Spagic Client
Spagic Client (BPMN)
(BPMN)
Dynamic
Dynamic
Dynamic
Dynamic
Spagic
Spagic External WS
External WS
Dynamic
Dynamic
Search
Search connectors
connectors
Search
Search
Search
Search
Upgrading
Upgrading Spagic
Spagic JPA (Eclipse Link) DBMS
DBMS
Local DB
Local DB persistence
persistence Data application
Data application
UI Developers Service Developers
www.spagic.org 19
20. Technology Architecture / XaaS
A new approach for an innovative design
A new approach for an innovative design
Cooperation btw applications through ESB
Distinct organization for :
Applications
Integration middleware
Services for governance
Outsourcing based on XaaS pattern
Everything is developed through distributed nodes
that provide specialized services:
SaaS Software (front-end & back-end)
PaaS Platform
CaaS Communication
www.spagic.org 20
21. Technology Architecture / XaaS - OSGi - Spagic
XaaS (Everything as a Service)
GWT
User Services
Rich Internet Application
CaaS Spagic Connectors
Communication as a Service (HTTP, WS, JMS, DB, File, FTP,..)
SaaS App.bundles Spagic BPM Spagic bundles
Software as a Service Spagic Service Manager
Eclipse Eclipse ECF
EclipseLink
PaaS Equinox (MQ)
Platform as a Service Eclipse P2
JBoss JBoss
JBPM Drools
www.spagic.org 21
22. For more information...
• Downloads : http://forge.ow2.org
• WebSite : www.spagic.org
…thanks for your attention!
Antonietta Miele
antonietta.miele@eng.it
www.spagoworld.org
www.spagic.org 22