MONOLITH LAW OFFICE+81-3-6262-3248Jours ouvrables 10:00-18:00 JST[English Only]

MONOLITH LAW MAGAZINE

IT

Quels sont les avantages et inconvénients juridiques de chaque modèle de développement de systèmes ?

IT

Quels sont les avantages et inconvénients juridiques de chaque modèle de développement de systèmes ?

Il existe une certaine méthodologie pour mener à bien les projets de développement de systèmes. Habituellement, lorsqu’on étudie les problèmes juridiques liés au développement de systèmes à travers des livres et autres, on suppose souvent que la méthode la plus classique, appelée le modèle en cascade (Waterfall Model), est utilisée. Cependant, le modèle ou la méthodologie pour mener à bien le développement de systèmes n’est pas seulement le modèle en cascade. Par exemple, récemment, la méthode de développement Agile est de plus en plus souvent choisie.

Cet article expliquera et comparera les deux modèles, le modèle en cascade et le modèle de développement Agile, du point de vue de la prévention des risques juridiques et des conflits.

Qu’est-ce qu’un modèle de développement ?

Qu’est-ce que le modèle Waterfall ?

Qu’est-ce qu’un modèle de développement dans le cadre de la progression du développement de systèmes ?

La méthode la plus courante et classique pour le développement de systèmes est la suivante :

  • Définition des exigences : Identification des fonctions que le système à développer doit avoir et des spécifications nécessaires.
  • Conception de base : Conception de l’image globale du système du point de vue de l’utilisateur, principalement en termes de conception de l’écran et de transition entre les écrans.
  • Conception détaillée : Conception de l’image globale du système du point de vue du fournisseur de développement, principalement en termes de connexion entre les fichiers de programme.
  • Implémentation de la programmation : Codage du programme selon le document de conception.
  • Test : Vérification que le produit est conforme aux spécifications et demande de confirmation à l’utilisateur.

Cette méthode de développement, qui progresse de manière à minimiser autant que possible les retours en arrière et les changements d’ordre des étapes, comme un courant d’eau qui descend d’amont en aval, est appelée le “modèle Waterfall”. Ce flux n’est pas nécessairement essentiel pour créer un système fonctionnel. Cependant, dans le développement de systèmes, qui tend à impliquer un grand nombre de personnes et une longue période de temps, la planification est importante. Par conséquent, il y a aussi une tendance à accorder de l’importance à des questions telles que la division des processus, l’organisation des rôles et la clarification des responsabilités de chaque personne en charge.

Qu’est-ce que le modèle de développement Agile ?

D’un autre côté, la manière de mener les travaux de développement n’est pas toujours adaptée à une méthode qui permet de passer d’amont en aval en une seule fois. Certes, en raison de la nature du travail, la planification et la technique de projection sont des points importants, cela va sans dire. Cependant, dans le travail de création de nouvelles choses ou d’œuvres, il est souvent impossible de faire un plan parfait dès le départ. Si l’on accorde de l’importance à ces points, il devrait être acceptable d’avoir une méthode qui met l’accent non seulement sur le fait de suivre le plan établi, mais aussi sur la facilité de s’adapter de manière flexible aux corrections et modifications des spécifications après coup, et sur l’augmentation du nombre de répétitions d’essais et d’erreurs. Cette approche est reflétée dans la méthode de développement appelée “modèle de développement Agile”. Dans le modèle de développement Agile, il est courant de minimiser autant que possible le temps consacré à la préparation de plans détaillés et de documents de conception, de répéter l’implémentation et les tests de petits programmes, et de transformer progressivement ces programmes en un programme ou un système plus grand.

Le modèle Waterfall facilite l’apprentissage des problèmes juridiques

Avant de comparer les deux modèles de développement, il est important de noter que la facilité de collecte d’informations et d’apprentissage du droit associés à chaque modèle de développement est une condition préalable.

La plupart des livres de référence sont basés sur le modèle Waterfall

Lorsqu’il s’agit de collecter des informations sur les problèmes juridiques liés au développement de systèmes ou d’étudier le droit, le modèle Waterfall est le plus facile à utiliser. La plupart des livres juridiques sur le développement de systèmes sont écrits sur la base du modèle Waterfall. Comme le développement de systèmes classique et général est réalisé selon le modèle Waterfall, le développement Agile est souvent présenté comme un complément, et est souvent brièvement introduit. Par conséquent, si vous voulez obtenir des informations sur les problèmes juridiques liés au développement de systèmes à partir de livres, il est plus facile de progresser avec le modèle Waterfall.

Le modèle Waterfall a également une grande accumulation de cas juridiques

De plus, étant donné que le modèle Waterfall est une méthode classique et générale de développement de systèmes, on peut dire qu’il y a une abondance de cas de conflits qui se sont réellement produits dans le passé. Dans les discussions juridiques, non seulement les articles de loi, mais aussi la connaissance des cas juridiques passés sont importants. Même dans les cas où il est difficile de dire si le texte de l’article est “blanc” ou “noir” en interprétant simplement le texte de l’article, il est possible de compléter le contenu de l’article en obtenant des connaissances à partir de cas juridiques passés.

Même si ce n’est pas une loi explicite, l’accumulation de jugements rendus par les tribunaux peut être établie comme un critère de jugement, tout comme les articles de loi. Ces éléments sont appelés “principes juridiques de la jurisprudence”. Même dans des domaines tels que le développement de systèmes, où il y a déjà une accumulation de principes juridiques de la jurisprudence, il peut être relativement facile de prévoir l’issue finale d’un conflit inconnu. C’est dans ce contexte que le développement de systèmes basé sur le modèle Waterfall offre de nombreux avantages.

Les avantages de chaque méthode de développement

Quels sont les avantages et les inconvénients du modèle Waterfall et du développement Agile?

En tenant compte du contenu ci-dessus, nous allons organiser les avantages et les inconvénients de chaque méthode en les comparant. La première partie est principalement axée sur les avantages du modèle Waterfall, et plus vous descendez, plus les avantages du développement Agile sont clairement organisés.

Comparaison en termes de planification et de prévisibilité

En termes de planification et de prévisibilité, on peut dire que le modèle Waterfall est supérieur. Quelle que soit l’ampleur du système à créer, il est toujours divisé en étapes qui descendent de “l’amont vers l’aval”. Si vous fixez une date limite pour chaque étape, il devient relativement facile de gérer son avancement de manière planifiée.

D’un autre côté, le développement Agile est une méthode qui ne consacre pas beaucoup de coûts ou d’efforts à la planification préliminaire ou à la conception globale, il peut donc facilement devenir une approche ad hoc.

Comparaison en termes de clarification des rôles et des responsabilités individuelles

De plus, le modèle Waterfall a l’avantage de pouvoir clarifier le rôle de chaque membre du projet, car chaque étape est finement divisée.

D’un autre côté, dans le développement Agile, la division des étapes tend à être vague, il y a donc une tendance à être vague sur qui doit prendre la responsabilité en cas de problèmes imprévus.

Comparaison en termes de facilité de développement à grande échelle

Le modèle Waterfall, qui est excellent en termes de planification et de clarification des rôles, devient de plus en plus avantageux à mesure que le développement est à grande échelle. Même si vous organisez un grand nombre de personnes, si vous divisez les étapes et encouragez la division du travail, vous pouvez réduire les coûts associés à la gestion des relations humaines.

D’un autre côté, le modèle de développement Agile n’est pas très adapté au développement à grande échelle. C’est une approche qui privilégie la rapidité de démarrage plutôt que la planification et la clarification des rôles, il est donc difficile de l’appliquer dans des situations où l’on craint un décalage dans la date de livraison finale.

Comparaison en termes de rapidité et d’efficacité

Le développement Agile est plus rapide à démarrer

En termes de rapidité avec laquelle une fonction demandée par l’utilisateur est effectivement mise en œuvre, le développement Agile est supérieur. C’est parce que dans le modèle Waterfall, il est courant que les responsables des étapes amont et aval soient clairement séparés, ce qui rend la communication interne du côté du fournisseur plus laborieuse. Ce point, qui tend à nécessiter beaucoup de communication, est également lié au fait qu’il est facile de devenir faible face aux demandes de changement de spécifications après coup.

D’un autre côté, le modèle de développement Agile peut être attendu pour démarrer et exécuter rapidement sans intermédiaire. Cela est étroitement lié au plus grand avantage du modèle de développement Agile, à savoir qu’il est facile de répondre aux changements de spécifications après coup. Cependant, même dans le modèle de développement Agile, si vous continuez à répondre de manière nonchalante aux demandes de changement de spécifications et de développement supplémentaire, cela peut devenir un risque qui peut “enflammer” le projet. Dans ce sens, la clé du succès du développement de systèmes avec le modèle de développement Agile est de savoir comment gérer le “changement”. Une explication détaillée de la gestion du changement est donnée dans l’article ci-dessous.

https://monolith-law.jp/corporate/howto-manage-change-in-system-development[ja]

Le modèle Waterfall est moins susceptible de s’arrêter en cours de route

D’un autre côté, lors de la comparaison en termes de rapidité et d’efficacité, il est important de considérer sur une échelle de temps à long terme. Si vous considérez le risque que le projet s’enflamme en cours de route et que le progrès s’arrête à partir de là, le modèle Waterfall est supérieur. Le plus grand risque qui peut provoquer une situation où le projet s’arrête en cours de route est une mauvaise communication entre l’utilisateur et le fournisseur. Le modèle Waterfall, qui facilite la clarification des rôles entre les deux parties, a un avantage à cet égard.

Il est plus facile de progresser en douceur à l’étape de l’acceptation avec le développement Agile

Cependant, en termes de facilité de discussion à l’étape de l’acceptation, le développement Agile a un léger avantage. C’est parce qu’il est prévu que l’utilisateur et le fournisseur partageront des informations en détail même pendant le développement du système. Il est possible de réduire le risque que les différences de perception entre les deux parties deviennent apparentes en un coup d’œil lorsque le produit final est vu. En outre, une explication détaillée de l’étape de l’acceptation du développement de systèmes et des problèmes juridiques qui y sont associés est donnée dans l’article ci-dessous.

https://monolith-law.jp/corporate/estimated-inspection-of-system-development[ja]

Résumé

En comparant de cette manière, on peut généralement dire que le modèle Waterfall est plus approprié pour une gestion rigoureuse, tandis que le modèle de développement Agile met l’accent sur la rapidité de la mise en œuvre et de l’exécution. De plus, nous traitons en détail des problèmes juridiques associés au développement de systèmes basés sur le modèle de développement Agile dans l’article ci-dessous.

https://monolith-law.jp/corporate/legal-and-contract-issues-of-agile-development[ja]

Le choix du modèle de développement dépend non seulement du point de vue juridique, mais aussi de la taille, du budget et des objectifs du projet. Nous pensons qu’il est nécessaire de prendre une décision globale en tenant compte de ces facteurs.

Managing Attorney: Toki Kawase

The Editor in Chief: Managing Attorney: Toki Kawase

An expert in IT-related legal affairs in Japan who established MONOLITH LAW OFFICE and serves as its managing attorney. Formerly an IT engineer, he has been involved in the management of IT companies. Served as legal counsel to more than 100 companies, ranging from top-tier organizations to seed-stage Startups.

Category: IT

Tag:

Retourner En Haut