IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

60 % des employés sont frustrés par les nouveaux logiciels
Plus de la moitié des utilisateurs ont souhaité que la direction réintroduise les anciens systèmes selon une enquête de Gartner

Le , par Sandra Coret

31PARTAGES

6  0 
60 % des travailleurs ont déclaré que les nouveaux logiciels les avaient occasionnellement ou fréquemment frustrés au cours des 24 derniers mois, selon une nouvelle enquête* de Gartner, Inc. En fait, 56 % des utilisateurs ont déclaré que les nouveaux logiciels leur avaient fait souhaiter que la direction rétablisse l'ancien système.

"La démocratisation et la consumérisation de l'informatique ont eu pour conséquence que les employés ont plus de latitude quant aux logiciels qu'ils utilisent et à la manière dont ils les utilisent", explique Craig Roth, vice-président de la recherche chez Gartner. "Les responsables de produits logiciels se concentrent souvent sur l'ajout de nouvelles fonctionnalités pour rester dans la course face à la concurrence, mais cela conduit à des produits trop complexes avec une expérience utilisateur (UX) médiocre."

L'enquête mondiale menée par Gartner auprès de 4 953 utilisateurs de produits et services technologiques entre avril et juin 2021 a révélé trois façons dont les utilisateurs peuvent avoir un impact sur l'adoption des logiciels d'entreprise :

Adoption personnelle

L'enquête a révélé que 81 % des utilisateurs de logiciels ont pris une mesure quelconque - positive ou négative - après une expérience notable avec un logiciel. Par exemple, 40% des utilisateurs ont résisté à l'utilisation d'applications après une expérience négative en utilisant des fonctionnalités minimales, en évitant ou en retardant l'utilisation. En revanche, après une expérience positive avec une application, 41% des utilisateurs ont passé plus de temps à approfondir ses fonctionnalités.

"La profondeur de l'utilisation d'une application peut avoir un impact significatif sur la valeur qu'une organisation tire d'un logiciel. Cette valeur perçue devient importante lorsque le moment du renouvellement ou de la mise à niveau arrive", a déclaré Roth. "La consommation de nouvelles fonctionnalités aide les fournisseurs de technologie à accroître l'adhérence d'un produit, mais lorsque les utilisateurs ignorent les fonctionnalités avancées, les fournisseurs ont moins d'influence pour obtenir des ventes incitatives ou des renouvellements et rester en tête de la concurrence."

Influencer les autres à adopter ou à éviter

L'enquête a également révélé que les utilisateurs partagent fréquemment leurs opinions sur les logiciels avec leurs pairs, avec le service informatique et avec les chefs d'entreprise, soit de manière proactive, soit en réponse à des demandes de commentaires. Ce "bouche à oreille" peut déclencher une réaction en chaîne qui influence l'adoption ou l'évitement d'applications par d'autres.

42 % des répondants à l'enquête ont déclaré s'être plaints à leurs pairs après une expérience logicielle négative, tandis que 38 % ont recommandé une application à leurs pairs après une expérience positive. En outre, 42 % ont partagé des expériences négatives avec le service informatique, et 25 % ont partagé ces expériences avec la direction de l'entreprise.

Les médias sociaux deviennent également un moyen important de partager des opinions sur les logiciels, puisque 10 % des personnes interrogées ont indiqué avoir laissé des commentaires sur les médias sociaux ou les sites d'évaluation après une expérience négative avec une application.

Lorsqu'on a demandé aux utilisateurs quelles mesures les éditeurs de logiciels pourraient prendre pour qu'ils soient plus enclins à recommander leurs produits à leurs pairs, aux responsables informatiques ou aux chefs d'entreprise, la réponse la plus fréquente a été de rendre les produits plus faciles à utiliser (51 % des personnes interrogées). L'ajout de fonctionnalités manquantes n'arrive qu'en troisième position, avec 30 % des réponses.


Auto-achat

Les utilisateurs de logiciels d'entreprise peuvent également agir en tant qu'acheteurs dans certains cas. L'enquête de Gartner a révélé que 34 % des utilisateurs déclarent que leur service informatique leur permet de choisir la plupart des logiciels qu'ils utilisent. Dans certains cas, les utilisateurs peuvent également s'auto-acquérir des logiciels par le biais de cartes de crédit personnelles ou professionnelles, ou les utilisateurs seront facturés en fonction de leur consommation, bien que ces arrangements ne soient pas encore courants.

"Le chiffre d'affaires du SaaS augmentant plus rapidement que celui de l'ensemble du secteur des logiciels, les fournisseurs se retrouvent de plus en plus dans un cycle d'achat continu", a déclaré M. Roth. "Sur ce marché concurrentiel, maintenir l'utilisation d'applications à forte valeur ajoutée en faisant de l'UX une compétence de base est essentiel pour générer des résultats commerciaux positifs."

Source : Gartner

Et vous ?

Que pensez-vous de cette enquête de Gartner ? la trouvez-vous pertninente ?
Comment sont accueillis les nouveaux logiciels d'entreprise au sein de votre organisation ?

Voir aussi :

Les entreprises adoptent le stockage défini par logiciel face à l'augmentation des volumes de données, 9 % d'entre elles constatant une croissance annuelle des données d'un pétaoctet ou plus

Le revenu mondial des applications d'entreprise a augmenté de 4,1 % en 2020, et atteindra près de 334 milliards de dollars en 2025, selon IDC

Les revenus mondiaux des logiciels d'infrastructure définie par logiciel ont dépassé les 12 milliards de dollars en 2020, soit une augmentation de 5 % par rapport à l'année précédente, selon IDC

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Mercenary Developer
Membre habitué https://www.developpez.com
Le 04/11/2021 à 8:58
Bonjour,

Cette enquête ne m'étonne même pas. Dans un autre registre je m'occupe de TMA sur des projets de gestion de trafic routier.
Chaque client a son logiciel spécifique.
Je constate que les vieux logiciels (tout langage confondu) fonctionnent beaucoup mieux que les refontes qui en sont faite. Pourquoi ? Je pense parce qu'il sont moins lourds:
J'ai une TMA sur un projet censé être neuf, le truc il mets 20 minutes à compiler et 15 à se lancer, y'a une trentaine de dépendance Maven et presque autant niveau Javascript avec une utilisation abusive de npm, autant dire qu'aucune dépendance n'est à jour et que l'on ne va pas risquer de faire une MAJ, tant au niveau Maven que npm, sans savoir les impacts que cela aura sur le code.

A croire qu'aujourd'hui on ne peux pas développer sans framework. Les gars, quand il ont une fonctionnalité à faire, au lieu d'essayer de la faire eux même se dise: "Regardons si il n'y a pas une librairie qui fait déjà le boulot", à la fin on obtient un logiciel qui n'est qu'un assemblage de librairie... Et plus il y a de dépendance, plus il y a des mise à jour à faire (quand il y a un suivi, ce qui est très rare) et plus il y a de risque de bug et/ou de problème de sécurité...

Personnellement j’essaie au plus de coder en Javascript / HTML / CSS coté frontend en essayant de me passer le plus possible de dépendance et autre framework. Et cela fonctionne très bien. Par exemple pour mon petit site perso https://sortiesympa.com (un peu de pub ) je n'ai utilisé coté JS que OpenLayers (forcément la se serait idiot de coder ce genre de fonctionnalité à partir de zéro) et Date Picker (car j'avais la flemme de coder un calendrier en JS).

L'avantage ? Je peux facilement garder à jour mes dépendances, car elles sont peu nombreuse, et j'ai donc une page qui me permet de voir si les versions sont à jour (https://sortiesympa.com/app1/statistiques.html)

Bref, le seul framework que j'apprécie reste VanillaJS (https://blog.lesieur.name/vanilla-js-france/) et la méthode KISS ! (Keep It Simple, Stupid ).

Bonne journée !
2  1 
Avatar de diamondsoftware
Membre habitué https://www.developpez.com
Le 04/11/2021 à 9:04
tout a fait d'accord avec le message précédent. Moins on a de dependances exterieures moins on a de soucis futur...
1  0 
Avatar de smarties
Expert confirmé https://www.developpez.com
Le 04/11/2021 à 14:09
Je suis globalement d'accord avec walfrat

De plus, en entreprise, on doit généralement développer vite et on n'a pas le temps de refaire une implémentation de tout et n'importe quoi.

On a forcément besoin de dépendances pour :
- les connecteurs de BDD
- gestion de protocole réseau
- sérialisation/désérialisation : pour du CSV on peut s'en passer par contre
- ...

Quand on veut faire évoluer des logiciels, on fait rarement des tests unitaires pour vérifier les fonctions utilisées de nos librairies.
1  0 
Avatar de valaendra
Membre éclairé https://www.developpez.com
Le 05/11/2021 à 18:34
Bonjour.

Citation Envoyé par Mercenary Developer Voir le message
A croire qu'aujourd'hui on ne peux pas développer sans framework.
Toute une génération de développeurs qui ne savent pas coder hors framework/CMS.

J'en ai croisé récemment, par exemple un "Dev wordpress++" (tel qu'il se décrit lui même) qui bug sur un simple for

Bonne soirée
1  0 
Avatar de walfrat
Membre émérite https://www.developpez.com
Le 04/11/2021 à 10:17
Citation Envoyé par Mercenary Developer Voir le message
Les gars, quand il ont une fonctionnalité à faire, au lieu d'essayer de la faire eux même se dise: "Regardons si il n'y a pas une librairie qui fait déjà le boulot"
Et ils ont parfaitement raison,

Un nouveau logiciel qui vient de sortir tant à être moins mature que quelque chose qui existe depuis 20ans. Il était comment ton fameux vieux logiciel au moment où il est sorti ? Je pari que pour la plupart, c'était la galère, à installer, configurer, former les utilisateurs etc.

Ca se trouve ton logiciel, sur les machines d'il y a 20ans mettait 20mn à compiler et autant à se lancer.

Personnellement, sauf côté IHM si elle est très modeste, je ne ferais jamais sans framework/librairies :

  • Base de données : transactions/modèle de données
  • Gestion des dates
  • Logs
  • Multithreading
  • Pool de connections
  • Sérialisation/Déserialisation
  • Authentification/Authorization
  • Parsing, encodage des caractères
  • etc


Toutes ses choses semblent simples sur le papier mais en vrai quand tu veux faire une applis solide et performance, tout les génies qui se sont dit qu'ils allaient faire ça eux-même deviennent le boulot de ceux qui leur succéderont.

Pour chacun de ses éléments il faut prendre en compte :

  • La performance, on est clairement plus exigeant aujourd'hui qu'il y a 20ans, alors qu'il y a plus de traffic, plus grosses base de données etc etc
  • Les aspect de sécurité relatifs à cela, encore une fois, on est plus exigeant aujourd'hui.


Je parie que dans la plupart de tes applis "fiable" d'il y a 20ans, il y a autant plein de problème de sécurité.

Toutes ses librairies n'ont qu'un seul prix : il faut comprendre comment elles fonctionnent quand on s'en sert. De même quand on récupère les devs d'un génie qui a réinventer la roue. Et ce n'est pas la faute des dites librairies si les gens les empilent en mode osef et les utilise de travers.
3  3 
Avatar de PomFritz
Membre confirmé https://www.developpez.com
Le 04/11/2021 à 10:39
Tiens... on parle de Windows, là? Toujours plus bordélique de version en version...
0  0 
Avatar de Mercenary Developer
Membre habitué https://www.developpez.com
Le 04/11/2021 à 16:23
Je ne dis pas de tout faire soi même, simplement d'utiliser des dépendances avec parcimonie, parce que quand on récupère une TMA avec ça dans le POM:

Code XML : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<spring-boot.version>1.1.10.RELEASE</spring-boot.version> 
<activemq.version>5.9.1</activemq.version> 
<aspectj.version>1.8.4</aspectj.version> 
<codahale-metrics.version>3.0.2</codahale-metrics.version> 
<commons-beanutils.version>1.9.2</commons-beanutils.version> 
<commons-collections.version>4.0</commons-collections.version> 
<commons-lang.version>3.3.2</commons-lang.version> 
<commons-dbcp.version>1.4</commons-dbcp.version> 
<commons-digester.version>2.1</commons-digester.version> 
<commons-pool.version>1.6</commons-pool.version> 
<commons-pool2.version>2.2</commons-pool2.version> 
<crashub.version>1.3.0</crashub.version> 
<flyway.version>3.0</flyway.version> 
<freemarker.version>2.3.21</freemarker.version> 
<gemfire.version>7.0.2</gemfire.version> 
<gradle.version>1.6</gradle.version> 
<groovy.version>2.3.7</groovy.version> 
<h2.version>1.4.182</h2.version> 
<hamcrest.version>1.3</hamcrest.version> 
<hibernate.version>4.3.7.Final</hibernate.version> 
<hibernate-entitymanager.version>${hibernate.version}</hibernate-entitymanager.version> 
<hibernate-jpa-api.version>1.0.0.Final</hibernate-jpa-api.version> 
<hibernate-validator.version>5.1.2.Final</hibernate-validator.version> 
<hibernate-spatial.version>4.3</hibernate-spatial.version> 
<jpa-validation.version>1.1.0.Final</jpa-validation.version> 
<hikaricp.version>1.4.0</hikaricp.version> 
<hornetq.version>2.4.5.Final</hornetq.version> 
<hsqldb.version>2.3.2</hsqldb.version> 
<httpasyncclient.version>4.0.2</httpasyncclient.version> 
<httpclient.version>4.3.6</httpclient.version> 
<jackson.version>2.4.1</jackson.version> 
<janino.version>2.6.1</janino.version> 
<javassist.version>3.18.1-GA</javassist.version> <!-- Same as Hibernate --> 
<jaxen.version>1.1.6</jaxen.version> 
<jdom2.version>2.0.5</jdom2.version> 
<jedis.version>2.4.2</jedis.version> 
<jetty.version>8.1.15.v20140411</jetty.version> 
<jetty-jsp.version>2.2.0.v201112011158</jetty-jsp.version> 
<joda-time.version>2.3</joda-time.version> 
<jolokia.version>1.2.3</jolokia.version> 
<json-path.version>0.9.1</json-path.version> 
<jstl.version>1.2</jstl.version> 
<junit.version>4.11</junit.version> 
<liquibase.version>3.3.2</liquibase.version> 
<log4j.version>2.0.2</log4j.version> 
<xml-api.version>1.4.01</xml-api.version> 
<logback.version>1.1.2</logback.version> 
<mockito.version>1.9.5</mockito.version> 
<mongodb.version>2.12.4</mongodb.version> 
<mysql.version>5.1.34</mysql.version> 
<reactor.version>1.1.5.RELEASE</reactor.version> 
<reactor-spring.version>1.1.3.RELEASE</reactor-spring.version> 
<servlet-api.version>3.0.1</servlet-api.version> 
<slf4j.version>1.7.7</slf4j.version> 
<snakeyaml.version>1.13</snakeyaml.version> 
<solr.version>4.7.2</solr.version> 
<spock.version>0.7-groovy-2.0</spock.version> 
<spring.version>4.1.4.RELEASE</spring.version> 
<spring-amqp.version>1.3.6.RELEASE</spring-amqp.version> 
<spring-batch.version>3.0.2.RELEASE</spring-batch.version> 
<spring-data-releasetrain.version>Dijkstra-SR4</spring-data-releasetrain.version> 
<spring-hateoas.version>0.16.0.RELEASE</spring-hateoas.version> 
<spring-plugin.version>1.1.0.RELEASE</spring-plugin.version> 
<spring-integration.version>4.0.4.RELEASE</spring-integration.version> 
<spring-loaded.version>1.2.1.RELEASE</spring-loaded.version> 
<spring-mobile.version>1.1.3.RELEASE</spring-mobile.version> 
<spring-security.version>3.2.5.RELEASE</spring-security.version> 
<spring-security-jwt.version>1.0.2.RELEASE</spring-security-jwt.version> 
<spring-social.version>1.1.0.RELEASE</spring-social.version> 
<spring-social-facebook.version>1.1.1.RELEASE</spring-social-facebook.version> 
<spring-social-linkedin.version>1.0.1.RELEASE</spring-social-linkedin.version> 
<spring-social-twitter.version>1.1.0.RELEASE</spring-social-twitter.version> 
<spring-ldap.version>2.0.2.RELEASE</spring-ldap.version> 
<spring-ws.version>2.2.0.RELEASE</spring-ws.version> 
<thymeleaf.version>2.1.3.RELEASE</thymeleaf.version> 
<thymeleaf-extras-springsecurity3.version>2.1.1.RELEASE</thymeleaf-extras-springsecurity3.version> 
<thymeleaf-layout-dialect.version>1.2.7</thymeleaf-layout-dialect.version> 
<tomcat.version>7.0.56</tomcat.version> 
<velocity.version>1.7</velocity.version> 
<velocity-tools.version>2.0</velocity-tools.version> 
<wsdl4j.version>1.6.3</wsdl4j.version> 
<lombok.version>1.14.8</lombok.version> 
<postgres.version>9.2-1004-jdbc41</postgres.version> 
<querydsl.version>3.5.1</querydsl.version> 
<commons-configuration.version>1.10</commons-configuration.version> 
<commons-io.version>2.4</commons-io.version> 
<dozer.version>5.5.1</dozer.version> 
<poi.version>3.8</poi.version> 
<hornetq-stomp.version>2.4.5.Final</hornetq-stomp.version> 
<javax.mail.version>1.4</javax.mail.version> 
<common-repository.version>1.0.0</common-repository.version> 
<common-workflow.version>1.0.0</common-workflow.version> 
<common-utilisateur.version>1.0.0</common-utilisateur.version> 
<common-authentication.version>1.0.0</common-authentication.version> 
<common-domain.version>1.0.0</common-domain.version> 
<opc.version>2.2.0</opc.version> 
<dom4j.version>1.6.1</dom4j.version> 
<quartz.version>2.2.1</quartz.version> 
<jgroups.version>3.4.5.Final</jgroups.version>

Dire
Toutes ses librairies n'ont qu'un seul prix : il faut comprendre comment elles fonctionnent quand on s'en sert.

je veux bien, mais désolé je ne les maitrise pas tous !

Et la c'est coté Java, coté JavaScript on a ce genre de message:

Code : Sélectionner tout
1
2
3
4
npm version : 
6.14.6 
audited 286 packages in 3.807s 
found 135 vulnerabilities (21 low, 32 moderate, 66 high, 16 critical)
On hésite à en parler au client, car si il nous demande de mettre tout cela à jour sans qu'il n'y ai aucune conséquence sur le code source et aucune régression franchement je n'y crois pas.

Quand je vois, à titre personnel, que quand j'ai mis à jour la librairie OpenLayers de mon site perso https://sortiesympa.com (encore un peu de pub ) vers la version 6.9.0 la cartographie ne fonctionne plus sous Safari / Mac OS... Et la je suis simplement passé de la version n-1 à la version n !

Alors désolé mais pour moi ma démarche est:

Besoin d'une fonctionnalité:

1) Existe-t-elle déjà dans les dépendances du projet (Spring par exemple apporte avec lui beaucoup de fonctionnalités).
2) Est-elle difficile à coder et/ou prendras-t-elle beaucoup de temps à faire ? Tant qu'à avoir des failles autant que ce soit dans du code que l'on a fait, cela permettra une correction plus rapide sans attendre une éventuelle nouvelle version de la dépendance.
3) Si ni 1, ni 2 alors on recherche la librairie/dépendance la plus apte à nous aider.

Après c'est ma façon de faire, chacun est libre de faire comme il veut, pensez simplement au pauvre développeur qui reprendra quelques années plus tard votre code.... J'ai des projets TMA de plus de 5 ans dont certaines dépendances n'existent même plus ! Exemple de classes :

Code : Sélectionner tout
1
2
3
4
/* 
 * This class was automatically generated with  
 * <a href="http://www.castor.org">Castor 0.9.6</a>, using an XML 
*/
Je vous laisse aller visiter le site http://www.castor.org qui n'a plus rien à voir avec la librairie...
0  0 
Avatar de marc.collin
Membre émérite https://www.developpez.com
Le 04/11/2021 à 17:22
Citation Envoyé par Mercenary Developer  Voir le message
Je ne dis pas de tout faire soi même, simplement d'utiliser des dépendances avec parcimonie, parce que quand on récupère une TMA avec ça dans le POM:

Code XML : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
<spring-boot.version>1.1.10.RELEASE</spring-boot.version> 
<activemq.version>5.9.1</activemq.version> 
<aspectj.version>1.8.4</aspectj.version> 
<codahale-metrics.version>3.0.2</codahale-metrics.version> 
<commons-beanutils.version>1.9.2</commons-beanutils.version> 
<commons-collections.version>4.0</commons-collections.version> 
<commons-lang.version>3.3.2</commons-lang.version> 
<commons-dbcp.version>1.4</commons-dbcp.version> 
<commons-digester.version>2.1</commons-digester.version> 
<commons-pool.version>1.6</commons-pool.version> 
<commons-pool2.version>2.2</commons-pool2.version> 
<crashub.version>1.3.0</crashub.version> 
<flyway.version>3.0</flyway.version> 
<freemarker.version>2.3.21</freemarker.version> 
<gemfire.version>7.0.2</gemfire.version> 
<gradle.version>1.6</gradle.version> 
<groovy.version>2.3.7</groovy.version> 
<h2.version>1.4.182</h2.version> 
<hamcrest.version>1.3</hamcrest.version> 
<hibernate.version>4.3.7.Final</hibernate.version> 
<hibernate-entitymanager.version>${hibernate.version}</hibernate-entitymanager.version> 
<hibernate-jpa-api.version>1.0.0.Final</hibernate-jpa-api.version> 
<hibernate-validator.version>5.1.2.Final</hibernate-validator.version> 
<hibernate-spatial.version>4.3</hibernate-spatial.version> 
<jpa-validation.version>1.1.0.Final</jpa-validation.version> 
<hikaricp.version>1.4.0</hikaricp.version> 
<hornetq.version>2.4.5.Final</hornetq.version> 
<hsqldb.version>2.3.2</hsqldb.version> 
<httpasyncclient.version>4.0.2</httpasyncclient.version> 
<httpclient.version>4.3.6</httpclient.version> 
<jackson.version>2.4.1</jackson.version> 
<janino.version>2.6.1</janino.version> 
<javassist.version>3.18.1-GA</javassist.version> <!-- Same as Hibernate --> 
<jaxen.version>1.1.6</jaxen.version> 
<jdom2.version>2.0.5</jdom2.version> 
<jedis.version>2.4.2</jedis.version> 
<jetty.version>8.1.15.v20140411</jetty.version> 
<jetty-jsp.version>2.2.0.v201112011158</jetty-jsp.version> 
<joda-time.version>2.3</joda-time.version> 
<jolokia.version>1.2.3</jolokia.version> 
<json-path.version>0.9.1</json-path.version> 
<jstl.version>1.2</jstl.version> 
<junit.version>4.11</junit.version> 
<liquibase.version>3.3.2</liquibase.version> 
<log4j.version>2.0.2</log4j.version> 
<xml-api.version>1.4.01</xml-api.version> 
<logback.version>1.1.2</logback.version> 
<mockito.version>1.9.5</mockito.version> 
<mongodb.version>2.12.4</mongodb.version> 
<mysql.version>5.1.34</mysql.version> 
<reactor.version>1.1.5.RELEASE</reactor.version> 
<reactor-spring.version>1.1.3.RELEASE</reactor-spring.version> 
<servlet-api.version>3.0.1</servlet-api.version> 
<slf4j.version>1.7.7</slf4j.version> 
<snakeyaml.version>1.13</snakeyaml.version> 
<solr.version>4.7.2</solr.version> 
<spock.version>0.7-groovy-2.0</spock.version> 
<spring.version>4.1.4.RELEASE</spring.version> 
<spring-amqp.version>1.3.6.RELEASE</spring-amqp.version> 
<spring-batch.version>3.0.2.RELEASE</spring-batch.version> 
<spring-data-releasetrain.version>Dijkstra-SR4</spring-data-releasetrain.version> 
<spring-hateoas.version>0.16.0.RELEASE</spring-hateoas.version> 
<spring-plugin.version>1.1.0.RELEASE</spring-plugin.version> 
<spring-integration.version>4.0.4.RELEASE</spring-integration.version> 
<spring-loaded.version>1.2.1.RELEASE</spring-loaded.version> 
<spring-mobile.version>1.1.3.RELEASE</spring-mobile.version> 
<spring-security.version>3.2.5.RELEASE</spring-security.version> 
<spring-security-jwt.version>1.0.2.RELEASE</spring-security-jwt.version> 
<spring-social.version>1.1.0.RELEASE</spring-social.version> 
<spring-social-facebook.version>1.1.1.RELEASE</spring-social-facebook.version> 
<spring-social-linkedin.version>1.0.1.RELEASE</spring-social-linkedin.version> 
<spring-social-twitter.version>1.1.0.RELEASE</spring-social-twitter.version> 
<spring-ldap.version>2.0.2.RELEASE</spring-ldap.version> 
<spring-ws.version>2.2.0.RELEASE</spring-ws.version> 
<thymeleaf.version>2.1.3.RELEASE</thymeleaf.version> 
<thymeleaf-extras-springsecurity3.version>2.1.1.RELEASE</thymeleaf-extras-springsecurity3.version> 
<thymeleaf-layout-dialect.version>1.2.7</thymeleaf-layout-dialect.version> 
<tomcat.version>7.0.56</tomcat.version> 
<velocity.version>1.7</velocity.version> 
<velocity-tools.version>2.0</velocity-tools.version> 
<wsdl4j.version>1.6.3</wsdl4j.version> 
<lombok.version>1.14.8</lombok.version> 
<postgres.version>9.2-1004-jdbc41</postgres.version> 
<querydsl.version>3.5.1</querydsl.version> 
<commons-configuration.version>1.10</commons-configuration.version> 
<commons-io.version>2.4</commons-io.version> 
<dozer.version>5.5.1</dozer.version> 
<poi.version>3.8</poi.version> 
<hornetq-stomp.version>2.4.5.Final</hornetq-stomp.version> 
<javax.mail.version>1.4</javax.mail.version> 
<common-repository.version>1.0.0</common-repository.version> 
<common-workflow.version>1.0.0</common-workflow.version> 
<common-utilisateur.version>1.0.0</common-utilisateur.version> 
<common-authentication.version>1.0.0</common-authentication.version> 
<common-domain.version>1.0.0</common-domain.version> 
<opc.version>2.2.0</opc.version> 
<dom4j.version>1.6.1</dom4j.version> 
<quartz.version>2.2.1</quartz.version> 
<jgroups.version>3.4.5.Final</jgroups.version>

l'application fait quand même beaucoup d'opération....

je suppose

envoie / réception de message
envoie de email
opération sur bd nosql, postgresql, h2, hsql
création / lecture de fichier word, excel
gestion de migration de bd
ui
sécurité avec jwt et les réseau sociaux
web service
orm
...

beaucoup de mixe technologique
0  0 
Avatar de Mercenary Developer
Membre habitué https://www.developpez.com
Le 05/11/2021 à 8:45
Pas tant que ça, et c'est la ou on en revient au sujet initial.

envoie / réception de message -> Oui via JMS
envoie de email -> Oui
opération sur bd nosql, postgresql, h2, hsql -> Uniquement PostgreSQL, je ne sais pas le pourquoi de la présence des dépendances pour les autres BDD
création / lecture de fichier word, excel -> Uniquement lecture de fichier Excel
gestion de migration de bd -> Non
ui -> Oui, enfin IHM web
sécurité avec jwt et les réseau sociaux -> JWT oui, réseau sociaux non, c'est une application interne qui fonctionne sur un Intranet
web service -> Oui
orm -> Oui avec Hibernate
En fait j'ai plusieurs applications en TMA, de plusieurs clients, mais avec le même corps de métier.

Et donc, j'ai une TMA plus vieille (celle dont je parle avec la librairie Castor), qui à l'origine était faite pour fonctionner uniquement avec IE6 et que j'ai adapté pour Firefox, qui me pose moins de problème que la plus récente dont j'ai fourni la liste des dépendances. Bon OK coté IHM c'est pas le même look, sur la vieille appli les cartes sont en SVG et c'est galère à mettre à jour alors que sur le nouvelle, comme la boite qui a créé l'appli n'a pas été foutu de mettre en place un Geoserver, utilise des tuiles pompées sur OpenStreetMap pour le rendu cartographique.

Mais ce que je veux dire c'est que les 2 applications font quasiment la même chose, et l'ancienne est nettement moins lourde ! Les utilisateurs de cette dernière en sont content.

J'avoue ne pas m'être penché sur le pourquoi il y a tant de dépendance car si bien on n'a jamais le temps d'approfondir et le but dans ma boite c'est de corriger et/ou ajouter des fonctionnalités le plus rapidement possible. Donc pas vraiment le temps de se former ou d’approfondir les projets que l'on nous donne.
0  0 
Avatar de walfrat
Membre émérite https://www.developpez.com
Le 05/11/2021 à 9:05
Citation Envoyé par Mercenary Developer Voir le message


Dire je veux bien, mais désolé je ne les maitrise pas tous !
Attention, j'ai bien dit "savoir ce que l'on fait avec la librairie" pas "maîtriser".

Car oui, parfaitement maîtriser toute une pile technos a soi seule, c'est trop demander.

Je demande juste que les gens ont une bonne idée de ce qu'ils font en général, après il se peut qu'on tombe sur une petite surprise avec un composant qui fonctionne pas comme on s'y attendait de temps en temps, ça arrive.
0  0