Современные информационные технологии/3.Программное обеспечение

Дорофеева О.С., Казакова И.А.

Пензенский государственный университет, Россия

Инструменты программной инженерии

 

Программная инженерия – стремительно развивающаяся отрасль. В этой области, как и в других инженериях, есть свои инструменты.

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

Все инструменты программной инженерии соответствуют областям знаний SWEBOK. Это инструменты работы с требованиями, инструменты проектирования, конструирования, тестирования, сопровождения, конфигурационного управления, управления программной инженерией, инструменты поддержки процессов и инструменты обеспечения качества.

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

Инструменты проектирования – это инструменты для создания и проверки программного обеспечения. Эти инструменты отличаются большим разнообразием и использованием множества различных нотаций моделирования и проектирования, таких, как UML, DATARUN, RUP, Microsoft DSL, ORACLE и т.п.

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

К ним относятся:

-       редакторы для создания и модификации программ;

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

-       интерпретаторы;

-       отладчики;

-       интегрированные среды разработки.

Инструменты тестирования представляют собой

-       генераторы тестов, которые помогают в разработке сценариев тестирования;

-       средства выполнения тестов обеспечивают выполнение сценариев тестирования и отслеживают поведение объектов при тестировании;

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

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

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

Инструменты сопровождения делятся на две группы:

-       инструменты облегчения понимания помогают в понимании программ (пример – всевозможные средства визуализации);

-       инструменты реинжиниринга поддерживают деятельность по восстановлению стареющего ПО и генерации нового продукта.

Инструменты конфигурационного управления делятся на три категории:

-       инструменты отслеживания дефектов и проблем;

-       инструменты управления версиями;

-       инструменты сборки и выпуска, а также средства инсталляции.

Инструменты управления инженерной деятельностью делятся на три категории:

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

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

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

Инструменты поддержки процессов разделены на:

-       инструменты моделирования и описания моделей ПО (например, UML и его инструменты);

-       инструменты управления программными проектами;

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

 Инструменты обеспечения качества делятся на две категории:

-       инструменты инспектирования для поддержки просмотра и аудита;

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


Литература:

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

2. Соммервилл И. Инженерия программного обеспечения. 7-е издание. –Издательский дом «Вильямс», 2012.