3.7. РАННИЕ ПОДХОДЫ БЫСТРОЙ РАЗРАБОТКИ
3.7. РАННИЕ ПОДХОДЫ БЫСТРОЙ РАЗРАБОТКИ
Развитием и одновременно альтернативой каскадных подходов является группа подходов быстрой разработки. Все эти подходы объединяют следующие основные черты:
• итерационную разработку прототипа;
• тесное взаимодействие с заказчиком.
Эволюционное прототипирование. Первый прототип при эволюционном прототипировании (evolutionary prototyping) обычно включает создание развитого пользовательского интерфейса, который может быть сразу же продемонстрирован заказчику для получения от него отзывов и возможных корректив. Основное начальное внимание уделяется стороне системы, обращенной к пользователю. Далее до тех пор, пока пользователь не сочтет программный продукт законченным, в него вносится необходимая функциональность (рис. 3.10).
Эволюционное прототипирование разумно применять в тех случаях, когда заказчик не может четко сформулировать свои требования к программному продукту на начальных этапах разработки или заказчик знает, что требования могут кардинально измениться.
Существенным недостатком данного подхода является невозможность определить продолжительность и стоимость проекта. Неочевидным является количество итераций, по истечении которых пользователь сочтет программный продукт законченным.
Итеративная разработка. Первый прототип итеративной разработки (iterative delivery) уже должен включать завершенное ядро системы. Таким образом, в нем уже сосредоточена большая часть функциональности. Очередные итерации должны помочь пользователю определиться с доводкой пользовательского интерфейса и генерируемых систем отчетов и других выходных данных (рис. 3.11).
Допускается добавление незначительной функциональности, обычно не затрагивающей ядро системы. Различие между двумя исследованными методами быстрой разработки заключается в том, что итеративная разработка начинается с создания ядра системы и далее детализирует его, а эволюционное прототипирование ориентировано на начальную разработку пользовательского интерфейса и добавление функциональности на его основе.
Рис. 3.10. Эволюционное прототипирование
Рис. 3.11. Итеративная разработка
Постадийная разработка (staged delivery) предназначена устранить недостаток двух предыдущих подходов — невозможность определения сроков завершения проекта. Начиная разработку, разработчик достаточно хорошо знает, что будет собой представлять создаваемый программный продукт. Основная задача постадийной разработки — предоставить заказчику работающую систему как можно раньше. Далее заказчик сможет добавлять новую функциональность и получать очередную версию системы. Однако каждая из версий, получаемых по завершении стадий, является работающей.
Данный подход требует тщательного и серьезного тестирования очередной системы в конце каждой стадии перед передачей ее пользователю.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
4.2. Некоторые подходы к отладке распределенных приложений
4.2. Некоторые подходы к отладке распределенных приложений При отладке распределенного приложения в целом нужно представлять общее его состояние, которое включает структуры данных, распределенные по нескольким платформам. Кроме того, необходимо иметь протокол
1.6. Новаторские подходы хакеров – руткиты (rootkits)
1.6. Новаторские подходы хакеров – руткиты (rootkits) Если троянцы, о которых говорилось выше, можно обнаружить с помощью системных утилит, то представители этого класса вычисляются только с помощью специальных утилит.Руткиты представляют собой более продвинутый вариант
Лекция 4. Подходы к повторному использованию
Лекция 4. Подходы к повторному использованию В этой лекции будут рассмотрены некоторые из проблем, направленных на широкомасштабное внедрение повторного использования программных компонентов. Цели повторного использования "Последуйте примеру проектирования
Инициализация: подходы языков программирования
Инициализация: подходы языков программирования Проблема, решаемая в этой лекции, - это общая проблема языков программирования: как работать с глобальными константами и разделяемыми объектами, в частности, как выполнять их инициализацию в библиотеках компонентов?Для
Карманный знахарь: как быть с мобильными приложениями для быстрой (и неправильной) диагностики? Евгений Золотов
Карманный знахарь: как быть с мобильными приложениями для быстрой (и неправильной) диагностики? Евгений Золотов Опубликовано 20 марта 2013 Мобильные телефоны вобрали в себя множество функций, никогда с телефонами не ассоциировавшихся. Сегодня это и фотоаппарат, и
Глава 3 ОСНОВНЫЕ ИНЖЕНЕРНЫЕ ПОДХОДЫ К СОЗДАНИЮ ПРОГРАММ
Глава 3 ОСНОВНЫЕ ИНЖЕНЕРНЫЕ ПОДХОДЫ К СОЗДАНИЮ ПРОГРАММ 3.1. ОСНОВНЫЕ СВЕДЕНИЯ Традиционно инженеры стремились, а некоторые из них, не снижая качества проектов, добивались значительного сокращения сроков проектирования. В начале Великой Отечественной войны начальник
3.2. РАННИЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ
3.2. РАННИЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ Ранние технологические подходы не используют явных технологий, поэтому их применяют только для очень маленьких проектов, как правило, завершающихся созданием демонстрационного прототипа. В качестве примера подхода, не использующего
3.3. КАСКАДНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ
3.3. КАСКАДНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ Каскадные технологические подходы задают некоторую последовательность выполнения видов работ, обычно изображаемую в виде каскада. Иногда их называют подходами на основе модели водопада.Классический каскадный подход (от англ. pure
3.4. КАРКАСНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ
3.4. КАРКАСНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ Каркасные подходы представляют собой каркас для видов работ и включают их огромное количество.Рациональный унифицированный подход к выполнению работ(rational unified process-RUP), изложенный подробно в десятой главе данного учебника, вобрал в
3.5. ГЕНЕТИЧЕСКИЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ
3.5. ГЕНЕТИЧЕСКИЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ Термин "генетический" в названии этой группы подходов связан с происхождением программы и дисциплиной ее создания.Синтезирующее программирование предполагает синтез программы по ее спецификации. В отличие от программы,
3.6. ПОДХОДЫ НА ОСНОВЕ ФОРМАЛЬНЫХ ПРЕОБРАЗОВАНИЙ
3.6. ПОДХОДЫ НА ОСНОВЕ ФОРМАЛЬНЫХ ПРЕОБРАЗОВАНИЙ Эта группа подходов содержит максимально формальные требования к виду работ создания программного обеспечения.Технология стерильного цеха. Основные идеи технологии стерильного цеха (cleanroom process model) были предложены
3.8. АДАПТИВНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ
3.8. АДАПТИВНЫЕ ТЕХНОЛОГИЧЕСКИЕ ПОДХОДЫ Адаптивные технологические подходы были задуманы как подходы, поддерживающие изменения. Они только выигрывают от изменений, даже когда изменения происходят в них самих. Данные подходы ориентированы на человека, а не на процесс. Во
3.9. ПОДХОДЫ ИССЛЕДОВАТЕЛЬСКОГО ПРОГРАММИРОВАНИЯ
3.9. ПОДХОДЫ ИССЛЕДОВАТЕЛЬСКОГО ПРОГРАММИРОВАНИЯ Исследовательское программирование имеет следующие особенности (http://www.osp.ru/pcworld/2001/01/062.htm):— разработчик ясно представляет направление поиска, но не знает заранее, как далеко он сможет продвинуться к цели;— нет
11.4. ПОДХОДЫ К ПРОЕКТИРОВАНИЮ ТЕСТОВ
11.4. ПОДХОДЫ К ПРОЕКТИРОВАНИЮ ТЕСТОВ Рассмотрим два самых противоположных подхода к проектированию тестов.Сторонник первого подхода ориентируется только на стратегию тестирования, называемую стратегией "черного ящика", тестированием с управлением по данным или
Защита СМБ: подходы и принципы
Защита СМБ: подходы и принципы Все больше разработчиков средств безопасности применяют так называемые «облачные» подходы, используя для контроля защищаемой системы данные, на лету предоставляемые онлайновыми системами накопления и классификации угроз. Это могут быть