Harmony: what is it, how does it work, best practices. Integration features, Google DOCS and more

download Harmony: what is it, how does it work, best practices. Integration features, Google DOCS and more

of 27

  • date post

  • Category


  • view

  • download


Embed Size (px)


This Harmony presentation is for an IT (expert) audience .... We'd like to note the importance of Lightweight Technologies (particularly a presentation by Accenture (url on last slide)). This document provides an overview of Harmony features and addresses related solutions - Testimony for (automated) testing, Google DOCS integration, Pentaho BI and more. -Nikola Kasev and Nanno van der Laan presented and demonstrated Harmony and Testimony to industry leaders (including Accenture, KPMG, Deloitte).

Transcript of Harmony: what is it, how does it work, best practices. Integration features, Google DOCS and more

  • 1. Harmony & Testimony Data Driven Development and agile testing Automated regression testing, test cases are specifications, supported on Google DOCS Translating business into IT Rule driven application development - zero-coding of business logic Unique sensor-event driven technology, and one-click app generation

2. Harmony is ... an application development platform A productivity platform for configuring applications instead of coding them. Based on Google Spreadsheets; built with integration in mind Google Maps, Calendar and Docs integration, API integration (RESTful services via JSON); superb rules and business logic platform Maintain and run all business logic in one central place. Decision Tables (0 coding (!)) and rules; case management & decision support Recording all workflow steps and data for auditing of processes. Case (process) version support. For business & IT pros * * Turning spreadsheets into IT productivity 3. Why Harmony Ease-of-use minimal learning curve Intuitive, spreadsheet interface, no development skills required Feature rich solution Business logic (rules, workflows), UI structure and logic, e-mail, document & calendar templates, decision tables in spreadsheets, languages, etc; Superb performance Uses best of breed web scaling technology, processes operations in parallel, automatic process supervision for recovery from failures; Affordable 5 user run-time license starting at 40/month. Developer annual license from 5,000/year 5th generation IT* * A new way to build systems (not an 5GL (doesnt exist)) 4. Best usages Evolutionary, operational, process deployment implement version in weeks, instead of detailed analysis Change, add new steps, rules. On the fly! Wont break. Offshore/nearshore (remote IT development) Local partner designs and implements all business logic. Offshore partner could customize the UI. Agile. Scrum. Data 1st = Data Driven Development Sprints = test stories + create solution + test. Scrum = Testimony + Harmony + Google collaboration. Best tool to develop business apps on Google Other than Google Apps script, or JavaScript, Harmony guarantees secure, scalable and maintainable solutions. Evolutionary IT, learning loop. Configure. Run (and learn). Change (and optimize). change run configure 5. Business benefits +30% IT productivity increase Domain experts in the driver seat, no need to explain what has to be done, do themselves; -30% maintenance: improved IT capabilities Readable, maintainable, workflows, UI dialog flows, rules. Business definitions over developer vocabulary; Guaranteed performance (no surprises) Using the technologies that major vendors do: 99.998 up-time and split-second response times; Ultimate flexibility (change is embraced) Sensor & events facilitate changes in processes and rules, creating liquid solutions. Best price/performance* * When measured by response times, scalability/price. All numbers listed are the minimum achievable . 6. IT Features Workflow, business logic, user interface Assign workflow tasks to groups or users. Create deadlines. Define UI content and UI logic. Create validation rules; Data (files) Reference files, transaction files and case data; Merge data, templates, expressions Email, Docs, Calendar templates for Google DOCS Business Intelligence Real-time BI supported through Pentaho Automated test recording & execution Use UI to record the test scenario, save & publish to a test spreadsheet. Start automated testing. The open IT platform Open Source = developers. Open IT = business. 7. Tech-talk (1/2) Publish and subscribe in the browser, OpenAjax Hub 2.0 (Google, Microsoft, TIBCO) Context-aware web-parts, simplifies UI interaction logic and integration with APIs; Bootstrap front-end framework (Twitter) Responsive, single-page, mobile first UI; Erlang (Ericsson, WhatsApp) Best fit to solve the parallel (lock-free and in- memory) processing problem, its a supervised distributed system; Java Tiny piece of it for database access and integration with SOAP web-services; What has Harmony under the hood? 8. Tech-talk (2/2) Rules engine implementation of an enhanced RETE algorithm (parallel execution); In-memory key-value store used for case data An in-memory triple store - used for relationship kernel; All three distributed across a network of machines built to break, supervision tree; RESTful API used for UI, adapters and Testimony What has Harmony under the hood? 9. Best practice: rule driven IT Decision Tables (DT) in spreadsheets DTs are a precise, compact and easy format for complicated logic. No code: simply copy/paste; Business rules, and logic minimal learning As easy as Sales Value greater than 100,000? Approve Order required by manager One set of rules, centralized execution Business compliance: one platform controls the firing of actions (instead of individual apps), single source of truth for data; Real time decision support (DS) DS shows what will happen next in a process, what will be calculated, what will be sent and stored as data. The #1 RULES platform* * When measured by ease-of-use, features, performance, price 10. Rule driven uses Decision Tables Readable outcomes (business logic) Without knowing the context, any business professional understands the outcomes of these rules. 11. (sample of) Zero coding Define / import 3 Decision Tables Each of these tables provide an outcome Define the dialog (user interface) Ensure that field names, like the applicant age and sex, match those defined in the decision tables Upon entering data age & sex, amount, Harmony automatically produces outcomes The final decision [table] will Produce THE outcome when all three values exist (match the outcomes of the 3 DTs with the inputs) Zero coding required! 10 minutes, no coding whatsoever is needed! 12. Explaining sensors A sensor detects and responds to input The previous sample (see also on the left) has four decision tables Harmony DTs are sensor sensitive Meaning , these will produce an outcome when inputs exists User enters data (manual data entry) Will produce an outcome for entered data Generated data Data only has to exist and the sensor will fire, producing an outcome which is the case with the green DT its inputs are outputs from other DTs 13. Define business logic Workflow and business logic One condition fires two next steps, sends an email, sets a deadline and updates two values; Using the spreadsheet format The Rules.sheet prompts users with available options. Do It Yourself IT one condition 14. Create the User Interface [content] The specification; the result (done in minutes) 15. A complete solution: Harmony + _______ Testimony = specification + testing Open platform for agile testing Google = DOCS and apps Documents, GMail, Maps, Calenda, Spreadsheets Pentaho = Business Intelligence Agile, open, BI in the cloud Lucidchart = flowcharting Great collaborative graphical modeling IBM AS/400 integration Web services and event sensors for the AS/400, headless RPG. 16. Agile (TDD) and automated testing Decision Table testing Decision Modeling Notation is an OMG beta spec; Recording and automated playback Record using Harmony. Playback, unattended, automated; Agile development and testing Create test stories and test cases, include in sprints. Automatically test previous and new cases; Great collaboration Using the same Google Spreadsheets concept. The Open Testing solution* * Testimony relies on Google DOCS (spreadsheets) 17. Business Intelligence Easy to configure dashboards Information from Harmony is provided in great looking dashboards: Open source BI 18. Google for your business process Document generation Create s, merge and share documents with data from your business process; Calendar Push calendar entries to your Google Calendar (outstanding Harmony tasks or other events); Maps Show locations on Google Maps, lookup locations and enrich the case data; Gmail Generate emails from the business process; Spreadsheets Push the right data at the right time to a spreadsheet. Calendar, Maps, Docs, Gmail, Spreadsheets* 19. 5 steps to achieve successful results 1. Model the 1st cut of your business process Limit this to a process view, do not detail logic; 2. Generate the Harmony configuration Replace decisions [diamond symbol] with decision tables. Add dialogs (UI) and data; 3. Use (or create) test stories: add test cases Use Testimony to create tests cases; 4. Generate the Harmony application Verify against flowchart and test cases. Modify and re- generate if necessary; 5. Start automatic testing with Testimony Check outcomes with expectations. Run steps 3 and 4. Collaborative modeling* * The 1st step for successful results 20. For developers: Harmony & other languages PHP Harmony is a framework providing powerful client side operations not found in PHP and Symfony and Zend framework; Java Harmony adds business rules without coding and defining relations without modeling to the worlds most widely used programming language Polyglot development * * Using multiple languages to deliver the end result 21. Intro to Harmony for Java developers / 1 In a typical Java environment we find: 1. an application server like tomcat 2. application logic, built in Spring, EJB and maybe POJOs* 3. a data layer in Hibernate 4. UI* in Wicket, JSP, JSF, angularjs, etc. In Harmony all this is stored in spreadsheet; Building any application requires attention about the database structure: 1. time consuming, 2. doesnt handle changes easily, 3. doesnt perform with lots of data In Harmony, data is stored in a high performance in-memory STM* component; POJO - Plain Old Java Object UI - User Interface STM - Software Transactional Memory 22. Intro to Harmony for Java developers / 2 Application logic like business rules, workflow and data validations will require Java code (and most probably SQL code) In Harmo