
Dans le dernier article «
Qu'est-ce qu'un système d'information informatique », j'ai soulevé une question importante sur les concepts de base et la compréhension de la terminologie dans l'interaction d'un utilisateur (client) et de programmeurs. Comme promis, je continue à développer ce sujet. Et je veux parler de la bonne planification du processus de développement et de mise en œuvre des produits logiciels.
Par la nature de mon activité, je rencontre constamment un travail de design. Et au début de tout projet, je suis confronté à la tâche difficile d'une planification compétente. Pourquoi est-ce si important? Un bon plan représente presque la moitié du succès. Sans planification, il est presque impossible de construire un travail clairement, harmonieusement, pour atteindre les objectifs et respecter les délais. Ceci est particulièrement important en ce qui concerne le travail d'équipe.
En principe, beaucoup a été écrit sur l'importance de la planification. Et je ne répéterai pas ici les vérités bien connues. C'est simple: si vous savez où vous devez venir et êtes en mesure de tracer la bonne route, vous atteindrez l'objectif. Sinon - hélas, personne ne peut deviner à l'avance où vous vous retrouverez.
Pièges de la planification informatique
Tout plan pour atteindre l'objectif devrait tenir compte de ces facteurs:
- L'objectif déclaré, c'est-à-dire résultat à obtenir.
- Facteurs externes: matériaux, environnement, caractéristiques des participants au projet et des futurs consommateurs, et bien plus encore.
Si nous parlons d'objets du monde matériel, par exemple de la construction d'une maison, tout est relativement simple. Il y a un client qui fait part de ses souhaits. Il y a un terrain avec certaines caractéristiques. Il existe des matériaux de construction avec différents paramètres et coûts. Et il y a un certain budget. Sur cette base, la version finale du projet, le devis est déterminé, les étapes des travaux sont prévues. Même si vous n'avez jamais rencontré de construction, vous avez vu de nombreuses maisons, y compris pendant le processus de construction. Le résultat est matériel, tout comme les facteurs externes. Par conséquent, le choix d'une solution et la préparation d'un plan posent rarement des difficultés.
Lorsque vous travaillez avec des systèmes informatiques, vous êtes confronté au problème de l’absence de facteurs matériels et de résultats. Cela ne fonctionnera pas ici, car, par exemple, lors du choix de la fondation d'une maison, reposez-vous sur des données initiales et des lois de la physique sans ambiguïté. De plus, l'introduction de chaque produit logiciel est un projet unique.
Chaque équipe, comme chaque personne, est unique à sa manière. Et ils ont toujours leurs propres besoins et souhaits. Ils commandent le développement et l'implémentation de logiciels afin d'obtenir une solution «pour eux-mêmes» lorsque les programmes standards existants ne suffisent pas.
Lors de la planification d'un projet dans le domaine informatique, il est nécessaire:
- Pour étudier les caractéristiques et les besoins du client;
- Comprendre clairement la tâche et prendre en compte tous les souhaits;
- Coordonner avec le client les solutions sélectionnées.
Et ce n'est qu'après cela que nous pourrons procéder à l'élaboration d'un plan d'action. Dans ce cas, le client peut être toute personne, organisation commerciale ou à but non lucratif. L'essentiel est qu'il y ait toujours quelqu'un qui commande le projet et l'utilisera à l'avenir.
La pratique montre que le simple travail préparatoire avec le client pose souvent des problèmes. Et ici, une approche basée sur la définition peut venir à la rescousse:
Un système d'information informatique est une idée exprimée à travers un langage de programmation.
J'ai donné une description détaillée et une justification d'une telle définition dans l'article
«Qu'est-ce qu'un système d'information informatique» . Pour une meilleure compréhension, je vous recommande de vous familiariser avec toute personne qui ne l'a pas lu.
Idée et sélection de produits logiciels
La première chose et la plus évidente à comprendre: pour qu'un produit logiciel sélectionné ou créé pour répondre à votre idée, une combinaison de deux facteurs est nécessaire:
- La présence de l'idée elle-même;
- Sa description distincte et sans ambiguïté pour les autres participants au projet.
Et au stade d'une description sans ambiguïté et compréhensible à des tiers de l'idée de projet, les soi-disant schémas BPM s'avèrent très utiles. En d'autres termes, des notations graphiques pour décrire les processus métier. Vous pouvez trouver plus de détails sur ce que c'est et comment les notations BPM sont faites dans mon article «
Qu'est-ce qu'un processus métier et description d'un processus métier ».
Dans le même temps, il est important de comprendre qu'il ne s'agit pas nécessairement de processus métier.En utilisant les outils BPM, vous pouvez décrire avec succès tout travail et autres types de processus, c'est-à-dire simuler clairement les options de traduction des idées.
Deux approches peuvent être utilisées pour décrire une entreprise ou effectuer une tâche - processus et fonctionnel. J'ai également écrit en détail sur leurs différences et leurs fonctionnalités dans l'article «
Modélisation métier. Approches clés . "
Lors de la recherche d'une solution (formulation de l'idée elle-même), beaucoup préfèrent une version fonctionnelle de la modélisation. Il s’aide à comprendre l’essence du problème et les outils nécessaires pour le résoudre. Et pour la solution efficace de la tâche et la préparation du plan de travail, comme mon expérience personnelle le montre, la modélisation des processus est optimale.
Comment faire:
- Une notation graphique (description) du processus métier est créée. Je recommande d'utiliser le format BPMN 2.0 comme l'outil le plus avancé et le plus sophistiqué, dont l'utilisation réduit la probabilité d'erreurs et de solutions ambiguës.
- L'idée exprimée sous forme de notations BPMN est discutée avec les parties intéressées (clients, utilisateurs, dans certains cas, développeurs).
- Selon l'idée convenue, ils choisissent un logiciel ou décident d'écrire un produit logiciel à partir de zéro.
- Un plan de travail est établi en tenant compte des outils sélectionnés, des solutions et d'une idée détaillée (notation BPMN).
Comment créer un modèle BPMN
Pour réussir la compilation des notations BPM, une personne doit avoir certaines connaissances:
- Comprendre les caractéristiques de l'organisation (interaction avec l'utilisateur). Sans cela, le mode de réalisation de l'idée contiendra très probablement des erreurs. En conséquence, le système sera gênant ou impossible à utiliser.
- Connaître les caractéristiques des algorithmes et, au minimum, les bases de la programmation. Cela est nécessaire pour définir des exigences correctes et réalistes pour les systèmes logiciels.
- Avoir des compétences pour travailler avec des notations graphiques. Ce format, comme toute infographie, est l'option la plus visuelle et compréhensible pour tous les participants au projet d'afficher la tâche.
En coopération avec des entreprises ou des organisations à but non lucratif, le processus de coopération est structuré comme suit:
- L'énoncé général du problème est formulé par le chef d'entreprise;
- Clarification des étapes de travail et des fonctionnalités de mise en œuvre - chefs et employés des départements qui travailleront avec le produit logiciel.
Dans certains cas, l'énoncé du problème dans son ensemble et les détails peuvent être effectués par une personne suffisamment informée de toutes les nuances importantes.
De plus, la description qui en résulte est établie sous forme de notation graphique, où plusieurs niveaux de détail sont également présents. Leur nombre dépend de la complexité du système.
L'étape suivante est le raffinement et la coordination. Ici, la notation finie est étudiée par les dirigeants et les employés de l'organisation, si nécessaire, ils apportent des clarifications. Au même stade, des changements sont possibles dans les détails de l'idée elle-même, ce qui aidera à optimiser le travail, y compris au niveau des employés et de l'interaction des services. Il est important de comprendre ici: le modèle graphique permet de voir de nombreuses «rugosités», duplication inutile de fonctions, etc. Et, bien sûr, lorsque nous formulons l'idée sous forme de notation, nous pouvons et devons discuter de ces lacunes du flux de travail et réfléchir à la façon de les optimiser.
Sélection de produits logiciels
Vous avez déjà une idée cohérente et détaillée, incarnée sous forme de notation graphique. Ce qui est très important - la notation a traversé toutes les discussions, la direction de l'entreprise a signé la version finale. Il est possible de procéder en toute confiance dans la compréhension mutuelle pour la sélection ou la création d'un produit logiciel.
De nos jours, il est extrêmement rare que des organisations commerciales et à but non lucratif écrivent des solutions logicielles à partir de zéro. C'est cher et long. De plus, pour la plupart des idées, il existe des solutions (standard) prêtes à l'emploi qui suffisent à configurer et / ou à modifier un peu.
Et ici, il est très important que parmi tous les systèmes logiciels qui conviennent au sujet et à la fonctionnalité, vous devez choisir celui dont l'idée correspond le mieux à celle du client.
Par exemple, l'idée est: "nous avons besoin d'une automatisation du service commercial".
Étape 1. Un système CRM est le mieux adapté à la mise en œuvre. Ces solutions logicielles sont développées spécifiquement pour les équipes commerciales.
Étape 2. De tous les CRM existants, vous devez sélectionner ceux dont la fonctionnalité est la plus appropriée pour l'algorithme de travail sélectionné (mise en œuvre de l'idée).
Étape 3. Le choix des CRM appropriés dans la liste consiste à étudier leurs fonctionnalités supplémentaires: des solutions prêtes à l'emploi pour l'intégration avec d'autres produits logiciels, la présence d'outils intégrés utiles à l'idée et le rapport qualité / prix.
Il est important de comprendre: dans la mise en œuvre de toute idée, les gens font partie intégrante du processus. Et s'ils ne prennent pas la décision choisie, le produit logiciel, pour tous ses avantages, du point de vue des développeurs, s'avérera inadapté à la mise en œuvre de l'idée.
De plus, la description du processus d'entreprise (l'incarnation d'une idée) est tout d'abord une description des activités des personnes. Les idées concernent l'activité humaine. L'automatisation n'est qu'un facteur auxiliaire. Par conséquent, toute description des processus métier est, tout d'abord, une description du travail des personnes. Et seulement alors - la partie technique de la question.
Malheureusement, dans la pratique, je suis tombé sur une approche erronée lorsque la notation BPMN est entièrement consacrée à la partie technique et, en fait, est une autre façon d'écrire un algorithme pour les programmeurs. Dans ce cas, les gens et leur interaction avec les solutions logicielles sont dans les coulisses. Et lors de la mise en pratique d'une solution, des superpositions et des malentendus surviennent souvent. En conséquence, l'idée est réalisée pendant une période longue et difficile. Ou cela s'avère être un échec. Tout simplement parce que dans sa description, ils ont oublié le facteur le plus important - les actions des gens.
Avantages de l'approche processus
L'homme pense de manière séquentielle. En même temps, il est extrêmement difficile de réfléchir à plusieurs actions différentes et de couvrir plusieurs tâches ou directions. L'homme pense étape par étape, résolvant les tâches l'une après l'autre à mesure qu'elles arrivent. Et donc, l'incarnation de l'idée sous la forme d'une séquence d'actions est la plus appropriée. Il vous permet de réfléchir à tous les détails et de ne rien manquer d'important.
Unicité de la décision et facilité de coordination par les participants au projet. Les notations graphiques sont faciles à lire, elles sont intuitives pour le chef de l'entreprise cliente, elles sont proches des organigrammes d'algorithmisation, et donc pratiques pour les développeurs. En conséquence, ils sont faciles à coordonner et, pendant la mise en œuvre, il n'y a pratiquement pas de divergence.
Le format BPMN aidera à éviter les erreurs. L'environnement de développement des notations graphiques et la simplicité de l'affichage aident à remarquer la plupart des erreurs dans le temps, pour éviter les contradictions logiques et les processus "incomplets".
Vous pouvez en savoir plus sur les notations BPMN, les éléments de base et les principes de leur utilisation, ainsi qu'un exemple pratique dans mon article «
Une brève description de BPMN avec un exemple ». D'autres exemples figureront dans de futures publications.