- •Тема 5. Автоматизированное проектирование эис (case-технология)
- •Репозиторий (словарь данных)
- •2. Функционально-ориентированное (структурное) проектирование эис
- •Изображение объектов диаграммы иерархии функций
- •Символы std в различных нотациях
- •Объектно-ориентированное проектирование эис
- •Реализация объекта
- •Методология oose (Object-Oriented Software Engineering)
- •3.2. Методология datarun
- •Модель ис.
- •3.2.1.Унифицированный язык моделирования uml
- •3.3. Прототипное проектирование эис (rad-теxнолoгия)
- •4. Структурный и объектно-ориентированный подход
- •4.1. Особенности объектно-ориентированного подхода
- •4.2. Преимущества и недостатки объектно-ориентированного подхода
3.3. Прототипное проектирование эис (rad-теxнолoгия)
С появлением корпоративных экономических информационных систем, базирующихся на архитектуре «клиент-сервер», появляется естественная возможность ускорения разработки приложений за счет параллельного создания клиентской и серверной частей. Однако реально использовать преимущества такой архитектуры оказалось очень непросто из-за резко возросшей сложности создания приложений в гетерогенной среде. Кроме естественной сложности создания приложений в неоднородной среде существует тенденция к усложнению приложений стечением времени. В этих условиях процесс разработки ИС традиционным каскадным методом может затянуться на длительное время, а соответствие результата потребностям заказчика не гарантируется.
Основное желание заказчика ЭИС - получить быстро готовое приложение высокого качества при минимальных затратах на его разработку. Кроме того, вкладывая значительные средства на создание системы, заказчики желают контролировать процесс разработки. Критерием качества должно быть наиболее полное удовлетворение требований заказчиков на момент введения системы в эксплуатацию.
Одним из условий обеспечения высокого качества создаваемых ЭИС является активное вовлечение конечных пользователей в процесс разработки предназначенных для них интерактивных систем, что нашло отражение в методологии прототипного проектирования. Ядром этой методологии является быстрая разработка приложений RAD (Rapid Application Development), в основе которой заложена спиральная модель жизненного цикла ИС.
Под RAD обычно понимается процесс разработки ПО, содержащий 3 элемента:
небольшую команду программистов (от 2 до 10 человек);
короткий, но тщательно проработанный производственный график (от 2 до 6 мес.);
повторяющийся цикл, при котором разработчики, по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные через взаимодействие с заказчиком.
ЖЦ ПО по методологии RAD состоит из 4-х фаз:
анализ и планирование;
проектирование;
построение – быстрая разработка приложения;
внедрение.
Все модели и прототипы должны быть получены с применением тех CASE-средств, которые будут использоваться в дальнейшем при построении системы (для неискажения данных при передаче информации о проекте с этапа на этап).
Команда разработчиков должна представлять из себя группу профессионалов, имеющих опыт в анализе, проектировании, генерации кода и тестировании ПО с использованием CASE-средств.
Члены коллектива должны также уметь трансформировать в рабочие прототипы предложения конечных пользователей.
Область самостоятельной разработки информационных систем (точнее, приложений) конечными пользователями ограничена. Такой вариант может быть применим для решения простых задач информационно-поискового и сводного характера.
При создании более сложных корпоративных ЭИС пользователям необходимо работать совместно с проектировщиками на протяжении всего периода разработки. Для повышения качества и эффективности, создаваемых таким образом систем, используется технология прототипного проектирования, которая обеспечивает создание на ранней стадии реализации действующей интерактивной модели системы, так называемой системы-прототипа, позволяющей наглядно продемонстрировать пользователю будущую систему, уточнить его требования, оперативно модифицировать элементы интерфейса: формы ввода сообщений, меню, выходные документы, структуру диалога, состав реализуемых функций.
Достоинства. В процессе работы с системой-прототипом пользователь реально осознает возможности будущей системы и определяет наиболее удобный для него режим обработки данных, что значительно повышает качество создаваемых систем. Осуществляются проверка принципиальных проектных решений по составу и структуре ЭИС и оценка основных ее эксплуатационных характеристик.
Вовлечение пользователей в процесс проектирования и конструирования приложения позволяет получать замечания и дополнения к требованиям непосредственно в процессе проектирования приложения, сокращая время разработки. Представители заказчика получают возможность контролировать процесс создания системы и влиять на ее функциональное наполнение. Результатом является сдача в эксплуатацию системы, учитывающей большинство потребностей заказчиков.
Согласованная система-прототип служит спецификацией для дальнейшей разработки ЭИС, что позволяет на ранних этапах проектирования выявить возможные ошибки проектирования и определить параметры будущей системы.
Основные возможности и преимущества быстрой разработки прототипа ИС представлены на рис.13.
Возможности
Преимущества
Макрокоманды
Повторное
использование
Снижение стоимости
сопровож- дения
Автоматизир-ые
инструменты
Вовлечение
пользователей
Рис.13. Основные возможности и преимущества быстрой разработки прототипа ИС
Все приемы для быстрой разработки приложений RAD служат одновременно для обеспечения высокого качества продукта и низкой стоимости разработки. К числу этих приемов относятся:
I) разработка приложения итерациями;
2) необязательность полного завершения работ на каждом из этапов ЖЦ для начала работ на следующем;
З) обязательное вовлечение пользователей в процесс проектирования и построения системы;
4) высокая параллельность работ;
5) повторное использование частей проекта;
6) необходимое применение CASE-cpeдств, обеспечивающих техническую целостность на этапах анализа и проектирования;
7) применение средств управления конфигурациями, облегчающее внесение изменений в проект и сопровождение готовой системы;
8) использование автоматических генераторов (мастеров);
9) использование прототипирования, позволяющего полнее выяснить и удовлетворить потребности конечного пользователя;
10)тестирование и развитие проекта, осуществляемые одновременно с разработкой нескольких версий прототипа.
Каждое из перечисленных положений в отдельности способствует повышению скорости, улучшению качества, но только их совместное применение вызывает качественные изменения в процессе разработки.
Неполное завершение работ на каждом этапе позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем этапе. При итеративном способе разработки ЭИС недостающую работу можно будет выполнить на следующей итерации. Главная же задача - как можно быстрее показать пользователям системы работоспособный продукт, тем самым, активизируя процесс уточнения и дополнения требований.
Основная проблема процесса разработки ЭИС по RAD–технологии заключается в определении момента перехода на следующий этап. Для ее решения необходимо ввести временные ограничения на каждый из этапов ЖЦ. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков с использованием инструментов автоматизации процесса планирования. Средства автоматизации планирования являются важным элементом при разработке приложений по методологии RAD. Они применяются для определения состава и объема работ, необходимого числа разработчиков, распределения работ между участниками проекта, контроля за ходом выполнения работ и динамической корректировкой плана.
Для реализации технологии прототипного проектирования необходимо применять высокоуровневые инструментальные средства, которые позволяют быстро преобразовать прототип системы в функционирующую версию и внести в нее в дальнейшем необходимые изменения.
Такие инструментальные средства можно условно разделить на два класса:
инструменты быстрой разработки приложения в развитых СУБД - класс DEVELOPER;
интегрированные инструменты быстрой разработки приложений - класс BUILDER.
К инструментам этих классов можно отнести средства 4GL (генераторы компонентов приложений):
генераторы таблиц базы данных;
генераторы форм ввода-вывода;
генераторы запросов;
генераторы отчетов;
генераторы меню.
Такие генераторы существуют почти во всех СУБД, как персональных Access, FoxPro, Paradox, так и в окружении промышленных серверов БД (Oracle, Informix, Adabas D и др.).
Отличительной чертой класса BUILDER является то, что инструменты данного класса легко интегрируются с CASE-cpeдствaми и представляют собой единую среду быстрой разработки приложения. К интегрированным инструментам класса BUILDER можно отнести такие, как Power Builder Enterprise (power Soft), Delphi (Borland), Builder Си ++ и др.
Например, инструментальная среда быстрой разработки приложений СУБД Access включает ряд мастеров (конструкторов):
Мастер (конструктор) таблиц предназначен для быстрого создания структуры таблиц БД и их взаимосвязей.
Мастер (конструктор) форм ввода-вывода
Мастер (конструктор) запросов
Мастер (конструктор) отчетов
Мастер (конструктор) кнопочных форм.
Работа с конструктором заключается в детальном определении конструктивных элементов содержания проектируемой компоненты ЭИС.
ЖЦ создания ЭИС на основе RAD-технологии предполагает по завершении ТЗ и декомпозиции системы независимую разработку подсистем с последующей сборкой, тестированием и внедрением комплексной ЭИС.
Опыт использования RAD-технологии говорит о существовании двух вариантов организации процессов проектирования с использованием систем-прототипов:
Традиционно в этом случае вначале разрабатывается «Постановка задачи», документация которой является спецификацией системы-прототипа. После демонстрации и доработки прототипа разрабатывается новая «Постановка задачи», являющаяся основой создания действующей ЭИС.
Вывод. Использование прототипирования в данном варианте является неэффективным, так как прототипы не используются в дальнейшей разработке ЭИС после того, как выполнили первую задачу – устранили неясности в проекте.
Данный вариант предполагает итерационное развитие системы-прототипа в готовый для эксплуатации программный продукт. Итерации разработки системы-прототипа включают создание/модификацию системы-прототипа, демонстрацию ее пользователю и согласование, разработку новых спецификаций-требований к системе, новую модификацию и т.д., т.е. до окончательного создания готового приложения.
Вывод. Итерационное использование прототипного подхода к разработке ЭИС обеспечивает экономию ресурсов на проектирование, резкое сокращение времени на разработку и внедрение системы, а также значительное снижение объема доработок ЭИС при ее внедрении.
RAD – не применима для построения сложных расчетных программ, ОС, …, т.е. программ с написанием большого объема (сотни тысячи строк) уникального кода.
