Upload
codemotion
View
141
Download
1
Tags:
Embed Size (px)
Citation preview
Sviluppare in cloud con M.E.A.N.: il caso Crowdcore.
MILAN november 28th/29th 2014
MILAN november 28th/29th 2014
BUSINESS CASE Juri di Natale
LINKME à agile development ENTER CLOUD SUITE à cloud computing CROWDCORE à crowd economy
MILAN november 28th/29th 2014
THE “PROTAGONISTS”
MILAN november 28th/29th 2014
SOME DEFINITIONS, BEFORE WE START
• MongoDB • ExpressJS • AngularJS • NodeJS
MILAN november 28th/29th 2014
WHAT IS M.E.A.N.
• Reward crowdfunding • Equity crowdfunding • Donation crowdfunding • Pre-order crowdfunding • Social lending
MILAN november 28th/29th 2014
CROWDFUNDING
A framework to develop crowd economy tools and platforms
MILAN november 28th/29th 2014
CROWDCORE
MILAN november 28th/29th 2014
CROWDCORE: example
A platform designed to grow, inside the enterprise, innovative projects based on crowdfunding and gamification
MILAN november 28th/29th 2014
CROWDCORE for NTT DATA
MILAN november 28th/29th 2014
CROWDECONOMY
Customers are creating new business models
MILAN november 28th/29th 2014
PLATFORM CHARACTERISTICS • Multiplatform • Multiproject • Set of tools specific to different
types of crowdfunding • Custom application
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
1. Scalability 2. Agile new feature implementation 3. Component re-use
MILAN november 28th/29th 2014
THE CHALLANGE
MILAN november 28th/29th 2014
CROWDCORE APPLICATION
MILAN november 28th/29th 2014
BACKEND Giovanni Lela
• I/O intensive REST APIs • Horizontal scalability • Leverage existing javascript know-
how • Huge community
MILAN november 28th/29th 2014
WHY
• (mostly) non relational data • Horizontal scalability (again) • Mongoose ODM
MILAN november 28th/29th 2014
WHY
• Unopinionated • VERY modular • Mature
MILAN november 28th/29th 2014
WHY
MILAN november 28th/29th 2014
6 MONTHS LATER…
• 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…
• Mongoose Schemas are great o Valida&on o Referencing other documents o Schema inheritance o Plugins
MILAN november 28th/29th 2014
mongoDB and mongoose ARE OK BUT…
• Easy to extend • Maybe too much unopinionated
MILAN november 28th/29th 2014
EXPRESS IS OK BUT…
• Typescript • ES6 generators - koa
MILAN november 28th/29th 2014
WHAT HAPPENS NEXT
MILAN november 28th/29th 2014
FRONTEND Matteo Scandolo
MILAN november 28th/29th 2014 – Speaker's name
Spread, Dependency Injection and Directive
WHY ANGULAR
Every components is assembled with a Directive and a Service
STANDALONE MODULES
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
GruntJs let us build portable environment and tailor them to the developer needs.
MILAN november 28th/29th 2014 – Speaker's name
DEV ENVIRONMENT
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
MILAN november 28th/29th 2014
SIX MONTHS LATER…
MILAN november 28th/29th 2014 – Speaker's name
Modules à Web Components
MILAN november 28th/29th 2014 – Speaker's name
Grunt à Vagrant
Subtree à Private Bower Registry
MILAN november 28th/29th 2014
Q&A
MILAN november 28th/29th 2014
HOW WE DESIGNED THE INFRASTRUCTURE Giorgio Bonfiglio
• Cost effectiveness • Ability to scale-up
MILAN november 28th/29th 2014
WHAT THE CUSTOMER ASKED FOR…
• (Very) short deployment time • Standardized processes • Ability to clone the infrastructure
MILAN november 28th/29th 2014
…AND WHAT ABOUT DEVELOPERS?
• Designed for the cloud • Easier distribution of components
MILAN november 28th/29th 2014
NEW FRAMEWORKS, BETTER POSSIBILITIES
MILAN november 28th/29th 2014
HERE IT IS
“deploy and scale in seconds easily manageable building blocks”
MILAN november 28th/29th 2014
IT’S ALL ABOUT AGILITY
• Easy disaster recovery, replica and versioning: NO limits!
MILAN november 28th/29th 2014
DREAMS… AS A SERVICE
• Infrastructure awareness for the application
• Platform APIs enable it to control the underlying layer
MILAN november 28th/29th 2014
WHAT’S NEXT?
MILAN november 28th/29th 2014
Q&A
MILAN november 28th/29th 2014
KEY FINDINGS
• 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
A social lending platform is also coming!
MILAN november 28th/29th 2014
GOOD NEWS
MILAN november 28th/29th 2014
WORK WITH US! [email protected] COME AND MEET US! www.entercloudsuite.com