Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Основные принципы построения объектной модели).pdf
Добавлен: 27.04.2023
Просмотров: 674
Скачиваний: 3
СОДЕРЖАНИЕ
1. ОСНОВЫ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА К ПРОЕКТИРОВАНИЮ ИНФОРМАЦИОННЫХ СИСТЕМ
1.1 Основные принципы построения объектной модели
1.3 Основные понятия объектно-ориентированного подхода к проектированию информационных систем
1.4. Базовые составляющие объектно-ориентированного подхода
2. МЕТОДОЛОГИИ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО АНАЛИЗА
2.1 Методики объектно-ориентированного анализа
2.2 Достоинства и недостатки объектно-ориентированного подхода
ВВЕДЕНИЕ
Актуальность исследования заключается в том, что из существующих подходов к проектированию информационных систем объектно-ориентированный в настоящее время считается наиболее эффективным т.к. оперирует абстракциями реальных объектов и операций. Т.е. при построении модели имеющейся предметной области строится и модель будущей информационной системы (ИС). К тому же одной из важных особенностей объектно-ориентированного подхода является унифицированность процесса разработки ИС, неотъемлемой частью которого является унифицированный язык моделирования UML. Данная особенность обеспечивает упорядоченный подход к распределению задач и обязанностей при проектировании ИС, охватывающий весь ее жизненный цикл. Именно поэтому основы объектно-ориентированного подхода, а также принципы унифицированного моделирования широко используются при проектировании автоматизированных информационных систем.
Объектом исследования данной работы является объектно-ориентированный подход к проектированию информационных систем.
Предметом исследования является унифицированный язык моделирования.
В первой части работы рассмотрены основы объектно-ориентированного подхода к проектированию информационных систем.
Во второй части работы рассматриваются методологии объектно-ориентированного анализа
Цель курсовой работы: обзор и анализ основных принципов и особенностей объектно-ориентированного подхода.
Задачи курсовой работы:
1. Ознакомиться с основными принципами построения объектной модели и этапами проектирования информационных систем
2. Рассмотреть основные понятия объектно-ориентированного подхода к проектированию информационных систем и базовые составляющие объектно-ориентированного подхода
3. Изучить методики объектно-ориентированного анализа
4. Сделать выводы о достоинствах и недостатках объектно-ориентированного подхода
1. ОСНОВЫ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПОДХОДА К ПРОЕКТИРОВАНИЮ ИНФОРМАЦИОННЫХ СИСТЕМ
1.1 Основные принципы построения объектной модели
В основе объектно-ориентированного подхода (ООП) лежит объектная декомпозиция, при этом статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы — в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением, моделирующим поведение объекта реального мира.
Проблемы, стимулировавшие развитие ООП:
• необходимость повышения производительности разработки за счет многократного (повторного) использования ПО;
• необходимость упрощения сопровождения и модификации разработанных систем (локализация вносимых изменений);
• облегчение проектирования систем (за счет сокращения семантического разрыва между структурой решаемых задач и структурой ПО).
Объектная модель является наиболее естественным способом представления реального мира.
Понятие «объект» впервые было использовано около 30 лет назад в технических средствах при попытках отойти от традиционной архитектуры фон Неймана и преодолеть барьер между высоким уровнем программных абстракций и низким уровнем абстрагирования на уровне компьютеров. С объектно-ориентированной архитектурой также тесно связаны объектно-ориентированные операционные системы. Однако наиболее значительный вклад в объектный подход был внесен объектными и объектно-ориентированными языками программирования: Simula (1967), Smalltalk (1970-е гг.), C++ (1980-е гг.) и языком моделирования UML (1990-е гг.). На объектный подход оказали влияние также развивавшиеся достаточно независимо методы моделирования данных, в особенности модель «сущность—связь».
Концептуальной основой объектно-ориентированного подхода является объектная модель. Основные принципы ее построения:
• инкапсуляция (encapsulation);
• наследование (inheritance);
• полиморфизм (polymorphism);
• абстрагирование (abstraction);
• модульность (modularity);
• иерархия (hierarchy).
Инкапсуляция — свойство, при котором объекты содержат описание атрибутов и действий одновременно. Инкапсуляция — это процесс отделения друг от друга отдельных элементов объекта, определяющих его устройство и поведение. Инкапсуляция служит для того, чтобы изолировать интерфейс объекта, отражающий его внешнее поведение, от внутренней реализации объекта. Объектный подход предполагает, что собственные ресурсы, которыми могут манипулировать только операции самого объекта, скрыты от внешней среды. Абстрагирование и инкапсуляция являются взаимодополняющими: абстрагирование фокусирует внимание на внешних особенностях объекта, а инкапсуляция (или, иначе, ограничение доступа) не позволяет объектам-пользователям различать внутреннее устройство объекта.
Наследование — метод определения объектов, при котором производные объекты (потомки) наследуют свойства (атрибуты и действия) от своих родителей. Наследование свойств в объектно- ориентированном подходе понимается как наследование атрибутов и методов, т. е. возможность использования в производном объекте атрибутов и методов базового объекта.
Полиморфизм — свойство объектов, при котором действие с одинаковыми именами вызывает различное поведение для различных объектов. Полиморфизм предполагает возможность одинакового именования разных действий. Эта особенность имеет два аспекта:
• возможность одинакового именования статических методов;
• возможность одинакового именования динамических методов.
В UML для описания полиморфизма вводятся понятия операции
и метода. У классов есть операции, которые определяют его поведение. В некотором смысле операция — это набор общих сведений о поведении класса: детали реализации никак не специфицированы операцией, но некоторый комментарий по поводу реализации может быть дан в неформальном виде, например на естественном языке. При этом каждый потомок класса может предоставить метод, реализующий любую унаследованную операцию, отличный от соответствующего метода предка.
Операция — это лишь описание какой-либо черты поведения объекта, а метод — уже конкретная реализация. Операции обязательно наследуются, т. е. распространяются вдоль иерархии без каких-либо изменений, а методы могут перекрываться потомками для реализации конкретных деталей поведения, присущих объектам класса-потомка.
Абстрагирование — это выделение наиболее важных, существенных характеристик некоторого объекта, которые отличают его от всех других видов объектов и, таким образом, четко определяют его концептуальные границы с точки зрения дальнейшего рассмотрения и анализа, и игнорирование менее важных или незначительных деталей.
Абстрагирование позволяет управлять сложностью системы, концентрируясь на существенных свойствах объекта. Абстрагирование концентрирует внимание на внешних особенностях объекта и позволяет отделить самые существенные особенности его поведения от деталей их реализации. Выбор правильного набора абстракций для заданной предметной области представляет собой главную задачу объектно-ориентированного проектирования. Абстракция зависит от предметной области и точки зрения — то, что важно в одном контексте, может быть не важно в другом. Объекты и классы — основные абстракции предметной области.
Модульность — это свойство системы, связанное с возможностью ее декомпозиции на ряд внутренне сильно сцепленных, но слабо связанных между собой подсистем (модулей). Модульность снижает сложность системы, позволяя выполнять независимую разработку отдельных модулей. Инкапсуляция и модульность создают барьеры между абстракциями.
Иерархия — это ранжированная или упорядоченная система абстракций, расположение их по уровням. Основными видами иерархических структур применительно к сложным системам являются структура классов (иерархия по номенклатуре) и структура объектов (иерархия по составу). Примерами иерархии классов являются простое и множественное наследование (один класс использует структурную или функциональную часть соответственно одного или нескольких других классов), а иерархии объектов — агрегация.
1.2 Этапы проектирования ИС.
Выделим следующие этапы проектирования ИС:
- Исследование предметной области.
- Разработка архитектуры системы.
- Реализация проекта.
- Внедрение системы.
- Сопровождение системы.
Исследование предметной области предусматривает следующие шаги:
1. Спецификацию деятельности в предметной области.
2. Анализ деятельности в предметной области.
2.1. Структурно-логический анализ деятельности.
2.1.1. Анализ путей.
2.1.2. Анализ связности (прочности и сцепления) компонентов предметной области.
2.2. Анализ производительности.
2.3. Экономический анализ.
Разработка архитектуры системы включает в себя разработку следующих компонентов:
1. Спецификации требований к проектируемой системе.
2. Конструирование концептуальной модели предметной области.
3. Спецификации обработки данных в проектируемой системе.
4. Спецификации пользовательского интерфейса системы.
5. Спецификации деятельности в предметной области с учетом внедрения системы.
Процесс проектирования ИС базируется на моделях представления проектных решений. Модель классификации ориентирована на группирование объектов предметной области в соответствии с различными аспектами классификации и важность тех или иных свойств этих объектов. Модель декомпозиции ориентирована на описание систем, способных выполнять действия над данными.
Различают виды декомпозиции действий на основе:
• состава выходных данных;
• входных данных;
• представлений о промежуточных результатах;
• представлений о фазах обработки;
• представлений об альтернативных действиях.
Модели потоков отражают движение различных видов носителей (материальных, финансовых, информационных и др.).
Модель данных предметной области ориентирована на описание структуры информационных объектов, их функциональных взаимосвязей, необходимых для поддержания заданных действий.
Модель классов определяет систему классификации информации о предметной области, основанную на семантическом анализе. Среди важных характеристик модели классов можно выделить отношения наследования, включения или использования. В основе лежит объектно-ориентированный подход, основой которого является представление о предметной области как совокупности взаимодействующих друг с другом объектов, рассматриваемых как экземпляр определенного класса. Классы образуют иерархию на основе наследования. Объектно-ориентированный подход содержится в современных языках высокого уровня Smalltalk, Object Pascal, C++, Java.
Модель пользовательского интерфейса ориентирована на описание взаимодействий пользователей с проектируемой системой, состава форм представления и команд управления заданиями.
Модели логики ориентированы на описание потока управления (последовательности выполнения) операторов программной системы и действий пользователей.
Для отображения результатов проектирования на различных этапах используются следующие виды схем представления проектных решений:
1. Схемы первичной классификации.
2. Схемы вторичной классификации.
3. Схемы детализации.
4. Схемы спецификации функциональных возможностей.
5. Схемы локальных моделей данных.
6. Схемы потоков.
7. Диаграммы переходов.
8. Схемы спецификации пользовательского интерфейса.
9. Схемы распределенной обработки данных.
10. Структурированные карты объектов.
Схема классификации описывает многомерную одноуровневую классификацию одного элемента. Каждый признак (основание) классификации имеет глобальный идентификатор и имя: саt.–. Дуги на схеме классификации помечаются соответствующими элементами типа cat. По способу формирования будем различать первичные и вторичные варианты оснований классификации. Первичные основания характеризуют, как правило, наличие различных существенных отличительных свойств у каждого подкласса рассматриваемого класса элементов. Вторичные основания классификации элемента формируются в соответствии с основаниями классификации элементов, которые сильно связаны с данным элементом.