Доклад Бориса Позина "Опыт разработки крупномасштабной катастрофоустойчивой банковской системы" (2/2) на 80 заседании Русского отделения INCOSE, 25 сентября 2013г.
3. EC-лизингЗатраты на сопровождение и развитие ППО АС
3
В жизненном цикле эти затраты составляют 70-80%.
Именно этот вид затрат должен быть оптимизирован.
Должны быть созданы:
•Определен порядок взаимодействия функциональных служб
(функциональных заказчиков) и ИТ – службы
•Положения и регламенты взаимодействия персонала при решении
задач сопровождения и развития
• Порядок создания и ввода в действие новых выпусков (релизов,
версий) ППО, НСИ и выпусков метаданных
• Определен состав, функции и порядок создания стендов для
отработки выпусков ППО и отработки ввода в действие новых
версий и релизов системного ПО (ОС, СУБД и т.п.)
• Автоматизированные системы сопровождения
• Обучен персонал
Это окружение эксплуатируемой системы и есть пример enabling
system, хотя могут быть и другие элементы, например, тренажёры
и т.п.
Создание системы обеспечения жизненного цикла АС позволяет
продлить срок ее службы на несколько лет (5-10 и более)
4. EC-лизинг
Состав процессов СОЖЦ
СОЖЦ
Положение по
обеспечению ЖЦ
Обеспечение
развития
Обеспечение
функционирования
Обеспечение
нефункционального
развития
(масштабирование)
Обеспечение
сопровождения
КТС и СПО
Обеспечение
сопровождения
ППО
Обеспечение
поддержки
пользователей
Обеспечение
функционального
развития
Обеспечение
эксплуатации
5. EC-лизингОбщая схема ЖЦ информационной системы:
от процесса к требованиям
Описание
бизнес-процесса
Описание
бизнес-процесса
Функциональные требования
к автоматизации бизнес-процесса
Функциональные требования
к автоматизации бизнес-процесса
Требования регламентов
к показателям назначения
АС
Требования регламентов
к показателям назначения
АС
Эксплуатационные характеристики и
автоматизированные функции АС (ИТ-сервисов)
ИТ-служба
Бизнес-подразделения
∆
Изменения
нормативной базы
Изменения
нормативной базы
Развитие и тестирование
АС и ППО АС
Развитие и тестирование
АС и ППО АС
Модернизация
АС
Модернизация
АС
Эксплуатация АСЭксплуатация АС
Сопровождение ППО АССопровождение ППО АС
5
10. EC-лизинг Задачи автоматизированного тестирования
при разработке и сопровождении
ВидыВиды
тестированиятестирования
РазработкаРазработка СопровождениеСопровождение
Функциональное Многократный контроль
корректности сборки прикладной
системы
Систематический контроль соответствия внесенных
изменений требованиям нормативных документов
Проверка правильности
реализации функций,
предусмотренных ТЗ,
Периодический контроль целостности прикладной
системы после внесения изменений по функциям и в
полном объеме требований нормативных документов
Проверка корректности
реализации интерфейсов с
конечным пользователем
Проверка корректности функционирования прикладной
системы в составе АБС на стенде сопровождения
Проверка корректности
функционирования прикладной
системы в составе АБС на стенде
Проверка корректности функционирования прикладной
системы в составе АБС на целевой платформе, близкой
к промышленной конфигурации
Нагрузочное Оценка достижимых
эксплуатационных характеристик
прикладной системы на стенде
разработчика
Оценка достижимых эксплуатационных характеристик
прикладной системы на стенде, максимально
приближенном к промышленной конфигурации
Систематический контроль деградации
эксплуатационных характеристик АБС после внесения
изменений в прикладную программную систему на
стенде, максимально приближенном к промышленной
конфигурации
11. EC-лизинг
Корректный цикл тестирования приКорректный цикл тестирования при
разработке/сопровожденииразработке/сопровождении
Система,
Программа
Система,
Программа
Y = f(X,t)
Требования
Y = f( X)
Y = f(X,t)Y = f(X,t)
Требования
Y = f( X)Y = f( X)Y = f( X)
Производственное тестирование: тестовый эксперимент
должен быть повторяемым, документируемым, проверяемым
12. EC-лизинг
Общая схема функционального тестированияОбщая схема функционального тестирования
Тестируемая программаФункциональные требования
к программе
Функциональные требования
Функциональные требования
Тестовые требования
Тестовые требования
Тестовые требования
Тестовые требования
Тестовые требования
Тестовые требования
Тестовые требования
Тестовые требования
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
Результаты
прогона
тестов
Проверяемые требования
Функциональные требования
Тестовые треб.
Тестовые треб.
Тестовые треб.
Тестовые треб.
Тесты
13. EC-лизинг
Город 4Город 4
Организация работ по функциональному тестированию
ЕС-лизинг
Стенд
АБС1
Стенд
АБС1
Стенд
ИБ АБС1
Стенд
ИБ АБС1
Стенд
АБС1 на
платформе Z
Стенд
АБС1 на
платформе Z
Город 3Город 3
Стенд
АБС2
Стенд
АБС2
Город 5Город 5 РегрессионноеРегрессионное
тестированиетестирование
на платформена платформе
РегрессионноеРегрессионное
тестированиетестирование
на платформена платформе
Город 1Город 1
Город 2Город 2
Стенд
АБС2 на
платформе Z
Стенд
АБС2 на
платформе Z
ФункциональноеФункциональное
тестированиетестирование
ФункциональноеФункциональное
тестированиетестирование
ТестированиеТестирование
информационнойинформационной
безопасностибезопасности
ТестированиеТестирование
информационнойинформационной
безопасностибезопасности
Стенд
АБС1
на платформе Z
Стенд
АБС1
на платформе Z
Стенд
АБС2
на платформах
х и z
Стенд
АБС2
на платформах
х и z
14. EC-лизинг Как контролировать и прогнозировать величины
показателей назначения системы?
(«Градусник» архитектуры)
Прикладная
система
Прикладная
система
IT-
инфраструктура
IT-
инфраструктура
Поток
изменений
ПО
Поток
изменения
инфраструктуры
1.1. Динамические параметрыДинамические параметры
2. Параметры безопасности2. Параметры безопасности
3. Технико-экономические3. Технико-экономические
параметрыпараметры
1.1. Динамические параметрыДинамические параметры
2. Параметры безопасности2. Параметры безопасности
3. Технико-экономические3. Технико-экономические
параметрыпараметры
15. EC-лизинг Виды нагрузочного тестирования
Общая проблема: обеспечение адекватности результатов
тестируемой системе
Оценочное - оценка пропускной способности, времен
пребывания задач в системе
Аналитическое - выявление зависимостей (например,
производительности от вычислительных ресурсов)
Настроечное - настройка и оптимизация нагрузочных
характеристик
Регрессионное - многократное тестирование при
неизменных условиях для выявления признаков
деградации тестируемой системы
17. EC-лизинг Характеристики производительности
РеактивностьРеактивностьРеактивностьРеактивность
Характеристики производительностиХарактеристики производительностиХарактеристики производительностиХарактеристики производительности
Время ожидания обслуживанияВремя ожидания обслуживания
ПродуктивностьПродуктивностьПродуктивностьПродуктивность
ИспользованиеИспользованиеИспользованиеИспользование
Время обслуживанияВремя обслуживания
Время реакцииВремя реакции
Пропускная способностьПропускная способность
ВыработкаВыработка
Утилизация ресурсаУтилизация ресурса
Относительная пропускная
способность
Относительная пропускная
способность
Характеристики производительности всегда оцениваются статистически
18. EC-лизинг Какие выводы могут делаться по итогам
нагрузочного тестирования
• Необходимость и направления масштабирования
вычислительного комплекса
• Направления доработки ПО в «узких местах»
• Пути оптимизации настроек ОС, СУБД, другого системного ПО
• Необходимость смены вычислительной платформы
• Предложения по изменению архитектуры ПО
19. EC-лизинг Модели для нагрузочного тестирования
Модель
требований
Модель
требований
Модель
нагрузки
Модель
нагрузки
Модель
системы
Модель
системы
Модель
измерений
Модель
измерений
Цели тестирования
Характеристики и показатели,
которые надо определить.
Критерии, которым они должны
соответствовать
Объект тестирования:
какая часть системы
подвергается
тестированию
Какие параметры
надо измерять и
в каких точках
Каковы потоки
требований
к системе от
управляемого
процесса
20. EC-лизинг
Характеристики систем автоматизированного нагрузочного
тестирования АБС 1 и АБС 2
АБС 1АБС 1 АБС 2АБС 2
20052005 20062006 20072007 20082008 20092009 20102010 200200
55
20062006 20072007 20082008 20092009 20102010
Разработка программного
обеспечения (IBM Rational
Performance Tester)
Количество скриптов - - 10 25 38 56 - - 8 17 31 52
Разработка программного
обеспечения (Java)
Число строк программного
кода (генераторы)
- - 15300 32500 55000 82000 - - 17400 43700 63000 95000
Количество
сгенерированных ЭПД для
проведения нагрузочного
тестирования
Среднее количество ЭПД на
одно испытание (млн. шт.)
0,8 1,1 1,5 1,9 2,1 2,3 0,4 0,9 1,4 1,6 1,8 2,0
Частота проведения
испытаний
Количество испытаний 3 4 8 12 12 26 2 5 9 12 12 26
22. EC-лизинг
Ядро SEMAT
< применяет
(applies)
Определяют
рамкии
ограничивают
(Scopesand
constrains)>
устанавливаетпорядокреализации
(setuptoaddress)>
< определяют (identifies)
изменяет
(updates and changes) >
поддерживают(support)>
уточняет
focuses>
<
направляет/
устанавлива
ет правила
(guides)
< планирует и осуществляет
(performs and plans)
< удовлетворяет (fulfils)
используют
(useand
consume)>
<производит
(produces)
< формируют
(demand)
Работа
Work
Способ работы
(Way of Working)
Команда
Team
Требования
Requirements
Программная
система
Software System
Возможность
Opportunity
Заинтересован-
ные лица
Stakeholders
23. EC-лизинг
Пространства деятельностей
Исследовать возможности
Explore Possibilities
Обеспечить удовлетворенность
заинтересованных лиц
Ensure Stakeholder
Satisfaction
Спроектировать
систему
Shape
the System
Реализовать систему
Implement the System
Протестировать
систему
Test
the System
Развернуть систему
Deploy
the System
Использовать систему
Use the System
Использовать
систему
Operate
the System
Понять потребности
заинтересованных лиц
Understand Stakeholder Needs
Подготовиться к работе
Prepare to do the Work
Координировать
деятельность Coordinate
Activity
Поддерживать команду
Support the Team
Прекратить работу
Stop the Work
Отслеживать прогресс
Track Progress
Понять требования
Understand the
Requirements
24. EC-лизинг
Участники процесса сопровождения и зоны их
ответственности
Функциональный
заказчик
Контроль актуальности состояния ППО, обеспечивающем автоматизацию задач Банка
России в соответствии с согласованными требованиями
Задачи:
• стратегическое управление процессом сопровождения ППО АС
• определение требований к автоматизируемому бизнес-процессу
• инициация внесения изменений в ППО АС
Заказчик Обеспечение сопровождения ППО в соответствии с требованиями «Функционального
Заказчика»
Задачи:
• организация процесса сопровождения ППО
• обеспечение стратегии управления сопровождением ППО
• инициация работ по внесению изменений в сопровождаемое ППО АС в
соответствии с требованиями, поступающими от Функционального заказчика
Сопроводитель Реализация изменений ППО АС в заданный срок с приемлемым качеством
Задачи:
• обеспечение взаимодействия между участниками процесса
• тактическое и оперативное управление сопровождением
• контроль процесса сопровождения
• Служба анализа Обеспечение актуальности требований к ППО АС
Задачи:
• выявление требований к сопровождаемому ППО АС
• поддержание требований к сопровождаемому ППО АС в актуальном состоянии
• Служба
тестирования
Обеспечение качества и целостности сопровождаемого ППО.
Задачи:
• разработка и актуализация тестов ППО АС
• проведение тестирования ППО
Подрядчик Разработка/модернизация ППО АС Банка России
25. EC-лизинг
На пути к определению здоровья процесса
сопровождения
Функциональный
заказчик
Функциональные
требования
Требования
к системе
ППО
(выпуск ППО)
Типовой состав работ
по сопровождению
Порядок сопровождения
Команда
сопровождения
КлиентПродуктСлужба
сопровождения