Scalable web-based workflow platform

2,700 views

Published on

This presentation describes the service oriented architecture of a salable web based workflow platform developed by Reach1to1 (http://www.reach1to1.com), and used in various products like On2Biz (http://www.on2.biz)

Published in: Technology
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,700
On SlideShare
0
From Embeds
0
Number of Embeds
37
Actions
Shares
0
Downloads
0
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Scalable web-based workflow platform

  1. 1. Web-based Workflow Platform
  2. 2. Contents <ul><li>Application Architecture </li></ul><ul><li>Workflow Model </li></ul><ul><li>Customization Capability </li></ul><ul><li>Integration with other applications </li></ul><ul><li>Scalability </li></ul><ul><li>Security </li></ul><ul><li>Administration </li></ul>
  3. 3. Application Architecture
  4. 4. Application Architecture <ul><li>Base platform </li></ul><ul><ul><li>LAMP (Linux, Apache, Mysql, Perl)‏ </li></ul></ul><ul><ul><li>Stable, Scalable, low-cost </li></ul></ul>Linux Apache MySql Perl (mod_perl)‏
  5. 5. Application Architecture <ul><li>Object Store Manager – Flexible Data Structures </li></ul><ul><ul><li>Serialized objects stored with unique id </li></ul></ul><ul><ul><li>Object collections indexed with relational tables </li></ul></ul><ul><li>Script Interpretor – Flexible Code </li></ul><ul><ul><li>Application objects contain HTML with embedded Perl scripts </li></ul></ul><ul><ul><li>Application tools – Form Wizard, Report Wizard </li></ul></ul>Linux Apache MySql Perl (mod_perl)‏ Object Store Manager Script Interpretor
  6. 6. Application Architecture <ul><li>Base Application Modules – Customizable base </li></ul><ul><ul><li>Default Application modules shared with all customers hosted on the server </li></ul></ul><ul><li>Common Data Objects – Shared, Invariant data </li></ul><ul><ul><li>Data objects shared between all customers hosted on the server </li></ul></ul>Linux Apache MySql Perl (mod_perl)‏ Object Store Manager Script Interpretor Base Application Modules Common Data Objects
  7. 7. Application Architecture <ul><li>Multiple Client Profiles – Multi-tenant </li></ul><ul><ul><li>Each client account has a secure, private objects space </li></ul></ul><ul><ul><li>Customized application modules </li></ul></ul><ul><ul><li>Private data objects </li></ul></ul>Linux Apache MySql Perl (mod_perl)‏ Object Store Manager Script Interpretor Base Application Modules Common Data Objects Profile 1 Apps Data Profile 2 Apps Data Profile 3 Apps Data Profile 4 Apps Data Profile 5 Apps Data
  8. 8. Application Architecture <ul><li>Sessions Manager </li></ul><ul><ul><li>Manages user login sessions, and maps to individual client profile </li></ul></ul>Linux Apache MySql Perl (mod_perl)‏ Object Store Manager Script Interpretor Base Application Modules Common Data Objects Profile 1 Apps Data Profile 2 Apps Data Profile 3 Apps Data Profile 4 Apps Data Profile 5 Apps Data Sessions Manager Network
  9. 9. Workflow Model
  10. 10. PDCH Workflow Model Process Activity Case Data Object Role Precedence Form Data Value Actor execute skip undo
  11. 11. Workflow Configuration Workflow Flags shared cyclic Name Project Form Parent Workflow Flags skip close success undo Name Permissions Linked Object Linked App Alerts Milestone Form Milestones email sms Documents Name Permissions Views Ext. Entities Name Permissions Roles Project Team Name Permissions Roles
  12. 12. Workflow Objects Files Project Project Project Project Project Manager Project Team Customer Account Manager Trans. Statement Project Sections Activity Milestones Overview Companies
  13. 13. Groups & Users <ul><li>Access rights controlled by groups and users </li></ul><ul><li>Each object has read, write and delete rights </li></ul>Groups Users Sales Areas Internal Users Accounts Managers Contact External App Back Office Admin
  14. 14. Customization Capability
  15. 15. Customization <ul><li>Data Structures </li></ul><ul><ul><li>Form Wizard – Easily editable forms </li></ul></ul><ul><ul><li>Forms can be attached at any level of workflow - project, milestone, category or activity </li></ul></ul><ul><li>Reports </li></ul><ul><ul><li>Report Wizard – Easily editable reports </li></ul></ul><ul><ul><li>Reports can be customized to client requirements </li></ul></ul><ul><li>Workflow </li></ul><ul><ul><li>Configuration Files – Easily editable workflow rules </li></ul></ul><ul><ul><li>Follows a simplified version of the PDCH workflow model (http://citeseer.ist.psu.edu/vanderaalst01beyond.html)‏ </li></ul></ul>
  16. 16. Integration with other applications
  17. 17. Integration <ul><li>XML input and output filters </li></ul><ul><ul><li>Objects can be created by extracting data from external XML feed </li></ul></ul><ul><ul><li>Simple mapping of external object attributes to internal attributes </li></ul></ul><ul><ul><li>Extraction of data is also possible in XML </li></ul></ul><ul><li>Invocation of third-party applications </li></ul><ul><ul><li>Milestones and forms can be associated with third-party applications </li></ul></ul><ul><ul><li>Provides a seamless user interface </li></ul></ul><ul><li>Scheduled Batches or Event Triggered </li></ul><ul><ul><li>Data transfer can be batched and scheduled at pre-determined intervals </li></ul></ul><ul><ul><li>Data transfer can be triggered based on internal events associated with objects such as milestone, task, appointments etc. </li></ul></ul>
  18. 18. Scalability
  19. 19. Scalability <ul><li>Virtualization </li></ul><ul><ul><li>Layers can be split into multiple servers </li></ul></ul>Sessions Manager Network Database Server Database Server Database Server Application Server C1 C2 C3 Application Server C4 C5 C6 Application Server C7 C8 C9
  20. 20. Security
  21. 21. Security <ul><li>Object Level </li></ul><ul><ul><li>Each object can be protected by encryption and access levels </li></ul></ul><ul><li>User Level </li></ul><ul><ul><li>Access to data and application objects controlled by user and group membership </li></ul></ul><ul><li>Client Level </li></ul><ul><ul><li>Each client account has an independent application and data space </li></ul></ul><ul><li>Server Level </li></ul><ul><ul><li>No single point of access – each object can be protected independently </li></ul></ul><ul><ul><li>Relational database contains only subset of data </li></ul></ul><ul><li>Network Level </li></ul><ul><ul><li>Encrypted network connections possible </li></ul></ul>
  22. 22. Administration
  23. 23. Administration <ul><li>User Manager </li></ul><ul><ul><li>Manage users, rights and group memberships </li></ul></ul><ul><li>Groups Manager </li></ul><ul><ul><li>Manage groups and memberships </li></ul></ul><ul><li>Object Manager </li></ul><ul><ul><li>Manage individual objects </li></ul></ul><ul><li>Index Manager </li></ul><ul><ul><li>Manage relational tables for object collections </li></ul></ul><ul><li>Access Statistics </li></ul><ul><ul><li>Monitor application access statistics </li></ul></ul>
  24. 24. A flexible, low-cost solution for managing complex workflows For more details, contact [email_address] Or visit http://www.reach1to1.com

×