… font naitre des applications robustes …
Quand des idées et la collaboration créative …
…en quelques heures
Besoins nouveaux d’Applications
Web/Tablette/Smartphone
interopérables SI / Cloud privé / public
Création collaborative
Utilisateur/Métier/IT
Produire simple, rapide, agile
Platform As A Service
Applications Web Html5
• Réversibilité OnPremise / Cloud
• Sécurité, Identité, Data Access, API
• Full Ajax
• Applications Mobile avec Cordova
• Approche DevOps
Back End Applications mobiles
• Sécurité, Identité, Data
• Paiement, Administration, API REST
• Mobile natif (Android, iPhone, iPad,
Windows 8, Windows Phone…)
Partage de ressources (Data / UI / Services) avec des
extensions et des Applications partagées
Pas de cahier des charges
Cycles de développement courts
Drivés par l’expérience utilisateur
Valeur par l’usage
Applications 100 % custom
95 % du code déjà écrit
Baisse du besoin d’expertise technique
Coûts de développement divisés / 5-10
Coûts de maintenance divisés / 10-20
Travail fluide Client Final/MOA/MOE
Photolake
Objectifs du Meetup
• Présenter rapidement l’approche
• Pourquoi
• Pour qui
• Comment
• Outils
• Démo
• Feedback
Pourquoi
Développer c’est faire circuler
l’information entre les machines et les
hommes
Pourquoi
• Le rôle du développeur
o Découvrir et comprendre le besoin métier
o Imaginer une solution informatique
 Expérience utilisateur
 Données
 Traitements
o Coder la partie subtile
Pourquoi
• Le rôle de l’environnement et de l’outillage
o C’est d’automatiser les aspects
 Bêtes et méchants
 Répétitifs
 Prévisibles
 Qui ont un best practice connue
Pour qui
• Un développeur
o Qui développe sans cahier des charges en
collaboration directe avec son client
o Qui est motivé par la conception et UX
o Qui est motivé par la vitesse de développement
o DRY : qui n’aime pas se répéter
Pour qui
• Un développeur
o Full-stack (client / serveur / données / IHM)
o Qui connait la syntaxe des langages C# et Javascript
o Qui connait les notions d’HTML et de CSS
o Qui travail avec Visual Studio
Pour qui
• Un développeur
o Qui développe des produits sophistiqués
 front office, back office,
 distribués, multi-langue, multi-tenant,
 déconnecté, sécurisés, scalable,
 avec un API (HTTP, REST)
 BackEnd pour des applications mobiles
dans Azure
 IoT, Objets Connectés
Architecture
• Serveur IIS ou Azure
• HttpHandler d’ASP.net
• Serveur sans état « stateless »
• Client avec état « stateful »
• Etat géré automatiquement dans le client
• Application SPA 100 % sur mesure (UI et Data)
• HTML produit dans le client
• Le serveur ne renvoie que des données
• Echanges Client/Serveur de données relationnelles
Comment
• Séparation à 100 % entre :
• le code technique (déjà écrit)
• le code métier (à écrire)
• des extensions (à écrire)
• Un modèle de binding déclaratif qui intègre
automatiquement les extensions (Services et
Contrôles) métier
Comment
Séparation totale
Vue - Data
Vue - Services Liens dynamiques
configurés
Lecture Data
Paiement
Ecriture Data
PubNub
Comment (outils)
• Deux DSL intégrés à Visual Studio
• Un DSL graphique pour décrire les données
• Entités, Relations, Enums, DataBaseEnum
• Un DSL textuel (6 verbes) pour décrire les bindings
• Data Binding (Simple, List, Grille, Arbre)
• Command Binding (Appels automatiques des services client et
serveur avec paramètres bindés)
• Layout Binding (Composition dynamique et déclarative des vues)
Comment (services)
• Accès aux données 100 % automatique
• Relationnelles : SQL
• Azure Storage (Tables, Blobs, Queue…) : NoSQL
• Sécurité (Authentification, Autorisation)
• Exceptions, Trace, Log, Cache client et serveur
• Gestion d’état et change tracking côté client
• Manipulation de vues
• Validations, conversions, formatage, traductions…
Comment (exploitation)
• Portail DevOps Aspectize.com permet
• La gestion des applications
• Versions
• Déploiement
• Configurations
• Monitoring
• La gestion des hosts logiques dans Azure
Comment
• Cycle de développement : 1-2 heures
• Concevoir un bout de modèle logique
• Imaginer l’interface utilisateur (HTML, CSS)
• Ecrire le minimum de code nécessaire : Javascript et C#
• Configurer les bindings
• Tester
• Déployer dans Azure
• Montrer
• Retirer de la satisfaction
Démonstration
Business Model
50 €
app / host / month
100 €
app / host / month
OnPremise
Formations – Support - Projets
Hosting – Market place
Merci
aspectize.com
@aspectize
facebook.com/aspectize
meetup.com/fr-FR/Aspectize-Paris-Meetup/

Aspectize meetup

  • 1.
    … font naitredes applications robustes … Quand des idées et la collaboration créative … …en quelques heures
  • 2.
    Besoins nouveaux d’Applications Web/Tablette/Smartphone interopérablesSI / Cloud privé / public Création collaborative Utilisateur/Métier/IT Produire simple, rapide, agile
  • 3.
    Platform As AService Applications Web Html5 • Réversibilité OnPremise / Cloud • Sécurité, Identité, Data Access, API • Full Ajax • Applications Mobile avec Cordova • Approche DevOps Back End Applications mobiles • Sécurité, Identité, Data • Paiement, Administration, API REST • Mobile natif (Android, iPhone, iPad, Windows 8, Windows Phone…) Partage de ressources (Data / UI / Services) avec des extensions et des Applications partagées
  • 4.
    Pas de cahierdes charges Cycles de développement courts Drivés par l’expérience utilisateur Valeur par l’usage
  • 5.
    Applications 100 %custom 95 % du code déjà écrit Baisse du besoin d’expertise technique Coûts de développement divisés / 5-10 Coûts de maintenance divisés / 10-20 Travail fluide Client Final/MOA/MOE
  • 6.
  • 7.
    Objectifs du Meetup •Présenter rapidement l’approche • Pourquoi • Pour qui • Comment • Outils • Démo • Feedback
  • 8.
    Pourquoi Développer c’est fairecirculer l’information entre les machines et les hommes
  • 9.
    Pourquoi • Le rôledu développeur o Découvrir et comprendre le besoin métier o Imaginer une solution informatique  Expérience utilisateur  Données  Traitements o Coder la partie subtile
  • 10.
    Pourquoi • Le rôlede l’environnement et de l’outillage o C’est d’automatiser les aspects  Bêtes et méchants  Répétitifs  Prévisibles  Qui ont un best practice connue
  • 11.
    Pour qui • Undéveloppeur o Qui développe sans cahier des charges en collaboration directe avec son client o Qui est motivé par la conception et UX o Qui est motivé par la vitesse de développement o DRY : qui n’aime pas se répéter
  • 12.
    Pour qui • Undéveloppeur o Full-stack (client / serveur / données / IHM) o Qui connait la syntaxe des langages C# et Javascript o Qui connait les notions d’HTML et de CSS o Qui travail avec Visual Studio
  • 13.
    Pour qui • Undéveloppeur o Qui développe des produits sophistiqués  front office, back office,  distribués, multi-langue, multi-tenant,  déconnecté, sécurisés, scalable,  avec un API (HTTP, REST)  BackEnd pour des applications mobiles dans Azure  IoT, Objets Connectés
  • 14.
    Architecture • Serveur IISou Azure • HttpHandler d’ASP.net • Serveur sans état « stateless » • Client avec état « stateful » • Etat géré automatiquement dans le client • Application SPA 100 % sur mesure (UI et Data) • HTML produit dans le client • Le serveur ne renvoie que des données • Echanges Client/Serveur de données relationnelles
  • 15.
    Comment • Séparation à100 % entre : • le code technique (déjà écrit) • le code métier (à écrire) • des extensions (à écrire) • Un modèle de binding déclaratif qui intègre automatiquement les extensions (Services et Contrôles) métier
  • 16.
    Comment Séparation totale Vue -Data Vue - Services Liens dynamiques configurés Lecture Data Paiement Ecriture Data PubNub
  • 17.
    Comment (outils) • DeuxDSL intégrés à Visual Studio • Un DSL graphique pour décrire les données • Entités, Relations, Enums, DataBaseEnum • Un DSL textuel (6 verbes) pour décrire les bindings • Data Binding (Simple, List, Grille, Arbre) • Command Binding (Appels automatiques des services client et serveur avec paramètres bindés) • Layout Binding (Composition dynamique et déclarative des vues)
  • 18.
    Comment (services) • Accèsaux données 100 % automatique • Relationnelles : SQL • Azure Storage (Tables, Blobs, Queue…) : NoSQL • Sécurité (Authentification, Autorisation) • Exceptions, Trace, Log, Cache client et serveur • Gestion d’état et change tracking côté client • Manipulation de vues • Validations, conversions, formatage, traductions…
  • 19.
    Comment (exploitation) • PortailDevOps Aspectize.com permet • La gestion des applications • Versions • Déploiement • Configurations • Monitoring • La gestion des hosts logiques dans Azure
  • 20.
    Comment • Cycle dedéveloppement : 1-2 heures • Concevoir un bout de modèle logique • Imaginer l’interface utilisateur (HTML, CSS) • Ecrire le minimum de code nécessaire : Javascript et C# • Configurer les bindings • Tester • Déployer dans Azure • Montrer • Retirer de la satisfaction
  • 21.
  • 22.
    Business Model 50 € app/ host / month 100 € app / host / month OnPremise Formations – Support - Projets Hosting – Market place
  • 23.