Mon expérience de la digitalisation d'état ou l'histoire de la naissance de la plateforme Digit

Annotation


Je vais vous parler de l'expérience accumulée sur près de 10 ans de travail liés à la numérisation de notre pays, des problèmes rencontrés et de ce qu'ils ont fait pour les résoudre, comment tout cela a conduit à la naissance d'une autre solution de plateforme et un peu à ce sujet.

Je travaille sur la digitalisation de notre état depuis 8 ans. En 2011, j'ai commencé comme simple analyste, puis nous nous sommes engagés dans la traduction de services sous forme électronique pour le site web des services publics et le développement de la partie backend pour eux dans les départements sur différents systèmes.

Il m'est arrivé de travailler dans différentes régions de notre pays et j'ai vu beaucoup de plateformes. Certains problèmes ont été entendus par des collègues d’autres entreprises, mais dans le même domaine, quelque part dans les entreprises avec lesquelles nous nous sommes intégrés, cela a été obtenu grâce à l’expérience du client dans ses interactions avec d’autres entrepreneurs.

Les problèmes rencontrés lors de l'utilisation d'anciens systèmes


  • Dans les premiers systèmes, toutes les formes et entités étaient décrites du début à la fin par du code; à l'avenir, les concepteurs de formulaires sont apparus, mais il n'y avait toujours pas de cycle complet
  • grand cycle de libération, environ un mois.
  • référence de déploiement
  • l'analyste n'écrit souvent que des savoirs traditionnels, puis le développeur fait tout
  • modèles dans le cadre du système - lorsque sa création est un processus complexe et que le modèle devient une partie du système dans de rares cas, une partie du code
  • systèmes disparates - J'ai dû utiliser plusieurs applications pour travailler: un visualiseur de processus métier, un IDE avec des plug-ins, des éditeurs de texte, des moteurs de modèles et les interfaces des systèmes eux-mêmes. La fragmentation a créé des difficultés avec le débogage et la recherche de sources d'erreurs.
  • problèmes liés à l'installation de CryptoPro, qui se sont produits non seulement pour les utilisateurs finaux mais aussi pour les développeurs
  • l'intégration entre les systèmes a pris entre un mois et six mois
  • certains systèmes ne fonctionnaient pas avec les données en tant que telles, les informations d'entrée ont été traitées d'une manière ou d'une autre, ont traversé le processus métier et ont produit un résultat. Cependant, aucune donnée n'a été laissée pour un traitement ultérieur. Trouver même primitivement toutes les instructions utilisateur, par exemple, il était impossible
  • il y avait des problèmes avec la conception de composants visuels par différentes personnes, puisque de nombreux formulaires d'interface utilisateur étaient créés manuellement par des personnes, chacun d'eux pouvait créer son propre style, ce qui a finalement été remarqué et a dû être négocié et tout ramené au même style

L'expérience la plus terrible a été l'expérience de support d'un système hérité d'une entreprise qui s'effondre, le produit a été écrit sur la base de Liferay, je n'ai rien contre Liferay lui-même, mais ce n'est pas le produit sur la base duquel il vaut la peine d'écrire des systèmes similaires, eh bien, l'exécution elle-même a soulevé des questions. De Lifarey lui-même, pas plus de 10% ont été utilisés, le reste a été écrit côte à côte, il s'est avéré monstrueux et de travers, des collègues étudiant cette solution l'appelaient Frankinshtein. À l'avenir, il a été remplacé en toute sécurité.

Comment nous avons décidé de le réparer


Vers 2014-2015, notre équipe a décidé de créer sa propre plateforme de numérisation des départements. Vers 2016, j'ai rejoint l'équipe de développement. L'objectif principal de la création de la plate-forme était de permettre le développement sans impliquer les développeurs, uniquement grâce aux efforts des analystes. Cela aurait dû réduire le temps, car les personnes inutiles sont exclues du processus, ainsi que le coût du travail, car les programmeurs sont très chers. Et idéalement, le client a pu numériser ses propres processus ou apporter de petites modifications.

Bien sûr, nous avons pris en compte l'expérience négative des dernières années lors de la création d'un nouveau produit. Nous avons créé une plate-forme qui permet d'utiliser des éditeurs visuels intégrés pour créer et modifier des entités commerciales, si nécessaire, pour concevoir également des interfaces utilisateur et des formulaires de saisie de données dans des éditeurs visuels, et possède également son propre moteur et éditeur BPM, génération de sous-système et de modèle de rapport, recherche en texte intégral, Service d'adresse FIAS, service de signatures électroniques, service de stockage de fichiers.

Initialement, le système a été conçu pour simplifier et automatiser quelque part les activités des spécialistes impliqués dans la conversion de services sous forme électronique, mais au fil du temps, nous avons réalisé que la fonctionnalité de la plateforme vous permet de créer des solutions très puissantes allant du CRM, ERP, ECM à des systèmes hautement spécialisés.

Sur la base de la plate-forme, les partenaires ont écrit le système Safe City pour la République de Bouriatie, et maintenant il se développe et se réplique dans d'autres régions.

«Safe City» dans les captures d'écran





















Le transfert d'un service d'émission de cartes de transport à Tioumen a réduit le temps nécessaire pour fournir un service de 10 jours à 6 secondes.

En conséquence, en plus de résoudre des tâches de travail, pour lesquelles un système a été développé, qui ont été mises en œuvre dans plus de 30 régions du pays, nous avons mis en œuvre 3 projets commerciaux, ainsi que l'automatisation interne des activités de l'entreprise sur la plate-forme.

Un peu sur la plate-forme et à quoi tout cela ressemble.


Technologies et produits utilisés sous le capot en bref: Angular, Java, Wildlfy, OrientDB, Solr, Hazelcast.

Une courte liste des principales fonctionnalités de la plateforme:
Tous fonctionnent avec la plateforme via le navigateur. Il n'y a pas d'IDE et de studios.

Éditeur de modèle UML


UML - conception visuelle de métamodèles d'entités commerciales, établissement de relations entre elles. Tout cela est clair. Le schéma de données général vous permet de créer des structures de données qui peuvent être utilisées par de nouveaux systèmes, par exemple, la nature décrite d'une personne ou d'une organisation est utilisée et liée dans de nouveaux développements (principes OOP appliqués), ainsi que des données - cela permet d'éliminer la duplication d'un système à l'autre.



Éditeur d'interface visuelle intégré




Éditeur de formulaire visuel intégré:


les formulaires sont désormais uniformes, structurés et typifiés. Le maximum de travail est automatisé, il est possible de générer des formulaires pour les objets. Le temps de travail de l'analyste pour les opérations de routine a été réduit de près de 10 fois, il y a plus de temps à consacrer à la logique métier. La plateforme n'autorise pas les erreurs d'édition.



Éditeur de processus métier visuel intégré





Bibliothèque de composants visuels


standard et spécifique, par exemple, un filtre de données universel, des champs de sélection pour des entités liées avec diverses capacités, des tables associées, des facettes.

Cartes interactives



Graphique Js




Modèles - Les utilisateurs finaux peuvent modifier eux-mêmes les modèles et en ajouter de nouveaux.

Enregistrement de l'activité des utilisateurs et historique des modifications des données. Suppression en douceur des enregistrements dans la base de données.

Gestion des droits d'accès au niveau des opérations avec les entités, leurs attributs et instances individuelles, écrans et composants d'interface utilisateur.

Recherche en texte intégral, même si vous n'en surprendrez probablement pas beaucoup, mais il existe encore des systèmes où cela n'existe pas, et dans notre cas, il est dynamique comme tout le système.

API ouvertes pour l'intégration avec des systèmes externes.

Dans tous les cas, nous avons décidé de ne pas limiter nos utilisateurs aux seuls composants intégrés et avons permis aux utilisateurs expérimentés d'utiliser JS pour étendre les fonctionnalités des interfaces utilisateur ou des processus métier créés.

Cette approche nous permet de créer des applications personnalisées à la volée sans déploiements ni redémarrages. Ce qui à son tour permet de réduire le temps de livraison de la valeur au client (Time To Market). Notre expérience montre que le temps et le coût de création d'un système avec personnalisation pour le client sont réduits au moins deux fois.

Par exemple, dans cette vidéo (ici une vidéo accélérée de 10 minutes - youtu.be/Yvvxn_qbook ) à partir de zéro en 30 minutes, un exemple est créé d'un système de suivi qui peut être mis en œuvre dans les entreprises effectuant des travaux sur le terrain.

Plans futurs


Nous travaillons actuellement sur une refonte du client, donc plus près de l'automne, nous ravirons nos utilisateurs avec une nouvelle interface utilisateur plus pratique et plus belle.

Il est très intéressant d'observer comment les systèmes évoluent sur la plate-forme, parfois vous ne vous attendez même pas à ce qu'il soit possible de le faire. Les analystes sont constamment étonnés de voir quels nouveaux systèmes ils obtiennent. La plate-forme est idéale pour les systèmes comptables, en tant que backend pour divers services, ERP, CRM, ECM et systèmes similaires, ainsi que pour les solutions de prototypage.

Il existe peut-être déjà beaucoup de plates-formes similaires et chacune a ses avantages et ses inconvénients, je ne les comparerai pas et ne les évaluerai pas ici. Je comprends qu'au fil du temps, il y aura de plus en plus et leur accessibilité sera plus libre, ici vous pouvez faire une analogie avec les concepteurs de sites (site-designers.rf) dont il y a maintenant des dizaines et il y a une réelle concurrence sur le marché entre eux, ce qui affecte positivement la qualité et les consommateurs .

Je suis très heureux de travailler dans cette entreprise et je suis très fier de ce que nous faisons. Je suis très heureux d'entendre l'admiration et les commentaires agréables de ceux qui se familiarisent avec notre plateforme. J'aimerais que plus de gens découvrent la plateforme et l'utilisent au profit de l'affaire. J'espère recevoir des commentaires des lecteurs - nous sommes toujours ouverts aux critiques et suggestions constructives.

Si l'article va dans la communauté, je prévois d'écrire une série d'articles sur comment et quels problèmes nous avons résolus lors du développement de notre plate-forme et de nos produits, les problèmes de clustering, de maintenance et de surveillance intégrée. sur notre expérience dans l'utilisation de DevOps et comment il est applicable dans le secteur public, comment nous sommes passés à l'utilisation de Docker et plus en détail quelles technologies sont sous le capot de la plateforme et de ses services.

Source: https://habr.com/ru/post/fr450260/


All Articles