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

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

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

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

Добавлен: 26.06.2023

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

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

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

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

- концептуальный;

- логический;

- физический (рисунок 1.3).

Рисунок 1.3. Уровни представления модели

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

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

Объектно-ориентированный подход при проектировании информационной системы имеет как преимущества, так и недостатки.

Так среди преимуществ следует выделить:

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

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

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

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

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


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

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

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

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

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

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

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

- инкапсуляция информации защищает наиболее критичные данные от несанкционированного доступа.[7]

К недостаткам объектно-ориентированного подхода относятся следующие:

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

- снижение быстродействия за счет более сложной организации программной системы;

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

- сложность проектирования классов;

- документирование классов – задача более трудная, в отличие от процедур и модулей;

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


- обработка сообщения требует не одного, а многих методов, которые могут быть описаны в разных классах.[8]

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

ГЛАВА 2. АНАЛИЗ ОБЪЕКТНО-ОРИЕНТИРОВАННЫХ CASE-СРЕДСТВ

2.1. Характеристика объектно-ориентированных CASE-средств

CASE-средства (Computer Aided Software Engineering) - это программные средства, поддерживающие процессы создания и сопровождения информационной системы, включая:

- анализ и формулировку требований;

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

- генерацию кода;

- тестирование;

- документирование;

- конфигурационное управление и управление проектом и другие процессы.

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

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

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

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

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

-·быстрой адаптацией приложений к изменяющимся условиям за счет использования свойств наследования и полиморфизма;

-·возможностью организации параллельной работы аналитиков, проектировщиков и программистов.[9]

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

- Rational Rose;

- Microsoft Visio;

- Borland Together;

- StarUML.

Rational Rose представляет собой CASE-средство проектирования и разработки информационных систем и программного обеспечения для управления предприятиями, ориентированное на поддержку UML (Unified Modeling Language), как основного языка проектирования программного обеспечения.


Rational Rose также может использоваться для анализа и моделирования бизнес процессов.

Следует отметить, что первая версия Rational Rose была выпущена компанией Rational Software Corp., затем данный программный продукт был куплен IBM.

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

Моделирование бизнес процессов в Rational Rose выполняется за счет применения следующих аспектов, каждый из которых концентрирует внимание на определенных характеристиках и возможностях процессов:

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

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

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

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

Rational Rose обеспечивает следующие возможности моделирования бизнес процессов:

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

- структурное представление элементов – графическая структура позволяет наглядно отобразить состав элементов модели и взаимосвязи;

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

- интеграция с другими программными продуктами (например, Microsoft Visual Studio);

- хранение результатов проектирования в виде единой модели;

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

- поддержка компонентных технологий построения программных систем;

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


- генерация кода на языках Ada, ANSI C++, C++, COBRA, Java с настраиваемо синхронизацией моделей и кода;

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

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

Rational Rose по сравнению с иными средствами проектирования обладает следующими преимуществами:

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

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

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

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

- управление конфигурацией - возможность настраивать конфигурацию интерфейса и части приложений под свои потребности;

- разработка веб-приложений - предлагает инструменты XML и веб-моделирования веб-приложений.[11]

К недостаткам Rational Rose следует отнести:

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

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

В Rational Rose применяется графический пользовательский интерфейс (GUI), за счет которого можно настроить необходимое окружение для комфортной работы (рисунок 2.1).

Рисунок 2.1. Интерфейс Rational Rose

В основе работы Rational Rose лежит построение диаграмм и спецификаций UML, определяющих архитектуру системы, ее статические и динамические аспекты.

В составе Rational Rose можно выделить следующие основные структурные компоненты (рисунок 2.2):

Рисунок 2.2. Структура Rational Rose

- репозиторий - база данных проекта;