Объектно-ориентированная методология разработки сложных систем

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

Рубрика Программирование, компьютеры и кибернетика
Вид учебное пособие
Язык русский
Дата добавления 22.02.2019
Размер файла 94,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Все современные CASE-средства могут быть классифицированы в основном по типам и категориям. Классификация по типам отражает функциональную ориентацию CASE-средств на те или иные процессы ЖЦ.

Классификация по типам в основном совпадает с компонентным составом CASE-средств и включает следующие основные типы:

средства анализа (Upper CASE), предназначенные для построения и анализа моделей предметной области (Design/IDEF (Meta Software), BPwin (Logic Works));

средства анализа и проектирования (Middle CASE), поддерживающие наиболее распространенные методологии проектирования и использующиеся для создания проектных спецификаций (Vantage Team Builder (Cayenne), Designer/2000 (ORACLE), Silverrun (CSA), PRO-IV (McDonnell Douglas), CASE.Аналитик (МакроПроджект)). Выходом таких средств являются спецификации компонентов и интерфейсов системы, архитектуры системы, алгоритмов и структур данных;

средства проектирования баз данных, обеспечивающие моделирование данных и генерацию схем баз данных (как правило, на языке SQL) для наиболее распространенных СУБД. К ним относятся ERwin (Logic Works), S-Designor (SDP) и DataBase Designer (ORACLE). Средства проектирования баз данных имеются также в составе CASE-средств Vantage Team Builder, Designer/2000, Silverrun и PRO-IV;

средства разработки приложений. К ним относятся средства 4GL (Uniface (Compuware), JAM (JYACC), PowerBuilder (Sybase), Developer/2000 (ORACLE), New Era (Informix), SQL Windows (Gupta), Delphi (Borland) и др.) и генераторы кодов, входящие в состав Vantage Team Builder, PRO-IV и частично - в Silverrun;

средства реинжиниринга, обеспечивающие анализ программных кодов и схем баз данных и формирование на их основе различных моделей и проектных спецификаций. Средства анализа схем БД и формирования ERD входят в состав Vantage Team Builder, PRO-IV, Silverrun, Designer/2000, ERwin и S-Designor. В области анализа программных кодов наибольшее распространение получают объектно-ориентированные CASE-средства, обеспечивающие реинжиниринг программ на языке С++ (Rational Rose (Rational Software), Object Team (Cayenne)).

Вспомогательные типы включают:

средства планирования и управления проектом (SE Companion, Microsoft Project и др.);

средства конфигурационного управления (PVCS (Intersolv));

средства тестирования (Quality Works (Segue Software));

средства документирования (SoDA (Rational Software)).

Классификация по категориям определяет степень интегрированности по выполняемым функциям и включает отдельные локальные средства, решающие небольшие автономные задачи (tools), набор частично интегрированных средств, охватывающих большинство этапов жизненного цикла ИС (toolkit) и полностью интегрированные средства, поддерживающие весь ЖЦ системы и связанные общим репозитарием (workbench).

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

Помимо этого, CASE-средства можно классифицировать по следующим признакам:

применяемым методологиям и моделям систем и БД;

степени интегрированности с СУБД;

доступным платформам.

Интегрированное CASE-средство (или комплекс средств, поддерживающих полный ЖЦ ПО) содержит следующие компоненты:

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

графические средства анализа и проектирования, обеспечивающие создание и редактирование иерархически связанных диаграмм (DFD, ERD и др.), образующих модели ИС;

средства разработки приложений, включая языки 4GL и генераторы кодов;

средства конфигурационного управления;

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

средства тестирования;

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

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

Обычная схема реализации upper CASE состоит в том, что сердцем такого средства является объектно-ориентированное хранилище (repository), доступ к которому имеют все подсистемы. Хранилище содержит сведения о каждом элементе проекта отдельно вне зависимости от способа их получения: из графического редактора или таблиц. Общую схему современного upper CASE можно охарактеризовать наличием подсистем для ввода и проверки моделей, управления конфигурацией проекта, интерфейсов с СУБД и языком четвертого поколения и генерации кода (включая средства реинжиниринга), а также средствами документирования проекта и средствами коммуникаци с другими upper CASE.

Направления развития CASE-средств определяются потребностями практики и ориентированы на:

расширение применяемых моделей описания автоматизируемых систем;

охват автоматизацией новых архитектур ИС, включая схему клиент/сервер;

более глубокий уровень контроля целостности проекта;

интеграцию со многими 4GL, СУБД и CASE;

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

CASE системы позволяет существенно ускорить не только разработку системы, но также и ее сопровождение, так как внесение изменений существенно упрощается, поскольку информация о разработке хранится в базе данных CASE системе и может быть легко модифицирована. По некоторым данным использование CASE в процессе разработки позволяет сократить ее сроки в 3 раза, а сроки внесения изменений в 200 раз.

Проекты средней, высокой сложности и уникальные рекомендуется создавать с помощью CASE-средств и языков четвертого поколения (4GL). Целесообразность применения CASE-средств (upper CASE), прежде всего интегрированных, определяется возможностью точного учета требований конечного пользователя к проектируемой системе, значительным снижением уровня системных ошибок в проекте до начала программирования и тем самым снижением общей трудоемкости разработки и особенно отладки программ.

5.2 CASE-системы, поддерживающие объектно-ориентированную методологию

Одной из наиболее известных CASE систем, поддерживающей OOM является семейство CASE-средств объектно-ориентированного анализа, проектирования и программирования Rational Rose фирмы Rational Software Corp.

Rational Rose предназначено для автоматизации этапов анализа и проектирования ПО, а также для генерации кодов на различных языках и выпуска проектной документации. Rational Rose использует синтез-методологию объектно-ориентированного анализа и проектирования, основанную на подходах трех ведущих специалистов в данной области: Буча, Рамбо и Джекобсона и поддерживает универсальную нотацию для моделирования объектов UML. Конкретный вариант Rational Rose определяется языком, на котором генерируются коды программ (C++, Visual C, Java, Smalltalk, Visual Basic, PowerBuilder, Ada, и др.). Основной вариант - Rational Rose позволяет разрабатывать проектную документацию в виде диаграмм и спецификаций, а также генерировать программные коды. Кроме того, Rational Rose содержит средства реинжиниринга программ, обеспечивающие повторное использование программных компонент в новых проектах.

5.2.1 Структура и функции

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

В составе Rational Rose можно выделить шесть основных структурных компонент: репозиторий, графический интерфейс пользователя, средства просмотра проекта (browser), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генератор кодов (индивидуальный для каждого языка) и анализатор, обеспечивающий реинжиниринг - восстановление модели проекта по исходным текстам программ.

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

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

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

диаграммы классов;

диаграммы состояний;

диаграммы взаимодействия;

диаграммы модулей;

диаграммы процессов;

спецификации классов, объектов, атрибутов и операций

заготовки текстов программ;

модель разрабатываемой программной системы.

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

Тексты программ являются заготовками для последующей работы программистов. Они формируются в рабочем каталоге в виде файлов типов.h (заголовки, содержащие описания классов) и.cpp (заготовки программ для методов). Система включает в программные файлы собственные комментарии, которые начинаются с последовательности символов //##. Состав информации, включаемой в программные файлы, определяется либо по умолчанию, либо по усмотрению пользователя. В дальнейшем эти исходные тексты развиваются программистами в полноценные программы.

Для организации групповой работы в Rational Rose возможно разбиение модели на управляемые подмодели. Каждая из них независимо сохраняется на диске или загружается в модель. В качестве подмодели может выступать категория классов или подсистема.

Для управляемой подмодели предусмотрены операции:

загрузка подмодели в память;

выгрузка подмодели из памяти;

сохранение подмодели на диске в виде отдельного файла;

установка защиты от модификации;

замена подмодели в памяти на новую.

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

Rational Rose функционирует на различных платформах: IBM PC (в среде Windows), Sun SPARC stations (UNIX, Solaris, SunOS), Hewlett-Packard (HP UX), IBM RS/6000 (AIX).

Список литературы

Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++, 2-е изд,.Пер. с англ. -М.: "Издательство Бином", СПб:"Невский диалект", 1998. -560с.

Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя: Пер. с англ. - М.:ДМК, 2000. -432с.

Липаев В.В., Филинов Е.Н. Мобильность программ и данных в открытых информационных системах. - М.: Научная книга, -1997. -368с.

Боггс У.,Боггс М. UML и Rational Rose,Пер. с англ. -М.: Издательство "ЛОРИ", 2000. -580с.

Вендров А.М. Проектирование программного обеспечения экономических информационных систем: Учебник. -М. Финансы и статистика, 2000. -352с

Размещено на Allbest.ru

...

Подобные документы

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

    курсовая работа [183,9 K], добавлен 25.06.2011

  • Основы методологии проектирования информационных систем, понятие их жизненного цикла. Основные модели жизненного цикла. Методология функционального моделирования SADT. Состав функциональной модели. Моделирование данных, характеристика case-средств.

    реферат [327,5 K], добавлен 28.05.2015

  • Особенности разработки информационных систем с использованием унифицированного языка моделирования UML. Основные этапы рационального унифицированного процесса разработки информационных систем с примерами и иллюстрациями. Реализация информационной системы.

    методичка [950,2 K], добавлен 23.01.2014

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

    курсовая работа [262,5 K], добавлен 10.07.2014

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

    контрольная работа [188,9 K], добавлен 22.10.2014

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

    курсовая работа [381,8 K], добавлен 01.06.2009

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

    лабораторная работа [159,4 K], добавлен 26.05.2014

  • Анализ структуры и методологии CASE-средств. Методологии проектирования, используемые в CASE-средствах. Основные понятия о системах электронного документооборота, их создание с помощью CASE-средств. Объектно-ориентированное и структурное проектирование.

    курсовая работа [67,9 K], добавлен 18.07.2014

  • Этапы разработки объектно-ориентированной модели информационной подсистемы приемной комиссии для учета абитуриентов. Создание диаграмм для моделирования процесса обмена сообщениями между объектами. Порядок генерации программного кода на языке С++.

    курсовая работа [429,3 K], добавлен 29.06.2011

  • Особенности основных, вспомогательных и организационных процессов жизненного цикла автоматизированных информационных систем. Основные методологии проектирования АИС на основе CASE-технологий. Определение модели жизненного цикла программного продукта.

    курсовая работа [1,8 M], добавлен 20.11.2010

  • Использование CASE-средств для поддержки процессов создания и сопровождения информационных систем. Задачи графического редактора диаграмм, документатора и администратора проекта. Основные возможности IBM Rational Professional Bundle и IBM Rational Rose.

    реферат [28,1 K], добавлен 30.05.2012

  • Основные методологии проектирования, модели жизненного цикла локальных систем, сущность структурного подхода. Моделирование потоков процессов и программные средства поддержки их жизненного цикла. Характеристика и технология внедрения CASE средств.

    курсовая работа [686,9 K], добавлен 13.12.2010

  • Унифицированный язык моделирования. Методы объектно-ориентированного анализа и проектирования. Создание диаграммы последовательности и диаграммы сотрудничества. Главная диаграмма классов. Добавление связей между классами. Зависимость между пакетами.

    курсовая работа [2,7 M], добавлен 23.06.2011

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

    курсовая работа [439,9 K], добавлен 05.06.2014

  • Методология процесса моделирования IDEF, которая входит в семейство стандартов США по комплексной компьютерной поддержке производства ICAM. Распространенные методологии структурного подхода. Метод функционального моделирования SADT, иерархия диаграмм.

    лекция [188,5 K], добавлен 27.12.2013

  • Приемы и правила объектно-ориентированного программирования с использованием языка С++. Общие принципы разработки объектно-ориентированных программ. Основные конструкции языка С++. Разработка различных программ для Windows с использованием WIN32 API.

    учебное пособие [1,6 M], добавлен 28.12.2013

  • Стадии жизненного цикла ИС и его стандарты. Методологии, поддерживающие спиральную модель. Каскадная и инкрементная модели, их достоинства и недостатки. Основные, вспомогательные и организационные процессы жизненного цикла. Сравнительный анализ моделей.

    курсовая работа [186,4 K], добавлен 21.05.2015

  • Основная идея методологии и принципы RAD-разработки информационных систем, ее главные преимущества. Причины популярности, особенности применения технологии. Формулировка основных принципов разработки. Среды разработки, использующие принципы RAD.

    презентация [866,8 K], добавлен 02.04.2013

  • Основные теоретические положения объектно–ориентированной технологии программирования. Характеристика языка и словарь моделирования UML. Представление управления моделью. Построение диаграммы классов и описание функционирования предметной области.

    курсовая работа [859,4 K], добавлен 11.05.2015

  • Исследование объектно-ориентированного подхода к проектированию программного обеспечения будильника. Модель программного обеспечения. Взаимодействие между пользователями и системой. Диаграммы и генерация программного кода при помощи средств Rational Rose.

    курсовая работа [355,8 K], добавлен 26.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.