Анализ рисков и характеристик качества программного обеспечения при внедрении
Внедрение программного обеспечения
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Основные этапы внедрения ПО
Модели внедрения
Основные понятия
Классификация рисков при внедрении ПО
Характеристики качества ПО (по ISO/IEC 25010)
Методы анализа рисков
Оценка характеристик качества при внедрении
Управление рисками и качеством
Практическое задание
Практическое задание
Благодарю за внимание
1.67M

4. Анализ рисков и характеристик качества программного обеспечения при внедрении

1. Анализ рисков и характеристик качества программного обеспечения при внедрении

2. Внедрение программного обеспечения

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

3. Основные этапы внедрения ПО

Процесс внедрения обычно делится на несколько последовательных
стадий, каждая из которых имеет свои цели, задачи и результаты.
1. Подготовительный этап
На этой стадии закладывается фундамент всего проекта.
• Анализ требований:
Детальное изучение бизнес-процессов заказчика для определения
реальных потребностей. Формулируются цели внедрения и ожидаемые
результаты.
• Планирование проекта:
Разработка детального плана-графика, распределение ресурсов (людских,
финансовых, технических), определение сроков и ответственных лиц.
• Формирование рабочей группы:
Создание команды внедрения, в которую входят представители заказчика,
IT-специалисты и, при необходимости, внешние консультанты.

4. Основные этапы внедрения ПО

2. Техническая подготовка инфраструктуры
Перед установкой ПО необходимо подготовить аппаратную и
программную среду.
• Аудит существующей инфраструктуры:
Проверка серверов, рабочих станций, сетевого оборудования на
соответствие системным требованиям нового ПО.
• Подготовка оборудования:
Закупка, установка и настройка необходимого «железа» (серверов, СХД и
т.д.).
• Настройка системного ПО:
Установка и конфигурирование операционных систем, систем управления
базами данных (СУБД), средств виртуализации.

5. Основные этапы внедрения ПО

3. Установка и первичная настройка ПО
Это этап непосредственного развертывания программного продукта.
• Развертывание:
Установка программных компонентов на серверы и рабочие места
пользователей.
• Интеграция:
Настройка взаимодействия нового ПО с уже существующими системами
(например, импорт справочников из 1С, интеграция с почтовым сервером или
CRM-системой).
• Первичная конфигурация:
Настройка системных параметров, прав доступа, создание учётных
записей администраторов и пользователей.

6. Основные этапы внедрения ПО

4. Тестирование и отладка
Критически важный этап для выявления и устранения ошибок до начала
полноценной эксплуатации.
• Функциональное тестирование:
Проверка соответствия работы ПО заявленным требованиям.
• Интеграционное тестирование:
Проверка корректности обмена данными между новым ПО и смежными
системами.
• Нагрузочное тестирование:
Имитация работы большого числа пользователей для оценки
производительности и стабильности системы.
• Приёмочное тестирование (UAT — User Acceptance Testing):
Финальная проверка представителями заказчика для подтверждения
готовности системы к эксплуатации.

7. Основные этапы внедрения ПО

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

8. Основные этапы внедрения ПО

6. Ввод в промышленную эксплуатацию
Переход к полноценной работе в новой системе.
• Миграция данных:
Перенос накопленной информации из старых систем в новую с
обеспечением целостности и достоверности.
• «Пилотный» запуск:
Внедрение ПО на ограниченном участке (в одном отделе) для выявления
проблем в реальных условиях.
• Полный переход:
Отключение старых систем и перевод всех бизнес-процессов на новое ПО.

9. Основные этапы внедрения ПО

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

10. Модели внедрения

Выбор подхода к внедрению зависит от масштаба проекта, критичности
системы и готовности организации к изменениям.
1) «Большой взрыв» (Big Bang):
Полный отказ от старой системы и одномоментный переход на новую.
Рискованный метод, требующий идеальной подготовки.
2) Параллельное внедрение:
Новая система запускается одновременно со старой. Пользователи
работают в обеих системах, а результаты сверяются. Это снижает риски, но
увеличивает нагрузку на персонал.
3) Поэтапное (модульное) внедрение:
Система внедряется по частям — отдельными модулями или в отдельных
подразделениях компании. Наиболее безопасный и управляемый подход.
4) Пилотный проект:
Внедрение на ограниченной группе пользователей или в отдельном
филиале для отработки всех процессов перед масштабированием на всю
организацию.

11. Основные понятия

Риск — это вероятность возникновения нежелательного события,
способного оказать негативное влияние на процесс внедрения и дальнейшую
эксплуатацию ПО. Риски могут быть техническими, организационными,
экономическими и др.
Качество программного обеспечения — это совокупность свойств ПО,
определяющих его способность удовлетворять установленные и
предполагаемые потребности пользователей.
Качество ПО оценивается по
ряду характеристик, закреплённых
в международных и национальных
стандартах (например, ISO/IEC
25010).

12. Классификация рисков при внедрении ПО

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

13. Характеристики качества ПО (по ISO/IEC 25010)


Для проведения анализа можно рассматривать следующие критерии:
Функциональная пригодность — соответствие ПО заявленным функциям.
• Надёжность — способность ПО выполнять свои функции в заданных
условиях.
Удобство использования — простота освоения и эксплуатации.
Эффективность — оптимальное использование ресурсов.
Совместимость — способность работать с другими системами.
• Безопасность — защита данных и предотвращение несанкционированного
доступа.
• Сопровождаемость — простота внесения изменений и исправления
ошибок.
Переносимость — возможность переноса ПО на другие платформы.

14. Методы анализа рисков

Существуют методы анализа рисков:
• SWOT-анализ: выявление сильных и слабых сторон, возможностей и
угроз.
• FMEA (анализ видов и последствий отказов): систематическая оценка
возможных отказов и их последствий.
• Дерево отказов (Fault Tree Analysis): графическое представление причин
возможных сбоев.
• Экспертные оценки: привлечение
специалистов для оценки вероятности
и последствий рисков.

15. Оценка характеристик качества при внедрении

Существуют способы оценки качества при внедрении:
• Тестирование: функциональное, нагрузочное, интеграционное,
регрессионное.
• Аудит качества: проверка соответствия процессов и результатов
стандартам.
• Метрики качества: количественные показатели (например, количество
дефектов на 1000 строк кода).
• Обратная связь от пользователей:
анкетирование, интервью, анализ
обращений.

16. Управление рисками и качеством


Эффективное управление включает:
Идентификацию и документирование рисков.
Оценку вероятности и последствий.
Разработку планов по минимизации или устранению рисков.
Постоянный мониторинг и корректировку мер.
Анализ рисков и характеристик качества ПО при внедрении — ключевой
этап обеспечения надёжности и эффективности компьютерных систем.
Системный подход к оценке и управлению рисками позволяет снизить
вероятность сбоев, повысить удовлетворённость пользователей и обеспечить
долгосрочную стабильность работы информационных систем.

17. Практическое задание

Задание 1. Анализ программного кода на предмет рисков безопасности и
уязвимостей
Цель: Научиться выявлять потенциальные риски, связанные с
безопасностью программного кода, на этапе внедрения модуля.
Описание задания:
1) Провести статический анализ кода с использованием
специализированных инструментов (например, SonarQube, Checkmarx, Bandit).
2) Вручную проанализировать код на наличие типовых уязвимостей:
• SQL-инъекции (непроверенный ввод в запросы к БД).
• XSS (межсайтовый скриптинг) (отсутствие экранирования
пользовательского ввода в веб-интерфейсе).
• Hardcoded credentials (жестко прописанные пароли или ключи в коде).
• Отсутствие обработки исключений, приводящее к раскрытию служебной
информации.
3) Составить отчёт, включающий:
• Список выявленных рисков с указанием строки кода.
• Оценку критичности каждого риска (высокая, средняя, низкая).
• Рекомендации по устранению.

18. Практическое задание

Задание 2. Оценка надёжности программного кода через анализ метрик
сложности
Цель: Оценить надёжность модуля на основе количественных метрик
качества кода.
Описание задания:
1) С помощью инструментов анализа кода (SonarQube, встроенные
плагины IDE, Radon) собрать следующие метрики:
• Цикломатическая сложность (Cyclomatic Complexity): оценить сложность
логики функций и методов.
• Дублирование кода (Code Duplication): найти повторяющиеся фрагменты
кода.
• Количество комментариев: оценить документированность кода.
• Количество потенциальных багов (Bugs): использовать статический
анализ для поиска ошибок (например, неиспользуемые переменные,
возможные null pointer).
2) Проанализировать полученные данные. Высокие значения сложности и
дублирования являются индикаторами низкой надёжности и высоких рисков
при внесении изменений.
3) Подготовить заключение о надёжности модуля и предложить
рефакторинг для снижения рисков.

19. Благодарю за внимание

English     Русский Rules