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

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

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

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

Добавлен: 26.06.2023

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

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

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

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

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

- объектный подход к моделированию данных при том, что большинство ИС используют реляционные модели; В конце концов, ИС чаще разрабатываются через комбинацию объектно-ориентированных языков программирования и реляционных баз данных, а не полностью объектные базы данных и языки.[5]

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

Главными достоинствами объектно –ориентированного моделирования по сравнению со структурными методами являются:

- возможность преодолевать ограничения, которые связаны со сложностью разрабатываемых систем;

- применение на стадии анализа моделей ,близких к реальности;

- использование при анализе и проектировании ИС систем реального времени и аппаратно-программных комплексов;

- обеспечение возможности повторного использования разработанного ПО, позволяющего очень сильно сократить сроки и снизить затраты на разработку каждой последующей системы;

- поддержка итеративного, а не лавинообразного процесса проектирования;

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

- создание гораздо более открытых систем;

- полное использование описательных возможностей объектно-ориентированных языков программирования. [4]


3 Суть объектно-ориентированного подхода в проектировании ИС

Объектно-ориентированный (здесь ОО) подход к разработке информационных систем получил распространение в 90-х годах прошлого века и обладает огромным преимуществом в сравнении с традиционной структурной разработкой ПО (системы) и характеризуется следующими параметрами:

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

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

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

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

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

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

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


Составными частями ОО методологии (ООМ) являются:

- ОО анализ;

- ОО проектирование;

- ОО программирование.

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

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

В данном определении содержатся две важные части:

- ОО проектирование ведет к ОО декомпозиции. Именно поддержка ОО декомпозиции отличает ОО проектирование от структурного;

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

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

На результатах ОО анализа формируются модели, на которых основывается ОО проектирование , а оно в свою очередь создает основу для окончательной реализации системы с использованием методологии ОО программирования.[4]

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


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

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

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

3.1 Средства работы с ООП

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

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

Также используются огромное количество языков программирования и моделирования в объектно –ориентированном моделировании и программировании. Два самых популярных стандартных языка объектно-ориентированного моделирования – UML (The Unified Modeling Language) и SysML [4],а самый популярный на сегодняшний день язык программирования SysML ,однако является диалектом языка UML. Часть диаграмм языка UML не вошли в этот язык, но появились две новых. Другие диаграммы UML были дополнены и частично изменены. Базовым элементом модели стал блок, а не класс. [9]

CASE системы тоже не обошли ООП стороной, одна из систем поддерживающей OOM является Rational Rose фирмы Rational Software Corp.

Об этих всех продуктах я и расскажу подробнее.


3.1.1 Унифицированный язык визуального моделирования (UML)

Унифицированный язык моделирования UML (Unified Modeling Language) – открытый стандарт, использующий графические обозначения для создания абстрактной модели системы (UML-модели); был создан для определения, визуализации, проектирования и документирования в основном программных приложений. Методы описания результатов анализа и проектирования семантически близки к методам программирования на современных объектно-ориентированных языках. На основании UML-модели возможна генерация программного кода. С помощью UML можно также разработать детальный план создаваемой системы, содержащий системные функции и бизнес процессы, схемы баз данных, программные компоненты многократного использования. UML позволяет рассмотреть систему со всех точек зрения, имеющих отношение к ее разработке и последующему развертыванию.

UML обеспечивает поддержку всех этапов жизненного цикла ИС и предоставляет для этих целей следующие набор диаграмм: структурные диаграммы (Structure Diagrams); диаграммы поведения (Behavior Diagrams);диаграммы взаимодействия (Interaction Diagrams).

UML фокусируется не трех архитектурных видениях системы:

- функциональном (описывает внешнее поведение системы с точки зрения пользователя с помощью use-case диаграмм);

- статическом (в терминах атрибутов, методов, связей, классов, сообщений с помощью CRC cards, class diagrams, object diagrams);

- динамическом (sequence diagrams, collaboration diagrams, statecharts)

и имеет практическое значение в описании сервисно-ориентированных архитектур (SOAs). Формальная спецификация последней версии UML 2.0 опубликована в августе 2005 года. Семантика языка уточнялась и была расширена для поддержки методологии Model Driven Development, MDD. Последняя версия UML 2.4.1 опубликована в августе 2011 года. UML 2.4.1 принят в качестве международного стандарта ISO/IEC 19505-1, 19505-2. Проблематика выбора. Появление новых и все более сложных объектно-ориентированных языков должно было, как представлялось, увеличить потребность в использовании объектного подхода для разработки бизнес приложений. Но так ли это на самом деле, дает ли популярность объектно-ориентированного программирования гарантию преимущества нового объектного подхода к проектированию перед традиционной структурной методологией, остается вопросом. Ниже перечислены преимущества и недостатки структурной и объектно-ориентированных методологий.[4]