Объектно-ориентированное проектирование. Проектирование на основе структур данных - Методы проектирования программных систем

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

С учетом имеющихся инструментальных средств класс TXSet может быть построен на основе класса Array из библиотеки CLASSLIB, т. е. это множество может быть интерпретировано массивом. Массив представляет собой упорядоченную совокупность однотипных элементов, в то же время данные могут принадлежать различным типам и каждому тип соответствует свой набор характеристик. Это противоречие можно преодолеть, если элементами массива TXSet будут указатели на экземпляры данных.

Чтобы использовать указатели на экземпляры данных как элементы массива, все классы, определяющие типы данных, должны быть образованы из общего базового класса.

Пусть требуется обеспечить возможность использования числовых скалярных данных и массивов (векторов и прямоугольных матриц), а также данных типа строк и массива строк. Естественно определить для каждого такого типа свой класс: TDScal, TDArray, TDString, TDStringArray. В каждом из этих классов должно быть поле идентификатора данного ident, поле описания данного head и, возможно, поле flags, представляющее собой набор битов, дополняющих описание данного. Может оказаться удобным иметь и поля, содержащие количество знаков при представлении скаляра или элементов массивов (width) и количество цифр в дробной части для представления чисел (dec). Все эти данные можно объединить в классе TData, базовом для остальных классов данных. Таким образом, вместо одного класса "данное", выделенного на этапе анализа, появилось пять классов. После этого следует вернуться к этапу анализа и оформить рабочие документы анализа для новых классов.

Аналогичным образом следует уточнить состав и определения остальных классов, выбранных на этапе анализа.

После определение перечня классов следует разработать семантику каждого класса - определить состав и назначение методов класса. При этом также может возникнуть необходимость выделения новых классов и, следовательно, повторение отдельных частей этапа анализа и новое уточнение ранее описанных классов.

Таким образом, процесс объектно-ориентированного проектирования состоит из циклического выполнения четырех основных шагов:

    - определение классов и объектов на определенном уровне абстракции. - определение семантики классов. - определение (идентификация) связей между классами и объектами. - реализация классов.

На каждом повторении этого цикла уточняются описания классов и перерабатываются проектные документы.

Одной из наиболее трудоемких и сложных задач при создании информационных систем является проектирование Базы данных, как основы подсистемы представления и обработки данных. Организация данных требует предварительного моделирования предметной области, т. е. построения инфологической модели данных, главным назначением которой является систематизация разнообразной информации и отражение ее свойств по содержанию, структуре, объему, связям, динамике с учетом удовлетворения информационных потребностей всех категорий пользователей.

Информационно-логическая (инфологическая) модель отражает предметную область в виде совокупности информационных объектов и их структурных связей. Основой для построения инфологической модели Базы данных является формализованное описание данных предметной области, которые рассматриваются как совокупность информационных объектов, содержащих наборы реквизитов и структурных связей этих объектов. Предметная область включает объекты (клиенты, счета клиентов, документы, операции и т. д.), их свойства и характеристики, взаимодействия и процессы над ними.

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

Процесс проектирования Базы данных начинается с постановки задачи и выявления объектов, процессов или сущностей предметной области. Например, объектами могут быть предприятия, вкладчики, банки. Для каждого из объектов выбирается набор характеризующих его свойств (полей, реквизитов). Для предприятия - наименование, адрес, расчетный счет, название банка и пр., для вкладчика - фамилия, имя, отчество, адрес, паспортные данные, место работы и пр. Затем в процессе анализа определяется информационная потребность каждой задачи, которую составляют входные и результатные документы, и определяется периодичность решения задач.

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

Концептуальное проектирование - сбор, анализ и редактирование требований к данным. Для этого осуществляются следующие мероприятия:

    - обследование предметной области, изучение ее информационной структуры; - выявление всех фрагментов, каждый из которых характеризуется пользовательским представлением, информационными объектами, связями между ними и процессами; - моделирование и интеграция всех представлений.

Результат данного этапа - концептуальная модель, инвариантная к структуре Базы данных, часто представляется в виде модели "сущность-связь".

Логическое проектирование - преобразование требований к данным в структуры данных. Результат - СУБД-ориентированная структура Базы данных и спецификации прикладных программ. На этом этапе часто моделируют Базы данных применительно к различным СУБД и проводят сравнительный анализ моделей.

Физическое проектирование - определение особенностей хранения данных, методов доступа и т. д.

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

Проектирование Базы данных имеет свои особенности на всех стадиях и этапах проектирования.

I этап. Подготовка Технического задания (постановка задачи). Включает сбор материалов в процессе обследования и оформление Технического задания. Выполняется следующий комплекс работ:

    * определение экономической целесообразности и технической возможности создания Базы данных; * выявление состава, содержания и характеристик хранимой информации на основе результатов обследования предметной области; * определение оценок, количественных характеристик информационных объектов и структурных связей между ними на основе результатов анализа информационных потребностей приложений; * построение инфологической (информационно-логической) модели предметной области, определяющей совокупность информационных объектов, их атрибутов и структурных связей, динамику их изменения и характеристику информационных потребностей пользователя; * предварительная оценка вариантов разработки Базы данных; * оценка возможности использования СУБД и выбор СУБД.

По результатам выполнения этапа создаются Технико-экономическое обоснование проектирования Базы данных (ТЭО) и Техническое задание (ТЗ).

II этап. Технический проект. Результаты разработок и проектных решений оформляются в виде технического проекта. На данном этапе выполняются следующие работы:

    * составление и уточнение инфологической модели; * логическое проектирование (составление концептуальной схемы); * физическое проектирование (распределение по уровням памяти, выбор методов доступа, определение размеров файлов и т. д.); * проектирование и представление данных для приложений; * проектирование программного обеспечения, включая СУБД.

III этап. Рабочий проект. Детализуются решения технического проекта. Выполняется следующий комплекс работ:

    * разработка программных средств и сервисных программ; * настройка СУБД и приложений в соответствии с выбранными параметрами; * разработка контрольного примера; * разработка должностных технологических инструкций для пользователей.

IV этап. Внедрение проекта (эксплуатация и отладка). Выполнятся проверка проектных решений и их доводка, при необходимости дорабатывается технология работы с Базой данных, пользователями, выполняется перераспределение обязанностей, устанавливаются категории и иерархия доступа пользователя к данным.

Похожие статьи




Объектно-ориентированное проектирование. Проектирование на основе структур данных - Методы проектирования программных систем

Предыдущая | Следующая