how do you eat an elephant

25
1 How do you eat an elephant? - Creating architectures supporting deferred decisioning

Upload: jesper-faergemann

Post on 13-Jan-2017

188 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: How do you eat an elephant

1

How do you eat an elephant?- Creating architectures supporting deferred decisioning

Page 2: How do you eat an elephant

so....

Page 3: How do you eat an elephant

How do you eat an Elephant?

Page 4: How do you eat an elephant

piece by piece!

Page 5: How do you eat an elephant

How do you look at a software architecture?

Page 6: How do you eat an elephant

piece by piece!

Page 7: How do you eat an elephant

How do you design a software architecture?

Page 8: How do you eat an elephant

piece by piece!

Page 9: How do you eat an elephant

Deferring design decisions

Page 10: How do you eat an elephant

Innovation and speed

Page 11: How do you eat an elephant

Two casesPower management on a farm

Handling of Meter data

Page 12: How do you eat an elephant

Metrologicaldata

Continuous10 sec pulsecollection

FarmPowerManagement

Powerlines

Power management on a farm

Equipmentpower monitoring and control

Page 13: How do you eat an elephant

ETL process

Periodicexports

Nightlydatacollection

Periodicdatacollection

Internalbusinesssystems

Powerlinecommunication

ZigBee

Current handling of Meter data

Page 14: How do you eat an elephant

Case goalsA way to handle growing data volumes Faster ETL and in a streaming manner

Easier handling of alarms

On the fly data aggregation

Lightweight way to integrate new options

Page 15: How do you eat an elephant

Choosing Akka.Net

Page 16: How do you eat an elephant

ETL

Periodicexports

Nightlydatacollection

Periodicdatacollection

Internalbusinesssystems

Powerlinecommunication

ZigBee

Goal architecture for handling Meter data

Akka nodeImport Service

Akka nodeREST API

Akka nodeCore Cluster

Akka nodeREST APIETL

Realtime incoming dataand push alarms

Page 17: How do you eat an elephant

Choosen TechnologiesAkka.Net

SQL Server and a nosql-ish data model

TopShelf for “micro Windows services”

NancyFx for REST services

OWIN for “hosting”

Page 18: How do you eat an elephant

Technology deferred decisioningAkka.Net can scale with our needs

Database can be migrated if needed

Hosting where needed

Page 19: How do you eat an elephant

How do you create a architecture that support

deferred decisioning?

Page 20: How do you eat an elephant

piece by piece!

Page 21: How do you eat an elephant

In shortChange a “single” technology at a time, and for the rest stick with the good old stuff to reduce risk

Page 22: How do you eat an elephant

In shortChoose designs and technologies that allows us to revert and grow

Page 23: How do you eat an elephant

In shortChoose a data model that can coexist with the old

Page 24: How do you eat an elephant

In shortKeep focus on the business goals, keep innovating piece by piece, keep the speed up and have fun

Page 25: How do you eat an elephant

How do eat an Elephant?

Jesper FærgemannLead Software Architect

[email protected] +45 41 95 36 51