Рассмотрим, что такое IDEF0 на примере УФМТП (универсальная функциональная модель торгового предприятия) и системы, разработанные на основе этой модели.

Мы будем основываться на тексте из перевода стандарта IDEF0 (п. 3.1) о концепциях модели.

Посмотрим на модель УФМТП.

 

Также можете увидеть скриншот ERP-системы, которая была разработана.

 

 

Модель – это представление набора компонентов системы или объекта.

Если мы представляем себе предприятие как систему (или объект), то ее компонентами в данном случае являются следующие блоки: «привлечь покупателя», «продать товар», «закупить товар», «сохранить товар», «доставить товар».

Компоненты системы декомпозируются на подкомпоненты.

Модель разрабатывается для понимания, анализа, улучшения или замены системы.

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

Системы состоят из взаимодействующих или взаимозависимых частей, выполняющих некую полезную работу.

Если мы посмотрим на нашу модель, то увидим, что в ней есть взаимосвязанные элементы: «привлечь покупателя», «продать товар», «закупить товар», «сохранить товар», «доставить товар», которые всегда что-то во что-то преобразуют.

Такова функциональная модель. Функция всегда преобразует из чего-то во что-то. В этом весь ее смысл.

Частями системы (элементами) могут быть любые комбинации разнообразных сущностей, включающие людей, информацию, программное обеспечение, оборудование, изделия, сырье или энергию (энергоносители).

Т.е. практически все, что нам нужно для того, чтобы функция сработала. Если мы посмотрим на нашу модель, то увидим, что здесь есть, например, склад, отдел доставки.

Это группы людей, подразделения. В них также могут входить помещения, оборудование, оргтехника, мебель (например, компьютеры и стеллажи) и т.д.

Модель описывает, что происходит в системе, как ею управляют, какие сущности она преобразует, какие средства использует для выполнения своих функций и что производит.

Таким образом, модель описывает, что происходит в системе. В нашем случае это преобразование из «спроса» в «запрос покупателя на покупку».

Как управляют моделью? В модели есть специальная стрелка, которая называется «контроль». Мы можем управлять, контролируя. Т.е. мы управляем не напрямую, а через контроль, через ценовую политику, фирменный стиль, требования к оформлению заказа и т.д.

IDEF0 – это метод моделирования, основанный на комбинированной графике и тексте, которые представлены организованным и систематическим способом для достижения понимания, поддержки анализа, обеспечения логики для потенциальных изменений, определения требований или поддержки действий по проектированию и интеграции на уровне систем.

Итак, у нас есть графика. Например, блок «доставить товар».

У нас есть текст. Не просто текст и не просто графика, а именно текст и графика. Есть еще синтаксис и семантика, которые мы будем рассматривать отдельно.

Графика и текст представлены организованным и систематическим способом.

Системой в данном случае является стандарт IDEF0 и непосредственно модель и то, как она разрабатывается (правила) для потенциальных изменений. Здесь все достаточно просто. Мы можем в ней что-то менять. Например, блок «продать товар» мы можем назвать по-другому. Или, если это производственное предприятие, в модель нужно будет добавить блок производственный, а какие-то другие блоки – убрать или соединить.

Модель IDEF0 состоит из иерархического ряда диаграмм, которые последовательно отображают возрастающие уровни детализации, описывая функции и их интерфейсы в контексте системы.

В нашей модели вы можете увидеть контекстную диаграмму и ее декомпозиции.

Существует три типа диаграмм: графические, текстовые и глоссарий. С графическими диаграммами все понятно. Текстовые диаграммы содержат текст. Глоссарий – это текст с глоссарием. Графические диаграммы не обязательно должны быть в таком виде, в котором они представлены в нашей модели. Есть еще FEA, но это тема, которую нужно рассматривать отдельно.

Графические диаграммы определяют функции и функциональные отношения с помощью синтаксиса и семантики блоков и стрелок. У нас есть стрелки и блоки, и между ними есть отношения.

 

Есть определенные правила, в соответствии с которыми их нужно строить. Например, контроль всегда идет сверху, и нельзя их изображать сбоку, изгибать и т.д.

Текстовые диаграммы и глоссарий представляют собой информацию, дополняющую графические диаграммы. Т.е. они не обязательны, но они дополняют. Глоссарий в самой модели у нас не описан, потому что это была бы картинка, которую нельзя копировать. Но это не ошибка.

IDEF0 является инженерной техникой, предназначенной для выполнения и управления: анализом потребностей, анализом преимуществ, определением требований, функциональным анализом, проектированием систем, техническим обслуживанием и исходными данными для непрерывного совершенствования.

Что касается анализа потребностей, то в данном случае все достаточно просто. У нас есть, например, потребность отгрузить товар или автоматизировать. И мы можем это сделать.

Функциональный анализ – это когда мы анализируем определенную функцию, например, «закупить товар» и смотрим, что для нее нужно, чтобы получить следующий вывод – «сохранить товар».

Непрерывное совершенствование заключается в том, что мы можем разрабатывать модель, улучшая ее в течение длительного срока. Например, представленная модель разрабатывалась в течение полутора лет. На диаграмме срок разработки указан полгода, но это потому, что она была скопирована.

Модели IDEF0 предоставляют «схематический чертеж» функций и их интерфейсов, которые должны быть понятны, что позволит понимать логичные, доступные, интегрируемые и реализуемые решения при системном проектировании.

Если при проектировании системы IDEF0 вы делаете все правильно, если закладываете туда определенный смысл, то получите графическую, логичную схему. Схематический чертеж можно сравнить с чертежом здания. Если вы все делаете согласно правилам и закладываете туда определенный смысл, то  получите именно ту систему, которую можно непрерывно улучшать.

Как чертеж устройства говорит нам о том, как различные части взаимодействуют друг с другом, так и модель IDEF0 отражает то, как взаимодействуют и работают функции системы. При использовании системного подхода IDEF0 обеспечивает:

1. Выполнение системного анализа и проектирования на всех уровнях систем, состоящих из людей, машин, материалов, компьютеров и информации всех видов целого предприятия, системы или объекта.

Об этом мы уже говорили.

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

Т.е. эта модель является основой не только для разработки, но и служит документацией для разработчиков. При разработке системы мы обращались к нашей схеме. Возьмем, например, «заказ клиента», который выходит из блока «продать товар». Мы видим, что наша система должна генерировать заказ клиента. И она это делает.

 Обмен информацией между разработчиками, дизайнерами, пользователями и менеджерами.

Разработчик может разработать, программист –  запрограммировать, дизайнер – нарисовать. И они согласовывают между собой определенные действия, касающиеся того, как им нужно работать.

Достижение консенсуса коалиционной команды на основе единого понимания.

Важно понимать, что схема дает причинно-следственную связь. И мы можем на ее основе одинаково понять, что нам нужно, поскольку она дает очень мало интерпретаций. Можно опять провести аналогию с чертежом дома. В чертеже может быть не указано, из какого материала должен быть сделан дом, из дерева или из чего-то другого, из какого дерева… но в целом понятно, какой формы и площади должен быть дом. То же самое и с нашей схемой. Мы связали блоки стрелками, т.е. связали их понятийно, можно сказать, что у нас уже есть модель, есть чертеж.

Управление крупными и сложными проектами с использованием качественных показателей хода выполнения.

Например, систему Trinion ERP мы разрабатываем более двух лет, уже вышли на финальный релиз. Если бы ее не было, то непонятно вообще, когда был бы конец. А сейчас мы можем сказать, что у нас система генерирует те документы, которые нам нужно, она отвечает тем требованиям, которые есть в этой модели. И мы можем сказать, что ее завершаем. Она очень сложная. Это очень большая система.

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

Т.е. как предмет обсуждения модель уже есть. Мы ее можем совершенствовать, обсуждать. И можем представить как эталон при передаче другим людям.