{"id":11804,"date":"2017-11-28T11:41:18","date_gmt":"2017-11-28T16:41:18","guid":{"rendered":"http:\/\/www.analystik.ca\/blogue\/?p=11804"},"modified":"2019-04-18T15:34:35","modified_gmt":"2019-04-18T19:34:35","slug":"developpement-oriente-service-architecture-orientee-service","status":"publish","type":"post","link":"https:\/\/analystik.ca\/blogue\/language\/fr\/developpement-oriente-service-architecture-orientee-service\/","title":{"rendered":"La vision du D\u00e9veloppement orient\u00e9-Service, par-del\u00e0 l\u2019Architecture orient\u00e9e-Service"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Nous voudrions dans ce billet, <\/span><span style=\"font-weight: 400;\">par-del\u00e0 l\u2019Architecture orient\u00e9e-Service, revenir sur la vision<\/span><span style=\"font-weight: 400;\"> du <a href=\"http:\/\/www.analystik.ca\/blogue\/developpement-oriente-service-meilleur-deux-mondes\/\">D\u00e9veloppement orient\u00e9-Service<\/a> car ce n\u2019est pas rien, consid\u00e9rant que beaucoup soutiennent qu\u2019en TI, il y a eu un avant et un apr\u00e8s <\/span><span style=\"font-weight: 400;\">Architecture SOA <\/span><span style=\"font-weight: 400;\">!<\/span><\/p>\n<p>La raison en est fort simple, avec l\u2019architecture orient\u00e9e-service, les services d\u00e9velopp\u00e9s se sont retrouv\u00e9s au c\u0153ur des syst\u00e8mes d&rsquo;information, en interface \u00e0 la fois avec les applications fondamentales et les donn\u00e9es.<\/p>\n<p>Bien que cela ne soit pas \u00e9vident au premier coup d\u2019\u0153il, beaucoup de d\u00e9veloppeurs y ont tout \u00e0 coup gagn\u00e9 une marge de man\u0153uvre, une libert\u00e9 de conception, d\u2019aucuns diront une cr\u00e9ativit\u00e9 nouvelle.<\/p>\n<p><!--more--><\/p>\n<h3><strong>AVANT ET APR\u00c8S SOA (TRIDENS, 2011)<\/strong><\/h3>\n<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-11803\" src=\"http:\/\/www.analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/diagram-soa.jpg\" alt=\"\" width=\"610\" height=\"430\" srcset=\"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/diagram-soa.jpg 610w, https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/diagram-soa-300x211.jpg 300w\" sizes=\"(max-width: 610px) 100vw, 610px\" \/>\n<p>En effet, les d\u00e9veloppeurs ont pu d\u00e8s lors concentrer toute leur attention sur la sp\u00e9cificit\u00e9 des services \u00e0 d\u00e9velopper, \u00e9tant moins restreints par les contraintes d\u2019int\u00e9gration aux applications et donn\u00e9es; ainsi, ils ont pu plus facilement optimiser les fonctionnalit\u00e9s critiques \u00e0 l\u2019op\u00e9ration de leurs services.<\/p>\n<p><span style=\"font-weight: 400;\">C\u2019est l\u00e0, une des retomb\u00e9es directes de l\u2019architecture orient\u00e9e-service.<\/span><\/p>\n<p>Ce faisant, ils ont d\u00e9velopp\u00e9 une culture du d\u00e9veloppement orient\u00e9 service car en d\u00e9veloppant des services, on en vient tout naturellement \u00e0 distinguer ce qui est commun \u00e0 tout autre service similaire de notre domaine d\u2019affaires. On en vient \u00e0 cat\u00e9goriser les fonctionnalit\u00e9s de nos services en types g\u00e9n\u00e9rique et sp\u00e9cifique.\u00a0<span style=\"font-weight: 400;\">C\u2019est ainsi que prend forme peu \u00e0 peu l\u2019architecture orient\u00e9e-service.<\/span><\/p>\n<p>Et on d\u00e9veloppe des fonctionnalit\u00e9s g\u00e9n\u00e9riques et des fonctionnalit\u00e9s sp\u00e9cifiques, plus sp\u00e9cialis\u00e9es, que l\u2019on pourrait qualifier de \u00ab\u00a0domain-driven\u00a0\u00bb; sp\u00e9cifiques \u00e0 un domaine d\u2019affaires tr\u00e8s pointu et m\u00eame, sp\u00e9cifiques \u00e0 des processus dans notre domaine d\u2019affaires.<\/p>\n<p>Un exemple tr\u00e8s simple serait un service de reconnaissance d\u2019imagerie g\u00e9n\u00e9rale, un service de reconnaissance d\u2019imagerie m\u00e9dicale et un service de reconnaissance faciale pour la police.<\/p>\n<p>On imagine facilement que tous ces services peuvent s\u2019interfacer avec des centaines de banques d\u2019images et qu\u2019elles poss\u00e8dent un moteur de cat\u00e9gorisation g\u00e9n\u00e9rale et des fonctionnalit\u00e9s g\u00e9n\u00e9riques de reconnaissance de la profondeur, de la tridimensionnalit\u00e9, des couleurs, des formes, des humains, des animaux, etc.<\/p>\n<p>Ainsi, on comprendra aussi tr\u00e8s bien que le service de reconnaissance d\u2019imagerie m\u00e9dicale poss\u00e8de un algorithme sp\u00e9cifique de reconnaissance des organes et du squelette humain qui s\u2019appuie sur un service de fonctionnalit\u00e9s g\u00e9n\u00e9riques de reconnaissance de la profondeur, de la tridimensionnalit\u00e9, des couleurs, des formes, etc.<\/p>\n<p>De m\u00eame, on imagine facilement que le service de reconnaissance faciale du service de police poss\u00e8de des fonctionnalit\u00e9s sp\u00e9cifiques d\u2019extrapolation des visages humains \u00e0 partir de photos de coupe transversale ou de visages ombrag\u00e9s mais qui s\u2019appuiera d\u2019abord sur des fonctionnalit\u00e9s g\u00e9n\u00e9riques de reconnaissance de la profondeur, de la tridimensionnalit\u00e9, des couleurs, des formes, etc.<\/p>\n<p>Ainsi, dans la vision du D\u00e9veloppement orient\u00e9-service, on d\u00e9veloppera les fonctionnalit\u00e9s de nos services sur la base de cette distinction; g\u00e9n\u00e9rique et sp\u00e9cifique (domain-driven). Cette dichotomie est fondamentale dans l\u2019esprit du D\u00e9veloppement orient\u00e9 service.<\/p>\n<p>Un autre concept tout aussi important de la vision du D\u00e9veloppement orient\u00e9-service est l\u2019autonomie d\u2019un service. Ainsi, dans le cadre de son d\u00e9veloppement TI \u00e0 moyen et long terme, l\u2019entreprise d\u00e9veloppera de nombreux services. Une bonne pratique du D\u00e9veloppement orient\u00e9-service est de viser l\u2019autonomie la plus compl\u00e8te des services et des fonctions qu\u2019ils utilisent; \u00e0 savoir, qu\u2019un service puisse \u00eatre appel\u00e9 par d\u2019autres services ou applications et \u00ab\u00a0livrer sa marchandise\u00a0\u00bb sans l\u2019aide d\u2019aucune autre application ou service. Pour ce faire, les fonctions d\u00e9velopp\u00e9es pour le service devront \u00eatre autonomes, pouvoir s\u2019ex\u00e9cuter et livrer leurs extrants sans autre besoin que les intrants pr\u00e9vus.<\/p>\n<p>Ainsi, on pourrait penser, dans l\u2019exemple du service de reconnaissance d\u2019imagerie, que les fonctionnalit\u00e9s de reconnaissance et de traitement de la tridimensionnalit\u00e9 font appel aux fonctions (autonomes) de reconnaissance des formes, des couleurs et de la profondeur !\u00a0\u00a0<span style=\"font-weight: 400;\">Cela traduit parfaitement l\u2019esprit et la structure d\u2019une Architecture orient\u00e9e-service (SOA).<\/span><\/p>\n<h2><b>La vision du D\u00e9veloppement orient\u00e9-service cr\u00e9e l&rsquo;Architecture orient\u00e9e-service<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Ainsi, la dichotomie entre fonctionnalit\u00e9s g\u00e9n\u00e9riques et sp\u00e9cifiques engendrent des services dits g\u00e9n\u00e9riques qui seront r\u00e9utilisables et appelle naturellement, elle cr\u00e9e, une couche de services entre les syst\u00e8mes d&rsquo;information (applications TI) et les donn\u00e9es.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">En un mot, l&rsquo;Architecture orient\u00e9e-service (SOA) est la r\u00e9sultante de la vision du D\u00e9veloppement orient\u00e9-service et non l&rsquo;inverse.<\/span><\/p>\n<h2><a href=\"http:\/\/www.analystik.ca\/blogue\/developpement-oriente-service-benefices-risques\/\"><strong>D\u00e9veloppement orient\u00e9-Service, avantages<\/strong><\/a><\/h2>\n<p>Cette fa\u00e7on de voir le d\u00e9veloppement orient\u00e9-service, de d\u00e9composer le d\u00e9veloppement en fonctionnalit\u00e9s sp\u00e9cifiques et g\u00e9n\u00e9riques, pr\u00e9sente un avantage non n\u00e9gligeable; \u00e0 savoir, que les services dits g\u00e9n\u00e9riques (et autonomes) sont, par essence, \u00ab\u00a0r\u00e9utilisables\u00a0\u00bb par d\u2019autres d\u00e9partements, d\u2019autres divisions et d\u2019autres services. Ainsi, ils engendreront des \u00e9conomies de temps et de co\u00fbts en termes de frais de d\u00e9veloppement pour l\u2019entreprise dans l\u2019avenir.<\/p>\n<p>De plus, s\u2019ils sont r\u00e9utilisables par d\u2019autres services, comme dans le cas des services de reconnaissance d\u2019imagerie, ces services pr\u00e9senteront aussi d\u00e8s lors un bon potentiel de commercialisation, de revenus.<\/p>\n<p>Finalement, puisqu\u2019il s\u2019agit de services d\u00e9velopp\u00e9s avec des fonctionnalit\u00e9s g\u00e9n\u00e9riques, ils ne devraient th\u00e9oriquement cr\u00e9er aucun obstacle en termes de mises \u00e0 jour puisqu\u2019ils n\u2019ont pas n\u00e9cessit\u00e9 de d\u00e9veloppement sur mesure contrairement aux fonctionnalit\u00e9s \u00ab\u00a0domain-driven\u00a0\u00bb. Cela peut repr\u00e9senter une \u00e9conomie potentielle\u2026 substantielle.<\/p>\n<h2><strong><a href=\"http:\/\/www.analystik.ca\/blogue\/developpement-oriente-service-benefices-risques\/\">D\u00e9veloppement orient\u00e9-Service<\/a>, pr\u00e9misse au Cloud<\/strong><\/h2>\n<p>L\u2019autre aspect dans la vision du D\u00e9veloppement orient\u00e9-service, l\u2019autonomie d\u2019un service donn\u00e9 (g\u00e9n\u00e9rique ou domain-driven), pr\u00e9sente aussi des avantages.<\/p>\n<p>Lorsqu\u2019un service peut exister de lui-m\u00eame et \u00ab\u00a0livrer sa marchandise\u00a0\u00bb sans l\u2019aide d\u2019aucune autre application ou service puisqu\u2019il s\u2019appuie essentiellement sur des fonctions autonomes alors il est consid\u00e9r\u00e9 comme un micro-service.<\/p>\n<p>Les micro-services peuvent facilement \u00eatre h\u00e9berg\u00e9s dans le Cloud et constituent, par cons\u00e9quent, le premier pas de votre entreprise vers le Cloud ou si vous pr\u00e9f\u00e9rez, une porte d\u2019entr\u00e9e vers le Cloud.<\/p>\n<p>&nbsp;<\/p>\n<h2><strong>Event-driven vs Domain-driven<\/strong><\/h2>\n<p>Finalement, dans un monde id\u00e9al, les services d\u00e9velopp\u00e9s (g\u00e9n\u00e9rique ou domain-driven) sont appel\u00e9s au bon moment pour les bonnes raisons mais un service ne s\u2019appelle pas lui-m\u00eame spontan\u00e9ment, il est appel\u00e9 !<\/p>\n<p>Ainsi, il faut pr\u00e9voir une alerte, un \u00ab\u00a0trigger\u00a0\u00bb, un \u00e9v\u00e9nement d\u00e9clencheur qui lancera ou appellera un ou des services; on parle alors de fonctionnalit\u00e9s ou applications \u00ab\u00a0event-driven\u00a0\u00bb.<\/p>\n<p>Les applications ou fonctionnalit\u00e9s \u00ab\u00a0event-driven\u00a0\u00bb appelleront les services, elles serviront \u00e0 r\u00e9gir les \u00e9changes (I\/O) entre les services, les syst\u00e8mes et les applications d\u2019une entreprise.<\/p>\n<p>&nbsp;<\/p>\n<h4><strong>Conclusion<\/strong><\/h4>\n<p><span style=\"font-weight: 400;\">L\u2019Architecture orient\u00e9e-service offre de nombreux avantages dont une \u00e9conomie appr\u00e9ciable en termes de co\u00fbts de d\u00e9veloppement et un potentiel financier en termes de r\u00e9utilisation et de commercialisation des services d\u00e9velopp\u00e9s.<\/span><\/p>\n<p>Bon d\u00e9veloppement, peu importe votre orientation,<\/p>\n<p><strong>Denis Paul &amp; Michel<\/strong><\/p>\n<div class=\"grammarly-disable-indicator\"><\/div>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Nous voudrions dans ce billet, par-del\u00e0 l\u2019Architecture orient\u00e9e-Service, revenir sur la vision du D\u00e9veloppement orient\u00e9-Service car ce n\u2019est pas rien, consid\u00e9rant que beaucoup soutiennent qu\u2019en TI, il y a eu un avant et un apr\u00e8s Architecture SOA ! La raison en est fort simple, avec l\u2019architecture orient\u00e9e-service, les services d\u00e9velopp\u00e9s se sont retrouv\u00e9s au c\u0153ur&#8230;  <a class=\"excerpt-read-more\" href=\"https:\/\/analystik.ca\/blogue\/language\/fr\/developpement-oriente-service-architecture-orientee-service\/\" title=\"Read La vision du D\u00e9veloppement orient\u00e9-Service, par-del\u00e0 l\u2019Architecture orient\u00e9e-Service\">Read more &raquo;<\/a><!-- AddThis Advanced Settings generic via filter on wp_trim_excerpt --><!-- AddThis Share Buttons generic via filter on wp_trim_excerpt --><\/p>\n","protected":false},"author":3,"featured_media":11816,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"Le D\u00e9veloppement orient\u00e9-Service, par-del\u00e0 l\u2019Architecture orient\u00e9e-service","_seopress_titles_desc":"Revenir, par-del\u00e0 l\u2019architecture orient\u00e9e-service, sur la vision du D\u00e9veloppement orient\u00e9-service car beaucoup soutiennent qu\u2019en TI, il y a eu un avant et un apr\u00e8s Archtecture SOA !","_seopress_robots_index":"","content-type":"","footnotes":""},"categories":[3565,3377],"tags":[4326,3861,3859],"better_featured_image":{"id":11816,"alt_text":"","caption":"","description":"","media_type":"image","media_details":{"width":2880,"height":1800,"file":"2017\/11\/servicearc.jpg","sizes":{"thumbnail":{"file":"servicearc-63x63.jpg","width":63,"height":63,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-63x63.jpg"},"medium":{"file":"servicearc-300x188.jpg","width":300,"height":188,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-300x188.jpg"},"medium_large":{"file":"servicearc-768x480.jpg","width":768,"height":480,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-768x480.jpg"},"large":{"file":"servicearc-1024x640.jpg","width":1024,"height":640,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-1024x640.jpg"},"bones-thumb-2880":{"file":"servicearc-2880x1800.jpg","width":2880,"height":1800,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-2880x1800.jpg"},"bones-thumb-1920":{"file":"servicearc-1920x1271.jpg","width":1920,"height":1271,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-1920x1271.jpg"},"bones-thumb-1536":{"file":"servicearc-1536x1016.jpg","width":1536,"height":1016,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-1536x1016.jpg"},"bones-thumb-960":{"file":"servicearc-960x635.jpg","width":960,"height":635,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-960x635.jpg"},"bones-thumb-600":{"file":"servicearc-600x397.jpg","width":600,"height":397,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-600x397.jpg"},"bones-thumb-300":{"file":"servicearc-300x199.jpg","width":300,"height":199,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-300x199.jpg"},"post-thumbnail":{"file":"servicearc-125x125.jpg","width":125,"height":125,"mime-type":"image\/jpeg","source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc-125x125.jpg"}},"image_meta":{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0","keywords":[]}},"post":11804,"source_url":"https:\/\/analystik.ca\/blogue\/wp-content\/uploads\/2017\/11\/servicearc.jpg"},"_links":{"self":[{"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/posts\/11804"}],"collection":[{"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/comments?post=11804"}],"version-history":[{"count":10,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/posts\/11804\/revisions"}],"predecessor-version":[{"id":12009,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/posts\/11804\/revisions\/12009"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/media\/11816"}],"wp:attachment":[{"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/media?parent=11804"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/categories?post=11804"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/analystik.ca\/blogue\/wp-json\/wp\/v2\/tags?post=11804"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}