Harmony release overview 1.0 - 2.0
-
Upload
harmony-the-1-cloud-application-development-run-time-platform -
Category
Technology
-
view
666 -
download
3
description
Transcript of Harmony release overview 1.0 - 2.0
Harmony consolidated Release Notes
Last update: release 2.0 (2 August 2013)
Our release policy
• 10 releases per year – containing– new feature(s)
improving capabilities , increasing business benefits
– ImprovementsRevised or minor new features added to extend functionality
– Bug fixes– Sample implementation(s)
demonstrating “Harmony in action”
– More on our website: Agile product development.
FACT DEFINITIONS AND IMPROVED CONFIGS
2.0 Release Notes
Change log
• New– Fact definitions sheet – allows to specify how to
round numbers, decimals after the comma, initial values and more
– Configuration improvements – search/replace of a fact, dialog autofill, create new sheet
– Warnings web-part – identifies and helps with common configuration issues
– Google App Script library for all Harmony configurations, simplifies the release of new functionality in the configurations
• 19 issues and bugs solved
Fact definitions 1/3
• By default, DS shows a result of an expression like this:
• After configuring the order discount like this:
• The result is:
Fact definitions 2/3
• To round-up, configure like this:
• The result is:
Fact definitions 3/3
• “InitialValue” – sets an initial value for a fact– makes setting VAT.percentage to 21 in a rule
unnecessary– all facts set with an initial value will be added to
the case data when starting a new case
• “Don’t show in decision support” – for facts that are ‘internal’ to the process, users
might not be interested in them (set to true)
• “Don’t save in working memory”– for facts like “next.order” just set to true and
Harmony won’t add that fact into the case data
Config improvements 1/3
• Search and replace of a fact (concept attribute pair– helps when re-factoring configurations:
Config improvements 2/3
• Insert concept /attribute pair– The rules sheet can become quite large … so
we’ve made it easier to insert an existing c/a pair or create a new one
Config improvements 3/3
• Insert pre-formatted sheets
– theme sheet• Change the look of the UI. Sample• a new color for the <a> HTML tag:
– reference data sheet
– language sheet
[new] Warnings web-part
• The purpose is to discover difficult to find issues with the configuration– speeds up time to diagnose the problem
• Uses websockets to push to the user at the moment a warning occurs
• Visible to Admin users only
MULTI LANGUAGE1.9 Release Notes
Change log
• Progress on customizing of the UI – Multi-language support English & Dutch– Configurable UI texts
• (great for Decision Support !!!!!)
• New “one-time-access” function– Improved case sharing
• Error messages introduced– Rules that provide additional control
over UI behavior • 7 issues and bugs solved
Chrome “Dutch” browser settings
The same case [Qwy] – “English” settings
Chrome configuration
Firefox configuration
• Create your own preferred syntax
User customization enabled
New “one-time-invite”
• Inviting users to access their case only requires the “one-time-dialog” – Harmony configuration controls
authorization (tasks, queues, cases etc)
One rule to raise an error
INTEGRATION GOOGLE CALENDAR1.8 Release Notes
Change log
• 1st version of integrating Harmony with Google Calendar– (deadlines are turned into events in the
calendar)
• After login, the user is redirected to the originally requested page
• 18 issues and bugs solved• Progress on customizing of the UI – company specific colors
Show task deadlines in Google Calendar
• When application date is chosen, Harmony computes deadline:
• Dialog is submitted, an event is added to the calendar (end date of the event = deadline date):
Show task deadlines in Google Calendar
• On login, users are challenged to grant access to their calendar
How to set-up Google Calendar
• A standard deadline is defined:
• The user must be a member of the Desk queue:
Configuring Harmony for Google Calendar
• When a deadline is re-computed (dynamic deadlines):
• Changing the deadline (via a submit of an Extend approval period in this example) updates the event in the calendar – end date of the event changes
Real-time updates to Google Calendar
Calendar Integration … 6
• This is a basic implementation, based on feedback we will extend the functionality
• Good to know:– The user must explicitly be a member of a
group (Users belonging to Admin only won’t see events in the calendar)
– Dialog name used as event name, two OWIs of the same name aren’t supported in Calendar
UI ADDING DYNAMIC DIALOGS (CONTROLLABLE PER “ITEM / LINE”)
1.6 Release Notes
Change log 1.6:
• Websockets are better “fit”with an ESB in the browser• new messages are published via web-sockets
to the ESB, web-parts change HTML content accordingly
• Show/hide of dialog items• Customer requirement for dynamic forms
• Configurable application name• set in spreadsheet, (was "Harmony App“_
• Radio button dialog item type added• 16 bugs fixed, added another 3 validation
rules in the spreadsheet
Introducing web-sockets in Harmony
• Relevant information for each user is pushed from Harmony to the browser - doesn't require a browser refresh for example
• In this release the OWI web-part updates in real-time when rules fire (OWI amount increases) or when somebody submits a dialog (OWI amount decreases)
Show/hide of dialog items
• Every dialog item can be hidden by default (setting the InitiallyHidden column to yes)
• Dialog items can then be shown via a rule RHS using the "show.item" reserved word
• Dialog items can also be hidden using the "hide.item" reserved word
• NOTE: a "dialog exists" statement must be present in the rule LHS when using show/hide reserved words - rules on what to hide and what to show could be different per dialog
Show/hide of dialog items (example):
Radio button dialog item (example):
INTEGRATION GOOGLE MAPS1.5 Release Notes
• Bi-directional Maps integration– Enter address: display on map– From map, change location • Reflects address
– Entering coordinates• 12 bugs fixed, added 5 validation
rules in the spreadsheet
Change log 1.5:
Google Maps
Enter address – result is displayed on Map
Google Maps
Move map “locator” and drop on new location resulting address is displayed
Google Maps
(or) Enter coordinates:corresponding address is found & location is displayed on Map
How to do ?
Just specify “location” (for type )
UI DIALOG DYNAMIC “ITEM / (LINE)” SUPPORT
1.4 Release Notes
• New UI to allow easy customization– Developers request more control over UI– A brand new JavaScript library was built specifically to
help developers customize the Harmony UI and integrate web-parts from Harmony into their own applications
– Result from user demand• New UI framework: Bootstrap
– One library supporting desktop and mobile UI• [implemented] Extended UI archictecture
– Analysis from user “behavior”• We have noticed logic still being coded coded in UI layer
(JavaScript)
Change log 1.4:
(NEW USER INTERFACE) BOOTSTRAP
A brand new JavaScript library was built specifically to help developers customize the Harmony UI and integrate web-parts from Harmony into their own applications
Desktop browser & mobile support
business services / rules
JavaScript for presentation "logic"/dialogs
“standard”RPG / COBOL *pgm
Webservices to access AS/400
dev framework
New UI architectureHTML(5): content/stucture
CSS: structure/look and feel/layoutPresentationtier
(NEW FEATURE) INVENTORY FILE1.3 Release Notes
Inventory 2.0 (1/3)
• Define an Order object by creating REF_Object spreadsheet with 3 fields:
• And the following two rules:– Generate a unique order ID, in this example based on date & time
• can by any Harmony function such as unique_id(), concat(), etc
– Set the order confirmation date to the current system date:
• Creating an order [transaction] When the order.id is provided/calculated a new row in the REF_Object [table] is created.– The order is immediately visible in the Google
Spreadsheet
Inventory 2.0 (2/3)
• Updating: when the order confirmation date and order company are provided/calculated, the corresponding order is updated.– The order is immediately visible in the Google
Spreadsheet
Inventory 2.0 (3/3)
IMPROVEMENTSDeadlines, UI data validation, LinkedIn sign-on, UI time control
Improvements 1/4
• Introducing: Dynamic Deadlines– For example a deadline is defined like this:
“10 days before arrival.date”– If arrival.date doesn’t exist in the case data,
the calculation of the deadline will be postponed until arrival.date is provided
– The deadline is re-calculated always when the arrival.date changes
– If the result of the deadline calculation is in the past, a ‘deadline.expired’ fact is asserted in the case data automatically
Improvements 2/4
• Reference data keys can be presented in the UI as drop-downs
Improvements 3/4
• LinkedIn login– Main e-mail address in the LinkedIn profile
used to login
Improvements 4/4
• New dialog item type: datetime– When both date and time are needed,
define the dialog item type as ‘datetime’– The generated UI will allow to provide the
time as well:
INTEGRATION
integration with external systems via industry standard SOAP/XML web-services
(sample) EU VAT Service integration
• VAT Information Exchange System (VIES)– Checks VAT-registration (= validity of VAT-
numbers) of companies registered in EU
Clickable link
Harmony sample
• Bla bla
For more information
• Visit– www.liquidsequence.com
• Contact us– http://www.liquidsequence.com/contact
• Follow us– www.linkedin.com/company/liquid-sequence/ – www.twitter.com/NannovanderLaan
– Documentation on how to integrate web services• Will be added later