Файл: Применение объектно-ориентированного подхода при проектировании информационной системы.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 24.04.2023

Просмотров: 273

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

1.3. Проектирование информационных систем

В процессе создания информационных систем (далее – ИС), разработчиками используются два альтернативных подхода – структурный и объектно-ориентированный.

Структурный подход к разработке является классическим и предполагает последовательную реализацию следующих этапов разработки:

  • анализа предметной области,
  • проектирования,
  • создания программных модулей,
  • объединения модулей в единую систему,
  • тестирования,
  • внедрения.

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

Однако эта технология не лишена некоторых недостатков. В соответствии с классическим подходом основное внимание должно уделяться информации, с которой работает система. Разработчик спрашивает пользователей, какая информация им нужна, проектирует базу данных (далее - БД) для хранения этой информации, создает экранные формы для ее вывода, встраивает возможность распечатывать отчеты. Иначе говоря, разработчик «фокусируется» на самой информации, а тому, что с ней делать, т. е. поведению системы уделяется меньше внимания. Такой подход называется «ориентированным на данные», он применялся при разработке тысяч различных систем много лет. Он неоценим при проектировании БД и систем обработки информации, но при разработке бизнес-приложений возникают проблемы, главная из которых состоит в том, что требования к системе могут меняться со временем. Система, ориентированная на данные легко приспосабливается к изменениям БД, однако изменить деловые правила или поведение такой системы значительно труднее.

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


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

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

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

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

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


Указанные преимущества могут быть реализованы только при правильном проектировании систем в соответствии с принципами инкапсуляции, наследования и полиформизма.

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

Наследование – это механизм, позволяющий создавать новые объекты, основываясь на уже существующих объектах. Наследование позволяет выделить свойства, операции и события одного объекта и приписать их другому объекту, иногда с модификацией. Порождаемый объект-потомок (child) наследует свойства порождающего, родительского объекта (parent). Например: если «Автомобиль» – некий родительский объект, то «Легковой автомобиль» – объект-потомок, которому присущи все свойства объекта «Автомобиль».

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

Полиформизм можно также определить как свойство некоторых объектов принимать различные внешние формы в зависимости от обстоятельств, т. е. действия, выполняемые одноименными методами, могут отличаться в зависимости от того, к какому классу относится тот или иной метод. Например, операция «Выключить» имеет разный смысл и результат, будучи применена к разным классам – «Автомобилю», «Свету в комнате» или «Компьютеру».

Рассмотренные особенности альтернативных подходов к созданию информационных систем представлены в таблице 1.

Фундаментальным понятием ООП является Объект, представляющий собой некую сущность реального мира или концептуальную сущность с четко определенными границами и значением для системы. Объект может быть чем-то конкретным, например студент Иванов или кассовый аппарат № 4, или концептуальным, например банковская операция, торговый заказ, зачетная сессия или ставка прибыли.


Каждый объект имеет три характеристики: состояние, поведение и индивидуальность.

Состояние – одно из условий, в котором объект может находиться, меняется во времени и определяется атрибутами и отношениями между объектами. Например, имеем систему регистрации успеваемости. Объект Студенты группы № 1 в системе регистрации успеваемости может находиться в одном из двух состояний: сдавали экзамен по информатике или не сдавали экзамен по информатике. Если сдавали информатику, могут сдавать другой экзамен или могут быть переведены на следующий семестр, а если не сдавали, необходимо организовать экзамен по информатике.

Таблица 1

Структурный подход

Объектно-ориентированный подход

Особенности

Следствия

Особенности

Следствия

Подход к разработке

Декомпозиция работы системы на автоматизируемые функции (функциональные подсистемы)

Целостное представление, в котором все компоненты взаимоувязаны в пространстве и времени

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

Однократная разработка всех объектов

с последующим многократным использованием для создания различных по назначению систем

ЖЦ

Последовательная реализация этапов ЖЦ

Риск обнаружения ошибок на этапе тестирования, который является предпоследним

Спиральная модель ЖЦ

Снижение риска за счет наличия этапа тестирования на каждой итерации ЖЦ

Ориентация

Ориентация на данные (data centric), на обработку информации. Перенос на приложения отработку реакции системы на запросы (поведение) и решение задач

Удобно разрабатывать БД и системы обработки информации и отслеживать изменение данных. Проблемы при разработке бизнес-приложений, поскольку при изменении требований к системе изменить деловые правила и поведение системы оказывается сложно

Ориентация на объектно-ориентированную парадигму, использующую принципы инкапсуляции, наследования и полиформизма

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

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


Индивидуальность означает, что каждый объект уникален, даже если его состояние аналогично состоянию другого объекта. Например, студент Иванов и студент Петров – два объекта в системе регистрации успеваемости. Хотя они оба являются студентами группы № 1, каждый из них уникален.

Класс – фундаментальное понятие ООП, представляющее собой описание группы объектов с общими свойствами (атрибутами), поведением (операциями), определяющим взаимодействие объектов с внешней средой, а также отношениями с другими объектами и семантикой. Т. о. класс – шаблон для создания объекта. Каждый объект является экземпляром конкретного класса и не может быть экземпляром нескольких классов. Например, класс Студенты группы № 1 может определяться следующими характеристиками:

  • атрибуты – время экзамена, место проведения экзамена;
  • операции – получить время экзамена, получить аудиторию для проведения экзамена, сдавать экзамен.

Студент Петров и студент Иванов – это объекты, принадлежащие классу Студенты группы № 1. Каждый из них имеет значения атрибутов и доступ к операциям, определенным классом Студенты группы № 1.

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

2.Объектно-ориентированный подход к проектированию информационной системы

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

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