СИСТЕМНЫЙ АНАЛИЗ И СИСТЕМНО-ИНЖЕНЕРНЫЕ РОЛИ
В крупных производственных компаниях почти повсеместно внедряются информационные системы для управления сложными объектами. Любое предприятие – это сложный объект, со множеством процессов – технологических, производственных, финансовых и так далее. Требуется все более точно планировать и выполнять запланированное. Соответственно, с каждым годом количество внедряемых цифровых систем и подсистем становится все больше и больше.
Для выполнения глобальных проектов цифровизации нужны специалисты, ориентирующиеся в технологиях, способные вести переговоры и находить общий язык с бизнесом, умеющие проводить комплексный анализ создаваемых систем и обоснованно принимать решения.
Деятельность системного инженера находится на стыке интересов бизнеса и it-технологий. Он создает организационно-технические решения, которые удовлетворяют требованиям к программным продуктам и технологиям, внедряемым в систему.
Звучит немного непонятно, но представьте себе, что где-то далеко, например, в Арктике, или Индии, строится порт. Или атомная станция. Или другой сложный объект. Он строится не на год и не на три, а более чем на век. В случае порта или города – на века. К нему подводятся пути, дороги, вокруг него возникают сначала технологические постройки, а потом города, в которых будут жить и работать люди.
Вот системный инженер должен состыковать воедино все пожелания, мечты, мысли всех тех, кто уже этим занимается, и тех, кто будет заниматься потом, кто возможно, даже еще не родился, но потом будет пользоваться этой энергией, этими дорогами, этими городами. Это «требования». А из этих требований построить алгоритм, систему – то есть технологичный образ будущего, в котором этот объект полезен и прекрасен.
Это идеальный и, так скажем, верхний уровень. Более частный пример – сооружение любого большого объекта, например, здания.
Для строительства объекта нужны бетонные блоки, щебень, еще что-нибудь. Приехали рабочие и ждут. А грузовиков с щебнем все нет и нет. Это простои, пустая трата ресурсов, и человеческих, и финансовых.
Что можно сделать на этом этапе с помощью цифровых технологий?
Во-первых, построить оптимальную схему – загрузки, разгрузки, маршрута, остановок на маршруте, очередности и т д. Во-вторых, поставить цифровые метки на груз, на машины, на маршрут. В каждой точке будет понятно, что машины идут по графику, груз никуда не делся, бензин внезапно не закончился, рабочие на месте и работают.
На каждом этапе создания любого сложного объекта (проектирование, сооружение, эксплуатация, вывод из эксплуатации) требуется эксперт, который, во-первых, знает современные цифровые технологии на уровне, позволяющем управлять группами специалистов, создающих, внедряющих, и обслуживающих эти технологии. Во-вторых, он должен представлять процессы, для которых эти технологии применяются (это уже не только IT-процессы, хотя чаще всего они). В-третьих, он готов к переменам, к оптимизации, в том числе к отказам от чего-либо привычного для внедрения нового. В-четвертых, он должен быть не только экспертом, а управленцем, под руководством которого трудятся проектные команды, и работать им должно быть комфортно. В-пятых, он общается с другими людьми (заказчиками, подрядчиками и пр.), у которых есть свое представление о том, как должны выглядеть процессы, и их пожелания тоже надо учесть. В-шестых, он должен уметь работать с большим объемом данных. И это список можно продолжать еще очень долго.
Существуют различные системно-инженерные роли.
Инженер по требованиям. Требования (на простом языке – пожелания, видение конечного продукта или результата процесса) являются основой любого проекта. С помощью требований определяются потребности заинтересованных сторон и возможности системы для удовлетворения этих потребностей. С требованиями работает большое количество участников процесса, поэтому они должны быть полными, понятными, непротиворечивыми. Для правильной формулировки требования инженер по требованиям общается с профильными специалистами.
Бизнес-аналитик. Он собирает требования у «бизнеса» – у заказчиков, у будущих пользователей системы, и должен уметь понимать этих пользователей. Это человек, который использует методы бизнес-анализа для исследования потребностей организаций, обосновывает решения и возможные пути реализации изменений. Бизнес-аналитик нацелен на описание сценариев, бизнес-кейсов.
Бизнес-архитектор занимается описанием текущего состояния на предприятии – это процессы, информационные системы, оборудование, информация, то есть все данные, которые хранятся в специальных системах. Все это отображается на схемах и связывается между собой логическими отношениями, и благодаря такого рода описаниям можно понять, какие подразделения заняты в процессах, какие информационные системы и данные используются в каждом процессе, какое оборудование используется при работе этих информационных систем. Благодаря этой деятельности можно планировать развитие структуры информационных систем, развитие подразделений компании, строить долгосрочные планы развития.
Системный аналитик нацелен на информационную систему, на протекание процессов внутри информационной системы. Он описывает процессы, происходящие внутри информационных систем.
Системный архитектор получает задачу от системного аналитика и проектирует систему, с которой затем работают разработчики.
Инженер по верификации и валидации (инженер по тестированию). Верификация – это проверка системы или объекта на соответствие требованиям, а валидация – это проверка системы или какого-то компонента в работе. То есть, верификация подтверждает, что вы создали продукт таким, каким и намеревались его сделать, что техническое задание было выполнено верно и в полном объеме, а валидация подтверждает, что вы создали правильный продукт, что он функционирует так, как от него и ожидалось. Может случиться так, что ТЗ выполнено верно, но итоговый продукт работает совсем иначе, чем от него ожидалось. Поэтому валидация является более показательным и всеобъемлющим понятием, чем верификация.
Главный конструктор (product manager) оркеструет весь процесс создания комплексных систем. Он координирует всех вышеописанных специалистов, «заставляет» их договариваться между собой, отвечает за создание системы в срок и именно такой, какой она задумывалась.
Общие и важные компетенции системного инженера любой роли:
Умение управлять требованиями на всех уровнях системной иерархии;
Владение современными методами и инструментами разработки систем, включая архитектурный подход;
Владение методами и инструментами анализа систем включая моделирование, анализ надежности, анализ рисков, анализ технико-экономических характеристик и т. п.;
Умение организовывать и проводить испытания систем и анализировать результаты испытаний;
Умение налаживать эффективное человеко-машинное взаимодействие;
Умение реализовывать интегрированные системные решения, учитывающие многовариантность элементов, составляющих систему;
Владение процессным подходом;
Умение управлять изменениями.
О системном анализе в ВИШ МИФИ: