Умение работать с UML: четыре типа диаграмм для разработчика

Системное проектирование

Архив

  • ► 

    2023

    (1)

    ► 

    марта

    (1)

  • ► 

    2022

    (3)

    ► 

    марта

    (1)

    ► 

    февраля

    (1)

    ► 

    января

    (1)

  • ► 

    2021

    (5)

    ► 

    декабря

    (2)

    ► 

    ноября

    (1)

    ► 

    октября

    (1)

    ► 

    августа

    (1)

  • ► 

    2018

    (1)

    ► 

    мая

    (1)

  • ► 

    2017

    (2)

    ► 

    сентября

    (1)

    ► 

    апреля

    (1)

  • ► 

    2016

    (12)

    ► 

    декабря

    (1)

    ► 

    ноября

    (2)

    ► 

    августа

    (3)

    ► 

    июля

    (1)

    ► 

    июня

    (3)

    ► 

    апреля

    (2)

  • ► 

    2015

    (14)

    ► 

    декабря

    (1)

    ► 

    сентября

    (1)

    ► 

    августа

    (3)

    ► 

    июля

    (3)

    ► 

    июня

    (1)

    ► 

    апреля

    (1)

    ► 

    марта

    (2)

    ► 

    февраля

    (2)

  • ► 

    2014

    (4)

    ► 

    декабря

    (1)

    ► 

    июня

    (1)

    ► 

    мая

    (1)

    ► 

    февраля

    (1)

  • ► 

    2013

    (3)

    ► 

    сентября

    (1)

    ► 

    августа

    (1)

    ► 

    марта

    (1)

  • ► 

    2012

    (4)

    ► 

    августа

    (2)

    ► 

    июля

    (1)

    ► 

    мая

    (1)

  • ► 

    2011

    (23)

    ► 

    октября

    (2)

    ► 

    августа

    (3)

    ► 

    июля

    (4)

    ► 

    июня

    (3)

    ► 

    мая

    (3)

    ► 

    апреля

    (2)

    ► 

    марта

    (1)

    ► 

    февраля

    (2)

    ► 

    января

    (3)

  • ► 

    2010

    (37)

    ► 

    декабря

    (3)

    ► 

    ноября

    (7)

    ► 

    октября

    (5)

    ► 

    сентября

    (7)

    ► 

    августа

    (5)

    ► 

    июля

    (4)

    ► 

    июня

    (3)

    ► 

    мая

    (1)

    ► 

    апреля

    (2)

  • ▼ 

    2008

    (2)

    • ▼ 

      февраля

      (1)

      UML – быстрый старт

    ► 

    января

    (1)

  • ► 

    2007

    (4)

    ► 

    июля

    (1)

    ► 

    июня

    (1)

    ► 

    мая

    (1)

    ► 

    апреля

    (1)

  • ► 

    2006

    (1)

    ► 

    декабря

    (1)

Часть 3. Как создать диаграмму UML

Если вам нужен эффективный метод создания диаграммы UML, MindOnMap это лучший инструмент онлайн. Этот создатель диаграмм UML позволяет легко и мгновенно создавать диаграммы. Интерфейс этого онлайн-инструмента прост для понимания. Вы можете увидеть основные параметры и многое другое. Также при создании диаграммы инструмент предложит основные методы. Таким образом, опытные и непрофессиональные пользователи могут легко и быстро работать с инструментом. Кроме того, в MindOnMap есть все необходимое для создания схемы UML. Он имеет различные формы, соединительные линии, стрелки и многое другое. Вы также можете изменить цвет фигур, чтобы сделать их красочными и уникальными. Кроме того, вы можете добавлять темы к своей диаграмме. Таким образом, схема не будет простой.

Кроме того, при использовании Инструмент создания диаграмм UML, вашими работами можно поделиться. Кроме того, вы можете поделиться своей диаграммой с другим пользователем, отправив ссылку. Кроме того, вы можете сохранить окончательную диаграмму в различных форматах. Он включает в себя PDF, SVG, PNG, JPG, DOC и многое другое. MindOnMap также можно использовать бесплатно, в отличие от других создателей диаграмм. Вы можете создавать многочисленные диаграммы, карты, иллюстрации и многое другое без ограничений. Вы можете использовать простые шаги, описанные ниже, чтобы изучить самый простой метод создания диаграммы UML.

Бесплатная загрузка

Безопасная загрузка

Бесплатная загрузка

Безопасная загрузка

1

Перейти к MindOnMap сайт в вашем браузере. Вы можете получить доступ к онлайн-инструменту во всех браузерах. Он включает в себя Google Chrome, Mozilla Firefox, Internet Explorer и другие. Вам необходимо создать учетную запись MindOnMap или подключить учетную запись электронной почты. Затем нажмите кнопку Создайте свою ментальную карту кнопка. На экране появится другая веб-страница.

2

Когда новая веб-страница уже появится, перейдите в левый интерфейс и выберите Новый меню. После этого нажмите кнопку Блок-схема вариант.

3

Чтобы начать создание диаграммы UML, перейдите к Общий опция в левой части интерфейса. Затем вы увидите различные формы и стрелки, которые вы можете использовать. Используйте эти фигуры для создания диаграммы. Если вы хотите раскрасить фигуры, перейдите к Цвет заливки вариант. Кроме того, чтобы вставить текст внутрь фигур, дважды щелкните фигуру левой кнопкой мыши.

Зачем использовать UML? Полная история

1990-е годы были эпохой развития объектно-ориентированных языков, таких как C + +. Эти объектно-ориентированные языки использовались для создания компьютеров.plex но убедительные системы.

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

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

UML — это объектно-ориентированный унифицированный язык моделирования. Его изобрели блестящие инженеры-программисты Грейди Буч, Ивар Джейкобсон и Джеймс Рамбо из Rational Software в 1994 и 1995 годах. Он находился в разработке до 1996 года.

Каждый из изобретателей UML, vizУ Грэди Буча, Ивара Джейкобсона и Джеймса Рамбо возникла фантастическая идея создания языка, который позволит сократитьplexность.

  • Метод Буча был очень гибким для работы при проектировании и строительстве объектов.
  • Метод Джейкобсона предоставил отличный способ обойти варианты использования. Он также предлагает мощный подход к проектированию высокого уровня.
  • Метод Рамбо оказался очень полезным при работе с чувствительными системами.

Later Далее в UML, изобретенном Дэвидом Харелом, были представлены поведенческие модели и диаграммы состояний.

UML был признан стандартом Object Management Group (OMG) в 1997 году. Object Management Group отвечает за управление UML с момента его принятия в качестве стандарта.

В 2005 году Международная организация по стандартизации утвердила UML в качестве стандарта ISO. Он используется в различных отраслях для создания объектно-ориентированных моделей.

Последняя версия UML — 2.5.1, выпущенная в декабре 2017 года.

Требования и модели

Теперь несколько слов о требованиях.

  • Требования – это будущая характеристика информационной системы. Техническое задание, которое мы пишем для клиента по ГОСТ 34, содержит требования.
  • Модель – это упрощенное представление некоторого объекта.

Как между собой связаны требования и модель? Напрямую они не связаны. Модель показывает как будет выглядеть система, удовлетворяющая требованиям. И если посмотреть на расшифровку видов требований — то согласно ГОСТ34, там про модель ничего не сказано. Можем ли мы модель задокументировать в техническом задании? Если следовать ГОСТ — то, нет. Но если очень хочется, то можно.

Давайте разберем две ситуации.

Первая – когда заказчик сам разработал техническое задание с требованиями и про документ описания бизнес-процессов ничего слышать не хочет. У него есть ТЗ, и он хочет, чтобы его выполнили.

Обращаемся к стандартам ГОСТ 34, по которому работают все крупные заказчики. Стандарт ГОСТ 34 предусматривает этап работ «Технический проект»

Обратите внимание, «Технический проект» – это не документ, а этап работ. И в рамках этого этапа работ согласно ГОСТ34 есть документ, который подходит для документирования модели бизнес-процессов — «Описание автоматизируемых функций»

А так как этап «Технический проект» – это вполне формализованный этап по  ГОСТ 34, то логично в его рамках модель системы задокументировать и утвердить у заказчика. С крупными заказчиками успешно проходит.

Другой вариант – когда заказчик вас нанимает и говорит: «Техническое задание будете делать вы, но никаких дополнительных документов я на проекте видеть не хочу, я хочу видеть только техническое задание». Лично сталкивался – мне была поставлена задача: «мне нужно техническое задание и все». Я выяснил аргументы того заказчика: опасения были в том, что пользователи привыкли к ТЗ и другие документы рассматривать и изучать не будут. Что в этом случае делать?

В этом случае можно поступить просто – вставить модель в техническое задание. Формально по ГОСТ34 так делать нельзя. Но когда очень хочется, то можно.

  • В техническом задании есть «Раздел 2. Характеристика объектов автоматизации». Тут можно разместить состав бизнес-процессов и орг. структура.
  • Также в техническом задании есть «Раздел 3. Требования к информационной системе». Вы их группируете по подсистемам, которые автоматизируете. И перед началом блока требований вставляете схему того бизнес-процесса, для которого эти требования были выработаны.

Мне никто ни разу не сказал, что у меня ТЗ не по ГОСТу. Всегда такой документ принимался. Пользователи видят эти схемы, им все понятно, и ТЗ становится понятнее.

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

В этом случае можно:

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

Следующий программист вам спасибо скажет. Или, когда вы в следующий раз к этому заказчику вернетесь, у вас уже будет часть модели его процесса. Например, он хочет автоматизировать еще и продажи, и вы сделаете еще один процесс.

Не надо пытаться всегда продать полный этап обследования. Делайте частично, включайте эти модели в документы, которые вам все равно надо согласовывать. Это не очень нагрузит аналитиков и не очень увеличит время составления документов. Зато, в будущем существенно съэкономит время.

В общем случае так можно представить идеальный процесс управления моделями на предприятии.

  • Сначала вы строите модель одного процесса (первый проект),
  • А потом на основании следующего проекта дополняете эту модель.

Получается, что процесс моделирования – непрерывный. Вы им постоянно занимаетесь и органично вписали его в свой процесс.

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

Какие задачи можно решить с помощью UML? Несколько примеров из личного опыта.

Первый пример – это один из кондитерских домов Москвы, для которого я выполнял разные проекты в течении 10 лет. Они за это время успели поменять несколько систем, первые из которых были на 7.7, а текущие уже на 8.3. Наш последний с ними проект охватывал почти все стандартные процессы производственного предприятия. И особенностью этого проекта являлось то, что заказов у компании очень много, и каждый заказ уникален.

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

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

Другой пример – автотранспортное подразделение крупной нефтегазовой компании. Мы там автоматизировали механизм планирования:

  • Расчет годовых планов;
  • Календарное планирование;
  • И уже непосредственно работу с заказ-нарядами в рамках тех лимитов, которые следуют из планов.

Особенностями проекта были:

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

Мы на этом проекте построили две модели: модель «как есть» и модель «как должно быть». Прописали все последовательности действий пользователей, какие документы и на каком этапе возникают. Выстроили архитектуру системы в целом – организовали для каждого пользователя именно то рабочее место, которое ему нужно. Но после запуска системы у нас возникло много проблем с одной обработкой, и мы на этом «топтались» несколько месяцев. Мы эту обработку переделывали, доделывали, исправляли ошибки. А всему виной было то, что мы неправильно выбрали объект метаданных. Если бы мы заранее построили модель метаданных, то наверняка бы увидели, что конкретно этот объект в каждодневной работе будет неудобен.

Построение диаграммы развертывания

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

Шаг 1. Определите цели моделирования

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

Шаг 2: Идентифицируйте узлы

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

Шаг 3. Определите отношения между узлами

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

Шаг 4 (опционально). Определите компоненты и активные объекты

После этого необходимо рассмотреть возможность добавления других элементов, таких как компоненты и активные объекты. Эти элементы дополняют диаграмму развертывания и уточняют ее содержание. Целесообразно определить, какие именно компоненты и объекты требуется включить в диаграмму, чтобы обеспечить полноту и точность представления архитектуры системы.

Шаг 5 (опционально). Определите зависимости

При необходимости следует учесть зависимости между компонентами и объектами. Добавьте соответствующие связи на диаграмму, чтобы уточнить взаимосвязи и зависимости между элементами системы. Это позволит повысить качество моделирования и обеспечить более полное представление архитектуры системы.

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

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

Пример кода и диаграммы классов для него

Программа получает данные с датчика температуры (вводятся с консоли) — по 5 измерений для каждого из двух объектов класса TemperatureMeasure и усредняет их. Также предусмотрен класс ShowMeasure для вывода измеренных значений. 

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778

#include <iostream>using namespace std;class Sensor {  int value;public:  Sensor() { value = 0; }  void setValue(int value) { this->value += value; }  int getValue() { return value; }};class MeasureCount{  int number;  static int total;public:  MeasureCount() { number = 0; }  void increment() { number++; total++; }  int getNumber() { return number; }  static int getTotal() { return total; }};int MeasureCount::total = 0;class ITemperatureMeasure{public:  virtual void setValue() = 0;  virtual double getValue() = 0;};class TemperatureMeasure : public virtual ITemperatureMeasure{private:  Sensor *h;        // агрегация  MeasureCount *measure;  // композицияpublic:  TemperatureMeasure(Sensor *h);  int getNumber() { return measure->getNumber(); }  double getValue() { return (double)h->getValue() / measure->getNumber(); }  void setValue()  {    int value;    measure->increment();    cout << «t= «;     cin >> value;    h->setValue(value);  }  static int getTotal() { return MeasureCount::getTotal(); }};TemperatureMeasure::TemperatureMeasure(Sensor *h){  measure = new MeasureCount();  this->h = h;}class ShowTemperature // зависимость{public:  static void Show(TemperatureMeasure t)  {    cout << t.getNumber() << «: «;    cout << t.getValue() << » oC» << endl;  }};int main(){  Sensor *h1 = new Sensor();  TemperatureMeasure tc1(h1);  for(int i=0; i<5; i++)    tc1.setValue();  ShowTemperature::Show(tc1);  cout << endl;  Sensor *h2 = new Sensor();  TemperatureMeasure tc2(h2);  for (int i = 0; i<5; i++)    tc2.setValue();  ShowTemperature::Show(tc2);  cout << endl;  cout << «Total: » << TemperatureMeasure::getTotal() << endl;  cin.get(); cin.get();  return 0;}

TemperatureMeasureSensorTemperatureMeasureSensorTemperatureMeasureMeasureCounttotalcountTemperatureMeasureMeasureCountTemperatureMeasureMeasureCountTemperatureMeasureITemperatureMeasureTemperatureMeasureпоставщикомShowTemperatureTemperatureMeasureShowShowTemperatureTemperatureMeasure

ARIS EPC

Часто можно слышать про моделирование в нотации ARIS. Такое определение не совсем корректно, потому что ARIS – это не нотация, это целая методология, которая предполагает много представлений предприятия: организационная структура, функциональная структура и т.д. Эта методология реализована в соответствующем программном продукте, в котором наряду с другими нотациями используют EPC – это специальная нотация для построения диаграмм в системе ARIS.

Нотация EPC – очень неплохая, в ней получаются понятные бизнес-процессы. Единственное, что если бизнес-процесс чуть сложнее, чем «принял заказ» — «отгрузил товар», то он редко укладывается на A4. Я когда в этой нотации диаграммы делал, мне приходилось их как-то склеивать, складывать – получались большие бумаги.

UML

Давайте рассмотрим схему модели UML: Use Case. Что здесь изображено?

  • Здесь изображено два участника бизнес-процесса – поросенок и волк, которые являются животными.
  • Они участвуют в некоторых сценариях.
    • Например, поросенок участвует в сценарии «Строит дом». Что такое сценарий «Строит дом»? Это – съездить на рынок, купить материалов, спроектировать дом, построить его, протестировать на прочность и т.д. Фактически, это – бизнес-процесс.
    • Есть другой сценарий «Кушает», в котором участвует волк и поросенок. Для волка это, наверное, приятно, а для поросенка – не очень.

Я думаю, вы уже догадались, что это – модель сказки «Три поросенка». Как видите, даже сказку можно замоделировать, причем, это будет понятно.

Вот так бы выглядела объектная модель UML сказки «Три поросенка»

Обратите внимание, сколько информации несет одна только связь. Здесь мы видим, что один поросенок (это обозначает цифра «1» в начале связи) строит один дом

О том, что он «строит» дом, мы видим надпись на стрелке. Связь «один к одному». Каждый поросенок построил для себя один дом.

Язык UML – это унифицированный язык моделирования для разработки моделей на основе многих видов диаграмм, например:

  • Диаграммы, которые показывают поведение;
  • Диаграммы, которые показывают структуру;
  • Диаграммы активности.
  • Там даже есть диаграмма развертывания, чтобы показать, на каком узле, что будет исполняться.

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

  • Первый критерий – это то, что диаграммы должны быть наглядными и простыми. Их должны понимать все люди, и понимать на таком уровне, что ты принес пользователю диаграмму и не объясняешь ему, что означает та или иная фигура, а обсуждаешь с ним предметно, что на этой диаграмме изображено. Диаграммы действительно должны помогать нам коммуницировать с пользователями.
  • В нотации IDEF думать очень сложно. И рисовать, в общем-то, тоже непросто. Вы на бумаге диаграмму IDEF вряд ли сходу нарисуете. А диаграмму UML: Use case набросать на доске или на бумаге совсем не сложно, и это будет понятно.
  • Конечно, было бы удобно, чтобы все модели можно было построить в рамках одной программы, чтобы не переключаться между разными окнами.
  • А также, поскольку ни одна из этих нотаций явным образом не предназначена для 1С, нам так или иначе придется расширять ее нашими обозначениями. Поэтому хотелось бы, чтобы нотация гарантированно поддерживала расширение и инструменты, которые эту нотацию поддерживают, также были расширяемыми.

Что такое диаграмма развертывания

Развертывание программного обеспечения является критическим этапом в жизненном цикле разработки программного обеспечения, требующим стратегического планирования и системного подхода. В этом контексте UML (Unified Modeling Language) стал широко распространенным языком моделирования, предоставляющим разработчикам инструментарий для создания высокоуровневых диаграмм, отображающих архитектурные аспекты программного продукта. Одной из наиболее важных диаграмм, используемых в UML, является диаграмма развертывания.

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

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

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

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

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

Возникающие вопросы

Когда я только начал заниматься моделированием бизнес-процессов, я столкнулся с гигантским океаном информации, и у меня возникло много вопросов:

Возможных нотаций описания очень много, но никаких сравнительных анализов по ним я на тот момент не нашел. Было непонятно, чем одна нотация лучше другой? Почему нужно использовать BPMN или IDEF, и как их использовать?

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

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

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

На все эти вопросы я постараюсь в статье ответить.

Оцените статью