Presentation is loading. Please wait.

Presentation is loading. Please wait.

ARCH-08 A Common Business Service Approach to Application Development Anthony Swindells Progress Fellow.

Similar presentations


Presentation on theme: "ARCH-08 A Common Business Service Approach to Application Development Anthony Swindells Progress Fellow."— Presentation transcript:

1 ARCH-08 A Common Business Service Approach to Application Development Anthony Swindells Progress Fellow

2 2© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Agenda n What are Common Business Services? n Examples to get you thinking n Design considerations n What’s coming in OpenEdge™ to help n Next steps

3 3© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach D I S C L A I M E R Under Development n This talk includes information about potential future products and/or product enhancements. n What I am going to say reflects our current thinking, but the information contained herein is preliminary and subject to change. Any future products we ultimately deliver may be materially different from what is described here. D I S C L A I M E R

4 4© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services n Non-domain specific related functions that provide the common infrastructure for a modern application n Standard behavior, features and functionality independent of any specific application requirements n Their combined presence determines the nature and style of applications supported n Typically pre-started and always available Definition

5 5© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services Some examples “My application needs to restrict client access to its operations and data” “My application is subject to regulatory compliance “My customers / partners need to customize my application without losing the ability to adopt future releases”

6 6© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services n Reduced learning curve –Simplify domain specific code –Focus on “what” not “how” n Reduced cost in medium to long term n Obtain not build option n Improved quality & standards n Maximize scalability and performance –Core capabilities built into architecture Key benefits of the approach

7 7© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach A layered view Common Business Services and the OpenEdge Reference Architecture Separated presentation and integration layers Data access abstracted from storage Common business logic with advanced models Users Presentation Layer Business Servicing Layer Data Access Layer Managed Data Stores Managed Data Stores Unmanaged Data Stores Unmanaged Data Stores Enterprise Services Enterprise Services Integration Layer Common Business Services Non-domain specific functionality abstracted from application

8 8© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Application Support Service Manager Common Business Services Supporting Terminology Let’s talk the same language Core Business Service Manager exposed externally as a service through service interface User coded 4GL implementation OpenEdge platform implementation

9 9© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach n What are Common Business Services? n Examples to get you thinking n Design considerations n What’s coming in OpenEdge to help n Next steps Agenda

10 10© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services Typical application challenges “My application needs to restrict client access to its operations and data”

11 11© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Authentication Manager Authentication and Authorization Process Login Credentials Principal Authenticate Authentication System User Accounts Account Check Get Account Data Application Resources Access Control Data Authorization Manager Application Server Client

12 12© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services Typical application challenges “My application is subject to regulatory compliance and I must report on attempted break-ins or fraud. I must prove that audit data has not been tampered with”

13 13© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Candidate Managers: Auditing Offline Audit Data Archive Daemon Archive Manager Audit Event Manager (schema triggers) Audit Report Report Manager Application Data App DB Audit Data Manager Audit Data Audit Policy Manager API Policy Data

14 14© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services Typical application challenges “My Application needs to scale to potentially thousands of concurrent users in a distributed environment”

15 15© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Context Manager Authenticated Session Candidate: Context Management Login Credentials Session Information Business Task User Context DB Context Data ID Application Session ID AppServer Connect AppServer Connect Client Session Managing state

16 16© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Common Business Services Typical application challenges “All my applications require storage and management of address data”

17 17© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Candidate: Address Management? n Zip code / post code lookup n International address formatting n Address validation n Address type management n Address usage n Address form management n Address storage & retrieval Core / generic address functions only

18 18© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach n What are Common Business Services? n Examples to get you thinking n Design considerations n What’s coming in OpenEdge to help n Next steps Agenda

19 19© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Server Side Client Side Managers Accessed Locally or Through Service Interface Service Proxy Service Interface Presentation Container Service Container Fn() Order Mgmt … Session/Context Management Authentication & Authorization

20 20© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Manager Design Considerations n Typically pre-started as single instances n Implemented as black boxes with well defined public API n Encapsulate distributed architecture complexities –Manager is layer aware (e.g. client cache) n Separate deployment / configuration functionality from runtime functionality n Avoid dependencies –Plug and play architecture

21 21© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Clearly Define Manager Roles and Responsibilities n Authentication manager manages authenticated credentials –Must manually pass credentials around, e.g. between client and server n Context manager manages any type of context n If BOTH are present –Register credentials as context –Credentials automatically available when needed n Cache manager does caching –No cache manager, no caching! Combine managers to provide value

22 22© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Design Assistance n Implementing the OpenEdge Reference Architecture on PSDN n Check back often… http://psdn.progress.com/library/ white_papers/oera/index.ssp

23 23© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach n What are Common Business Services? n Examples to get you thinking n Design considerations n What’s coming in OpenEdge to help n Next steps Agenda

24 24© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge Core Business Services Vision Statement “Provide a comprehensive set of common business services that provide the core feature support of a modern SOA based application modeled on the OpenEdge Reference Architecture”

25 25© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge Core Business Services n Auditing ( 10.1A ) n Authentication and authorization ( 10.1A, 10.x ) n Session and context management ( 10.x ) n Configuration and connection management n Localization, personalization, customization n Tighter integration with sonic ESB and services Core Services

26 OpenEdge 10.1A Auditing

27 27© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge Database Schema-Trigger Based Auditing 4GL Client Audit Policy Tools Application Code Application Data App DB Offline Audit Data Archive Daemon Archive Manager Audit Data Archive DB Audit Event Manager (schema triggers) Audit Data Manager Audit Policy Manager API Policy Data Security Manager Audit Report Report Manager SQL Client Application Code

28 28© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Auditing Architecture Overview 4GL Client DB Tools & Utilities Open Tools Audit Policy Tools (APMT) Application Code SQL Client Application Code Audit Data Application Data Policy Data App DB Audit Data Archive DB Audit Event Subsystem Audit Event Subsystem DatabaseInternalApplication Security Subsystem Audit Data Subsystem Audit Data Subsystem Offline Audit Data Audit Report Audit Policy Subsystem Audit Policy Subsystem API Archive Daemon Archiving Subsystem Archiving Subsystem Report Manager

29 29© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Auditing in OpenEdge 10.1A Key Value-Add n Common built-in auditing for both SQL/4GL clients n Flexible audit policy management n Secure audit data, policy and utilities –Separation of duty –Purposed audit permissions –Verified user identity –Secure utilities and sealed data n Internal audit events (utilities, schema changes, etc.) n Performance, performance, performance n High performance archiving – for enterprise only n Multi-platform Why use it in place of own solution?

30 30© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Audit Data Application Data Multiple active policies Control by table / CUD operation Reference Slide Only! Audit Policy MetaSchema Override individual fields Internal & application defined audit events Control by event Id Policy Data

31 31© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Application Data Policy Data Reference Slide Only! Audit Data MetaSchema Record client session information Configurable automated audit data with optional context & grouping Optional old/new value recording Audit Data

32 32© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach You Could Prepare Now n Move to schema design on previous slides –Develop custom tools –Develop custom reports n Implement audit events with schema triggers for now –Wrapper code in include files n Insert hooks for setting / resetting audit context n Consider where you could use application events and insert hooks n When 10.1A ships –Continue to use custom reports and tools –Remove code in schema triggers for 10.1A clients –Migrate data to official tables

33 33© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge 10.1A Authentication in Support of Auditing n Trusted authentication systems / domains –Assert verified identity of real application user –not dependent on _user records n Ability to share a single user authentication n Set the current user-id for –The 4GL Application –A Progress database connection [ & permissions] –Progress Auditing Records

34 34© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge 10.1A Authorization n Leverage asserted authenticated user for database CAN-* permissions n Optional runtime CAN-* permission checking n New schema ready for future roles support

35 35© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach 10.1A Security Schema for Roles Role definition User or role granted use of role Conditional role allocation

36 36© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Future OpenEdge Authentication & Authorization n Support for external authentication systems for 4GL and SQL n Plug-in Authentication Modules: –Write your own –Progress supplied modules: n Progress _user table n 4GL n LDAP/Active Directory n 4GL Access Control Lists (ACLs) n Role support

37 37© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Reference Slide Only! Proposed ACL Schema

38 38© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach You Could Prepare Now n Leverage role schema design on previous slides –Develop custom tools –Develop custom reports n Encapsulate security checks into APIs for easy replacement –Leverage include files n Move to ACL model for authorization –Encapsulate checking for easy replacement n When functionality available in OpenEdge –Replace interface internals

39 39© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge 10.x Context Management n Allow context to be shared across application servers and agents n Provide configurable mechanism to persist context – new meta-schema tables n Seamlessly pass context between client and server – by reference or value –Just available when needed, e.g. client principal n Configurable management of context lifecycle, e.g. scope, expiration, etc. n Best practices and guidelines Current thinking

40 40© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach OpenEdge 10.1A Language Changes Relevant to Common Business Services n Support for globally unique ids (guids) –Useful for context management! –See PSDN for interim solution n Pass TEMP-TABLES and LONGCHARS BY- REFERENCE –Remove overhead of managing complex manager data –Remove overhead of customization layers n Object orientated language enhancements –Implement managers as classes –Use interfaces to define public API / compile time checking

41 41© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach n What are Common Business Services? n Examples to get you thinking n Design considerations n What’s coming in OpenEdge to help n Next steps Agenda

42 42© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Prepare for What’s Coming n Leverage include files –Central replacement when new core functionality available n Prioritize your effort –Avoid duplication where possible n Avoid hard-coded references –Use logical to physical mapping n Avoid direct references to physical schema –Use consistent schema model as far as possible n Consider API’s –Design generic interface for easy replacement

43 43© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach In Summary n Embrace common business services concept –Reduce application complexity –Increase functionality n Don’t wait – start now –OpenEdge 10.1 and future releases will just make things easier n Design for change –New common business services are planned – so prepare now to simplify later adoption

44 44© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Don’t Miss These BOFs… n Common Business Services Birds of a Feather Tue 6:00pm n Auditing Birds of a Feather Wed 8:00am

45 45© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Questions?

46 46© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach Thank you for your time!

47 47© 2005 Progress Software Corporation ARCH-08, A Common Business Service Approach


Download ppt "ARCH-08 A Common Business Service Approach to Application Development Anthony Swindells Progress Fellow."

Similar presentations


Ads by Google