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

ПЛАН ЗАНЯТИЯ

Дисциплина: МДК 03.02 Инструментальные средства разработки ПО

Преподаватель: Машарова Р.В.

Курс: 4

Группа: 1 ПКС-19

Специальность: Программирование в компьютерных системах

Дата: 17.02.2023

Время проведения: 09.50-11.20, 2 пара

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

Цель занятия:

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

Развивающая: развивать логическое и критическое мышление, умение обобщать и синтезировать знания

Вид занятия лекция

Литература:

1. Буч Г, Рамбо Джеймс, Джекобсон Айвар. Язык UML. Руководство пользователя. – М.: ДМК Пресс; СПб.: Питер, 2004

2. Гагарина Л. Г., Кокорева Е. В., Виснадул Б. Д. Г12 Технология разработки программного обеспечения: учебное посо­бие / под ред. Л. Г Гагариной. — М.: ИД «ФОРУМ»: ИНФРА-М, 2008

3. Жоголев Е.А., Технология программирования. М.: Научный мир, 2004

4. Крылов Е.В., Острейковский В.А., Типикин Н.Г. Техника разработки программ. Книга 2. Технология, надежность и качество программного обеспечения — М.: Высшая школа. – 2009

5. Крылова Г.Д. Основы стандартизации, сертификации, метрологии. – М.: ЮНИТИ-ДАНА, 2003

6. Лифиц И.М. Основы стандартизации, метрологии, сертификации. – М.: Юрайт, 2003

7. Маклаков С.В.. BPwin, ERwin – CASE-средства разработки информационных систем. – М., «ДИАЛОГ-МИФИ», 2010

8. Немилостива Н.И. Стандартизация, сертификация и метрология. – Владивосток: Изд-во ВГУЭС, 2002

9. Павловская Т. А. С/С++. Программирование на языке высокого уровня: Учебник для студентов вузов. - Москва [и др.]: Питер, 2012

10. Сергеев А.Г., Латышев М.В., Терегеря В.В. Метрология. Стандартизация. Сертификация. –М.: Логос, 2003

11. Сьерра К. Бейтс Б. Изучаем java. 2012

12. Файн Я. Программирование на java / Я. Файн. – 3-е изд. – США, 2011

13. Шилдт Герберт Java. Полное руководство. 8-издание / Г.Шилдт. – 8-е изд. –2012

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

1. Общие сведения.

2. Классы инструментальных сред разработки по признакам.

3. Основные классы инструментальных сред разработки и сопровождения программных средств.

1. Общие сведения.

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

Для таких инструментальных сред характерно,

во-первых, использование как программных, так и аппаратных инструментов, и,

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

Часто разработка ПС производится на том же компьютере, на котором оно будет применяться. Это достаточно удобно. Во-первых, в этом случае разработчик имеет дело только с компьютерами одного типа. Во-вторых, в разрабатываемое ПС могут включаться компоненты самой инструментальной среды. Однако, это не всегда возможно.

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

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

2. Классы инструментальных сред разработки по признакам.

Совокупность инструментальных сред можно разбивать на разные классы, которые различаются значением следующих признаков:

· ориентированность на конкретный язык программирования,

· специализированность,

· комплексность,

· ориентированность на конкретную технологию программирования,

· ориентированность на коллективную разработку,

· интегрированность.

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

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

Комплексность инструментальной среды показывает: поддерживает ли она все процессы разработки и сопровождения ПС или нет. В первом случае продукция этих процессов должна быть согласована. Поддержка инструментальной средой фазы сопровождения ПС, означает, что она должна поддерживать работу сразу с несколькими вариантами ПС, ориентированными на разные условия применения ПС и на разную связанную с ним аппаратуру, т.е. должна обеспечивать управление конфигурацией ПС.

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

Ориентированность на коллективную разработку показывает: поддерживает ли среда управление (management) работой коллектива или нет. В первом случае она обеспечивает для разных членов этого коллектива разные права доступа к различным фрагментам продукции технологических процессов и поддерживает работу менеджеров по управлению коллективом разработчиков. Во втором случае она ориентирована на поддержку работы лишь отдельных пользователей.

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

· интегрированность по пользовательскому интерфейсу,

· интегрированность по данным,

· интегрированность по действиям (функциям),

Интегрированность по пользовательскому интерфейсу означает, что все инструменты объединены единым пользовательским интерфейсом.

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

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

Инструментальную среду, интегрированную хотя бы по данным или по действиям, будем называть инструментальной системой. При этом интегрированность по данным предполагает наличие в системе специализированной базы данных, называемой репозиторием.

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

3. Основные классы инструментальных сред разработки и сопровождения программных средств.

В настоящее время выделяют три основных класса инструментальных сред разработки и сопровождения ПС:

· инструментальные среды программирования,

· рабочие места компьютерной технологии,

· инструментальные системы технологии программирования.

Рис.1. Основные классы инструментальных сред разработки и сопровождения ПС.

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

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

Инструментальная система технологии программирования предназначена для поддержки всех процессов разработки и сопровождения в течение всего жизненного цикла ПС и ориентирована на коллективную разработку больших программных систем с продолжительным жизненным циклом. Обязательными свойствами ее являются комплексность, ориентированность на коллективную разработку и интегрированность. Кроме того, она или обладает технологической определенностью или получает это свойство в процессе расширения (настройки). Значение признака языковой ориентированности может быть различным, что используется для дальнейшей классификации этих систем.

 

Контрольные вопросы.

1. Инструментальная среда разработки и сопровождения ПС .

2. Инструментально-объектный подход.

3. Ориентированность на конкретный язык программирования.

4. Специализированность.

5. Комплексность.

6. Ориентированность на конкретную технологию программирования.

7. Ориентированность на коллективную разработку,.

8. Интегрированность.

9. Инструментальная среда программирования.

10. Рабочее место компьютерной технологии.

11. Инструментальная система технологии программирования.