Главная » Просмотр файлов » И. Соммервилл - Инженерия программного обеспечения

И. Соммервилл - Инженерия программного обеспечения (1133538), страница 45

Файл №1133538 И. Соммервилл - Инженерия программного обеспечения (И. Соммервилл - Инженерия программного обеспечения) 45 страницаИ. Соммервилл - Инженерия программного обеспечения (1133538) страница 452019-05-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 45)

Как только системные компоненты интегрированы в каркас, их интерфейсы больше не изме няются, 8.1.2. Экспериментальное прототипирование Модель процесса разработки ПО, основанная на экспериментальном прототипировании, показана на рис.8.5. В этой модели расширен этап анализа требований в целях уменьшения общих затрат на разработку. Основное назначение прототипа — сделать понятными требования и предоставить дополнительную информацию для оценки рисков.

После этого прототип больше не используется и не участвует в дальнейшем процессе разработки системы. Рис. 8.5. Рнгрнботнн ПО с исяолыоопниан экпи9имгнтааьнык нрототнноо Этот метод прототипирования обычно используется для разработки аппаратных систем. Прежде чем будет начата дорогостоящая разработка системы, создается макет (прототип), который используется для проверки структуры системы. Электронный макет системы создается с использованием готовых компонентов, что позволяет разработать версию системы до того, как будут вложены денежные средства в разработку специализированных интегральных схем.

Экспериментальный прототип программных систем обычно не используется для проверки архитектуры системы, он помогает разработать системные требования. Прототип часто совершенно не похож на конечную систему. Система разрабатывается по возможно. сти быстро, поэтомудля ускоренил формирования требований используется упрощенный прототип системы. В экспериментальный прототип закладываются только обязательные системные функции, стандарты качества для прототипа мокнут быть снижены, критерии эффективности игнорируются. Язык программирования прототипа часто отличается от языка программирования, на котором будет создаваться окончательный вариант системы.

В модели процесса разработки ПО, показанной на рис. 8.5, предполагается, что прототип разрабатывается исходя из обобщенных системных требований, далее над прототипом прово. дятся эксперименты и он изменяется до тех пор, пока его функциональные возможности не удовлетворят заказчика. После этого на основе прототипа детализируются систеиные требовэ иия, реализуется обычная для организации-разработчика технология разработки ПО и система доводится до окончательной версии. Некоторые ком понсгггы прототипа могут использоваться в системе, поэтому стоимость разработки может быть снижена. 8.

Прототипирование программных систем 177 В описываемой модели разработки ПО основная проблема состоит в том, что экспериментальный прототип может не соответствовать конечной системс, поставляемой заказчику. Специалист, тестирующий прототип, может иметь собственные интересы к системе, не типичные для ее пользователей. Время тестирования прототипа может быть недостаточным для его полного оценивания. Если прототип работает медленно, эксперты могут внести в него изменения, которые ускоряют работу, но не будут совпадать со средствами ускорения работы конечной системы. Разработчики иногда подвергаются давлению менеджеров для ускорения работы над прототипом, особенно если намечается задержка в поставке окончательной версии системы.

Обычно такое "ускорение" порождает ряд проблем. 1. Невозможно быстро настроить прототип для выполнении таких нефункциональ. ных требований, как производительность, защищенность, устойчивость к сбоям и безотказность, которые игнорировались во время разработки прототипа. 2. Частые изменение во время разработки неизбежно приводят к тому, что прототип плохо документнрован. Для разработки прототипа используется только спецификация системной архитектуры. Этого недостаточно для долговременного сопровождения системы.

3. Изменения, сделанные во время разработки прототипа могут нарушить архитекту ру системы. Ее обслуживание будет сложным и дорогостоящим. 4. В процессе разработки прототипа ослабляются стагщарты качества. Чтобы быть полезными в процессе разработки требований, экспериментальные прототипы не обязательно должны выполнять роль реальных макетов систем. Бумажные формы, имитирующие пользовательские интерфейсы систем [292[, показали свою эф. феативность при формировании требований пользователя, в уточнении проекта интерфейса и при создании сценариев работы конечного пользователя. Они очень дешевы в разработке и могут быть созданы за несколько дней.

Расширением этой методики является макет пользовательского интерфейса "Ъг1гагб оЕ Ох" (Волшебник страны Оз). Пользователи взаимодействуют с этим интерфейсом, но их запросы направлены к специалисту, ко. торый интерпретирует их и имитирует соответствующую реакцию. Подобные подходы к прототипированию рассмотрены в работе [321]. 8.2. Технологии быстрого прототипирования Эти технологии рассчитаны главным образом на обеспечение быстрой разработки прототипов, а не на такие их системные характеристики, как производительность, удобство эксплуатации или безотказность. Существует трн основных негода быстрой разработки прототипов. 1.

Разработка с применением динамических языков высокого уровня. 2. Использование языков программирования баз данных. 3. Сборка приложений с повторным использованием компонентов. Для удобства эти методы описаны в отдельных разделах. Но на практике они часто совместно используются при разработке прототипов систем. Например, язык программирова. ния баз данных может применяться для извлечения данных с их последующей обработкой с помощью повторно используемых компонентов. Интерфейс пользователя системы можно разработать, используя визуальное программирование.

В статье [2241 описано смешанное применение этик методов при создании прототипа управляющей системы. 178 Часть 11. Требования В настоящее время разработка прототипов обычно опирается на набор инструментов, поддерживающих по крайней мере два из этих методов. Например, система БшаНгаа ЧЬна1йгогМз поддерживает язык очень высокого уровня и обеспечивает повторное использование компонентов. Пакет 1огпэ Ко!ее включает поддержку программирования баз данных с помощью языка высокого уровня и повторное использование компонентов, кш торые могут обеспечить операции над базой данных. Болыпннство систем прототипирования сегодня поддерживают визуальное программи. рованис, при котором некоторые части или весь прототип разрабатываются в интерактивном режиме. Вместо последовательного написания программ разработчик прототипа предпочитает работать с графическими пиктограммами, представляющими функции, данные илн компоненты интерфейса пользователя, и соответствующими сценариями управления этими пихгограммами.

Программа, готовая к исполнению, генерируется автоматически из визуального представления системы. Зго упрощает разработку программы и уменьшает затраты па прототипирование. Более подробно виз)цльное программирование рассматривается в разделе 8.2.8. 8.2.1. Применение динамических языков высокого уровня Динамические языки высокого уровня — это языки программирования, которые имеют мощные средства контроля данных во время выполнения программы. Онн упрощают разработку программ, так как уменьшают число проблем, связанных с распределением памяти и управлением сю.

Такис языки имеют средства. которые обычно должны быть по. строены из более примитивных конструкций в языках, подобных Ада или С. Примеры языков очень высокого уровня — 1зэр (основанный на структурах списков), Рго!ой (основанный на алгебре логики) и Бшайгзйг (основанный на объектах). До недавнего времени динамические языки высокого уровня широко не использовались для разработки больших систем. поскольку они нуждаются в основательных средствах динамической поддержки.

Эти средства увеличивали объем необходимой памяти и уменьшали скорость выполнения программ, написанных на этих языках. Однако возрастание мощности и снижение стоимости компьютерного оборудования сделало эти факто. ры нс столь существенными. Таким образом, для многих деловых приложений эти языки могут заменить тзкие традиционныс языки программирования, как С, СОВО!. н Аба. Язык)ага, несомненно, является основным языком разработки, имеющим корни в языке С++, но с включением многих средств языка бгпа81айг нагюдобие платформеппой независимости и автоматического управления памятью.

Язык )ага объединяет в себе многие преимущества языков высокого уровня, совмещая это с точностью и возможностью оптимизации выполнения, обычно предлагаемой языками третьего поколения. В языке )ага мною компонентов, доступных для повторного использования, все это делает сто подходящим для эволюционного прототипирования.

В табл. 8.1 представлены динамические языки, которые более всего используются при разработке прототипов. При выборе языка для написания прототипа необходимо ответить на ряд вопросов. 1. Каков жкв реирлбптыэлемоео ирклозгекил? Как показано в табл. 8.1, для каждого типа приложения можно применить несколько различных языков. Если необходим прототип приложения, которос обрабатывает данных на естественном языке, то языки (зар или 1'го!об более подходят, чем )ага или Бгпайнайь 8.

Характеристики

Тип файла
DJVU-файл
Размер
8,79 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6549
Авторов
на СтудИзбе
300
Средний доход
с одного платного файла
Обучение Подробнее