Средства разработки Oracle как инструменты инженерного
подхода в создании промышленного программного обеспечения
Л. Сорокин, Oracle
Средства разработки Oracle
Инструменты сквозного проектирования и разработки приложений
Обеспечение независимости от смены платформ и технологий
Поддержка разработчиков
Заключение
Средства разработки Oracle
Корпорация Oracle предлагает целый ряд средств разработки, которые позволяют создавать надежные, работающие приложения, способные пережит не одну смену компьютерных технологий, аппаратно-программных платформ и групп разработчиков.
В зависимости от масштаба и назначения разработки, инструменты Oracle могут комплектоваться в наборы, наиболее оптимально соответствующие поставленным задачам. Из основных инструментов Oracle необходимо выделить следующие:
-
Designer/2000 - Средство описания разрабатываемой системы в виде всеохватывающей модели и генерации на ее основе законченных приложений для различных средств разработки.
- Developer/2000 - Многоплатформленное и масштабируемое средство визуального создания промышленных приложений, легко настраиваемых в зависимости от мощности сервера и клиентских компьютеров и переносимых на работу в среду Internet/Intranet.
- Power Objects - Инструмент для разработки приложений небольшого масштаба, способного работать с разнообразными источниками данных.
- Programmer/2000 - Набор предкомпиляторов
для C/C+, заметно упрощающих создание приложений на C/C+ для сервера Oracle7.
- Mobile Agents - Позволяет разрабатывать приложения для мобильных пользователей или для удаленных систем, работающих через плохие, неустойчивые каналы связи.
Необходимо отметить, что в отличие от "универсальных" средств разработок, ориентированных на работу с любыми СУБД (Delphi, Visual Basic, PowerBuilder), "родные" инструменты полностью используют все возможности сервера Oracle7. А именно, поддержка последовательностей и синонимов, работа с механизмом обеспечения секретности на сервере, доступ к хранимым на сервере процедурам и переменным, управление оптимизатором выполнения SQL-команд - использование этих возможностей либо невозможно в универсальных средствах разработок, либо требует большого труда при кодировании.
Инструменты сквозного проектирования и разработки приложений
На этапе предварительного обследования деятельности предприятия (той деятельности, которую необходимо автоматизировать) используется компонента Designer/2000 - средство построения диаграмм деловых процессов BPR (Business Process Modeler). С его помощь возможно не только построить модель всех процессов, протекающих в ходе повседневной деятельности организации (предприятия), но и произвести ряд анализов, способных выявить узкие места. Даже без последующего создания приложения, такая модель позволяет лучше понять как протекает деятельность организации и найти пути по ее улучшению.
На следующем этапе строится концептуальная модель будущего приложения с помощью ряда стандартных диаграмм - диаграмм Сущность-Связь, Иерархий Функций и Потоков Данных. Эта концептуальная модель подробно детализируется, расписывается ее "проекция" на средства разработки и характеристики будущего приложения. Диаграммы концептуальной модели достаточно просты для понимания, и на этапе моделирования достаточно легко наладить обратную связь с заказчиком, для достижения полного взаимопонимания в постановке задачи.
Процесс создания модели предполагает коллективную работу над проектом. Существуют мощные средства организации такой работы, разделения модели на части для независимой разработки и "сшивания" частей модели в целое.
После подробной детализации модели можно приступать к генерации приложения. Необходимо отметить, что имеется в виду именно генерация законченного приложения, а не некого прототипа, который далее будет развиваться вручную.
Генерация приложения заключается в генерации объектов Базы Данных и генерации для выбранного средства разработки клиентских частей приложения. При генерации объектов Базы Данных создаются не только таблицы и индексы, как в большинстве конкурирующих продуктов, но и другие необходимые объекты (последовательности, синонимы, представления, ограничения целостности и т.д.), а также процедурная логика, которая должна выполняться на сервере. Создаются так же определения ролей и пользователей с предоставлением им необходимых прав по работе с Базой Данных.
Генерация для клиентской части возможно для целого ряда различных средств разработок. Сейчас поддерживаются :
-
Oracle Developer/2000
- Oracle Power Objects
- Oracle WebServer
- MS Visual Basic 3.0 и 4.0
- Классы C/C+
Этот список с течением времени постоянно расширяется. Необходимы минимальные изменения в настройке модели приложения, что бы произвести генерацию приложения для другого средства разработки. Таким образом обеспечивается независимость приложения от:
- Средств разработки. Смена средства разработки осуществляется простой перегенерацией приложения, а не переписыванием заново, с предварительным изучением нового инструмента.
- Аппаратно-программной платформы. Даже если средство разработки не переносимо на выбранную платформу, то можно произвести генерацию приложения для того средства разработки, которое существует на избранной платформе, с полным сохранением функциональности приложения. Переход на другую платформу не вызывает необходимости полностью переписывать приложение.
- Разработчиков. Так как разработка ведется с помощью четко формализируемых методов, то дальнейшее развитие приложения может вести любой знакомый с методологией разработчик.
Важной особенностью является возможность восстановить модель приложения по уже существующему приложению, созданного без применения Designer/2000, с помощью процедуры реинжиниринга. Так же и вручную сделанные изменения в сгенерированной системе можно отразить в модели приложения и при последующей генерации они не будут потеряны.
Таким образом, с помощью Designer/2000 осуществляется инженерный подход к созданию промышленных приложений, позволяющий гарантированно создавать работающие, надежные приложения с требуемой функциональностью, независимые от средств разработки и аппаратно-программной платформы.
Обеспечение независимости от смены платформ и технологий
Другой иллюстрацией подхода корпорации Oracle к обеспечению создания независимых от платформы приложений является Developer/2000. Это инструментарий визуального проектирования клиентских приложений для технологии Клиент-сервер. Developer/2000 полностью переносим на все используемые ныне платформы, начиная от символьных терминалов и кончая графическими средами вроде Windows или Motif. Если при разработке не использовались платформенно зависимые особенности (например компоненты OCX/ActivX для Windows), то перенос приложения на другую платформу не требует никакого кодирования!
Рост популярности приложений для Internet/Intranet вызвал необходимость для разработчиков изучения как новых технологий, так и новых сред разработки для Web. Перенос приложения в среду Internet/Intranet означал практически полностью его переписывание на новом средстве разработки. Поэтому многие фирмы-производители инструментальных средств поддержали технологию Netscape Plug-In, которая позволяла определенным способом распространять и вызывать приложения через Web, не сильно их переделывая. Но на самом деле, это только временное решение, т.к. для выполнения приложения необходимо держать на клиентском компьютере полностью Run-Time среду, а само приложение целиком закачивается с Web-сервера.
Применение Developer/2000 позволяет перенести прикладную систему в среду Internet/Intranet более элегантным способом. Существует возможность разместить Run-Time среду Developer/2000 на Web-сервере, а откомпилированное приложение передается ей безо всякой модификации. Специальный кэтридж Web Developer'а формирует на лету Java Applets, которые передаются на клиентский компьютер в любую программу просмотра Web. Пользователь видит перед собой тот же пользовательский интерфейс, как если бы приложение выполнялось на его компьютере, а работать может даже на DOS-компьютере с 640 КБ памяти!
Таким образом, наряду с мощными возможностями по созданию полнофункциональных клиентских приложений с богатым пользовательским интерфейсом, Developer/2000 позволяет легко переносить созданные системы на любые существующие ныне платформы и использовать самые передовые технологии не переписывая ни строчки кода!
Поддержка разработчиков
Серьезные промышленные системы создаются не на один год, требуют постоянного развития для поддержания должной функциональности. Что бы разработчики могли полноценно справляться с поставленными задачами, корпорация Oracle осуществляет ряд мер по поддержке и собственно разработчиков и ведущихся ими проектов. В их числе:
- Соответствующая международным стандартам техническая поддержка продуктов Oracle, функционирующая на территории СНГ.
- Возможность ознакомления с пробными (trial) версиями продуктов Oracle, прежде чем принять решения об их закупке и затем возможность предварительного ознакомления с новыми версиями продуктов.
- Два периодических русскоязычных журнала ("Мир Oracle" и "Oracle Magazine - Русское издание"), посвященных продуктам Oracle, содержащих большое число статей для разработчиков.
- Действующие группы пользователей Oracle, периодические семинары.
- Большой выбор учебных курсов по продуктам Oracle, как и в представительстве корпорации Oracle в СНГ, так и у его партнеров.
Все это позволяет разработчикам иметь доступ к самым передовым технологиям Oracle, максимально эффективно использовать продукты корпорации.
Заключение
Средства разработки Oracle позволяют реализовать инженерный подход к разработке сложных промышленных приложений, направленный не только на получение быстрого первоначального результата, но и на обеспечение долгого жизненного цикла созданного приложения, простоты его развития и миграции на новые платформы. Использование инструментов Oracle не только позволяет полностью воспользоваться всей мощью сервера Oracle7, но и обеспечить:
- Создание многократно используемой модели прикладной системы.
- Свободу в генерации приложений для различных средств разработок на различных аппаратно-программных платформах.
- Независимость развития созданного приложения от существующих и будущих платформ и технологий.
- Использовать самые передовые технологии.
[Назад]
[Содержание]
[Вперед]