Similar presentations:
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) Подготовить заключение о надёжности модуля и предложить
рефакторинг для снижения рисков.