Файл: Анализ и оценка средств реализации объектно-ориентированного подхода к проектированию экономической информационной системы.pdf
Добавлен: 29.04.2023
Просмотров: 66
Скачиваний: 2
СОДЕРЖАНИЕ
1 СТРУКТУРА ОБЪЕКТНО ОРИЕНТИРОВАННОГО ПОДХОДА
1.1. Подходы к анализу и проектированию информационных систем
1.2. Сущность объектно-ориентированного подхода
1.3 Базовые составляющие объектно-ориентированного подхода
2 ОБЪЕКТНО-ОРИЕНТИРОВАННЫЙ АНАЛИЗ И ПРОЕКТИРОВАНИЕ ИНФОРМАЦИННЫХ СИСТЕМ.
2.1 Суть анализа и проектирования в ООП
3 СРЕДСТВА ДЛЯ РЕАЛИЗАЦИИ ИНФОРМАЦИОННЫХ СИСТЕМ С ИСПОЛЬЗОВАНИЕМ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА
ВВЕДЕНИЕ
ЭВМ внедрились в огромное количество сфер жизнедеятельности и сейчас уже невозможно представить свою жизнь без этих прекрасных аппаратных средств который нам так помогают в жизни с получением знаний организации работы или обучением. Но ключевое всё же это программная составляющая персональных компьютеров которая сейчас имеется для такого количества сфер что пересчитать не получится на пальцах 1 человека.
Компьютеры и программы установленные на них помогают решать множество задач, чем приносит огромную пользу.
В начале 1970-х гг. был отмечен кризис программирования выразилось это тем, что масштабные проекты стали выполнятся с значительными задержками или с увеличенным расходом средств на разработку. При этом огромное количество программ не обладали требуемыми функциональными возможностями, в последствие чего их качество не могло удовлетворить потребителей.
Это подтолкнуло ведущих зарубежных аналитиков на множественные аналитические исследования, но результаты их были довольно удручающие. В обговоренный срок на тот момент были закончены только менее 20% проектов. Из остальных проектов примерно 50% сданы заказчику с опозданием или разработчики превысили запланированные расходы. В основном причинами неудач служили нечёткая или неполная формулировка требований по отношению к ПО, неудовлетворительное планирование, недостаток во влечёных в работу над проектом пользователей и т.п. Исходя из этого потребовался существенно новый подход к проектированию ПО.
Этим подходом стал объектно–ориентированный, который в короткие сроки завоевал огромную популярность. Объектно-ориентрованный подход целиком устраняет те недостатки, с которыми ранее столкнулись разработчики ПО.
1 СТРУКТУРА ОБЪЕКТНО ОРИЕНТИРОВАННОГО ПОДХОДА
1.1. Подходы к анализу и проектированию информационных систем
Используются два подхода к проектированию информационных систем: структурный и объектно-ориентированный. Эти два подхода отличаются несколькими свойствами. Во-первых, отличие этих подходов один от другого состоит в принципах анализа и организации элементов (компонентов, модулей) системы. При использовании структурного подхода выполняется функциональный анализ системы, задачей которого является определение структуры функций системы. Обычно результатом анализа является дерево функций, связи которого определяют взаимодействие функций по параметрам. На верхнем уровне системы размещается вершина, которая соответствует решению глобальной задачи проекта. Далее в ходе анализа по мере добавления уровней выполняется деление на подфункции с более конкретным наполнением. При объектно-ориентированным подходе предметная область разделяется на набор объектов, соответствующих объектам реального мира, взаимодействующих между собой путем отправки сообщений.
Во-вторых, отличие заключается в объединении в объекте как атрибутивных данных (характеристики, свойства), так и поведения (функции, методы). При структурном подходе в системах функции и данные хранятся отдельно.
В-третьих, отличие двух подходов заключается в структурной организации внутри модулей системы. В структурном подходе модуль состоит из функций, иерархически связанных между собой отношением композиции (англ. part-of – часть-целое), т.е. функция состоит из подфункций, подфункции из подподфункций и т.д. В объектно-ориентированном подходе иерархия выстраивается с использованием двух отношений: композиции и наследования. При этом в объектно-ориентированном подходе «объект-часть» может включаться сразу в несколько «объектов-целое». Таким образом, модуль в структурном подходе представляется в виде дерева, а в объектно-ориентированном подходе – в виде ориентированного графа, т.е. с помощью более общей структуры.
Наибольшую популярность обрели методологии объектно-ориентированного подхода поддерживающие данный подход:
- унифицированный процесс (Unified Process, UP);
- экстремальное программирование (eXtreme Programming, XP);
- гибкое моделирование (Agile Modeling, AM).
Базовым средством документирования результатов проектирования систем посредством этих методологий является унифицированный язык моделирования (Unified Modeling Language, UML).[1]
1.2. Сущность объектно-ориентированного подхода
Термин «объект» или аналогичные ему понятия появились практически независимо в различных областях, связанных с компьютерами, в процессе разработки:
- архитектуры компьютеров (Burroughs 5000, IBM System/38, Intel 432);
- объектно-ориентированных операционных систем (Plessey/System 250, StarOS, iMax);
- объектно-ориентированных языков программирования (Simula, Smalltalk);
- теории баз данных (модели «сущность-связь»);
- систем искусственного интеллекта (фреймы).
В процесс создания программ термин «объект» впервые был введен в языке Simula 67 при определении сущностей предметной области.
Объект – это абстракция реальной сущности с четко выраженными концептуальными границами, индивидуальностью, состоянием и поведением.
Абстракция – форма познания, которая основывается га мысленном выделении существенных свойств и связей предмета и отвлечении от других, частных его свойств и связей. При этом «существенное» и «частное» должны рассматриваться с точки зрения решаемой задачи (предметной области). В объектно-ориентированном подходе абстракция – это модель сущности, которая описывает ее свойства и поведение.
Как пример реальных сущностей могут служить преподаватель, кафедра или дисциплина. Сущности могут быть и воображаемыми, например, порядок разработки учебного плана.
Индивидуальность – это свойство сущности, которое отличает её от других. Например, объект «преподаватель» в реальности – это мужчина или женщина, имеющие определённый рост, вес и возраст. Этот человек в определённые рабочие дни приходит в один из вузов. С точки зрения проектирования системы абстракция этого типа объектов будет привелена к базовому набору атрибутов: фамилия, имя, отчество, дата рождения, пол. После этого, набор атрибутов зависит от сферы использования проектируемой системы. Например, для бухгалтерии наиболее важной является информация о должности, на которой работает преподаватель, время приёма на работу, так как это определяет стаж, а соответственно размер надбавки за стаж работы, наличие учёной степени и учёного звания, что тоже предполагает начисление соответствующих надбавок. Для учебного отдела интерес представляют список дисциплин и количество часов, которые читает преподаватель.
Для логической группировки однотипных объектов предметной области в объектно-ориентированном подходе используется понятие «класс».
Класс – это совокупность объектов, имеющих общую структуру и поведение. По сути, класс – это шаблон, на основе которого строятся однотипные объекты. Как синоним понятия «объект» часто употребляют понятие «экземпляр класса».
Каждый класс характеризуются обозначенным набором атрибутов и методов. Текущее значение атрибутов чётко определяет текущее состояние объекта. Набор методов и их алгоритмическая реализация определяют поведение класса объектов.
Когда говорят об объектно-ориентированном подходе, то обязательно дают понятие терминам "инкапсуляция", "наследование", "полиморфизм".
Наследование – принцип, в соответствии с которым знание об общей категории разрешается применять по отношению более узкая категории. Применительно к классам это означает, что порождаемый класс (узкая категория) полностью унаследует (включит в себя) все атрибуты и методы, определённые в родительском классе (общей категории). При этом в дочернем классе можно доопределять атрибуты и вводить новые методы. Например, дочерний класс «преподаватель» будет наследовать от родительского класса «сотрудник» все атрибуты, к которым будут отнесены фамилия, имя, отчество, дата рождения, дата приема на работу и все методы (определения возраста по дате рождения, стажа работы по дате приёма на работу). При этом данный класс будет иметь обязательно атрибуты "Учёная степень" и "Учёное звание".
Инкапсуляция – принцип, в соответствии с которым внутреннее устройство элементов системы скрывается от других взаимодействующих классов. Еще этот принцип называют "информационная закрытость". Принцип определяет обмен информацией между классами только в минимальном объеме, ограничение доступа к атрибутам и методам объектов (классов) со стороны других объектов (классов) и полное скрытие алгоритмической реализации методов от других объектов (классов).
Полиморфизм – принцип построения определяет возможность принимать различные внешние формы или функциональность (поведение) в зависимости от контекста. Как пример, методы Paint (нарисовать) или DefineS (определить площадь), определённые в родительском классе «фигура», для классов «эллипс» и «прямоугольник» должны быть реализованы по-разному."
Сущность объектно-ориентированного подхода к анализу и проектированию информационных систем кроется в декомпозиции системы на классы, которые соответствуют типам объектов предметной области, и построении из них иерархии в виде ориентированного графа с использованием отношений композиции и наследования.
1.3 Базовые составляющие объектно-ориентированного подхода
Базовыми составляющими объектно-ориентированного подхода являются:
унифицированный процесс;
унифицированный язык моделирования;
шаблоны проектирования.
Унифицированный процесс – это процесс разработки программного обеспечения (ПО), который обеспечивает структурированный подход к распределению задач и обязанностей в организации, разрабатывающей Программное обеспечение. Унифицированный процесс охватывает весь жизненный цикл программного обеспечения, начиная c определения требований и заканчивая сопровождением. Данный процесс представляет собой шаблонную схему для разработки и сопровождения программ различного назначения.
Унифицированный язык моделирования UML используется для определения, визуализации и конструирования моделей системы в виде диаграмм и документов на основе объектно-ориентированного подхода. Следует отметить, что унифицированный процесс и UML разрабатывались совместно.
На стадиях анализа и проектирования часто используются так называемые шаблоны (паттерны) проектирования.
Шаблон – это пара «проблема/решение», содержащая готовое обобщенное решение типичной проблемы, которой присвоено имя. Обычно, шаблон кроме текстового описания содержит также одну или несколько диаграмм UML (например, диаграммы классов, кооперации и/или последовательности), графически иллюстрирующих состав и структуру классов, а также особенности их взаимодействия при решении поставленной проблемы. Шаблоны разрабатываются опытными профессионалами и являются проверенными, эффективными (порой оптимальными) решениями. Применение шаблонов обеспечивает сокращение затрат и повышение качества разработки программного обеспечения.
Подводя итог вышеизложенному, можно сделать вывод объектно-ориентированный подход имеет не мало преимуществ по сравнению со структурным:
- Описание системы в виде объектов больше соответствует содержательному смыслу предметной области.
- Сущности предметной области, зачастую, обладают поведением, что в объектно-ориентированном проектировании отражается с помощью определения методов класса. В структурном подходе данные (атрибуты) и алгоритмы (методы) существуют отдельно друг от друга.
- Объединение атрибутов и методов в объекте (классе), а также инкапсуляция позволяют добиться большей внутренней связности и меньшей связности между компонентами системы.
- Объектно-ориентированный подход позволяет легче производить параллельные вычисления, так как каждый объект обладает собственными значениями характеристик (атрибутов) и поведением, за счет чего можно добиться автономности обработки атрибутов различных экземпляров класса.
- CASE-средства, поддерживающие объектно-ориентированный подход, на основе информации об объектах позволяют достичь большей степени автоматизации генерации кода. CASE-средства, поддерживающие структурный подход, хорошо справляются с генерацией структур БД. Однако следует отметить, что эта структура должна удовлетворять требованиям нормализации. В связи с чем автоматическая генерация кода (например, экранов или функций обработки данных) возможна лишь в определенных случаях.