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

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

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

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

Добавлен: 27.06.2023

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

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

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

Введение

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

Развитие современных информационных систем приводит к увеличению сложности информационных систем. Главной задачей во время разработки сложных систем является проектирование адекватных моделей систем. Для этого применяются CASE-средства (Computer Aided Software/ System Engineering) – специальные программно-технологические средства.

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

Целью курсовой работы является рассмотрение применения объектно-ориентированного подхода при проектировании информационной системы.

В данной курсовой работе будут решаться следующие задачи:

1. Изучить теоретические основы объектно-ориентированного подхода проектирования;

2. Провести краткий анализ методов объектно-ориентированных методологий;

3. Проанализировать технологии разработки;

4. Рассмотреть инструментальную среду IBM Rational Rose.

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

В первой главе рассматриваются основные понятия и характеристики объектно-ориентированного подхода.

Вторая глава содержит информацию о методах объектно-ориентированного проектирования.

Третья глава посвящена технологиям проектирования информационных систем.

В четвертой главе раскрывается сущность инструментального средства объектно-ориентированного проектирования IBM Rational Rose.

1. Теоретические основы объектно-ориентированного подхода


1.1. понятие объектно-ориентированного проектирования.

Объектно-ориентированное проектирование – это метод проектирования, сочетающий в себе процесс объектно-ориентированной декомпозиции и систему обозначения для представления логической и физической, а также статической и динамической моделей проектируемой системы»[[1]]. Отличие объектно-ориентированного проектирования от структурного заключается именно в объектно-ориентированной декомпозиции.

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

«Объектно-ориентированная декомпозиция уменьшает размер систем за счет повторного использования общих механизмов, обеспечивая значительную экономию выразительных средств. Объектно-ориентированные системы являются более гибкими и легче эволюционируют со временем, поскольку их проектирование основано на устойчивых промежуточных формах»[[2]].

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

Основные предпосылки создания объектно-ориентированного подхода:

  1. прогресс в области архитектуры ЭВМ (включая системную и аппаратную часть);
  2. развитие языков программирования, таких как Simula, Smalltalk, CLU, Ada;
  3. развитие методологии программирования, включая принципы модульности и защиты информации (сокрытия данных);

1.2. Свойства объектов в объектно-ориентированном подходе следующие:

  • Абстрагирование – выделение существенных признаков объект, которые отличают его от других видов объектов. Основные абстракции предметной области – объекты и классы.
  • Модульность - возможность декомпозиции системы на внутренние подсистемы (модули), тем самым снижая сложность системы и позволяя осуществлять разработку отдельных модулей независимо от других.
  • «Инкапсуляция – физическая локализация свойств и поведения в рамках единственной абстракции»[[3]]. Смысл этого свойства в том, что состав и структура атрибутов объекта не зависят от сообщений, поступающих извне.
  • Иерархия – упорядоченная систем абстракций, расположение их по уровням.

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

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

«Объектно-ориентированная система изначально строится с учетом эволюции. Наследование и полиморфизм обеспечивают возможность определения новой функциональности классов с помощью создания производных классов – потомков базовых классов»[ [4]].

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

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

На стадии программирования осуществляется разработка программного обеспечения по отдельным компонентам, тестирование и сборка. То есть происходит постепенное создание (эволюция) системы.

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

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

«Можно назвать пять преимуществ, которые дает объектная модель:

    1. Объектная модель позволяет в полной мере использовать выразительные возможности объектных и объектно-ориентированных языков программирования.
    2. Использование объектного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования не только программ, но и проектов, что в итоге ведет к созданию среды разработки. Объектно-ориентированные системы часто получаются более компактными, чем их не объектно-ориентированные эквиваленты. А это означает не только уменьшение объема кода программ, но и удешевление проекта за счет использования предыдущих разработок, - что, в свою очередь, дает выигрыш в стоимости и времени.
    3. Использование объектной модели приводит к построению системы на основе стабильных промежуточных описаний, что упрощает процесс внесения в нее изменений. Это дает системе возможность развиваться постепенно и не приводит к полной ее переработки даже в случае существенных изменений исходных требований.
    4. Объектная модель уменьшает риск разработки сложных систем – прежде всего потому, что процесс интеграции растягивается на все время разработки, а не превращается в единовременное событие. Объектный подход состоит из ряда хорошо продуманных этапов проектирования, что также уменьшает степень риска и повышает уверенность в правильности принимаемых решений»[[5]].

«Применяя объектно-ориентированное проектирование, можно создавать гибкие программы, написанные экономными средствами. При разумном разделении пространства состояний можно добиться большей уверенности в правильности разработанного программного обеспечения. В итоге уменьшается риск, характерный для разработки сложных программных систем»[[6]].

2. Методы объектно-ориентированного проектирования

2.1. Методология OMT

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

Впервые Метод OMT (Object Modeling Techniques) был описан в работе Майкла Блага (Michael Blaha), Билла Премерлани (Bill Premelani), Джеймса Румбаха (James Rumbaugh) и их коллег из компании Generak Electric. Он стал одним из наиболее популярных методов объектно-ориентированного анализ. «Этот подход в значительной мере основан на традиционных структурных методах и предусматривает использование мощной системы обозначения, которая вместе с тем является достаточно сложной и подробной. Сложность нотации отчасти объясняется тем, что из поддерживаемых ею средств представлена для автоматической генерации исходного кода»[[7]].

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

Проектируемая программная система в технологии OMT представляется в виде трех взаимосвязанных моделей:

  • Объектная модель. Представляет статические, структурные аспекты системы, связанные с данными. Объектные модели описывают объекты, классы объектов, а также связи между объектами.
  • Динамическая модель. В ней описывается работа отдельных частей системы, поведение системы.
  • Функциональная модель. Рассматривает взаимодействие отдельных частей системы по данным и по управлению в процессе ее работы.

Эти три вида моделей позволяют получить три взаимно-ортогональных представления системы в одной системе обозначений. Совокупность моделей системы может быть проинтерпретирована на компьютере (с помощью инструментального программного обеспечения), что позволяет продемонстрировать заказчику характер работы с будущей системой и существенно упрощает согласование предварительного проекта системы.


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

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

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

Конструирование системы завершается конструированием ее объектов. На этом этапе разрабатываются полные определения классов и зависимостей, используемые на этапе реализации системы. Кроме того, определяются и конструируются внутренние объекты и оптимизируются структуры данных и алгоритмы.

2.2. Методология BOOCH

«В 1980-х годах Гради Буч (Grady Booch) опубликовал статью под пророческим заголовком: Object-Oriented Design (Объектно-ориентированное проектирование), в которой были изложены вопросы проектирования для языка Ада. К 1991 году Буч смог расширить свои идеи до подлинно объектно-ориентированного метода проектирования, который он описал в своей одноименной книге, переработанной в 1993 году»[[8]].

Наибольшее применение метод Booch'93 нашел на этапах проектирования и разработки различных программных систем. В нем предусматривается постепенное и многократное уточнение архитектуры системы.

Метод Booch использует графическую нотацию для проектирования. Нотация имеет расширения для реализации классов и объектов, а также сервисов предоставляемых ими. Другой важной особенностью применяемой нотации является наличие диаграмм переходов состояний (state transition diagrams) и временных диаграмм (timing diagrams).

2.3. Методология ARIS

«Методология построения интегрированных информационных систем (Architecture of Integrated Information Systems, ARIS) предполагает определенный подход к формализации информации о деятельности организации и представление ее в виде графических модулей, удобных для понимания и анализа»[[9]].