Які відмінності між викидними та еволюційними прототипами?


12

У мене є примітки щодо різних методів прототипування, і я знайшов кілька визначень в Інтернеті, але хотів би підтвердити те, що дізнався.

Я розумію, що прототипування, що викидається , розробляється з контуру специфікації, різні прототипи доставляються та модифікуються, поки клієнт не буде задоволений його функціональністю.

З іншого боку, еволюційні прототипи побудовані з основних вимог, зібраних у кінцевих споживачів. Початковий прототип представлений користувачам та оцінений. Прототип модифікується на основі зворотного зв'язку, поки клієнт не буде задоволений.

Це правильно? Чи є кращі визначення викидних та еволюційних прототипувань?


2
Частіше тоді не здається, що прототип перетворюється на готовий продукт. Ніколи насправді не чув про викид проти еволюційного раніше.
itsmatt

1
Привіт, Міфасе, вибачте, що це перенесено, але якщо ви отримали свої визначення з Інтернету, прохання в Інтернеті підтвердити, чи є правильні визначення, це круговий, а насправді не тематичний.

1
@MarkTrapp Якщо ми видалили визначення, чи могли б ми знову відкритись? Як визначення в публікації, так і існуюча відповідь помилкові з точки зору формального визначення фрази. У Stack Overflow є дублікати, але жодного, що я можу знайти тут, і я думаю, що це важливо, принаймні, не розміщувати більше помилкової інформації в Інтернеті.
Томас Оуенс

@Mifas Якщо ви видалите дефініції, питання не виникає, чи не існує? Якби Міфас дотримувався цього питання і оновив його, щоб пояснити, що він намагається зробити, це змусило його запитати про ці визначення, це було б абсолютно чудовим питанням.

1
@Mark Fantastic. Дякую. Зараз я працюю над моєю відповіддю.
Томас Оуенс

Відповіді:


11

Обидва способи прототипування використовуються, коли є якийсь аспект системи, який ви не зовсім розумієте. Однак ключовою відмінністю є методологія життєвого циклу, яку ви використовуєте. За допомогою еволюційного прототипування ви зазвичай розумієте деякі аспекти системи та не впевнені в інших. У процесі викидання прототипів у вас є загальне нерозуміння того, що вам потрібно виконати, перш ніж ви зможете побудувати готову до виробництва систему.

Зауважте, що існує багато видів прототипування, що викидається, і жодна з них не обмежується всією системою. Наприклад, використання ескізів на папері або дошці користувальницького інтерфейсу можна вважати вичерпним прототипуванням. Так, ви можете пройти кілька ітерацій і викинути попередній дизайн, але ви також не будете використовувати остаточний прототип в системі (фізично це неможливо для одного).

Якщо вас цікавлять загальні теми програмної інженерії та широта SE, я б радимо підібрати книгу Соммервілла, яку я цитую. Це дійсно добре для висвітлення широти тем. Якщо вас більше цікавлять моделі технологій та методології та як ви можете застосувати їх до різних проектів, я рекомендую книгу МакКоннелла - в ній є ціла глава, присвячена еволюційному прототипуванню та ще одна глава, присвячена викидній прототипуванню.

Я також швидко поглянув на статтю у Вікіпедії про прототипування програмного забезпечення . Деякі його частини трохи дивні (принаймні, на моєму швидкому читанні), але, здається, немає нічого, з чим я прямо не згоден. Деякі з них трохи зосереджені на одному конкретному аспекті, але це фактично не так, як я бачу. Я віддаю перевагу визначенням нижче, але це може бути цікавим читанням про різні типи прототипування.


Еволюційне прототипування

Розвідувальна розробка, де метою процесу є робота з замовником, щоб вивчити його вимоги та поставити остаточну систему. Розробка починається з частин системи, які розуміються. Система розвивається шляхом додавання нових функцій, запропонованих замовником. (Соммервілл: Програмне забезпечення, 8-е видання)


Еволюційне прототипування - це модель життєвого циклу, в якій система розробляється з кроком, щоб її можна було легко змінювати у відповідь на відгуки кінцевих споживачів та споживачів. Більшість зусиль з еволюційного прототипування починаються з прототипування користувальницького інтерфейсу, а потім еволюціонування завершеної системи з цього, але прототипування може починатися з будь-якої області високого ризику. Еволюційне прототипування - це не те саме, як Throwaway Prototyping, і правильний вибір щодо розробки еволюційного прототипу чи прототипу, що викидається, є одним із ключів до успіху. Інші ключі до успіху включають використання досвідчених розробників, керування розкладом і очікуванням бюджету, а також управління самою діяльністю прототипування. (McConnell: Швидка розробка: приборкання диких програм програм)


Прототип прототипу:

Поглиблене прототипування полягає в тому, що метою процесу еволюційного розвитку є розуміння вимог замовника і, отже, розробка кращого визначення вимог до системи. Прототип зосереджений на експерименті із вимогами замовника, які недостатньо вивчені. (Соммервілл: Програмне забезпечення, 8-е видання)


Завдяки прототипуванню Throwaway розробляється код для дослідження факторів, що мають важливе значення для успіху системи, а потім цей код викидається. Реалізація прототипування використовує мови програмування або практики розробки або обидві, які набагато швидші, ніж цільова мова та практики. Користувацький інтерфейс прототипується набагато частіше, ніж будь-яка інша частина системи, але інші частини деяких систем також можуть отримати користь від прототипу. Використовуючись як допомога щодо специфікації вимог, практика прототипування потоків може прискорити проекти, засновані на традиційних моделях життєвого циклу, таких як DoD-проекти. Вона може бути ініційована або на управлінському, або на технічному рівні. (McConnell: Швидка розробка: приборкання диких програм програм)


-2

Повторне прототипування - за допомогою цього невелика частина системи розробляється, а потім надається клієнтам та кінцевим користувачам, щоб спробувати її оцінити. Користувач надає зворотний зв'язок, який швидко може бути використаний при розробці основної системи

Еволюційне прототипування - це модель життєвого циклу, в якій Система розробляється з кроком, щоб її можна було легко змінювати у відповідь на кінцеві користувачі та відгуки клієнтів


1
Це запитання було задано у 2011 році. Ви вже не даєте великих відповідей на відповіді.
Ян Догген
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.