Journée d information Mode de diffusion SaaS Nicolas JOURDAN Mardi 11 février 2014
Plan Introduction Définitions Le développement et les impacts sur la PI Stratégie d exploitation de logiciels Typologie des modes d exploitation Conclusion 2
INTRODUCTION 3
Objectifs Introduction sur ce mode de diffusion : ü Définition de ce type de distribution et impact technique ü Aspects juridiques et impact sur l utilisation de licences libres - 4
Diffusion? Code de la recherche L411-1 LIVRE IV : LES PERSONNELS DE LA RECHERCHE TITRE Ier : DISPOSITIONS GÉNÉRALES Chapitre Ier : Missions et garanties fondamentales. Les personnels de la recherche concourent à une mission d'intérêt national. Cette mission comprend : a) Le développement des connaissances ; b) Leur transfert et leur application dans les entreprises, et dans tous les domaines contribuant au progrès de la société ; c) La diffusion de l'information et de la culture scientifique et technique dans toute la population, et notamment parmi les jeunes ; d) La participation à la formation initiale et à la formation continue ; e) L'administration de la recherche ; f) L'expertise scientifique. - 5
Chaine d édition logiciel de recherche chercheur ingénieur partenaires Internet Satt établissements instituts - 6
SaaS : chaîne d édition particulière? Spécificité du logiciel : auteurs et ayant-droits multiples, indivision. - 7
Dans le cycle de formation PI Logicielle Introduction générale au logiciel Le développement logiciel L exploitation des logiciels Les licences d exploitation et leur compatibilité Le design de politique PI de développement logiciel à composants Méthodologie d analyse outillée de la PI des logiciels à composants et développés en collaboration Le design des contrats de licence pour les logiciels La négociation des contrats de transfert de logiciel Brevets, logiciels et standardisation
DÉFINITIONS 9
Définition : Logiciel Académie française : INFORM. Ensemble structuré de programmes remplissant une fonction déterminée, permettant l'accomplissement d'une tâche donnée. Etymologie : Dérivé de logique (1972, avec le suffice -iel, par opposition au matériel). Journal Officiel (du 17/01/1982, page 50625) : Logiciel (n. m.) : Ensemble des programmes, procédés et règles, et éventuellement de la documentation, relatifs au fonctionnement d'un ensemble de traitement de données (en anglais : software). Matériel (n. m.) : Ensemble des éléments physiques employés pour le traitement de données (en anglais : hardware). - 10
Définition : Service Wikipedia En économie : un service est la fourniture d'un bien immatériel, avantage ou satisfaction d'un besoin, fourni par un prestataire (entreprise ou l'état) au public, à titre gratuit ou onéreux (transport, recherche, travail ménager, consultation médicale...) En informatique : un service est une fonctionnalité ou partie de fonctionnalité 'offerte' (ie mise à disposition) exposé par un composant logiciel pour assurer une tâche particulière. Elle se présente sous forme de 'boite noire', présentant uniquement son interface logicielle: nom du service, des fonctions qu'il inclut avec les variables d'entrée requises et sorties produites, et d'éventuelles données complémentaires informatives sur le service : on parle alors d'architecture orientée services (ou SOA). - 11
SaaS d hier (A. Strowger,1891) - 12
et SaaS d aujourd hui (Google/Apple, photos 2012) - 13
Définition : Software as a Service Wikipedia : Le logiciel en tant que service ou Software as a Service (SaaS) est un modèle d'exploitation commerciale des logiciels dans lequel ceux-ci sont installés sur des serveurs distants plutôt que sur la machine de l'utilisateur. Les clients ne paient pas de licence d'utilisation pour une version *, mais utilisent généralement gratuitement le service en ligne ou payent un abonnement récurrent. NIST : Le cloud computing est l accès via un réseau de télécommunications, à la demande et en libre-service, à des ressources informatiques partagées configurables. - 14
Exploitation L'exploitation se traduit par le cycle suivant : Le mot est à prendre dans le sens d activité / impact de l activité. Il se différencie de l aspect lucratif. Transform ation des matières par la main-d'œuvre avec des équipements sur un site industriel Achat de matières premières Stockage de produits finis Valorisation des produits finis. (Operations) - 15
Exploitation des logiciels Diversité des applications, complexité des situations : industrie de la connaissance Logiciels données Compétences, infra structures Valorisation de solutions Recherche Ingénierie, savoir-faire Conseil Applications - 16
Exploitation industrielle ou académique La création d un nouvel outil qui améliore les conditions de travail des personnels et la condition des utilisateurs ; qui améliore un processus de production de l'entreprise. L'exploitation nécessite le développement d outils spécifiques permettant la production des produits qui seront valorisés. - 17
Exploitation commerciale Qui relève du commerce Qui a un but lucratif - 18
Définition : Logiciel libre FSF, les 4 libertés : 0. liberté d'exécuter, pour tous les usages ; 1. liberté d'étudier le fonctionnement et de l'adapter à ses besoins ; 2. liberté de redistribuer des copies (de donner ou vendre) ; 3. liberté d'améliorer et de distribuer ces améliorations au public, pour en faire profiter toute la communauté. Irrévocable, sans avoir à prévenir un tiers, redistribution sous toute forme, fusion - 19
LE DÉVELOPPEMENT ET SES IMPACTS DANS LA PI 20
Évolutions de l informatique Matériel moins hétérogène ü ~ 1960 1980 : Le constructeur vend son matériel, son compilateur associé et offre un ingénieur ü ~ 1980 2000 : 2 processeurs x86 et PPC ü ~ 2000 : x86 (ARM pour les mobiles) Langage plus portable ü fortran > C > Java (jvm) > Python > XML+ Coûts calcul, télécom et stockage fortement diminué ü Loi de Moore ü coûts plus importants dans le développement En conséquence de plus en plus de code partagé - 21
Composants d un logiciel ü Code source ü Données / Modèle de données ü API / Documentation ü Tests ü Packaging / Déploiement Avantages du SaaS
Rappel sur les librairies Exécutable : implique la création d un processus par le système Librairie : regroupement de fonctions, pouvant être chargées en mémoire par un exécutable si besoin ü Statique / Dynamique NB: L appel système est la limite de portée d une licence GPL Quid des services web / appel réseau?
Dépendances / Couplage Un couplage faible est souvent préférable ü logiciel bien conçu et structuré ü gain lisibilité et maintenabilité En pratique, les premiers développements, comme les preuves de concepts, sont fortement couplés pour explorer rapidement des solutions ü Souvent un facteur d instabilité et de difficulté de maintenance dans un code académique
Echelle de maturité d un logiciel académique # Fichiers Utilisateurs Portée Commentaire 0 test.c Créateur Bureau Pas de référencement, ni de makefile (ou pas portable), ni de licence, ni de documentation. Fonctionne uniquement dans l environnement de l utilisateur (son PC) 1 test.c Makefile Collègues Couloir mail author < bob_test.c 2 test.c README AUTHORS LICENCE BIBTEX Communauté Liste de diffusion Hébergement sur une forge ou dans un gestionnaire de version - Publication article associé - Dépôt APP 3 Package SaaS Tous Abonnés Internet Bug tracker sollicité Gérer les contributions et les patch
SaaS, PaaS, IaaS et Cloud - 26
Les challenges - 27
Responsabilité et modèle de diffusion - 28
Diffusion SaaS Toujours un contrat de licence et/ou indivision (mais plus simple) Condition Générale d Utilisation Convention de service (Service Level Agreement) In et Out Logiciel et matériel - 29
STRATÉGIE D EXPLOITATION DE LOGICIELS 30
Stratégie d exploitation de logiciels Qualification Construction dynamique Une stratégie d exploitation se base sur une très bonne compréhension de l offre technologique, des acteurs, des marchés, des concurrents Mieux vaut dès le départ avoir : -une connaissance réciproque des partenaires, de leur contexte et de leurs travaux (le chercheur et l'industriel); - bonne compréhension de l'état de l'art et de la réalité du marché; -améliorer la compréhension entre les chercheurs et industriels; -évaluer le coût, la valeur, avec des approches multiples; -évaluer le savoir-faire lié au transfert lui-même; -gérer efficacement le projet (continuité des équipes de recherche). se construit dynamiquement en capitalisant de nombreux échanges et discussions/ négociations. Il existe de multiples causes de désaccords lors des discussions. La plupart d'entre eux peuvent être évités grâce à une meilleure compréhension des partenaires ou en adoptant la même échelle de temps. SaaS = méthode agile de distribution
Méthode Agile : les valeurs ü Les individus et leurs interactions plus que les processus et les outils. ü Des logiciels opérationnels plus qu une documentation exhaustive. ü La collaboration avec les clients plus que la négociation contractuelle. ü L adaptation au changement plus que le suivi d un plan.
Exploitation = une des sorties pour une technologie issue de la recherche Différents scénarii d'exploitation possibles. Ø Exploitation est une des sorties pour une technologie issue de la recherche. Il existe différents scénarios d'exploitation possibles. Transfert direct technologie provenant de la recherche à un stade de maturité donné transfert vers une société pour l'exploitation sur le marché. Partenariat recherche partenariale étape de maturation pour l'exploitation sur le marché. Création d entreprise une technologie provenant de la recherche pour l'exploitation sur le marché.
Première étape : description claire du logiciel Une description claire du logiciel : Ø décrire sa technologie, Ø Identifier les applications pour lesquelles le logiciel apporte une solution, Ø décrire les assurances/garanties de la traçabilité de ses œuvres, Ø estimer les différentes étapes, Ø positionner sa technologie/logiciel par rapport aux solutions existantes sur le marché. ü instaurer la confiance = valeur ajoutée dans le montage sans engagement contractuel - 34
Deuxième étape : évaluation qualitative / appréciation. Ø Identifier toutes les applications potentielles du logiciel. Ø Qualifier les nécessaires stades de développements et options stratégiques de valorisation. - 35
3 régimes généralement rencontrés Contrat de licence: tout est clair. Le titulaire des droits sait exactement ce qu'il reçoit, et le propriétaire sait ce que le titulaire veut faire. Option de licence: le bénéficiaire veut tester la technologie dans son contexte particulier avant qu'il l exploite. Partenariat temporaire pendant une phase de maturation donnant accès à la technologie. - 36
Modèle économique Economie : l étude de comment une société choisit d utiliser des ressources limitées pour produire, échanger et consommer des biens et services. Ruffin, Gregory, Principles of Economics, 1990 Sans rareté de ressources, pas d économie. - 37
Logiciel propriétaire : logique d offres Se fonde sur la rareté du logiciel et gisement unique. Modèle centré sur les licences. - 38
Logiciel libre : logique de demandes Supprime la rareté des copies. Modèle centré sur les services. - 39
Logiciel mixte Ø Licences différentes pour clients différents. Ø Versions et licences différentes: séparation temporelle. Ø Licences différentes: séparation spatiale. modules IPRP et IPRA. - 40
Modèle hybride : premium On sépare la base de code en plusieurs parties: Noyau libre (Open Core) fonctionnalités de base attirer des utilisateurs et contributeurs Modules propriétaires indispensables à un usage professionnel engendrer des revenus modules IPRP et IPRA. - 41
Modèle de la chaine de production Le logiciel est vu comme un objet fermé. 42
Pourquoi toutes ces licences? Schéma de Contrat de Licence Utilisateur Final (CLUF) = EULA, End User License Agreement - 43
Réutilisation de composants ou codes préexistants Oui Réutilisation de composants dans la version exploitée Non Pas de risque (?) Risque qualifié : Composant ou code réutilisé pendant le prototypage et éliminé en cas d exploitation Risque qualifié Risque non qualifié : problèmes possibles d incompatibilité, problèmes si redistribution Oui modules licences et compatibilité IPRP et IPRA. Non Processus de qualification technique, juridique des composants exogènes ou de code réutilisé - 44
Typologie des modes d exploitation 1- Choix de licences pour : logiciel développé ex-nihilo logiciel avec des composants permissifs en composition conférant LE + LD Warning Ø La distribution sous un régime permissif en composition (LGPL ou BSD / CeCILL C ou CeCILL B) doit être évité a priori, sauf contexte justifiant ce choix. 2- Des stratégies adaptées Préserver le champ des possibles 3- Processus de qualification (technique et juridique) Ø Dans ce cas, le choix même d une diffusion sous licence logiciel libre doit être réfléchit. Ø Un des critères étant l existence d un contexte propice a un développement collaboratif. Ø des composants exogènes ou de code réutilisé Ø regarder dans quel contexte on se situe / réutilisation de composants ou codes préexistants.
TYPOLOGIE DES MODES D EXPLOITATION 46
Typologie des modes d exploitation Oui Communication de Savoir-faire Secret Code ouvert et code sous licence Open source Transfert (cession) DISTRIBUTION Non Expertise outillée Application service provider (ASP) Software as a Service (SaaS) Concession de licences d'exécutables Produit d appel (gratuit/payant) Code embarqué (boite noire) Oui Non ACCES AU CODE SOURCE - 47
Code non distribué Exemple DISTRIBUTION : NON ACCES AU CODE SOURCE : NON Commande (données) Texte à traduire Expertise, Service hébergé Microsoft Translator.com Résultat outillé / Rapport Texte traduit - 48
Code non distribué sans accès au code source : le client DISTRIBUTION : NON ACCES AU CODE SOURCE : NON Support à l expertise individuelle / équipe de recherche (stratégie partenariale) Service propriétaire gratuit (libre-service) Modèle d affaire de start-up de services outillés ou fournisseur d applications hébergées (tendance en réaction à l open source) - 49
Code non distribué, sans accès au code quelle licence? Choix de licences pour : Des logiciels dont le code est non distribué, et sans accès au source. Ø Licence propriétaire ou libre AGPL si c est vous. Ø Licence de tous types sauf de type AGPL. Warning Préserver le champ des possibles Ø Seules l utilisation de composants distribués sous licences du type Affero General Public Licence (AGPL) implique de rendre accessible le code source complet du système à composants dans lesquels ils sont incorporés. Licences de type AGPL Ø Les licences de type AGPL sont les moins permissive en composition, même sans distribution. AGPL a été conçue pour limiter l appropriation de code dans des architectures propriétaires de type software as a service, ou Application Service Provider.
Code non distribué Le code n est pas distribué mais le source est accessible ou bien communiqué à des fins de : Ø tests, Ø sous-traitance, DISTRIBUTION : NON ACCES AU CODE SOURCE : OUI Ø communication de savoir-faire (secret ou non). Avec des éléments du logiciel autres que le code : les spécification, les modèles, les données... - 51
Code non distribué avec accès au code quelle licence? Choix de licences pour : License de test uniquement (avec accès au source) Cas de la sous-traitance Cas de communication de savoir-faire Warning Ø Des technologies de détection de réutilisation de binaires exogènes sont disponibles (nextb par exemple) Ø Le respect des licences associés aux composants exogènes redistribué est impératif. Ø Le respect des licences associés aux composants exogènes utilisés dans des composants dérivés redistribué est impératif.
Code distribué DISTRIBUTION : OUI ACCES AU CODE SOURCE : NON Le code est distribué mais le code source n est pas accessible ou fourni Ø Licensing avec distribution du code binaire uniquement Ø Code embarqué - 53
Code distribué, sans accès au code quelle licence? Choix de licences pour : Licence propriétaire Licence libre privative Licence libre à code fermé (freeware, shareware) Warning Ø Des technologies de détection de réutilisation de binaires exogènes sont disponibles (nextb par exemple) Ø Le respect des licences associés aux composants exogènes redistribué est impératif. Ø Le respect des licences associés aux composants exogènes utilisés dans des composants dérivés redistribué est impératif.
Code distribué DISTRIBUTION : OUI ACCES AU CODE SOURCE : OUI Code ouvert et code sous licence Open source Le code est distribué gratuitement ou non et il est accessible dans sa forme source. - 55
Code distribué, avec accès au code source quelle licence? Choix de licences pour : Warning Le code est distribué est accessible dans sa forme source Ø Licence propriétaire à code ouvert Ø Licence payante à des fins commerciales dont le code source est accessible dans certaines conditions Préserver le champ des possibles Ø Licence libre ou apparentées (CeCILL). Deux principes Ø la traçabilité des composants exogènes Ø la compatibilité des différentes licences attachées aux composants modules licences et compatibilité IPRP et IPRA. Des technologies de détection de réutilisation de composants exogènes sont aujourd hui disponibles (Palamida, nextb, BlackDuck, Antelink par exemple) Ø Le respect des licences associés aux composants exogènes redistribués est impératif Ø Le respect des licences associés aux composants exogènes utilisés dans des composants dérivés redistribués est impératif
CONCLUSION 57
15 MESURES POUR UNE NOUVELLE DYNAMIQUE DE TRANSFERT DE LA RECHERCHE PUBLIQUE, LEVIER DE CROISSANCE ET DE COMPETITIVITE La recherche et l innovation sont au cœur du débat sur la compétitivité et des priorités réaffirmées par le gouvernement. Dans ce contexte, le transfert est un levier majeur de croissance et de compétitivité, un enjeu fort pour notre politique industrielle, pour le maintien et la création de nos emplois. 7 novembre 2012, Geneviève FIORASO, Ministre de l Enseignement Supérieur et de la Recherche, présentait ses «15 mesures pour une nouvelle dynamique de transfert de la recherche publique, levier de croissance et de compétitivité» en Conseil des Ministres. 58
Evolution des salariés du secteur 2.2% des emplois privés directs en 2010. Dans l emploi privé, c est-à-dire sans prendre en compte les salariés de la Fonction Publique (d État, Hospitalière et Territoriale) : Les effectifs du secteur ont triplé en deux décennies. - 59