Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
прог_инж.doc
Скачиваний:
9
Добавлен:
27.09.2019
Размер:
160.77 Кб
Скачать

24. Как осуществляется управление качеством в программной и инженерии?

С точки зрения тестирования ПО нас интересует в этих стандартах стандартизация качества - сначала выпускаемой продукции, а потом и процессов по ее разработки. Здесь срабатывает идея о том, что качественного результата не создать без качественного процесса. Обеспечение качества является более общим контекстом для тестирования. Качество продукта или сервиса, предназначенного потребителю, определяется в стандарте ISO 9000 как степень соответствия его характеристик требованиям - обязательным или подразумеваемым.

25. Методы обеспечения качества по.

  • Наладка качественного процесса, совершенствование процесса. Используются стандарты CMMI, ISO 9000.

  • Формальные методы - использование математических формализмов

  • Исследование и анализ динамических свойств ПО. Для этого широко используется профилирование с использованием специальных программных средств.

  • Обеспечение качества кода. Сюда относится целый комплекс различных мероприятий и методов. Вот некоторые, самые известные из них:

  • Разработка стандартов оформления кода в проекте

  • Рефакторинг - это регулярная деятельность по переписываю кода, но не с целью добавления ново функциональности, а для улучшения его структуры.

  • Различные варианты инспекции кода.

  • «Вычитка» кода.

  • Тестирование. Самый распространенный способ контроля качества ПО, представленный, фактически, в каждом программном проекте.

26. Дайте определение тестирования. Перечислите и кратко охарактеризуете виды тестирования.

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

Виды тестирования:

  • Модульное тестирование - тестируется отдельный модуль, в отрыве от остальной системы.

  • Интеграционное тестирование - две и более компонент тестируются на совместимость.

  • Системное тестирование - этот тестирование всей системы в целом, как правило, через ее пользовательский интерфейс.

  • Регрессионное тестирование - тестирование системы в процессе ее разработки и сопровождение на не регресс.

  • Нагрузочное тестирование - тестирование системы на корректную работу с большими объемами данных.

  • Стрессовое тестирование - тестирование системы на устойчивость к непредвиденным ситуациям.

  • Приемочное тестирование - тестирование, выполняемое при приемке системы заказчиков.

27. Что такое cmmi? Перечислите и охарактеризуйте уровни зрелости предприятий.

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

Уровни зрелости предприятий:

  1. Начальный уровень - это уровень, на котором, по определению, находится любая компания. На этом уровне разработка ПО ведется более- менее хаотично.

  2. Управляемый уровень - здесь уже появляются политики и процедуры организации процессов, утвержденные на уровне компании. Но в полной мере процессы существуют лишь в рамках отдельных проектов.

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

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

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