Quelles sont les différences entre les prototypes jetables et évolutifs?

12

J'ai des notes sur diverses méthodes de prototypage, et j'ai trouvé plusieurs définitions sur Internet, mais je voudrais confirmer ce que j'ai appris.

Je comprends que le prototypage jetable est développé à partir d'un aperçu d'une spécification, divers prototypes sont livrés et modifiés jusqu'à ce que le client soit satisfait de ses fonctionnalités.

De l'autre, les prototypes évolutifs sont construits à partir des exigences de base recueillies auprès des utilisateurs finaux. Un premier prototype est présenté aux utilisateurs et évalué. Le prototype est modifié en fonction des commentaires jusqu'à ce que le client soit satisfait.

Est-ce correct? Existe-t-il de meilleures définitions du jetable et du prototypage évolutif?

Thomas Owens
la source
2
Plus souvent alors non, il semble que le prototype évolue vers le produit fini. Jamais vraiment entendu parler du jetable contre évolutif auparavant.
itsmatt
1
Salut Mifas, je suis désolé que cela ait été migré, mais si vous avez obtenu vos définitions sur le Web, demander au Web de confirmer si les définitions sont correctes est circulaire et pas vraiment sur le sujet ici.
1
@MarkTrapp Si nous supprimions les définitions, pourrions-nous rouvrir? Les définitions dans le message ainsi que la réponse existante sont erronées en termes de définition formelle de la phrase. Il y a des doublons sur Stack Overflow, mais aucun que je puisse trouver ici et je pense qu'il est essentiel, à tout le moins, de ne pas mettre plus de fausses informations sur Internet.
Thomas Owens
@Mifas Si vous supprimez les définitions, il n'y a pas de corps à la question, n'est-ce pas? Si Mifas suivait la question ici et la mettait à jour pour expliquer ce qu'il essayait de faire, ce qui le poussait à poser des questions sur ces définitions, ce serait une très bonne question.
1
@Mark Fantastic. Merci. Je travaille sur ma réponse maintenant.
Thomas Owens

Réponses:

11

Les deux méthodes de prototypage sont utilisées lorsqu'il existe un aspect du système que vous ne comprenez pas entièrement. Cependant, la principale différence est la méthodologie de cycle de vie que vous utilisez. Avec le prototypage évolutif, vous comprenez généralement certains aspects du système et n'êtes pas sûr des autres. Dans le prototypage jetable, vous avez un manque général de compréhension que vous devez terminer avant de pouvoir construire un système prêt pour la production.

Notez qu'il existe de nombreux types de prototypage jetable, et aucun n'est limité à l'ensemble du système. Par exemple, l'utilisation de croquis papier ou tableau blanc d'une interface utilisateur peut être considérée comme un prototypage jetable. Oui, vous pouvez passer par plusieurs itérations et jeter une conception précédente, mais vous n'utiliserez pas non plus le prototype final dans le système (ce n'est pas physiquement possible, pour un).

Si vous êtes intéressé par les sujets généraux de génie logiciel et l'étendue de SE, je vous suggère fortement de prendre le livre de Sommerville que je cite. C'est vraiment bon pour couvrir l'étendue des sujets. Si vous êtes plus intéressé par les modèles de processus et les méthodologies et comment les appliquer à divers projets, je recommanderais le livre McConnell - il a un chapitre entier consacré au prototypage évolutif et un autre chapitre consacré au prototypage jetable.

J'ai également jeté un rapide coup d'œil à l'article de Wikipedia sur le prototypage de logiciels . Certaines parties sont un peu bizarres (au moins sur ma lecture rapide), mais il ne semble pas y avoir quoi que ce soit avec quoi je suis carrément en désaccord. Certains d'entre eux sont un peu concentrés sur un aspect particulier, mais ce n'est pas faux en fait que je vois. Je préfère les définitions ci-dessous, mais cela pourrait être une lecture intéressante sur différents types de prototypage.


Prototypage évolutif

Développement exploratoire où l'objectif du processus est de travailler avec le client pour explorer ses besoins et livrer un système final. Le développement commence par les parties du système qui sont comprises. Le système évolue en ajoutant de nouvelles fonctionnalités proposées par le client. (Sommerville: Génie logiciel, 8e édition)


Le prototypage évolutif est un modèle de cycle de vie dans lequel le système est développé par incréments afin qu'il puisse être facilement modifié en réponse aux commentaires des utilisateurs finaux et des clients. La plupart des efforts de prototypage évolutif commencent par le prototypage de l'interface utilisateur, puis le développement du système complet à partir de cela, mais le prototypage peut commencer avec n'importe quelle zone à haut risque. Le prototypage évolutif n'est pas la même chose que le prototypage jetable, et faire le bon choix quant au développement d'un prototype évolutif ou d'un prototype jetable est l'une des clés du succès. Parmi les autres clés du succès, citons le recours à des développeurs expérimentés, la gestion des délais et des attentes budgétaires et la gestion de l'activité de prototypage elle-même. (McConnell: Développement rapide: Taming Wild Software Schedules)


Prototypage jetable:

Le prototypage jetable est l'endroit où l'objectif du processus de développement évolutif est de comprendre les exigences du client et donc de développer une meilleure définition des exigences pour le système. Le prototype se concentre sur l'expérimentation des exigences des clients qui sont mal comprises. (Sommerville: Génie logiciel, 8e édition)


Avec Throwaway Prototyping, le code est développé pour explorer les facteurs essentiels au succès du système, puis ce code est jeté. L'implémentation du prototypage utilise des langages de programmation ou des pratiques de développement ou les deux qui sont beaucoup plus rapides que le langage et les pratiques cibles. L'interface utilisateur est prototypée beaucoup plus fréquemment que toute autre partie du système, mais d'autres parties de certains systèmes peuvent également bénéficier d'un prototypage. Lorsqu'elle est utilisée comme aide à la spécification des exigences, la pratique Throwaway Prototyping peut accélérer les projets basés sur des modèles de cycle de vie traditionnels, tels que les projets DoD. Il peut être initié au niveau de la gestion ou au niveau technique. (McConnell: Développement rapide: Taming Wild Software Schedules)

Thomas Owens
la source
-2

Prototypage jetable - avec cela, une petite partie du système est développée et ensuite donnée aux clients et aux utilisateurs finaux pour essayer de l'évaluer.L'utilisateur fournit les commentaires qui peuvent rapidement être intégrés dans le développement du système principal

Prototypage évolutif - est un modèle de cycle de vie dans lequel le système est développé par incréments afin qu'il puisse être facilement modifié en réponse aux utilisateurs finaux et aux commentaires des clients

Samuel
la source
1
Cette question a été posée en 2011. Votre réponse n'ajoute pas grand-chose aux réponses déjà données.
Jan Doggen