29
bWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India.

BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Embed Size (px)

Citation preview

Page 1: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

bWise – EAI Framework

Anurodh SrivastavaShalin Shekhar MangarJSS Academy of Technical Education,Noida, India.

Page 2: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Enterprise Application Integration

● Enterprise application– Software specialized in a particular area

● Inventory● Financials● Supply Chain Management (SCM)● Customer Relationship Management (CRM)● Ecommerce● Sales Force Automation

– Vendors● SAP● Oracle● Peoplesoft

Page 3: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Enterprise Application Integration

● Business process/workflow– Smooth flow of data

● Inventory● Financials● Supply Chain Management (SCM)● Customer Relationship Management (CRM)● Ecommerce● Sales Force Automation

– Automation Vendors● Microsoft● IBM● Tibco

Page 4: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Enterprise Application Integration

● Challenges in automation– Communication

● Different input/output formats– Security

● Multiple authentication/authorization schemes– Management

● Multiple management/configuration

Page 5: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

EAI Frameworks

● Components– Communication

● Enterprise Service Bus (ESB)● Message Oriented Middleware (MOM)

– Security● Support for multiple security schemes

– Management● Dependent on per application basis

Page 6: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Why bWise ?

● Prohibitive costs● Vendor dependence● Lack of interoperability● Platform dependence● Need for consultants

Page 7: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

How bWise helps ?

● Prohibitive costs– Open Source & Free Software

● Vendor dependence– Community Ownership

● Lack of interoperability– Open Standards (see www.open-eai.org &

www.oasis-open.org)● Platform dependence

– Supports all platforms● Need for consultants

– Powerfull development tools

Page 8: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Design Problems

● Communication● Security● Platform Independence● Interoperability● Workflow description● High Throughput● Distributed Transactions● Management● Backup/Restore● Extensibility

Page 9: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Communication

● Synchronous vs. Asynchronous● Polled● Platform independent

– Document formats– Web Services

● Transformations● Correlation

Page 10: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Security

● Must support multiple schemes● Authentication● Authorization● Encrypted communication

Page 11: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Platform Independence

● Multiple Operating Systems– Linux– Unix– Windows

● Multiple programming languages– COBOL– C/C++– Java– .NET

Page 12: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Interoperability

● Applications● Competing tools● Formats● Languages

Page 13: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Workflow Description Format

● Choices– An entirely new format– XLANG (used by Microsoft)– WSFL (used by IBM, Tibco)– BPEL4WS

● Business Process Execution Language for Web Services● Emerging standard● Open (a w3c standard)● Endorsed by all vendors

Page 14: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

High Throughput

● High volume of data● I/O maybe more expensive than processing● Multiple processes● Hundreds of process instances

Page 15: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Distributed Transactions

● Multiple business applications– Each containing multiple datastores

● A distributed transaction scheme– Coordinate a transaction between applications– Abstract commit/rollback support if available– Provide notification model– Error logging

Page 16: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Management

● Configuration– Logging– Notification– Messaging– Data Storage/Retrieval

● Monitoring– Per business process

● Present status● History

– Statistics● Throughput● Transactions

Page 17: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Backup/Restore

● Backup Scheme– Business process data dump– Transaction logs

● Restore Scheme– Crash recovery

Page 18: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Extensibility

● Ability to support future enhancements– Message transport mechanisms– Transformation mechanisms– Security schemes

Page 19: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Design Decisions

● Java– Advantages

● Platform independent● Tried and tested for server applications

– Downsides● I/O Performance

● XML– Advantages

● Platform neutral data format● Extensive support for interoperability

– Downsides● Extra Overhead in processing

Page 20: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Design Decisions

● Eclipse IDE– Advantages

● Mature platform● Lesser learning curve for new developers● Open Source

– Downsides● Increased development time

● XSD (XML Schema Document)– Advantages

● Platform neutral data description format (metadata)● Easier to work with than DTDs

Page 21: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Design Decisions

● Message Queues– Advantages

● Asynchronous processing● Guaranteed message delivery

● Correlation– Concept of envelopes

● Metadata tags● Aid in encryption/decryption

● Security– Enterprise Single Sign-on

● One username/password for multiple applications

Page 22: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Design Decisions

● Code Generation– BPEL4WS vs. Java Code– Java Code provides better performance– Added complexity in code generation from business

process models● Web Services

– Support for all platforms– Data format independent (uses XML)– Asynchronous mode– Apache Axis

Page 23: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Components of bWise

● Eclipse Development Tools (EDT)– Document Designer– Transformation Designer– Messaging Manager– Business Process Designer

● Process Execution Engine– Message Transport Agents (MTA)– Pipeline Processors– Verification & Correlation Manager– Authentication Manager– Process Co-ordinator

● Administrator Tools

Page 24: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Eclipse Development Tools (EDT)

● Document Designer– Analyzes documents– Generates XSD– Manipulate XSD

● Transformation Designer– Analyzes XSDs– Generates Mapping Code (XSLT or Java)

● Messaging Manager– Creation of Pipelines

● Business Process Designer– Visually draw process diagrams– Generate Code

Page 25: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Process Execution Engine

● Message Transport Agents (MTA)– I/O Mechanisms

● File● Web Services

● Pipeline Processors– Transformers (document, encryption/decryption)

● Verification & Correlation Manager● Authentication Manager

– Enterprise Single Sign-on services– Cryptographic Services

● Process Co-ordinator– Workflow execution engine

Page 26: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Administrator Tools

● View & manage server database● Install/Uninstall MTAs● View & manage transaction logs● Backup/Restore schemes● Monitor alert notifications● Performance statistics

Page 27: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Key Problem Areas● A formal model for static analysis of a business

process.● Code generation module for business process

diagrams.● Optimization of memory usage for business

processes containing long running transactions.● An efficient scheduling algorithm for monitoring

business process executions.● A publish-subscribe model (akin to event

dispatch model in java) for outcome notifications.

Page 28: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Future Directions

● Not just a final year project– Aims to be a stable open source software– Hopes to make a dent in EAI tools market.

● Future development directions– Support for more MTAs– Support for Legacy code (Screen Scraping)– Load Balancing– Segregation of components into independent

execution units

Page 29: BWise – EAI Framework Anurodh Srivastava Shalin Shekhar Mangar JSS Academy of Technical Education, Noida, India

Thank You

Anurodh SrivastavaShalin Shekhar Mangar

JSS Academy of Technical Education,Noida, India.