Файл: ПРИМИНЕНИЕ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА ПРИ ПРОЕЕКТИРОВАНИИ ИНФОРМАЦТОННОЙ СИСТЕМЫ.pdf

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

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

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

Добавлен: 22.05.2023

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

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

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

Введение

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

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

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

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

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

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

Глава 1. Методология и структура объектно-ориентированного проектирования.

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

Методология Object Modeling Technique (OMT) – поддерживает стадии анализа требований и проектирования. Опирается данная методология на продукт OMTTool, который позволяет разрабатывать модели в интерактивном режиме, с поддержкой многооконного графического редактора. Таким образом, после получения полного набора диаграмм можно предварительно оценить свойства будущей реализации.

Методология Structured Analysis/Structured Design (SA/SD) – содержит варианты обозначений для описания систем. Основу данной методологии составляют диаграммы потоков данных, которые моделируют преобразования данных при их прохождении через систему, диаграммы состояния, которые выполняют такую же роль, что и динамическая модель в методологии OMT и диаграммы зависимости, отражающие зависимости между хранилищами данных. В этой методологии организованы этапы структурного анализа (SA) и структурного конструирования (SD). Является первым хорошо продуманных формальных подходов к разработке систем.


Методология Jackson Structured Development (JSD) - разработана Джексоном в 80-ых годах. Не делает различий между этапами анализа и разработки, объединив в один общий этап разработки спецификаций проектируемой системы. Модели JSD описывают реальный мир в объектах, действиях и их последовательностях. Разработка по данной методологии включает:

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

Методология Object-Oriented System Analysis (OSA) – обеспечивает анализ систем, но не содержит возможностей этапа разработки. Поддерживает следующие представления модели:

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

Методология Rational Unified Process (RUP) основными принципами которой являются:

  • Итерационный и наращиваемый подход к созданию ПО
  • Планирование и управление проектами на основе функциональных требований
  • Построение систем на базе архитектуры ПО.

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

Методология Oracle – комплекс методов, охватывающий большинство процессов жизненного цикла ПО. В состав методологии входят:

  • Custom Development Method (CDM) – разработка ПО
  • Project Management Method (PJM) – управление проектом
  • Application Implementation Method (AIM) – внедрение ПО
  • Business Process Reengineering (BPR) – реинжиниринг бизнес процессов
  • Organizational Change Management (OCM) – управление изменениями

В соответствии с CDM жизненный цикл ПО формируется из этапов:

  • Определение требований (стратегия)
  • Формулирование требований к системе (анализ)
  • Преобразование требований в спецификации системы (проектирование)
  • Написание приложений (реализация)
  • Подготовка к началу эксплуатации (внедрение)
  • Эксплуатация

Компания Computer Associates разработала комплексы инструментальных средств поддержки процессов жизненного цикла ПО:

  1. All Fusion Modeling Suite – комплекс CASE-средств включающий продукты:
  • BPwin - функциональное моделирование
  • ERwin - моделирование данных
  • Paradigm Plus -объектно-ориентированный анализ и проектирование с помощью UML
  • Model Mart - организация совместной работы разработчиков)
  • ERwin Examiner - проверка структуры и качества моделей
  1. AllFusion Change Management Suite – средства управления конфигурацией и изменениями
  2. AllFusion Process Management Suite – средства управления процессами и проектами.

Model Mart должен удовлетворять следующим требованиям:

  1. Совместное моделирование – каждый участник должен иметь инструмент поиска и доступа интересующей его модели в любой момент времени. При этом используется три режима:
  • Незащищенный – пользователи могут работать с общими моделями в любое время
  • Защищенный – позволяет изменять модель, только одному пользователю, не позволяя, изменять ее другим
  • Режим просмотра – запрещает любое изменение модели
  1. Создание библиотек решений – позволяет формировать стандартные библиотеки решений, в которые входят наиболее удачные фрагменты проектов, накапливать и использовать типовые модели.
  2. Управление доступом – определение прав доступа для каждого пользователя, в соответствии с которыми, они получают доступ к определенным моделям. Со временем роли участников создания системы меняются, следовательно, меняются и права доступа некоторых участников проекта к библиотекам, моделям и прочим составляющим проекта.

Все эти варианты объектно-ориентированного подхода объединяют основополагающие принципы:

  • Инкапсуляция
  • Наследование
  • Полиморфизм
  • Абстрагирование
  • Модульность
  • Иерархия

Основные принципы и понятия объектно-ориентированного проектирования

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


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

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

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

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

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

• Иерархия - этот принцип позволяет разложить абстракции по уровням. Различают два основных вида иерар­хических структур:

  1. структура классов
  2. структура объек­тов

Так же к объектно-ориентированному проектированию относятся следующие не обязательные принципы:

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

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

• Устойчивость - свойство объекта существовать во времени и в пространстве.

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

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

    1. со­стоянием – характеризующим, перечень всех свойств объекта и их текущих значений.
    2. поведением – характеризующее, воздействие объекта на дру­гие объекты, относительно изменения со­стояния этих объектов и передачи сообщений. Иначе говоря, действия объекта полностью определяют его поведение.
    3. индивидуаль­ностью - свойство, которое отличает его от других объектов

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

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

Наследова­ние – позволяет строить новые классы на основе существующих с возможностью добавления и переопределения методов.

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

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

Достоинства Объектно-ориентированного проектирования:

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

Где есть плюсы, там есть и минусы, поэтому стоит выделить и недостатки данного подхода:

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

Архитектура информационных систем

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

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

  • Организации системы
  • Выбора составляющих систему элементов и интерфейсов
  • Поведения элементов
  • Объединения элементов и их поведения в более крупные подсистемы
  • Архитектурного стиля

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