Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Progress Rollbase for OpenEdge Developers Gus Bjorklund, Progress Software Richmond, VA, Raleigh, NC PUG Meetings April 8 and 9, 2014 Abstract Progress Rollbase is a cloud platform for development and delivery of software as a service (SaaS) business applications using point & click, drag & drop tools in a standard web browser with a minimal amount of code. Rollbase continues to extend Progress’ commitment to empowering business users and other people who are not professional programmers to enable them create their own applications. In this talk we introduce you to this new, easy application development and deployment platform that can complement your existing OpenEdge applications. 2 © 2013 Progress Software Corporation. All rights reserved. Notice Please interrupt if you have a question. No need to wait till you forget. 3 © 2013 Progress Software Corporation. All rights reserved. Pacific: Powering Productivity From the beginning, Progress has helped business professionals build powerful applications with purpose Business professionals have unique requirements: 1. Need simplicity without having to rely on deep technical skills Rapid development 2. Need to connect to critical data 3. Need to see before they build 4. Need to show results right away Data driven 5. And they need to do it without a long, expensive IT project Open standards 4 © 2013 Progress Software Corporation. All rights reserved. PROGRESS DATADIRECT PROGRESS OPENEDGE PROGRESS CORTICON COMMUNITY CONSISTENT USER EXPERIENCE 5 © 2013 Progress Software Corporation. All rights reserved. PROGRESS ROLLBASE Rollbase: Build Data-driven Applications on any Cloud for any Device Build 7 Deploy Manage Drag & drop development enables business users to create apps without coding Publish and deploy applications to one or more tenants Central dashboard to manage servers, databases, tenants, users, applications and more Developers can go much further with JavaScript, APIs and custom components Choose your hosting environment public, hybrid or private cloud Monitor system components and user activity, access tenants to provide support, resource metering, etc. © 2013 Progress Software Corporation. All rights reserved. Freedom of choice Rollbase enables rapid application development for the Progress Pacific platform Typical deployments are targeted to a hosted IaaS (Infrastructure as a Service) platform such as Amazon Web Services Users can also deploy Rollbase to private, on-premise infrastructure Authoring environment is browserbased 8 © 2013 Progress Software Corporation. All rights reserved. Renewed Focus for on Business Application Development Progress Progress Listed in Gartner’s Magic Quadrant for Enterprise Application PaaS 9 © 2013 Progress Software Corporation. All rights reserved. Rollbase in Action 11 © 2013 Progress Software Corporation. All rights reserved. Core Concepts: Objects, Fields, Relationships and Cardinalities Applications are data-driven – Objects are the core business entities Objects have properties and attributes associated with them Objects have Fields associated with them Object relationships and cardinalities are modeled visually Underlying database physics are completely hidden – it‘s aPaaS ! 12 © 2013 Progress Software Corporation. All rights reserved. Core Concepts: Things, Fields, Relationships and Cardinalities Applications are data-driven – Things are the core business entities Things have properties and attributes associated with them Things have Fields associated with them Things relationships and cardinalities are modeled visually Underlying database physics are completely hidden – it‘s aPaaS ! 13 © 2013 Progress Software Corporation. All rights reserved. Building the User Interface (UI) Build UI using integrated WYSIWYG editor UI Tabs are automatically generated for each Object Page elements are created and edited using drag-and-drop Changes immediately reflected in the UI 15 © 2013 Progress Software Corporation. All rights reserved. Publishing Applications Applications can be published and accessible via a user-facing Portal Several Portals can be defined per Application Fine-grained (user/role) authentication and access control fully configurable 16 © 2013 Progress Software Corporation. All rights reserved. Installing and Updating Applications Application composition is described in an XML document (Application tree) Install and upgrade Applications by installing the provided XML Supports fine-grained control for sub-components (Locked, Partially Locked, Unlocked) Applications are versioned and can be rolled back if necessary 17 © 2013 Progress Software Corporation. All rights reserved. Advanced Topics Powerful AJAX API for Applications demanding a rich, interactive browser experience On-premise Rollbase supports the integration of external databases (e.g. OpenEdge DB) Rollbase has powerful facilities : • • • 18 Triggers Workflow Server-side JavaScript logic © 2013 Progress Software Corporation. All rights reserved. Sample Rollbase Applications 19 © 2013 Progress Software Corporation. All rights reserved. 21 © 2013 Progress Software Corporation. All rights reserved. 22 © 2013 Progress Software Corporation. All rights reserved. 25 © 2013 Progress Software Corporation. All rights reserved. 26 © 2013 Progress Software Corporation. All rights reserved. Rollbase with OpenEdge 27 © 2013 Progress Software Corporation. All rights reserved. Rollbase and OpenEdge Integration 4 Options (OE 11.3.2+) OpenEdge 28 © 2013 Progress Software Corporation. All rights reserved. Rollbase Rollbase and OpenEdge Integration 4 Options (OE 11.3.2+) 0: OpenEdge Service Objects 1: DataDirect Cloud (aka D2C) 2: External tables 3: External tables with auxiliary databases OpenEdge 29 © 2013 Progress Software Corporation. All rights reserved. Rollbase 0: OpenEdge Service Objects – The Preferred Approach Rollbase Server Rollbase Objects Tomcat JSDO Catalog RB Server REST JDBC driver Business Entities AppServer HTTP/JSON RB DB RB Schema Rollbase tables 30 REST Adapter OpenEdge AppServer © 2013 Progress Software Corporation. All rights reserved. (REST) OE DB PUB Schema your tables 0: OpenEdge Service Objects: The “Preferred” Approach Rollbase Business Entities (i.e. Objects) based on OpenEdge “Business Entities” OERA-certified Builds on JavaScript Data Object (JSDO) Catalog in OpenEdge Mobile First priority for Rollbase work: “Parity with native objects” Phased implementation – current functionality: • Tenant-based identity • Single Table ProDataSet • Direct CRUD support - INVOKE done in ObjectScript 31 © 2013 Progress Software Corporation. All rights reserved. 1: DataDirect Cloud + OpenEdge RDBMS Rollbase Server Rollbase Objects RB Server tcp/ip JDBC driver RB DB RB Schema Rollbase tables 33 OpenEdge AppServer DataDirect Cloud © 2013 Progress Software Corporation. All rights reserved. JDBC Driver: OEDB tcp/ip OE SQL Server JDBC Driver: … OE DB PUB Schema your tables 1: DataDirect Cloud + OpenEdge RDBMS D2C Server runs in Amazon cloud Served by OpenEdge RDBMS Your application's data are on your server Enables building new, hosted, customized Web Applications on Partner and DEU platforms 10.2B onward Rollbase runs either hosted or on-premise • Rollbase talks to D2C • D2C talks to your server Limitations: • Latency can be high Access to Database, not Business Logic • Requires detailed knowledge of data 34 © 2013 Progress Software Corporation. All rights reserved. 2: External Tables + OpenEdge RDBMS OpenEdge AppServer On-premise Rollbase Server Rollbase Objects RB Server JDBC driver tcp/ip OE SQL Server OEDB RB Schema Rollbase tables PUB Schema your tables One and only one database 36 © 2013 Progress Software Corporation. All rights reserved. 2: "External" tables – On Premise Only Rollbase on-premise has a database • Rollbase has about 25 tables • Tables used by Rollbase are in the RB schema • Do not touch these tables The "external" tables must be in the SAME database • In a different schema, e.g. PUB Limitations • Cannot modify schema in Rollbase • Requires detailed knowledge of data • Must be in shared namespace and single database • Must have a unique numeric column or text column 37 © 2013 Progress Software Corporation. All rights reserved. 3: External Tables + OpenEdge RDBMS Rollbase Server Rollbase Objects OpenEdge AppServer RB Server JDBC driver tcp/ip RB DB 38 © 2013 Progress Software Corporation. All rights reserved. multidatabase property file OE SQL Server OE DB RB Schema Rollbase tables PUB Schema your tables main database auxiliary database 3: External tables with auxiliary databases OpenEdge SQL Server process serves data from multiple databases Main database is read-write • Contains Rollbase tables only Auxiliary databases are read-only to Rollbase • Auxiliary db contains your application's tables • Must be on same system as main database • Property file describes auxiliary database and names the tables therein • User id for main and auxiliary db must be the same • Rollbase thinks there is just one database 39 © 2013 Progress Software Corporation. All rights reserved. Documentation References Topic Where Rollbase http://www.progress.com/docs/ebooks/Roll base_in_Action.pdf OpenEdge Service Objects Rollbase In Action, Appendix E, Creating Rollbase Objects From OpenEdge Services OpenEdge SQL Development, Performing Multidatabase Queries Rollbase In Action, Using Rollbase With DataDirect Cloud Multi-database connection property files DataDirect Cloud 40 © 2013 Progress Software Corporation. All rights reserved. Question and Answer 41 © 2013 Progress Software Corporation. All rights reserved. Question 1: Is Pacific the Same as Arcade? Yes or No 42 © 2013 Progress Software Corporation. All rights reserved. Question 1: Is Pacific the Same as Arcade? No Arcade is a self-service hosting environment for OpenEdge Business applications, however it does not provide any services or management features. • No application architecture rules • Good first-step the Cloud and SaaS Rollbase is a cloud development and fully managed hosting environment for Rollbase Business applications. It includes platform services and management features • Apps must be n-tier • Full Cloud/SaaS environment 43 © 2013 Progress Software Corporation. All rights reserved. Question 2: Can I use WebSpeed with Rollbase Yes or No 44 © 2013 Progress Software Corporation. All rights reserved. Question 2: Can I use WebSpeed with Rollbase Yes but… Progress is moving towards a universal architecture based on Tomcat. • If starting today, we suggest to use Rollbase (Web UI) and OpenEdge AppServer Webspeed is a server-side technology and will continue to be fully supported. • Based on older-style JSP where Server does “all” the work” • Can integrate WebSpeed pages using iFrame in Rollbase 45 © 2013 Progress Software Corporation. All rights reserved. In Summary… You can support separate OpenEdge and Rollbase Applications • OpenEdge application is Client/Server • Can be used to provide existing app on web and mobile devices You can create new module in Rollbase for existing OpenEdge Application • OpenEdge application in n-tier • Can be launched from existing OpenEdge app If On-Premise , use… OpenEdge Service Objects - On-Premise/Private Cloud - HTTPS (moving to native) - Basic-Auth/HTTPS - OpenEdge 11.3.2+ 46 © 2013 Progress Software Corporation. All rights reserved. If Rollbase is hosted, use… DataDirect Cloud - OE On-premise - Database Security/SSL - OpenEdge 10.2B+ Limited use for External tables - mostly read-only - don’t rely on OE triggers - one database/PUB schema - latest OE is best Questions 47 © 2013 Progress Software Corporation. All rights reserved.