Presentation on theme: "Rollbase for OpenEdge Partners"— Presentation transcript:
1Rollbase for OpenEdge Partners Gus Bjorklund, “Jack of All Trades”, The Parmington FoundationShelley Chase, Senior Architect, ProgressNovember 2014
2Topics Covered in This Session What is Progress PacificWhat is Progress RollbaseRapid App Dev (RAD) in RollbaseHow to use Progress OpenEdge with RollbaseHow to get more information
3What Is Progress Pacific? Why am I talking about Pacific? Because Rollbase was the basis for Pacific.
4What Is Progress Pacific? From the beginning, Progress has helped business professionals build powerful applications with purposeBusiness professionals have unique requirements:1. Need simplicity without having to rely on deep technical skills2. Need to connect to critical data3. Need to see before they build4. Need to show results right away5. And they need to do it without a long, expensive IT projectRapid developmentData drivenOpen standards
5CONSISTENT USER EXPERIENCE PROGRESS DATADIRECTPROGRESS CORTICONPROGRESS ROLLBASEPROGRESS EASYLProgress Pacific is the aPaaS delivery of Progress products.DataDirect, Easyl, Rollbase are currently includedCorticon and OpenEdge in the future (see Dave Cleary’s talk about the new PASOE server)COMMUNITYCONSISTENT USER EXPERIENCE
6CONSISTENT USER EXPERIENCE PROGRESS CORTICONPROGRESS DATADIRECTPROGRESS OPENEDGEPROGRESS ROLLBASEPROGRESS EASYLProgress Pacific is the aPaaS delivery of Progress products.DataDirect, Easyl, Rollbase are currently includedCorticon and OpenEdge in the future (see Dave Cleary’s talk about the new PASOE server)COMMUNITYCONSISTENT USER EXPERIENCE
7Progress and Rollbase Recognized Progress in Magic Quadrant for Enterprise application Platform as a Service (aPaaS).Rollbase, Inc. …has been named a Gartner Research "Cool Vendor in PaaS" for 2013.ProgressThis graphic was published by Gartner, Inc. as part of a larger research document and should be evaluated in the context of the entire document. The Gartner document is available upon request from Gartner does not endorse any vendor, product or service depicted in its research publications, and does not advise technology users to select only those vendors with the highest ratings. Gartner research publications consist of the opinions of Gartner's research organization and should not be construed as statements of fact. Gartner disclaims all warranties, expressed or implied, with respect to this research, including any warranties of merchantability or fitness for a particular purpose.
10?What IsProgress 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.
12Progress Rollbase in Action Rollbase in action book is now 577 pages in length.
13Core Concepts: Objects, Fields, Relationships and Cardinalities Applications are data-driven – Objects are the core business entitiesObjects have properties and attributes associated with themObjects have Fields associated with themObject relationships and cardinalities are modeled visuallyUnderlying database physics are completely hidden – it’s aPaaS!Rollbase is a PaaS, shielding devlopers from underlying technical complexity such as database schemas and relationships.Developers model coarse-grained (business objects) in the browser-based authoring environment. These are typically objects such as Customer, Article, User etc.Object properties indicate e.g. auditing, reporting capabilities for the object.Objects have associated attributes e.g. Workflow, Task, Survey, … Selecting attributes for an object enables specific behaviour for the object e.g. location attribute.Field are associated with objects and are typed.The developer declares the relationship between related objects and their respective cardinalities.(This is a good point to jump to a short demo. Login to Rollbase, explore/navigate development environment, explore objects/cardinalities and fields).
14Create Object Everything starts with Objects. There are predefined tables in the Rollbase database and you can create objects from these, or from external datasources using: D2C, non-Rollbase tables in the same DB (External Tables) and Web Service objects
15Building the User Interface (UI) Build UI using integrated WYSIWYG editorUI Tabs are automatically generated for each ObjectPage elements are created and edited using drag-and-dropChanges immediately reflected in the UIRollbase includes a WYSIWYG (what-you-see-if-what-you-get) UI builder which runs in-browser. Simply via point-and-click, drag-and-drop, developers can easily build compelling, modern, browser-based UIs.Layout changes are immediately reflected in the UI upon saving.Tabs are a convenient way to navigate an application, and are automatically generated for each object definition.(This is another good point to leave ppt and jump to a short demo of the HTML WYSIWYG authoring capabilities).
16Publishing Applications Once built, Applications can have Portals associated with them.Several Portals per Application can be configured.HTTPS is a check-box.Fine-grained users access control requires careful planning.Applications can be mobile-enabled.Applications can be published and accessible via a user-facing PortalSeveral portals can be defined per applicationFine-grained (user/role) authentication and access control fully configurable
17Installing and Updating Applications Application composition is described in an XML document (Application tree)Install and upgrade Applications by installing the provided XMLSupports fine-grained control for sub-components (Locked, Partially Locked, Unlocked)Applications are versioned and can be rolled back if necessaryApplications are described in a proprietary XML format (Application tree)Install an Application by applying the XML file which was distributedRollbase supports fine-grained control over Application sub-components (KEY VALUE POINT FOR ISVs)(This is a good jump off point to demo the application tree (and possibly a rollback))
19Progress Rollbase Applications Prime Load Processing - In use by mortgage brokers ($95/month per user)Ionit Network systems - Monitors the temperature of grease tanks - REST APIs used to provide dataUsed by restaurantsGeO Jungle LaserTowns and municipalities – 100 of Apps available to run their town. (pet licenses, trash collection schedule)Runs fully on hosted environment - Customize UI for each tenant1st ISV – helped identify key features for ISVsGeO 3.0 – Parks and RecreationDMSi – long time OpenEdge partner – long time SaaS provider, started in the AsPen daysOver 10,000 users in 10 languages
21Extending OpenEdge Applications by Adding Web Components RollbaseLeverage OpenEdge database and business logic
22When to Integrate OpenEdge and Rollbase New Application as an existing OE ApplicationNew Module to extend an existing OE ApplicationNew Module to replace part of an existing OE ApplicationNeed to THINK in terms of How the Applications are being usedand the business purpose (Record – Engagement – Differentiation)Rollbase and OpenEdge can co-exist/integrate/interactRollbase is an Application Development PlatformCreate Applications that can interact/leverage existing OpenEdge ApplicationsRollbase is NOTA UI layer on OpenEdge – Rollbase Web will be best for this.A way to replicate existing .net or classic OpenEdge UI/UX in a Web Browser
27But What If I Don’t Use an AppServer But What If I Don’t Use an AppServer? Preferred Approach Is External Tables + OpenEdge RDBMSRequirementsOpenEdge RDBMSPrivate RollbaseStepsAdd the Rollbase schema to an existing OpenEdge RDBMSModify Rollbase to use the existing OE DB with new schemaCreate a new object using External tablesResultAccess to your data
28DEMO: External Tables + OpenEdge RDBMS On-premise Rollbase ServerOpenEdge AppServerRollbase ObjectsRB ServerOE SQLServerJDBCdrivertcp/ipOEDBRB SchemaRollbase tablesPUB Schemayour tablesOne and only one database
32Option 2: DataDirect Cloud + OpenEdge RDBMS DataDirect Cloud Server runs in Amazon cloudServed by OpenEdge RDBMSYour application's data are on your serverEnables building new, hosted, customized Web Applications on Partner and DEU platforms10.2B onwardRollbase runs either hosted or on-premiseRollbase talks to D2CD2C talks to your serverLimitations:Latency can be highAccess to Database, not Business LogicRequires detailed knowledge of data
33Option 3: External Tables in OpenEdge RDBMS On-premise Rollbase ServerOpenEdge AppServerRollbase ObjectsRB ServerOE SQLServerJDBCdrivertcp/ipOEDBRB SchemaRollbase tablesPUB Schemayour tablesOne and only one database
34Option 3: "External” Tables – On Premise Only Rollbase on-premise has a databaseRollbase has about 25 tablesTables used by Rollbase are in the RB schemaDo not touch these tablesThe "external" tables must be in the SAME databaseIn a different schema, e.g. PUBLimitations:Cannot modify schema in RollbaseRequires detailed knowledge of dataMust be in shared namespace and single databaseMust have a unique numeric column or text column
36Option 4: External Tables with Auxiliary Databases OpenEdge SQL Server process serves data from multiple databasesMain database is read-writeContains Rollbase tables onlyAuxiliary databases are read-only to RollbaseAuxiliary db contains your application's tablesMust be on same system as main databaseProperty file describes auxiliary database and names the tables thereinUser id for main and auxiliary db must be the sameRollbase thinks there is just one database
39OpenEdge Service Objects – The Preferred Approach RequirementsApplication ServerProgress Developer’s StudioStepsCreate a Mobile Application using the Express Mobile process in PDSOECreate a new object in Rollbase using the JSON file from the Express Mobile projectResultAccess to your AppServer logic and data
40Documentation References TopicWhereRollbaseRollbase in ActionOpenEdge Service ObjectsRollbase In Action, Appendix C,Using External Tables as Rollbase ObjectsRollbase In Action, Appendix E,Creating Rollbase Objects From OpenEdge ServicesDataDirect CloudRollbase In Action,Using Rollbase With DataDirect CloudJSDOWhite Paper: Accessing the Progress OpenEdge AppServer from Progress Rollbase using JSDO CodeOpenClientWhite Paper: Rollbase access to ABL Business Logic via OpenClient
41In Summary… Rollbase is: A drag & drop, point & click, object based, WYSIWYG, browser based development toolThat also allows publishing of multi-tenant (through Portals) applicationsUpdating of applications, monitoring and metering supportCloud hosted or On-PremiseRollbase can access your OpenEdge Application or DatabasePreferred method is using the OpenEdge Services Object (11.3.2)Hosted Rollbase can access OpenEdge DB using DataDirect (10.2B+)On-Premise can access the OpenEdge DB directly with External TablesAnd there are more ways…Help is availableSee the document resourcesWe will continue to improve and add functionality
43Question 1: Is Pacific the Same as Arcade? Yes or No
44Question 1: Is Pacific the Same as Arcade? NoArcade is a self-service hosting environment for OpenEdge Business applications, however it does not provide any services or management features.No application architecture rulesGood first-step the Cloud and SaaSRollbase is a cloud development and fully managed hosting environment for Rollbase Business applications. It includes platform services and management featuresApps must be n-tierFull Cloud/SaaS environment
45Question 2: Can I Use WebSpeed with Rollbase Yes or No
46Question 2: Can I Use WebSpeed with Rollbase No, not today…Progress is moving towards a universal architecture based on tomcatPacific WebSpeed expected in 2015WebSpeed 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
49In Summary…You can support separate OpenEdge and Rollbase ApplicationsOpenEdge application is Client/ServerCan be used to provide existing app on web and mobile devicesYou can create new module in Rollbase for existing OpenEdge ApplicationOpenEdge application in n-tierCan be launched from existing OpenEdge appIf On-Premise , use… OpenEdge Service Objects - On-Premise/Private Cloud - HTTPS (moving to native) - Basic-Auth/HTTPS - OpenEdgeIf 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