Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné
Compétences mondiales est un mouvement international qui organise des concours professionnels pour les jeunes de moins de 22 ans.

La finale internationale a lieu tous les deux ans. Cette année, le lieu final était Kazan (la dernière finale a eu lieu en 2017 à Abu Dhabi, la prochaine aura lieu en 2021 à Shanghai).

Les Championnats du monde des métiers sont les plus grands championnats de compétences professionnelles au monde. Ils ont commencé avec les professions ouvrières, et ces dernières années, une attention croissante a été accordée aux « métiers du futur », y compris les disciplines informatiques, pour lesquelles un énorme cluster distinct a été attribué lors du championnat de Kazan.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Dans le bloc informatique, il existe une compétence (un « sport » spécifique) appelée « Solutions logicielles informatiques pour les entreprises ».

Dans chaque compétition, la liste autorisée des outils utilisés est limitée. Et si, par exemple, pour « l'aménagement paysager », la liste des outils possibles est limitée (bien sûr, sans indiquer de fabricant ou de couleur explicite), alors dans la compétence « Solutions logicielles pour les entreprises », la liste des technologies acceptées que les participants peuvent utiliser est strictement limité, indiquant des technologies spécifiques et des plates-formes spécifiques (.NET et Java avec un ensemble spécifique de frameworks).

La position de 1C sur cette question est la suivante : les technologies de l'information sont un domaine très dynamique, de nouvelles technologies et outils de développement apparaissent constamment dans le monde. De notre point de vue, il est correct de permettre aux spécialistes d'utiliser les outils avec lesquels ils souhaitent et sont habitués à travailler.

À l’automne 2018, la direction de WorldSkills nous a entendus. Il fallait maintenant tester la méthodologie d'intégration des nouvelles technologies dans les compétitions. Ce n'est pas simple.

La plate-forme 1C:Enterprise a été incluse dans la liste des infrastructures du championnat de Kazan et une plate-forme expérimentale de solutions logicielles informatiques pour Business Sandbox a été organisée.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Veuillez noter que la langue officielle du championnat est l'anglais. Tous les documents contenant les résultats de la résolution des tâches (codes sources, documentation d'accompagnement, interfaces logicielles) devaient également être transmis dans cette langue. Malgré les doutes de certains (encore !), on peut écrire en anglais en 1C.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

9 jeunes de 8 pays (Philippines, Taiwan, Corée, Finlande, Maroc, Russie, Kazakhstan, Malaisie) ont participé à la compétition sur ce site.

Le jury - une équipe d'experts - était présidé par un expert des Philippines, Joey Manansala.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Des experts de Finlande, des Émirats arabes unis, du Costa Rica, de Corée, de Russie et de Taiwan étaient représentés.

Par ailleurs, nous notons que des participants de Russie (Pavkin Kirill, Sultanova Aigul) et du Kazakhstan (Vitovsky Ludwig) ont décidé d'utiliser la plateforme 1C:Enterprise dans le cadre du concours. Le reste des participants utilisaient .NET pour le bureau et Android Studio pour le développement mobile. Il est intéressant de noter que les participants qui ont choisi 1C sont très jeunes (Kirill est étudiant dans une école de Stavropol, cette année il est entré en 11e année, Aigul est étudiant, Kazan, Tatarstan), alors que leurs adversaires étaient beaucoup plus expérimentés ( par exemple, un participant coréen - vainqueur du championnat WorldSkills 2013 à Leipzig ; tous ont une expérience de participation à WorldSkills et plusieurs années d'expérience professionnelle dans l'industrie).

Considérant que lors du concours les participants ont utilisé diverses technologies modernes, nous avons eu l'occasion de tester la plateforme 1C:Enterprise dans des conditions véritablement de combat, de comparer à la fois la qualité des solutions obtenues grâce à son aide et la rapidité de développement obtenue grâce à son utilisation.

Par ailleurs, nous notons que dans le cadre de la plateforme spéciale IT Software Solutions for Business Sandbox, les participants ont effectué les mêmes tâches que les participants de la principale plateforme IT Software Solutions for Business.

La tâche elle-même est une tâche complexe pour automatiser une certaine entreprise ; cette année, l'exemple d'entreprise était la société fictive KazanNeft.

légende

Kazan Oil est l'une des plus grandes entreprises pétrolières de la République du Tatarstan, opérant en tant qu'acteur du marché national et marque internationalement reconnue dans ce domaine. Le siège social de la société, spécialisée dans l'exploration, la production, la production, le raffinage, le transport ainsi que la vente et la distribution de pétrole, de produits pétroliers et de gaz naturel, est situé à Kazan (Russie).

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Étant donné que l'entreprise met en œuvre une stratégie d'expansion rapide et de création de nouveaux bureaux dans toute la Russie, la direction de l'entreprise a décidé d'introduire un nouveau logiciel d'automatisation commerciale visant à maintenir et gérer certaines opérations.

Conditions du championnat

Les tâches ont été confiées aux participants sous forme de modules (sessions) avec l'obligation de les réaliser dans un temps limité. Il y avait 7 modules au total. Trois sessions de résolution sur un ordinateur de bureau – 2.5 heures chacune. Trois sessions - développement client-serveur, où le client était une application mobile, et la communication entre le client et le serveur s'effectuait via WEB-API. Cela a pris 3.5 heures. Dernière session – tâches de rétro-ingénierie de logiciels existants, 2.5 heures. Dans le cadre de l'ingénierie inverse, les participants devaient, à partir des informations qui leur étaient fournies, concevoir la structure de la base de données de l'application (en construisant un diagramme ER), analyser des scénarios d'utilisation du système (en construisant un diagramme de cas d'utilisation), mais aussi développer et concevoir l'interface de la solution logicielle selon les exigences fonctionnelles fournies.

Les principales plateformes de développement utilisées étaient .NET (C#) et Java (dont Android Studio pour le développement mobile). Le SandBox expérimental utilisait .NET, Java et 1C:Enterprise version 8.3.13.

À la fin de chaque session, les experts ont évalué le résultat - un projet réalisable prêt à l'emploi qui met en œuvre les tâches définies au début de la session.

La particularité des tâches est leur « vitalité » - de nombreuses exigences et un temps limité. La plupart des problèmes ne sont pas des problèmes spéciaux des Olympiades, mais sont très proches de problèmes industriels réels - les spécialistes y sont confrontés quotidiennement. Mais les tâches sont nombreuses et le temps est limité. Le participant doit résoudre le maximum de problèmes qui bénéficieront le plus à l'entreprise. Ce n'est pas du tout un fait qu'une tâche complexe d'un point de vue algorithmique aura plus de poids qu'une tâche élémentaire. Par exemple, créer un système comptable fonctionnel composé de trois tableaux est plus important pour une entreprise qu'un beau formulaire de reporting avec des algorithmes complexes, totalement inutiles sans ces tableaux.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Nous avons demandé au gagnant du concours, un participant russe, Kirill Pavkin, de nous en dire plus sur les tâches à accomplir et sur la manière dont il a abordé leur solution.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Vous trouverez ci-dessous une description de la tâche, la propre histoire de Kirill sur la façon dont il a résolu la tâche. Nous avons également demandé à Vitaly Rybalka, employé de 1C et l'un des experts IT Solutions for Business Sandbox, de commenter les solutions de Kirill.

Dans le cadre de la mission, il était nécessaire d'automatiser les activités de plusieurs types d'utilisateurs :

  • Responsable de la comptabilité des actifs de l'entreprise
  • Responsable des réparations imprévues et de l'entretien programmé des actifs de l'entreprise
  • Responsables des achats composants et consommables
  • Divisions d'exploration et de production pétrolières
  • La haute direction avait besoin de rapports analytiques

Séance 1

Du point de vue des actifs (par exemple, une flotte de véhicules), il a fallu mettre en place leur comptabilité (en établir de nouvelles, éditer celles en cours), une recherche rapide et divers types de filtres pour l'affichage des informations, le déplacement des actifs entre les divisions de l'entreprise. et les groupes d'actifs eux-mêmes. Conservez un historique de ces mouvements et fournissez des analyses à leur sujet à l’avenir. La comptabilité des actifs a été principalement mise en œuvre pour les groupes d'utilisateurs mobiles.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Kirill: Une sous-tâche intéressante était l'implémentation de boutons dans la liste des actifs. Pour résoudre cela, nous avons utilisé une liste dynamique : nous écrivons une requête arbitraire, et lors de la réception des données sur le serveur, nous attribuons des liens de navigation vers les images de la bibliothèque d'images aux champs obligatoires.

Par convention, les photos peuvent être attachées à un actif de deux manières : prendre une photo (multimédia) et sélectionner dans la galerie (boîte de dialogue de sélection de fichier).

Certaines formes ont dû être redessinées lors de la rotation de l'écran :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Lors de la modification des paramètres de l'écran, nous modifions la visibilité des groupes de boutons.

Les tâches divertissantes mais simples incluent des filtres dans une liste dynamique, une recherche dans deux champs (numéro et nom) et la génération d'un numéro de série d'actif.

Commentaire d'expert: du point de vue de la solution sur la plateforme 1C:Enterprise, la tâche est assez claire. En plus de la création proprement dite de l'application mobile, il fallait s'occuper du transfert des données du « serveur » SGBD (MS SQL sur le bureau) vers l'application mobile et inversement. À cette fin, les mécanismes de sources de données externes et de services http ont été utilisés dans l'« application proxy » de bureau. Pour la plateforme mobile elle-même, l’affichage d’images dans une liste dynamique présentait une complexité accrue.

Séance 2

Il était nécessaire d’établir une gestion de réparation des actifs de la Société. Dans le cadre de cette tâche, il fallait tenir à jour une liste des demandes de réparations (par départements et groupes), prendre en compte les priorités d'urgence des réparations, planifier un planning de réparation en fonction des priorités, commander les composants nécessaires et prendre compte de ceux déjà disponibles. Une sous-tâche intéressante était que certains composants avaient une date d'expiration ; si une pièce a déjà été commandée pour un bien donné et que son délai n'est pas expiré, alors pour ce bien il n'est pas nécessaire de racheter la même pièce. L'interface de réparation a été développée pour le composant bureau du logiciel de l'entreprise.

Il a également fallu créer un formulaire d'autorisation non trivial pour deux rôles : la personne responsable et le gestionnaire de service. La particularité est qu'après autorisation, vous devez sélectionner automatiquement l'un des rôles.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Le formulaire de liste dont dispose le responsable est présenté ci-dessous :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Kirill: Seule la mise en évidence des demandes de service en attente peut être mise en évidence ici. Résolu par mise en forme conditionnelle dans une liste dynamique.

En cliquant sur le bouton en bas de l'écran, l'utilisateur peut accéder au formulaire suivant :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

D'un point de vue 1C, il n'y a rien de compliqué sous cette forme.

Le formulaire à disposition du responsable du service est ci-dessous :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Ce formulaire est trié par priorité et date de demande. En cliquant sur le bouton ci-dessous, l'utilisateur peut accéder au formulaire de la demande sélectionnée :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

En plus d'être infaillible, ce formulaire proposait de mettre en place une liste de pièces détachées pour les réparations. La sous-tâche est intéressante car les pièces ont une date de péremption. Cela signifie que si une urgence s'est déjà produite avec cet actif et qu'une pièce a été commandée pour celui-ci, dont la période de validité n'a pas expiré, il peut alors être réutilisé. Cela devrait être montré à l'utilisateur.

Commentaire d'expert: ici Kirill lui-même a correctement placé les accents. Du point de vue de la mise en œuvre sur la plateforme 1C:Enterprise, il n'y a rien d'extrêmement compliqué. Une analyse minutieuse des conditions de comptabilisation et d'utilisation des pièces de rechange et une mise en œuvre compétente de la tâche dans son ensemble étaient nécessaires. De plus, il était nécessaire d’enregistrer correctement les demandes de service. La principale difficulté était uniquement la pression du temps de 2.5 heures.

De plus, comme dans le développement mobile, le participant devait obtenir avec compétence les données d'un SGBD externe (MS SQL).

Séance 3

Pour la maintenance (maintenance), il a été proposé de mettre en place un service de planification à long terme. Une fonctionnalité intéressante ici était la nécessité de créer un calendrier de maintenance pour les actifs selon le calendrier - par exemple, tous les deux mois, le 3. De même, selon certains indicateurs quantitatifs - par exemple, selon le compteur kilométrique d'une voiture (vidange d'huile tous les 5000 20000 km, remplacement des pneus tous les XNUMX XNUMX km). Le responsable de la maintenance aurait dû recevoir une application mobile pratique qui affiche dynamiquement une liste des maintenances en retard, en cours et terminées pour une période spécifiée. De plus, chaque type d'entretien devait être peint en couleur selon des règles spécialement convenues. L'application mobile était censée assurer la création de nouveaux plannings de maintenance et le marquage de ceux déjà réalisés directement dans les ateliers avec mise à jour rapide de ces informations sur le serveur.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Kirill: Il existe deux types de réparations : basées sur le temps et basées sur l'exécution. La variabilité est autorisée au sein de chacun. Par exemple, selon le plan, les réparations devraient avoir lieu tous les vendredis, le 13 du mois, ou tous les 20,000 XNUMX kilomètres. Une tâche est considérée comme terminée s'il y a une coche à sa droite.

Une condition a été fournie pour trier les tâches dans la liste. De plus, chaque ligne doit être surlignée en couleur en fonction des conditions.

En cliquant sur le bouton ci-dessous, vous pouvez créer un nouveau plan de service :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Les champs obligatoires sont affichés en fonction du type de graphique sélectionné. Si nous avons sélectionné un horaire hebdomadaire, deux champs s'afficheront : le numéro de la semaine et le jour de la semaine. Par exemple, le mardi toutes les 3 semaines.

Commentaire d'expert: comme dans le précédent développement mobile sur la plateforme 1C:Enterprise, ici la tâche est globalement divisée en 2 composants - communication avec le « serveur » via web-api et affichage compétent d'une liste dynamique avec conception conditionnelle et filtrage (sélection) de données. De plus, il était intéressant de mettre en œuvre l'obligation de comptabiliser les réparations à la fois par période et par indicateur quantitatif.

Séance 4

Pour les composants et consommables, il a fallu prendre en compte les stocks, les dépenses planifiées et les achats futurs. De plus, la comptabilité par lots est apparue ici, mais pas pour toutes les marchandises. Tout cela devait être géré dans plusieurs entrepôts, y compris les réceptions, les dépenses et les mouvements. Selon les termes de la mission, il était nécessaire d'assurer le contrôle des soldes et d'éviter les conflits lorsqu'on travaillait avec les stocks actuels. Les responsables des achats travaillent dans la version de bureau du logiciel.

Le formulaire principal est présenté ci-dessous :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Kirill: En plus du tri à partir de la condition, il a été proposé de donner à l'utilisateur la possibilité de trier de manière aléatoire. Sur 1C, vous n'avez même pas besoin d'y penser. Le champ avec la quantité de pièces doit être surligné en vert pour les factures.

Lors de cette séance, il leur a été demandé de contrôler les marchandises restantes dans les entrepôts. Ainsi, le message correspondant devrait s'afficher lorsque vous essayez de supprimer la facture. On se souvient ici de l'examen de spécialiste des plateformes. La forme de la facture est la suivante :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Chaque pièce possède une caractéristique qui détermine si elle doit être affectée à un lot spécifique. Pour de telles pièces détachées, il est impératif d'indiquer le numéro de lot dans tous les documents. Il s'agit d'une mesure supplémentaire lors de la surveillance des résidus de pièces. Ils peuvent également être déplacés entre entrepôts :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Le formulaire ne diffère du précédent que par le fait qu'à la place du client, vous devez indiquer l'entrepôt à partir duquel la livraison sera effectuée. La liste de sélection du lot est automatiquement compilée une fois la pièce sélectionnée. L'utilisateur peut générer un rapport sur les soldes de pièces de rechange :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Ici, nous pouvons voir les marchandises restantes dans l'entrepôt sélectionné. Les cases à cocher à droite de l'entrepôt permettent de paramétrer le filtrage et le tri. La liste ne comporte pas de division explicite par lot pour les parties pour lesquelles elle est requise. Les soldes pour chaque numéro de lot de la pièce de rechange sélectionnée peuvent être consultés à l'aide du lien de navigation à droite.

Commentaire d'expert: dans cette session (module) la comptabilité par lots est apparue pour la première fois. Les participants devaient rendre compte des consommables et des marchandises non seulement par eux-mêmes, mais également par lots. En général, la tâche est parfaite pour la plate-forme 1C:Enterprise - mais tout a dû être développé à partir de zéro et terminé en 2.5 heures.

Séance 5

Lors de la cinquième séance, on nous a assigné la fonctionnalité de gestion des puits. Pour les groupes d'exploration, il était nécessaire de créer une application mobile qui prendrait en compte les puits de production de pétrole ou de gaz. Ici, il fallait recevoir du serveur une liste des puits actuels et afficher graphiquement le puits sélectionné par couches (sol, sable, pierre, pétrole), en tenant compte des profondeurs de chaque couche. De plus, l'application devait permettre de mettre à jour les informations sur le puits et d'ajouter de nouveaux puits. Pour cette application, le client a défini des conditions de fonctionnement particulières en modes hors ligne et en ligne (contrôle de la communication avec le serveur) - vérification de la communication avec le serveur toutes les 5 secondes et modification des fonctionnalités de l'application en fonction de la disponibilité du serveur.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Kirill: Lorsque vous sélectionnez un puits, un graphique à barres s'affiche, qui met en évidence les couches jusqu'aux gisements de pétrole ou de gaz. Pour chaque calque, son nom, sa couleur et sa plage d'occurrences sont stockés. En raison des caractéristiques de conception, les diagrammes intégrés à la plate-forme n'aident pas, mais le tableur s'acquitte parfaitement de la tâche. Les puits peuvent être créés et modifiés :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Hormis de multiples protections à toute épreuve, ce formulaire n’avait rien d’intéressant.
Ensuite, il a été proposé de contrôler la connexion au serveur. Nous essayons de nous connecter toutes les 5 secondes. Si cela ne fonctionne pas, nous limitons les fonctionnalités de l'application et affichons un message.

Commentaire d'expert: La tâche de cette session est intéressante principalement en raison de ses capacités graphiques. Les participants utilisant la plate-forme 1C:Enterprise l'ont résolu de deux manières différentes : certaines en utilisant un mécanisme de diagramme, d'autres en utilisant une feuille de calcul. Chaque méthode a ses avantages et ses inconvénients. Dans le cadre de la décision lors du Championnat WorldSkills, le temps était la clé (rappelez-vous encore une fois la limite de temps). Une tâche intéressante distincte consiste à pinger le serveur toutes les 5 secondes et à modifier le comportement de l'application mobile en fonction de la disponibilité ou de l'indisponibilité du serveur.

Séance 6

Il a été proposé de créer un espace de travail pour le top management – ​​​​Dashboard. Sur un écran, il était nécessaire d'afficher les indicateurs généraux de performance de l'entreprise pour une période déterminée sous forme graphique et tabulaire. Le formulaire principal est le rapport de coûts :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

En plus du Dashboard, il a été nécessaire de mettre en œuvre la distribution de pièces de rechange pour la réparation des actifs selon les méthodes d'amortissement FIFO/LIFO/« Le moins cher va en premier ».

Lors de la distribution, la comptabilité par lots a été prise en compte, le contrôle du solde et la protection contre les actions non autorisées des utilisateurs (« protection contre les imbéciles ») ont été utilisés.

Kirill: Pour résoudre, des tableaux de valeurs avec génération logicielle de colonnes ont été utilisés, car il peut y en avoir un nombre arbitraire :

  • Le premier tableau est responsable des coûts totaux des départements par mois. Les divisions les moins rentables et les plus rentables sont respectivement surlignées en rouge et en vert.
  • Le deuxième tableau montre les pièces les plus chères et les plus fréquemment utilisées pour chaque mois. Si plusieurs pièces répondent aux critères, elles doivent être affichées dans une seule cellule, séparées par des virgules.
  • Les actifs les plus chers (en termes de coûts des pièces détachées) sont affichés dans la première ligne du troisième tableau. La deuxième ligne affiche la division à laquelle appartient l'actif ci-dessus. S'il existe deux actifs les plus chers avec les mêmes coûts, ils doivent alors être affichés dans la même cellule, séparés par des virgules.

Les diagrammes ont été affichés à l'aide des mécanismes intégrés de la plateforme et remplis par programme à l'aide de requêtes.

Il a également été proposé de mettre en œuvre un soutien au multilinguisme. Le programme charge des fichiers XML avec la localisation des éléments de l'interface, et le formulaire doit être redessiné lors de la sélection d'une langue dans la liste déroulante.

Lorsque vous cliquez sur le bouton en bas à gauche de l'écran, le formulaire de gestion des stocks s'ouvre :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Sous cette forme, nous commençons enfin à dépenser des pièces en réparations. Ici, nous trouvons d'abord les pièces dont nous aurons besoin pour réparer l'actif. En fonction des champs sélectionnés et du mode de distribution (FIFO, LIFO ou prix minimum), les correspondances trouvées ou un message s'il n'y a pas de correspondance s'affichent. Vous pouvez ensuite marquer les pièces comme étant destinées à réparer cet actif. Le contrôle de la balance est pertinent pour la session en cours. Si nous avons déjà attribué des détails, ils ne peuvent plus être trouvés.

Commentaire d'expert: séance très intéressante. Il exploite au maximum les capacités de la plate-forme 1C:Enterprise - il s'agit ici d'un travail compétent avec des tableaux virtuels de registres d'accumulation et d'un travail programmatique avec des éléments de formulaire (tout d'abord - des tableaux, deuxièmement - des titres) et des diagrammes. Et même LIFO/FIFO lors de l’analyse des stocks, de l’analyse des profits/pertes, etc.

Séance 7

À la fin de la tâche (session 7), le client a fourni un logiciel (fichier exe) pour les activités du projet et une courte vidéo sur son utilisation. Il a fallu réaliser de l'ingénierie inverse et, sur cette base, créer 2 diagrammes : un diagramme de cas d'utilisation et un diagramme entité-relation. De plus, certaines exigences ont été avancées pour la création de logiciels à l'avenir - il était nécessaire de créer une disposition d'interface selon ces exigences.

Selon les conditions du concours, seul MS Visio était requis pour créer des diagrammes.

Commentaire d'expert: dans cette session, les capacités de la plateforme 1C:Enterprise n'ont pratiquement pas été utilisées. Les diagrammes des conditions de compétition ont été créés dans MS Visio. Mais un prototype de l'interface pourrait être créé dans une base d'informations 1C vide.

remarques générales

Au début de chaque session, il était proposé d'importer les données à l'aide d'un script SQL. C'était le principal inconvénient de l'utilisation de 1C par rapport à C#, puisque nous avons passé au moins une demi-heure à distiller des données dans des sources de données externes, à créer nos propres tableaux et à déplacer des lignes de sources externes vers nos tableaux. Le reste devait simplement cliquer sur le bouton Exécuter dans Microsoft SQL Studio.

Pour des raisons évidentes, stocker des données sur un appareil mobile n’est pas une bonne idée. Ainsi, lors des sessions mobiles, nous avons créé une base de serveurs. Ils y stockaient des données et y donnaient accès via des services http.

Commentaire d'expert: l'équilibre 1C/non-1C est intéressant ici - alors que les programmeurs 1C:Enterprise passaient beaucoup de temps à se connecter à un SGBD externe (Kirill l'a mentionné séparément ci-dessus), les développeurs C#/Java (Android Studio pour le développement mobile) passaient du temps sur d'autres domaines - interfaces, écrire plus de code. Les résultats de chaque session étaient donc imprévisibles et extrêmement intéressants pour tous les experts. Et cette intrigue est restée jusqu'au bout - il suffit de regarder le tableau final des gagnants avec la répartition des points.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné
Kirill a terminé l'histoire :)

En conclusion, il convient de rappeler que l'exécutant n'avait pas besoin de « simplement programmer la tâche selon les spécifications techniques » - il devait analyser la tâche, sélectionner des blocs pour la mise en œuvre des sous-tâches, les concevoir et décider ce qu'il serait exactement. capable de mettre en œuvre cela dans le temps extrêmement court imparti. Tous les 4 jours, j'ai dû agir sous une forte pression de temps, recommençant souvent chaque session suivante à partir de zéro. Même un spécialiste adulte ayant de nombreuses années d'expérience dans l'industrie aura de grandes difficultés à accomplir à 100 % la tâche assignée à la session dans le temps imparti.

Le système d'évaluation adopté mérite une mention particulière.

Pour chaque session, les auteurs des tâches développent un système complexe de critères, comprenant la vérification de la fonctionnalité, le bon fonctionnement, les exigences relatives à l'interface de l'application, et même le respect d'un guide de style spécialement fourni aux participants par l'entreprise pour laquelle ils développent leurs solutions.

Les critères d'évaluation sont très finement granulés - le coût total de la tâche de la session étant de plusieurs dizaines de points, le fait de remplir certains critères peut ajouter des dixièmes de point au participant. Cela permet d'atteindre un niveau extrêmement élevé et objectif d'évaluation des résultats de chaque participant au concours.

résultats

Les résultats finaux étaient impressionnants.

Dans une lutte acharnée, le Russe Kirill Pavkin, qui utilisait la plateforme 1C:Enterprise, a gagné. Kirill a 17 ans, il est originaire de Stavropol.

Littéralement des dixièmes de points séparaient le vainqueur de ses poursuivants. La deuxième place a été remportée par un participant de Taiwan. Le tableau global des six meilleurs résultats ressemble à ceci :

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Bien entendu, Kirill a gagné grâce à son talent, ses connaissances et ses compétences.

Cependant, nous notons que les trois participants qui ont utilisé la plate-forme 1C:Enterprise comme outil ont été inclus dans le top cinq - ce qui est une confirmation inconditionnelle du niveau mondial de la technologie 1C:Enterprise.

Suite aux résultats du concours, les gagnants ont été récompensés au centre des médias de KazanExpo ; les gars ont reçu des médailles d'or pur (en fonction de leur place) et des prix en espèces. Les gars ont également reçu des certificats leur permettant d'effectuer un stage chez 1C.

Finale WorldSkills, développement de solutions informatiques pour les entreprises - qu'est-ce que c'est, comment cela s'est produit et pourquoi les programmeurs 1C y ont gagné

Source: habr.com

Ajouter un commentaire