Mythes et légendes de l'analyse de système ou de ce qu'un analyste d'une banque fait

Salut Je m'appelle Nastya, je suis analyste chez Alfa-Business mobile application. Parfois, ils me demandent ce que je fais au travail. Amis, famille et, curieusement, développeurs. Chaque fois que je réponds différemment, j'essaie de donner des exemples les plus proches de mon interlocuteur.

«Un analyste système traduit les besoins des utilisateurs d'un langage humain en un langage de développement ...» - cela semble assez clair pour une personne qui n'est pas connectée à l'informatique. Mais si vous êtes directement impliqué dans le développement, il est peu probable qu'une telle définition soit suffisante. Pour une petite expérience, j'ai posé à mon équipe la question: "Que fait un analyste système?" Nous avons lu sous la coupe, ce qui en est ressorti.


Pour moi, un analyste système est une personne qui peut donner une réponse à n'importe quelle question: de «Comment la fonctionnalité devrait fonctionner» à «Pourquoi la Terre est ronde» (c)
Quant à la Terre, c'est peut-être trop, mais sinon assez précis. Où stocker les données, comment les transférer, comment la fonctionnalité fonctionne, pourquoi la fonctionnalité ne fonctionne pas ... Chaque fois que quelque chose d'incompréhensible est trouvé dans le backlog du produit, la phrase «l'analyse est nécessaire» suit.

Pour comprendre le fonctionnement du système, l'analyste se tourne vers des documents internes. Habituellement, la réponse est parmi le texte, les diagrammes et les tableaux. Mais parfois, les gens partent sans écrire de documentation. Ou ce n'est pas pertinent. Ou peu fiable. Le karma de tels analystes souffre terriblement, mais, heureusement, il existe d'autres moyens de trouver des informations.

Une utilisation sûre des systèmes de journalisation peut réduire la fiction d'un savoir traditionnel de 30 pages à quelques requêtes. L'essentiel est de savoir quoi chercher. Les journaux contiennent des informations sur les méthodes appelées, les paramètres d'entrée et de sortie, les causes des erreurs. Si le service est composite - une opération étape par étape. L'analyste doit comprendre la structure des journaux et pouvoir les filtrer: généralement une énorme quantité de données est enregistrée.

Les informations trouvées dans les journaux sont bien complétées par une recherche par code d'application. Le projet contient des informations sur les sources de données, la logique de traitement des variables et bien d'autres choses nécessaires. Le succès de l'événement dépend des compétences de l'analyste et des caractéristiques de l'entreprise. Dans certaines organisations, les analystes n'ont pas accès au code. Que ce soit bien ou mal est une question difficile. Dans tous les cas, s'il n'y a pas d'accès (ou de compréhension de ce qui se passe), vous pouvez toujours demander au développeur.

Si un problème apparaît que personne n'a résolu, des sources externes sont utilisées. Ok Google, modèles cosmologiques de l'univers? Tous les moyens sont bons ici: articles, forums, formations, documentation pour les systèmes tiers. Parfois, les Indiens de YouTube viennent à la rescousse, mais c'est un cas extrême. Soit dit en passant, il faut être capable de chercher en deux langues, enfin ou immédiatement en anglais hindou .

Les gens sont une autre source d'information. Un analyste qui connaît le sujet peut résoudre une tâche en cinq minutes, pour lesquelles vous avez décrit quelques jours. Par conséquent, vous devez savoir ce que font vos collègues et être en mesure de formuler correctement votre question.
L'analyste, en tant que navigateur, ouvre la voie à l'objectif, évite les obstacles et recherche constamment des chemins plus courts (c) développeur front-end
Pour aller de Saint-Pétersbourg à Saratov, vous avez besoin d'une voiture fiable et d'une carte de voiture. Eh bien, s'il y a une trousse de premiers soins, une roue de secours, des outils. La capacité de communiquer avec les résidents locaux ne sera pas superflue, eh bien, en général, comprendre pourquoi vous allez à Saratov, et non au territoire de Krasnodar, par exemple. Avec l'analyse aussi. Vous devez avoir les outils pour travailler, la capacité d'interagir avec les gens et une compréhension claire du résultat attendu. La connaissance des systèmes et des technologies devient une feuille de route.

Toute tâche a au moins deux solutions. Il est important de choisir un chemin qui ne sera pas plus court mais plus correct. Il est plus correct en termes d'architecture, de satisfaction des exigences des produits et des coûts de mise en œuvre. Parfois, l'analyste ne fournit des informations que pour une décision d'équipe; dans d'autres cas, il fait lui-même le choix.

Pour offrir une mise en œuvre adéquate, vous devez comprendre la structure du système: des modèles architecturaux aux technologies de développement. En mettant en œuvre le changement, l'analyste évalue l'impact sur les composants d'application et les autres systèmes intégrés. Lors du développement d'une application mobile, vous devez vous souvenir des utilisateurs avec des anciennes versions. Si le système a plusieurs fronts - sur l'uniformité de leur travail. Lorsque vous utilisez plusieurs sources de données - sur leur cohérence. En général, il y a suffisamment de maux de tête de caractéristiques fascinantes dans le travail.
Eh bien, je ne sais pas, tu es juste un testeur pour moi. Eh bien, ou un mélange d'un produit avec un testeur, quelque chose comme ça (c) un développeur backend
Je suis d'accord, cela semble un peu offensant, mais il y a du vrai ici. Premièrement, l'analyste examine le système pour comprendre comment il fonctionne. Il est ensuite convaincu que le résultat du travail des développeurs fonctionne correctement à tous les niveaux: la base de données contient des données fiables, le service renvoie la bonne réponse, l'utilisateur voit le résultat attendu. En cas de problème, le niveau d'erreur, la cause de l'écart et les options de correction possibles sont découverts. L'évaluation de la conformité du système à différents types d'exigences fait partie intégrante de l'analyse.

L'aspect alimentaire est plus compliqué. Le propriétaire du produit sait ce qui doit être fait pour rendre l'utilisateur heureux. Un analyste système sait comment. Mon opinion subjective est que l'analyste, dans la même mesure que les autres membres de l'équipe, devrait (ou peut) traiter les problèmes de produit. Lorsque toute l'équipe est soucieuse d'améliorer l'expérience utilisateur et d'atteindre les objectifs financiers, de meilleures solutions naissent que lorsqu'une ou plusieurs personnes le font.
Recueille des informations sur les produits, les projets et les systèmes de la banque, participe à sa mise à jour et à sa diffusion, est à l'avant-garde du couteau de l'information (c) Scrum-master
Tout commence par la documentation et se termine par elle. Il est préparé pour un usage interne et, le cas échéant, pour le Client. Les documents sont créés conformément aux normes GOST ou internes. Les méthodes de documentation peuvent également varier d'une couche système à l'autre.

Lors de la rédaction de documents, diverses techniques, normes et notations de modélisation de système sont utilisées. Rarement quand vous devez suivre impeccablement les règles. Il doit être fiable et pertinent. Et si c'est clair la première fois, alors généralement merveilleux. Ici , en passant, il y a un article intéressant dans lequel le problème de la qualité de la documentation est révélé.

En plus des documents système, l'analyste peut rédiger du matériel pour le Wiki d'entreprise. J'ai appris quelque chose de nouveau - dites-le aux autres. Si vous souhaitez partager votre expérience, faites une présentation. Encore une fois, ce n'est pas toujours et pas partout. Mais si l'entreprise dispose d'un processus de gestion des connaissances, les analystes y participeront à coup sûr.

Il y a beaucoup de choses différentes qu'un analyste doit savoir pour correspondre au rôle et aux attentes de l'équipe. En fonction des spécificités du produit et de l'industrie, la composition et le degré de leur importance varient. Ce que fait l'analyste, nous l'avons en quelque sorte compris. Reste à comprendre ce que vous devez savoir pour réussir toutes les tâches. Votre attention est invitée à l'analyse de la feuille de route. Le programme contient les principales compétences dans différentes directions, ainsi qu'une tentative de distinction entre l'analyse du système et l'analyse commerciale.

À quel point la carte est universelle, il m'est difficile de juger. Par conséquent, j'attends les commentaires des développeurs et des analystes d'autres organisations :)

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


All Articles