Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Сравнительный анализ программных продуктов, реализующих объектно-ориентированный подход).pdf
Добавлен: 31.03.2023
Просмотров: 281
Скачиваний: 2
Таким образом, из рассмотренных средств реализации объектно-ориентированного подхода наилучшими по рассмотренным критериям видятся Microsoft Visio и MagicDraw, функционал у них практически одинаков, при этом Microsoft Visio не реализует генерацию заготовок программного кода в отличие от MagicDraw, которое, в свою очередь, не позволяет осуществлять взаимодействие в реальном времени, в отличие от Microsoft Visio. Оба же средства проектирования достаточно просты в использовании и имеют репрезентативный интерфейс, однако, поставляются платно.
ЗАКЛЮЧЕНИЕ
Суть объектно-ориентированного подхода состоит в проектировании не данных и программ в отдельности, а объектов, сочетающих в себе и данные, и программы, информационно и функционально характеризующие соответствующие сущности предметной области.
Объектно-ориентированный подход к проектированию информационной системы использует объектную декомпозицию, при котором структура системы описывается в терминах объектов и связей между ними, а поведение системы - в терминах обмена сообщениями между объектами, которые создаются на основе шаблонов, называемых классами, и характеризуются свойствами, состояниями и методами обработки.
Объектно-ориентированное проектирование позволяет представить логическую и физическую, а также статическую и динамическую модели проектируемой системы.
Основными принципами объектного подхода являются инкапсуляция, наследование и полиморфизм, а свойствами: абстрагирование, модульность, иерархия, типизация, параллелизм и устойчивость.
Языком объектно-ориентированного проектирования является унифицированный язык моделирования – UML, включающий диаграммы, сущности и связи.
Объектно-ориентированный подход позволяет строить сложные модели, наиболее адекватно отражающие реальный мир, используя при этом в полной мере выразительные возможности объектных и объектно-ориентированных языков программирования, создавать программные системы меньшего размера, повторно использовать модели, вносить своевременно изменения и осуществлять сборочное создание программного обеспечения. Однако объектно-ориентированные проекты требуют больших временных затрат, требовательны к ресурсам программы, сложно проектируемы, гораздо менее наглядны и плохо понимаемы непрофессионалами. Поэтому структурный подход по-прежнему сохраняет свою значимость и достаточно широко используется на практике.
Для автоматизации процессов проектирования, модификации и сопровождения на различных этапах жизненного цикла программного обеспечения используются специальные программные средства - CASE-средства.
В работе была дана характеристика следующи средств реализации объектно-ориентированного подхода: StarUML, Microsoft Visio, Rational Rhapsody, Flexberry Designer и MagicDraw.
StarUML - программный инструмент моделирования с открытым программным кодом, написанный на Delphi и работающий под управлением Windows. Основные возможности: поддержка UML 2.0, MDA и написание на COM совместимых языках: C++, Delphi, C#, VB и др.
Microsoft Visio - решение для построения диаграмм от Microsoft, помогающее преобразовать технические и бизнес-концепции в визуальную форму. Основные возможности: создание быстро информативных диаграмм, использование шаблонов проектирования, командная разработка, разработка веб-приложений, создание отчетов, форматирование, масштабирование, вращение диаграмм и ассоциирование их с записями, взаимодействие в реальном времени.
Rational Rhapsody - среда визуальной разработки для проектировщиков систем и разработчиков программного обеспечения, позволяющая создавать динамические и встроенные системы и программное обеспечение. Обеспечивается сотрудничество коллективов для анализа требований, снижения уровня сложности за счет применения промышленных языков, проверки функциональности на ранних этапах жизненного цикла разработки, проверки эскизов и автоматизации доставки инновационных, высококачественных продуктов.
Flexberry Designer - средство для проектирования, разработки и поддержки сложных информационных систем. Включает в себя UML-редактор и визуальный конструктор форм приложений, фреймворк для создания мобильных и Web-приложений. Репозиторий UML-моделей позволяет удобно хранить диаграммы в структурированном виде. Реализован механизм, позволяющий программистам писать код, который при перегенерации не будет потерян, так называемые, «скобки программиста».
MagicDraw - это инструмент бизнес-процессов, архитектуры, программного обеспечения и системного моделирования с поддержкой совместной работы. Обеспечивает лучший в отрасли механизм разработки кода (с полной поддержкой «туда-обратно» для языков программирования Java, C ++, C #, CL (MSIL) и CORBA IDL), а также моделирование схемы базы данных, создание DDL и средства обратной инженерии.
Сравнительный анализ рассмотренных средств реализации объектно-ориентированного подхода показал, что наилучшими по рассмотренным критериям видятся Microsoft Visio и MagicDraw, функционал у них практически одинаков, при этом Microsoft Visio не реализует генерацию заготовок программного кода в отличие от MagicDraw, которое, в свою очередь, не позволяет осуществлять взаимодействие в реальном времени, в отличие от Microsoft Visio. Оба же средства проектирования достаточно просты в использовании и имеют репрезентативный интерфейс, однако, поставляются платно.
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ
- Арлоу, Д. UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование [Текст] / Джим Арлоу, Айви Нейштадт. – М.: Символ, 2016. – 624 с.
- Гвоздева, Т.В. Проектирование информационных систем. Технология автоматизированного проектирования [Текст] / Т.В. Гвоздева, Б.А. Баллод. – СПб.: Лань, 2018. – 156 с.
- Достоинства и недостатки ООП [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: http://www.maksakov-sa.ru/TehProgram/ObOrientProgr/DosNedOOP/index.html
- Емельянов, В.А. Объектно-ориентированное проектирование ИС [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2018. – Режим доступа: https://en.ppt-online.org/542998
- Зыков, С.В. Программирование. Объектно-ориентированный подход. Учебник и практикум для академического бакалавриата [Текст] / С.В. Зыков. – М.: ЮРАЙТ, 2017. – 312 с.
- Инструменты для рисования UML-диаграмм [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://msugvnua000.web710.discountasp.net/Posts/Details/3787
- Костарев, А. Технологическая программная платформа Flexberry с открытым исходным кодом для профессиональной разработки программного обеспечения [Электронный ресурс] / Электрон. текстовые дан. – OSSDEVCONF, 2018 – Режим доступа: http://0x1.tv/Технологическая_программная_платформа_Flexberry_с_открытым_исходным_кодом_для_профессиональной_разработки_программного_обеспечения_(Алексей_Костарев,_OSSDEVCONF-2018)
- Краткий обзор StarUML [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://staruml.sourceforge.net/docs/user-guide(ru)/user-guide.pdf
- Новые возможности Visio 2019 [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2019. – Режим доступа: https://support.office.com/ru-ru/article/Новые-возможности-visio-2019-19b8e98d-9cf9-40ad-9277-eb65e3713a79
- Обзор CASE-средств для построения диаграмм UML [Электронный ресурс] / Электрон. текстовые дан. – Москва: НОУ «ИНТУИТ», 2013 – 2017. – Режим доступа: http://www.intuit.ru/studies/courses/1007/229/lecture/5963
- Обзор Rational Rhapsody [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://www.ibm.com/support/knowledgecenter/ru/SSQQC5_5.0.0/com.ibm.rational.sse.doc/topics/c_overview_rhap.html
- Объектно-ориентированный подход [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://studme.org/257065/informatika/obektno_orientirovannyy_podhod
- Основы объектно-ориентированного подхода к анализу и проектированию информационных систем [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema9
- Остроух, А.В. Проектирование информационных систем [Текст] / А.В. Остроух, Н.Е. Суркова. – СПб.: Лань, 2019. – 164 с.
- Остроух, А.В. Теория проектирования распределенных информационных систем [Текст] / А.В. Остроух, А.В. Помазанов. - СПб.: Лань, 2019. – 96 с.
- Павловская, Т.А. C/C++. Процедурное и объектно-ориентированное программирование. Учебник [Текст] / Т.А. Павловская. - СПб: Питер, 2018. – 496 с.
- Плахотникова, М.А. Информационные технологии в менеджменте. Учебник и практикум для СПО [Текст] / М.А. Плахотникова, Ю.А. Вертакова. – М.: Юрайт, 2016. – 462 с.
- Приемы объектно-ориентированного проектирования. Паттерны проектирования [Текст] / Э. Гамма [и др.]. – СПб.: Питер, 2019. – 368 с.
- Проектирование информационных систем [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://compress.ru/article.aspx?id=11764
- Проектирование информационных систем. Учебник и практикум [Текст] / Под общ. ред. Д.В. Чистова. – М.: Юрайт, 2018. – 260 с.
- Проектирование на UML. Сборник задач [Текст] / А.С. Хританков [и др.]. – Екатеринбург: Издательские решения, 2017. – 240 с.
- Ревотюк, М. П. Объектно-ориентированное программирование и проектирование: учебно-метод. пособие: в 2 ч. Ч.1: Технологии объектного программирования [Текст] / М. П. Ревотюк. – Минск: БГУИР, 2014. – 194 с.
- Савельев, В.А. Объектно-ориентированное программирование. Язык Smalltalk [Текст] / В.А. Савельев, Ю.А. Кирютенко. – М.: Вузовская книга, 2018. – 328 с.
- Сравнительный анализ CASE-средств [Электронный ресурс] / Электрон. текстовые дан. – Новосибирск [б.н.], 2015. – Режим доступа: https://sibac.info/studconf/tech/xxxiii/42530
- Тузовский, А.Ф. Объектно-ориентированное программирование. Учебное пособие [Текст] / А.Ф. Тузовский. – М.: Юрайт, 2017. – 206 с.
- Хольгер Гаст. Объектно-ориентированное проектирование. Концепции и программный код [Текст] / Гаст Хольгер. – М.: Вильямс, 2018. – 1040 с.
- Essentials of IBM Rational Rhapsody v7.5 for Software Engineers (C++) [Электронный ресурс] / Электрон. текстовые дан. – IBM Corporation, 2018. – Режим доступа: http://ccrs.hanyang.ac.kr/webpage_limdj/embedded/RiCpp_Basic.pdf
- Flexberry Designer [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://flexberry.github.io/ru/fd_landing_page.html
- MagicDraw [Электронный ресурс] / Электрон. текстовые дан. – No Magic, Inc.., 2018. – Режим доступа: https://www.nomagic.com/products/magicdraw
ПРИЛОЖЕНИЕ 1
UML-диаграмма классов
- связь типа «зависимость» - связь между двумя элементами модели, в которой изменение одного элемента (независимого) может привести к изменению семантики другого элемента (зависимого).
связь типа «агрегация» - структурная связь целого с его частями.
связь типа «композиция» – это форма агрегации с четко выраженными отношениями владения и совпадением времени жизни частей и целого.
связь типа «реализация» – это семантическая связь между классами, когда один из них определяет соглашение, которого второй обязан придерживаться.
ПРИЛОЖЕНИЕ 2
Место диаграмм взаимодействия в жизненном цикле разработки ПО
-
Плахотникова, М.А. Информационные технологии в менеджменте. Учебник и практикум для СПО [Текст] / М.А. Плахотникова, Ю.А. Вертакова. – М.: Юрайт, 2016. – С.21 ↑
-
Остроух, А.В. Проектирование информационных систем [Текст] / А.В. Остроух, Н.Е. Суркова. – СПб.: Лань, 2019. – С.12 ↑
-
Проектирование информационных систем. Учебник и практикум [Текст] / Под общ. ред. Д.В. Чистова. – М.: Юрайт, 2018. – С.33 ↑
-
Гвоздева, Т.В. Проектирование информационных систем. Технология автоматизированного проектирования [Текст] / Т.В. Гвоздева, Б.А. Баллод. – СПб.: Лань, 2018. – С.17 ↑
-
Савельев, В.А. Объектно-ориентированное программирование. Язык Smalltalk [Текст] / В.А. Савельев, Ю.А. Кирютенко. – М.: Вузовская книга, 2018. – С.58 ↑
-
Проектирование информационных систем [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://compress.ru/article.aspx?id=11764 ↑
-
Зыков, С.В. Программирование. Объектно-ориентированный подход. Учебник и практикум для академического бакалавриата [Текст] / С.В. Зыков. – М.: ЮРАЙТ, 2017. – С.55 ↑
-
Основы объектно-ориентированного подхода к анализу и проектированию информационных систем [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema9 ↑
-
Ревотюк, М. П. Объектно-ориентированное программирование и проектирование: учебно-метод. пособие: в 2 ч. Ч.1: Технологии объектного программирования [Текст] / М. П. Ревотюк. – Минск: БГУИР, 2014. – С.62 ↑
-
Приемы объектно-ориентированного проектирования. Паттерны проектирования [Текст] / Э. Гамма [и др.]. – СПб.: Питер, 2019. – С.75 ↑
-
Хольгер Гаст. Объектно-ориентированное проектирование. Концепции и программный код [Текст] / Гаст Хольгер. – М.: Вильямс, 2018. – С.303 ↑
-
Емельянов, В.А. Объектно-ориентированное проектирование ИС [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2018. – Режим доступа: https://en.ppt-online.org/542998 ↑
-
Остроух, А.В. Теория проектирования распределенных информационных систем [Текст] / А.В. Остроух, А.В. Помазанов. - СПб.: Лань, 2019. – С.36 ↑
-
Основы объектно-ориентированного подхода к анализу и проектированию информационных систем [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://sites.google.com/site/anisimovkhv/learning/pris/lecture/tema9 ↑
-
Ревотюк, М. П. Объектно-ориентированное программирование и проектирование: учебно-метод. пособие: в 2 ч. Ч.1: Технологии объектного программирования [Текст] / М. П. Ревотюк. – Минск: БГУИР, 2014. – С.52 ↑
-
Остроух, А.В. Проектирование информационных систем [Текст] / А.В. Остроух, Н.Е. Суркова. – СПб.: Лань, 2019. – С.64 ↑
-
Остроух, А.В. Проектирование информационных систем [Текст] / А.В. Остроух, Н.Е. Суркова. – СПб.: Лань, 2019. – С.65-66 ↑
-
Зыков, С.В. Программирование. Объектно-ориентированный подход. Учебник и практикум для академического бакалавриата [Текст] / С.В. Зыков. – М.: ЮРАЙТ, 2017. – С.72 ↑
-
Остроух, А.В. Теория проектирования распределенных информационных систем [Текст] / А.В. Остроух, А.В. Помазанов. - СПб.: Лань, 2019. – С.47 ↑
-
Зыков, С.В. Программирование. Объектно-ориентированный подход. Учебник и практикум для академического бакалавриата [Текст] / С.В. Зыков. – М.: ЮРАЙТ, 2017. – С.88 ↑
-
Арлоу, Д. UML 2 и Унифицированный процесс. Практический объектно-ориентированный анализ и проектирование [Текст] / Джим Арлоу, Айви Нейштадт. – М.: Символ, 2016. – С.32 ↑
-
Приемы объектно-ориентированного проектирования. Паттерны проектирования [Текст] / Э. Гамма [и др.]. – СПб.: Питер, 2019. – С.102 ↑
-
Емельянов, В.А. Объектно-ориентированное проектирование ИС [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2018. – Режим доступа: https://en.ppt-online.org/542998 ↑
-
Достоинства и недостатки ООП [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: http://www.maksakov-sa.ru/TehProgram/ObOrientProgr/DosNedOOP/index.html ↑
-
Достоинства и недостатки ООП [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: http://www.maksakov-sa.ru/TehProgram/ObOrientProgr/DosNedOOP/index.html ↑
-
Зыков, С.В. Программирование. Объектно-ориентированный подход. Учебник и практикум для академического бакалавриата [Текст] / С.В. Зыков. – М.: ЮРАЙТ, 2017. – С.108 ↑
-
Объектно-ориентированный подход [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://studme.org/257065/informatika/obektno_orientirovannyy_podhod ↑
-
Приемы объектно-ориентированного проектирования. Паттерны проектирования [Текст] / Э. Гамма [и др.]. – СПб.: Питер, 2019. – С.66 ↑
-
Савельев, В.А. Объектно-ориентированное программирование. Язык Smalltalk [Текст] / В.А. Савельев, Ю.А. Кирютенко. – М.: Вузовская книга, 2018. – С.71 ↑
-
Объектно-ориентированный подход [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2016. – Режим доступа: https://studme.org/257065/informatika/obektno_orientirovannyy_podhod ↑
-
Достоинства и недостатки ООП [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: http://www.maksakov-sa.ru/TehProgram/ObOrientProgr/DosNedOOP/index.html ↑
-
Обзор CASE-средств для построения диаграмм UML [Электронный ресурс] / Электрон. текстовые дан. – Москва: НОУ «ИНТУИТ», 2013 – 2017. – Режим доступа: http://www.intuit.ru/studies/courses/1007/229/lecture/5963 ↑
-
Гвоздева, Т.В. Проектирование информационных систем. Технология автоматизированного проектирования [Текст] / Т.В. Гвоздева, Б.А. Баллод. – СПб.: Лань, 2018. – С.96 ↑
-
Инструменты для рисования UML-диаграмм [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://msugvnua000.web710.discountasp.net/Posts/Details/3787 ↑
-
Краткий обзор StarUML [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://staruml.sourceforge.net/docs/user-guide(ru)/user-guide.pdf ↑
-
Краткий обзор StarUML [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://staruml.sourceforge.net/docs/user-guide(ru)/user-guide.pdf ↑
-
Инструменты для рисования UML-диаграмм [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2016. – Режим доступа: http://msugvnua000.web710.discountasp.net/Posts/Details/3787 ↑
-
Обзор CASE-средств для построения диаграмм UML [Электронный ресурс] / Электрон. текстовые дан. – Москва: НОУ «ИНТУИТ», 2003 – 2017. – Режим доступа: http://www.intuit.ru/studies/courses/1007/229/lecture/5963 ↑
-
Новые возможности Visio 2019 [Электронный ресурс] / Электрон. текстовые дан. – Москва [б.н.], 2019. – Режим доступа: https://support.office.com/ru-ru/article/Новые-возможности-visio-2019-19b8e98d-9cf9-40ad-9277-eb65e3713a79 ↑
-
Хольгер Гаст. Объектно-ориентированное проектирование. Концепции и программный код [Текст] / Гаст Хольгер. – М.: Вильямс, 2018. – С.502 ↑
-
Обзор Rational Rhapsody [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://www.ibm.com/support/knowledgecenter/ru/SSQQC5_5.0.0/com.ibm.rational.sse.doc/topics/c_overview_rhap.html ↑
-
Essentials of IBM® Rational® Rhapsody® v7.5 for Software Engineers (C++) [Электронный ресурс] / Электрон. текстовые дан. – IBM Corporation, 2018. – Режим доступа: http://ccrs.hanyang.ac.kr/webpage_limdj/embedded/RiCpp_Basic.pdf ↑
-
Костарев, А. Технологическая программная платформа Flexberry с открытым исходным кодом для профессиональной разработки программного обеспечения [Электронный ресурс] / Электрон. текстовые дан. – OSSDEVCONF, 2018 – Режим доступа: http://0x1.tv/Технологическая_программная_платформа_Flexberry_с_открытым_исходным_кодом_для_профессиональной_разработки_программного_обеспечения_(Алексей_Костарев,_OSSDEVCONF-2018) ↑
-
Костарев, А. Технологическая программная платформа Flexberry с открытым исходным кодом для профессиональной разработки программного обеспечения [Электронный ресурс] / Электрон. текстовые дан. – OSSDEVCONF, 2018 – Режим доступа: http://0x1.tv/Технологическая_программная_платформа_Flexberry_с_открытым_исходным_кодом_для_профессиональной_разработки_программного_обеспечения_(Алексей_Костарев,_OSSDEVCONF-2018) ↑
-
Костарев, А. Технологическая программная платформа Flexberry с открытым исходным кодом для профессиональной разработки программного обеспечения [Электронный ресурс] / Электрон. текстовые дан. – OSSDEVCONF, 2018 – Режим доступа: http://0x1.tv/Технологическая_программная_платформа_Flexberry_с_открытым_исходным_кодом_для_профессиональной_разработки_программного_обеспечения_(Алексей_Костарев,_OSSDEVCONF-2018) ↑
-
Flexberry Designer [Электронный ресурс] / Электрон. текстовые дан. – Москва: [б.и.], 2017. – Режим доступа: https://flexberry.github.io/ru/fd_landing_page.html ↑
-
MagicDraw [Электронный ресурс] / Электрон. текстовые дан. – No Magic, Inc.., 2018. – Режим доступа: https://www.nomagic.com/products/magicdraw ↑
-
Проектирование на UML. Сборник задач [Текст] / А.С. Хританков [и др.]. – Екатеринбург: Издательские решения, 2017. – С.156 ↑
-
MagicDraw [Электронный ресурс] / Электрон. текстовые дан. – alternativeto, 2018. – Режим доступа: https://alternativeto.net/software/magicdraw/ ↑