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

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

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

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

Добавлен: 21.05.2023

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

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

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

Структурные элементы данной диаграммы представлены в приложении А.

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

Преимущества и недостатки объектно-ориентированного подхода

В отличие от структурного расклада объектно-ориентированный содержит ряд преимуществ:

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

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

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

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

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

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


Выделяют следующие достоинства:

• концептуальная ясность в разработке системы;

• надежность системы, вытекающая из простоты работы с ней;

• повторное использование исходных текстов программ;

• гибкость при модификации и расширении системы.

Рассмотрим каждое из них более подробно.

Концептуальная ясность в разработке системы.

При использовании программных объектов для моделирования объектов реального мира выделяют два наиболее важных эффекта:

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

• у разработчика есть возможность моделировать системы, считавшиеся ранее слишком трудными или сложными для работы.

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

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

б. дома в географической информационной системе;

в. кружки для диаграмм данных в CASE;

г. файлы и очереди в ОС;

д. сети в адаптивной инженерии знаний.

Надежность

Используя в программировании процедурный подход, а именно разделяя данные и процедуры можно обнаружить две потенциальные ошибки:

программист может опираться на знание деталей реализации в одном модуле, а результат получить в другом;

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

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

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

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

Гибкость

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

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

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

Несмотря на то, что ООП имеет много достоинств, находятся и его недостатки:

Нехватка постоянной памяти

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


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

Смена парадигмы

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

  • новый строительный блок: объект;
  • новая модель коммуникации: посылка сообщений;
  • новая связь между модулями: наследование.

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

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

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

Реализация объектно-ориентированного подхода при проектировании ИС

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


Выделяют следующие стадии проектирования информационной системы:

  1. Формирование требований
  2. Разработка концепции
  3. Техническое задание
  4. Эскизный проект
  5. Технический проект
  6. Рабочая документация
  7. Ввод в действие
  8. Сопровождение ИС

Рассмотрим эти стадии более подробно.

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

Чаще всего разработчики используют Microsoft SQL Server для создания баз данных, так как это самое распространенное и удобное в использовании приложение. Также можно использовать и MS Access, Oracle.

Но прежде, чем создавать базу данных в Microsoft SQL Server, необходимо построить ряд диаграмм, используя язык UML. Это диаграмму вариантов использования и диаграмму классов (ER-модель). На них отображаются пользователи системы и их функции. После того, как диаграммы будут построены, можно приступать к созданию базы данных. Исходя из построенной ER-модели и строится база данных. Далее необходимо созданную базу нормализовать, то есть привести к какой-либо нормальной форме. Существует их 5, но разработчик должен ее свести к 3 нормальной форме. Получили на выходе эскизный проект.

Следующим этапом нужно назначить каждому пользователю системы права доступа и задать пароли. Это может быть чтение, запись, изменение и удаление. Пароль стандартно состоит из 8 символов. На выходе получили технический проект.

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

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

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

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

Hewlett Packard и Tektronix - известные фирмы, которые специализируются не лишь только на компьютерной промышленности. Они числятся насыщенными приверженцами объектно-направленных стилей. В фирмы Hewlett Packard, к примеру, филиал Lake Stevens Instrument Division уже некоторое количество лет пользуется объектно-ориентированную методологию. В 1985 г. она стала применить Objective C. Данный язык применялся для разработки виртуального инструмента и измерительного интерфейса на базе рабочей станции для многоканального Динамического Анализатора Сигналов HP3565. Этот итог используется с целью рассмотрения издаваемых отделением устройств. Он выделяет свойства сигнала (принятие сигнала, измерение, тест, документация и автоматизация) и опробывает ответ. ПО произведено из 312 классов объектов, 6044 способов и 100474 строк слова. На разработку системы было затрачено время, эквивалентное 39 инженерным годам - коэффициент производительности равен 11 строчкам на всякого инженера каждый день. Фирма предполагает добиться более значимой производительности во грядущих намерениях, во каковых вполне вероятно повторно использовать текста планов со помощью приспособления наследования. Она придумала личную систему измерений, основанную на документации по классам и заголовкам и применяемую для прогнозирования актуального цикла процесса.