PUG Challenge Americas 2012 Westford MA Click to

  • Slides: 32
Download presentation
PUG Challenge Americas 2012 – Westford, MA Click to edit Master title style Application

PUG Challenge Americas 2012 – Westford, MA Click to edit Master title style Application Evolution Success Stories Presented by: Bruce Thompson and Dustin Grau 1 1 PUG Challenge Americas 2012

Agenda • • Case Study Product Introduction Development Goals Migration Challenges Server Architecture New

Agenda • • Case Study Product Introduction Development Goals Migration Challenges Server Architecture New UI Environments Java. Script Proxygen – Brave. Point Connector - RPC Viewer • • 2 UI Components & Template Examples Demonstration Future Enhancements Q&A 2 PUG Challenge Americas 2012

Brave. Point, Inc. • Owned by: Chesapeake Utilities Corp. • $400 million+ • CPK

Brave. Point, Inc. • Owned by: Chesapeake Utilities Corp. • $400 million+ • CPK (NYSE) 3 3 PUG Challenge Americas 2012

About Brave. Point • Successfully providing technology based solutions since 1988 • Consultants are

About Brave. Point • Successfully providing technology based solutions since 1988 • Consultants are business people who understand technology • Based in Atlanta, Georgia, 100+ associates • Professional Services, Integration • MDBA • Business Intelligence • Pro 2, PRO D & L 4 4 PUG Challenge Americas 2012

Case Study • • 5 Customer has a Ch. UI application Losing to Competition

Case Study • • 5 Customer has a Ch. UI application Losing to Competition Years of investment in unique, customized business logic that is holding back modernization initiatives Users want browser-support and new UI 5 PUG Challenge Americas 2012

Contracts Before … 6 6 PUG Challenge Americas 2012

Contracts Before … 6 6 PUG Challenge Americas 2012

Contracts After! 7 7 PUG Challenge Americas 2012

Contracts After! 7 7 PUG Challenge Americas 2012

Contract Service Scheduler Before… 8 8 PUG Challenge Americas 2012

Contract Service Scheduler Before… 8 8 PUG Challenge Americas 2012

Contract Service Scheduler After! 9 9 PUG Challenge Americas 2012

Contract Service Scheduler After! 9 9 PUG Challenge Americas 2012

10 10 PUG Challenge Americas 2012

10 10 PUG Challenge Americas 2012

Development Goals • • Wanted a browser-based interface (+ Mobile) Business requires interactive, rich

Development Goals • • Wanted a browser-based interface (+ Mobile) Business requires interactive, rich UI New interface must reuse existing logic ***** Reporting Methodology with standardized, extensible output destinations • Prefer open source tools/frameworks • Saa. S deployment as an option • Provide upgrade path to OE 11 and later 11 11 PUG Challenge Americas 2012

Migration Challenges • Ch. UI applications are state-aware – Run in a single Progress

Migration Challenges • Ch. UI applications are state-aware – Run in a single Progress session all day – Web applications are inherently stateless • Procedural code doesn’t like interruptions – Expects all necessary data up-front – Expects to halt execution for additional input • • 12 Web. Speed agents are shared ABL clients Code is monolithic and rarely structured Older code used workfiles and relied on globals UI and business logic is intertwined 12 PUG Challenge Americas 2012

Re-Packaging Required • Remove reliance on global and shared variables – Data should be

Re-Packaging Required • Remove reliance on global and shared variables – Data should be passed via parameters – Otherwise, each hit needs to be “initialized” • Separate UI elements from business logic • Convert large blocks of procedural code into smaller, atomic functions or procedures • Replace wait loops with a request/response • Be prepared to “re-factor” prompts for input • Methodology for errors and other message types – Advanced Error Handling i. e. Undo, Throw) 13 13 PUG Challenge Americas 2012

Server Architecture 14 14 PUG Challenge Americas 2012

Server Architecture 14 14 PUG Challenge Americas 2012

New UI Environments • AJAX Frameworks are very helpful, they allow for interactive UI

New UI Environments • AJAX Frameworks are very helpful, they allow for interactive UI and “richness” • Web Browser (client) and Web. Speed (server) • Asynchronous data management via RPC – Remote Procedure Calls (HTTP POST) – JSON-RPC (Java. Script Object Notation) • UI code is entirely written in Java. Script – Manipulates browser’s DOM to draw elements • Interface is not redrawn on every request – Only data is passed between client and server – Individual elements are adjusted/extended as needed 15 15 PUG Challenge Americas 2012

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic •

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic • RPC Engine serves as "traffic cop" for traditional Web. Speed requests vs. pure data requests • Exists as a common entry point for any compatible front-end frameworks (XML, JSON, Acronym Du Jour) 16 16 PUG Challenge Americas 2012

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic •

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic • API's expose procedure for public consumption • Simple. p libraries of internal procedures • Pre-determined, simple input/output parameters 16 17 PUG Challenge Americas 2012

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic •

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic • Adapters are foundational logic classes (. cls) • Simple wrappers or complex business logic • Provide inheritance model, standard OO benefits 16 18 PUG Challenge Americas 2012

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic •

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic • Interfaces are subset of legacy logic that allows for easier integrates with existing business rules • Can provide access to shared variables, etc. 16 19 PUG Challenge Americas 2012

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic •

Server-Side Layers - RPC Adapters RPC Engine Appserver Database API’s Interfaces Business Logic • Not limited to level of integration with business logic or database access, supports App. Server conn. • Structured error handling and logging available 16 20 PUG Challenge Americas 2012

User Interface • Components are basic data access elements – Simple: Layouts, Buttons –

User Interface • Components are basic data access elements – Simple: Layouts, Buttons – Complex: Forms, Grids, Trees 20 21 PUG Challenge Americas 2012

Template-Based Development • Combine reusable elements into templates • Template examples: – Simple. Filter:

Template-Based Development • Combine reusable elements into templates • Template examples: – Simple. Filter: Filter Form + Results Grid + Editor – Simple. Grid: Editable Grid w/ Filterable Header • Screens extend templates for specific tasks • Not limited to what is pre-packaged – Roll your own templates 21 22 PUG Challenge Americas 2012

Template Examples • • 22 Navigation Filters Groups "Transactionals" (Non-Template) 23 PUG Challenge Americas

Template Examples • • 22 Navigation Filters Groups "Transactionals" (Non-Template) 23 PUG Challenge Americas 2012

Navigation 23 24 PUG Challenge Americas 2012

Navigation 23 24 PUG Challenge Americas 2012

Maintenance with in-line editing 24 25 PUG Challenge Americas 2012

Maintenance with in-line editing 24 25 PUG Challenge Americas 2012

Maintenance Many-to-One 25 26 PUG Challenge Americas 2012

Maintenance Many-to-One 25 26 PUG Challenge Americas 2012

Maintenance Multiple / Mix type Edit 26 27 PUG Challenge Americas 2012

Maintenance Multiple / Mix type Edit 26 27 PUG Challenge Americas 2012

Tree Grid Maintenance 27 28 PUG Challenge Americas 2012

Tree Grid Maintenance 27 28 PUG Challenge Americas 2012

Report Parameter Template 28 29 PUG Challenge Americas 2012

Report Parameter Template 28 29 PUG Challenge Americas 2012

Demonstrations Framework in Action 29 30 PUG Challenge Americas 2012

Demonstrations Framework in Action 29 30 PUG Challenge Americas 2012

Future Enhancements • • • 22 Client-Principal Object Multi-tenancy Support Saa. S Readiness Real-time

Future Enhancements • • • 22 Client-Principal Object Multi-tenancy Support Saa. S Readiness Real-time Messaging Push Notifications 31 PUG Challenge Americas 2012

Thank You! Q&A 29 32 PUG Challenge Americas 2012

Thank You! Q&A 29 32 PUG Challenge Americas 2012