presentazione codemotion

45
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore. MILAN november 28 th /29 th 2014

Upload: sara-leoni

Post on 09-Jul-2015

162 views

Category:

Technology


3 download

DESCRIPTION

Presentazione del nostro talk a #Codemotion. Sviluppare in #cloud con #Mean: il caso #Crowdcore

TRANSCRIPT

Page 1: Presentazione Codemotion

Sviluppare in cloud con

M.E.A.N.: il caso

Crowdcore.

MILAN november 28th/29th 2014

Page 2: Presentazione Codemotion

MILAN november 28th/29th 2014

BUSINESS CASE

Juri di Natale

Page 3: Presentazione Codemotion

LINKME

agile development

ENTER CLOUD SUITE

cloud computing

CROWDCORE

crowd economy

MILAN november 28th/29th 2014

THE “PROTAGONISTS”

Page 4: Presentazione Codemotion

MILAN november 28th/29th 2014

SOME DEFINITIONS,

BEFORE WE START

Page 5: Presentazione Codemotion

• Reward crowdfunding

• Equity crowdfunding

• Donation crowdfunding

• Pre-order crowdfunding

• Social lending

MILAN november 28th/29th 2014

CROWDFUNDING

Page 6: Presentazione Codemotion

Internet based

Access inside the enterprise

User Experience

MILAN november 28th/29th 2014

INTRANET

Page 7: Presentazione Codemotion

A framework to develop crowd

economy tools and platforms

MILAN november 28th/29th 2014

CROWDCORE =INTRANET CROWDFUNDING

Page 8: Presentazione Codemotion

MILAN november 28th/29th 2014

CROWCORE: example

Page 9: Presentazione Codemotion

A platform designed to grow, inside

the enterprise, innovative projects

based on crowdfunding and

gamification

MILAN november 28th/29th 2014

CROWDCORE for NTT DATA

Page 10: Presentazione Codemotion

MILAN november 28th/29th 2014

CROWDECONOMY

Customers are creating new business models

Page 11: Presentazione Codemotion

MILAN november 28th/29th 2014

PLATFORM

CHARACTERISTICS

• Multiplatform

• Multiproject

• Set of tools specific to different

types of crowdfunding

• Custom application

Page 12: Presentazione Codemotion

How cloud computing and M.E.A.N.

supported the development of a

framework for a crowd economy

platform

MILAN november 28th/29th 2014

BUSINESS CASE

Page 13: Presentazione Codemotion

1. Scalability

2. Agile new feature implementation

3. Component re-use

MILAN november 28th/29th 2014

THE CHALLANGE

Page 14: Presentazione Codemotion

MILAN november 28th/29th 2014

CROWDCORE

APPLICATION

Page 15: Presentazione Codemotion

MILAN november 28th/29th 2014

BACKEND

Giovanni Lela

Page 16: Presentazione Codemotion

• I/O intensive REST APIs

• Horizontal scalability

• Leverage existing javascript know-

how

• Huge community

MILAN november 28th/29th 2014

WHY

Page 17: Presentazione Codemotion

• (mostly) non relational data

• Horizontal scalability (again)

• Mongoose ODM

MILAN november 28th/29th 2014

WHY

Page 18: Presentazione Codemotion

• Unopinionated

• VERY modular

• Mature

MILAN november 28th/29th 2014

WHY

Page 19: Presentazione Codemotion

MILAN november 28th/29th 2014

6 MONTHS LATER…

Page 20: Presentazione Codemotion

• You need something to fight the

callback hell (Bluebird)

• Needs static typing

• Too many community packages

are too many

MILAN november 28th/29th 2014

nodeJS IS OK BUT…

Page 21: Presentazione Codemotion

• Mongoose Schemas are great

o Validationo Referencing other documentso Schema inheritance o Plugins

MILAN november 28th/29th 2014

mongoDB and mongoose

ARE OK BUT…

Page 22: Presentazione Codemotion

• Easy to extend

• Maybe too much unopinionated

MILAN november 28th/29th 2014

EXPRESS IS OK BUT…

Page 23: Presentazione Codemotion

• Typescript

• ES6 generators - koa

MILAN november 28th/29th 2014

WHAT HAPPENS NEXT

Page 24: Presentazione Codemotion

MILAN november 28th/29th 2014

FRONTEND

Matteo Scandolo

Page 25: Presentazione Codemotion

MILAN november 28th/29th 2014 – Speaker's name

Spread, Dependency Injection and

Directive

WHY ANGULAR

Page 26: Presentazione Codemotion

Every components is assembled with a

Directive and a Service

STANDALONE MODULES

Page 27: Presentazione Codemotion

MILAN november 28th/29th 2014 – Speaker's name

Every Module has some configuration parameters

and the possiblity to pick up a custom template

Directive

Template

MODULE CONFIGURATION

Page 28: Presentazione Codemotion

GruntJs let us build

portable environment and

tailor them to the

developer needs.

MILAN november 28th/29th 2014 – Speaker's name

DEV ENVIRONMENT

Page 29: Presentazione Codemotion

Every Module has his own repository,

that is importend in the main project

as a Git SubTree

MILAN november 28th/29th 2014 – Speaker's name

VERSION CONTROL

Page 30: Presentazione Codemotion

MILAN november 28th/29th 2014

SIX MONTHS LATER…

Page 31: Presentazione Codemotion

MILAN november 28th/29th 2014 – Speaker's name

Modules Web Components

Page 32: Presentazione Codemotion

MILAN november 28th/29th 2014 – Speaker's name

Grunt Vagrant

Page 33: Presentazione Codemotion

Subtree Private Bower Registry

Page 34: Presentazione Codemotion

MILAN november 28th/29th 2014

HOW WE DESIGNED

THE INFRASTRUCTURE

Giorgio Bonfiglio

Page 35: Presentazione Codemotion

• Cost effectiveness

• Ability to scale-up

MILAN november 28th/29th 2014

WHAT THE CUSTOMER

ASKED FOR…

Page 36: Presentazione Codemotion

• (Very) short deployment time

• Standardized processes

• Ability to clone the infrastructure

MILAN november 28th/29th 2014

…AND WHAT ABOUT

DEVELOPERS?

Page 37: Presentazione Codemotion

• Designed for the cloud

• Easier distribution of components

MILAN november 28th/29th 2014

NEW FRAMEWORKS,

BETTER POSSIBILITIES

Page 38: Presentazione Codemotion

MILAN november 28th/29th 2014

HERE IT IS

Page 39: Presentazione Codemotion

“deploy and scale in seconds

easily manageable

building blocks”

MILAN november 28th/29th 2014

IT’S ALL ABOUT AGILITY

Page 40: Presentazione Codemotion

• Easy disaster recovery, replica

and versioning: NO limits!

MILAN november 28th/29th 2014

DREAMS… AS A SERVICE

Page 41: Presentazione Codemotion

• Infrastructure awareness for the

application

• Platform APIs enable it to control

the underlying layer

MILAN november 28th/29th 2014

WHAT’S NEXT?

Page 42: Presentazione Codemotion

MILAN november 28th/29th 2014

KEY FINDINGS

Page 43: Presentazione Codemotion

• Technology supports the crowd

economy

• MEAN provides high scalability

and flexibility

• Cloud native applications do

“manage” cloud infrastructures

MILAN november 28th/29th 2014

3 LESSONS

Page 44: Presentazione Codemotion

A social lending platform is also

coming!

MILAN november 28th/29th 2014

GOOD NEWS

Page 45: Presentazione Codemotion

MILAN november 28th/29th 2014

WORK WITH US!

[email protected]

COME AND MEET US!

www.entercloudsuite.com