Transcript
Page 1: From Specs To App 10X Faster Using Reactive Programming

Espresso Logic

From Specs To App

10X Faster Using Reactive Programming

Page 2: From Specs To App 10X Faster Using Reactive Programming

Agenda

• Current situation

• Company overview

• Reactive programming & declarative development

• Turning requirements into rules

• Extending rules and events

• Q & A

Page 3: From Specs To App 10X Faster Using Reactive Programming

Current Situation

BusinessApplication

Requirements

ApplicationRunning in Production

Page 4: From Specs To App 10X Faster Using Reactive Programming

With Reactive Programming

BusinessApplication

Requirements

ApplicationRunning in Production

balance < credit_limit

balance = sum (unpaid orders.amount_total)

amount_total = sum (lineitem amount)

amount = product_price * qty_ordered

product_price = copy(product.price)

Page 5: From Specs To App 10X Faster Using Reactive Programming

Company Background

Page 6: From Specs To App 10X Faster Using Reactive Programming

Espresso Logic

Page 7: From Specs To App 10X Faster Using Reactive Programming

Declarative Development

• More productive – closer to the business

• Move away from converting requirements into code

Page 8: From Specs To App 10X Faster Using Reactive Programming

Declarative Reactive Programming

subscribe()

handleEvent()

Declare ExpressionWatch

React

Observer

JavaRX

Spreadsheet

Angular

Espresso

Page 9: From Specs To App 10X Faster Using Reactive Programming

Espresso Business Rules

• Rules applied to business entities and attributes

– Derivations

– Validations

– Events - extensibility

Page 10: From Specs To App 10X Faster Using Reactive Programming

Rules Improve Application Quality

Aligning IT and the business

• Guaranteed Re-use

• Validate requirements

• Business users can read and understand rules

• Rules bridge users and IT

Page 11: From Specs To App 10X Faster Using Reactive Programming

Validation

Page 12: From Specs To App 10X Faster Using Reactive Programming

Derivation – Sum

Page 13: From Specs To App 10X Faster Using Reactive Programming

Derivation – Formula (JavaScript)

Page 14: From Specs To App 10X Faster Using Reactive Programming

Event - JavaScript

Page 15: From Specs To App 10X Faster Using Reactive Programming

Solves these Use Cases…

Add Order Delete Order Add Detail Delete Detail Change Detail Qty Reselect Product ….

Balance < CreditLimitBalance = sum (Orders.AmountTotal)AmountTotal = sum (Lineitem Amount)Amount = UnitPrice * QuantityUnitPrice = copy(UnitPrice)1

1

2

2

3

3

4

4

10X Faster? Seriously.

Page 16: From Specs To App 10X Faster Using Reactive Programming

Espresso Metrics

•Rules cover 95+% of complex business cases

•40X expressive power Approach Metrics

Java 480

Triggers 220

Logic 5

Page 17: From Specs To App 10X Faster Using Reactive Programming

Rules + JavaScript Events for the last 5%

Page 18: From Specs To App 10X Faster Using Reactive Programming

Business Agility – Maintenance is Key

• Avoid the archaeology of maintenance

• Just change rules

– Re-ordered

– Re-optimized

Page 19: From Specs To App 10X Faster Using Reactive Programming

Challenges to Address

Complexity

• Performance

– Single row adjustments

– Pruning

• Transparency

– Rule logging / trace

– Debugger

Page 20: From Specs To App 10X Faster Using Reactive Programming

Demo

Page 21: From Specs To App 10X Faster Using Reactive Programming

Summary

• With Espresso reactive programming you can

– Reduce Time to Market

– Accelerate maintenance

– Improve application quality

Page 22: From Specs To App 10X Faster Using Reactive Programming

Next Step

PROOF

Work with Espresso to arrange a

charge proof-of-concept

with your data

No charge

Page 23: From Specs To App 10X Faster Using Reactive Programming

Q & A

Business: [email protected]: [email protected]

[email protected]

www.espressologic.com844-463-7773


Recommended