Что определяет сетевой график

Сетевой график

Сетевой граф — граф, который отражает работы проекта, связи между ними, состояния проекта.

Содержание

Вершины графа отображают состояния некоторого объекта (например, строительства), а дуги — работы, ведущиеся на этом объекте. [1]

Каждой дуге сопоставляется время, за которое осуществляется работа и/или число рабочих, которые осуществляют работу. Часто сетевой график строится так, что расположение вершин по горизонтали соответствует времени достижения состояния, соответствующего заданной вершине. Популярная составляющая методологии PERT.

Основными понятиями являются: работа, события, пути.

Всякая работа в сети соединяет два события: предшествующее (являющееся для нее начальным) и следующее за ней (конечное).

Событие определяет состояние, а не процесс.

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

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

Сетевой график — это динамическая модель производственного процесса, отражающая технологическую зависимость и последовательность выполнения комплекса работ, увязывающая их свершение во времени с учетом затрат ре­сурсов и стоимости работ с выделением при этом узких (критических) мест. Основные элементы сетевого графика — работа и событие. Работа отражает трудовой процесс, в котором участвуют люди, машины, механизмы, материальные ресурсы (проектирование сооружения, поставки оборудования, кладка стен, решение задач на ЭВМ и т. п.) либо процесс ожидания (твердение бетона, сушка штукатурки и т. п.). Каждая работа сетевого графика имеет конкретное содержание. Работа как трудовой процесс требует затрат времени и ресурсов, а как ожидание — только времени. Для правильного и наглядного отображения порядка предшествования работ при построении сети используют изображаемые штриховыми линиями дополнительные дуги, называемые фиктивными рабо­тами или связями. Они не требуют ни времени, ни ресурсов, а лишь указывают, что начало одной работы зависит от окончания другой.

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

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

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

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

Работы с нулевым резервом лежат на «критическом пути».

Источник

Построение сетевого графика

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

Однако, без понимания основ и правил построения сетевых графиков менеджеры проектов довольно-таки часто совершают ошибки. Несмотря на то, что современные ИСУП достаточно «умные» и подстраховывают менеджера проекта во многих моментах, связанных с расписанием проекта, тем не менее, остаются «слепые» зоны, которые лежат только в зоне ответственности менеджера проекта.

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

Что такое сетевой график

Сетевой график (англ., Project Network) — это динамическая модель проекта, отражающая зависимость и последовательность выполнения работ проекта, связывающая их завершение во времени с учётом затрат ресурсов и стоимости работ.

Сетевой график может быть построен в двумя способами:

Правила построения сетевого граифка

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

Исходные работы

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

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

На рисунке 1 показан пример начала сетевого графика с одной исходной работой (работа A), а на рисунке 2 пример начала сетевого графика с тремя исходными работами (работы A, B, C).

Что определяет сетевой график

Рисунок 1. Сетевой график с одной исходной работой

Что определяет сетевой график

Рисунок 2. Сетевой график с тремя исходными работами

Последовательные работы

Если работа B должна выполняться только после выполнения работы A, то на графике это изображается в виде последовательной цепочки работ и событий.

Что определяет сетевой график

Рисунок 3. Последовательно выполняемые работы

Работы, выполняемые после одной и той же работы

Если для выполнения нескольких работ, например, B и C необходим результат одной и той же работы A, то на графике это изображается «параллельными» стрелками, выходящими из события, являющегося результатом выполнения работы А.

Что определяет сетевой график

Рисунок 4. Работы, выполняемые после одной и той же работы

Работа, выполняемая после нескольких работ

Если для выполнения работы C необходим результат работ A и B, то на графике это изображается «параллельными» стрелками, входящими в событие, после достижения которого следует работа C.

Что определяет сетевой график

Рисунок 5. Работа, выполняемая после нескольких работ

Работы, выполняемые после частичного выполнения других работ

Если для выполнения работ B и C необходим промежуточный результат работы A, то работа A разбивается на подзадачи таким образом, чтобы первая ее подзадача (A1) выполнялась до получения промежуточного результата, необходимого для начала работы B, а вторая подзадача выполнялась до получения промежуточного результата, необходимого для начала работы C, последующая же часть A3, может выполняться параллельно с работами A1 и A2.

Что определяет сетевой график

Рисунок 6. Работы, выполняемые после частичного выполнения других работ

Работы, имеющие общие начальное и конечное события

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

Что определяет сетевой график

Рисунок 7. Работы, имеющие общие начальное и конечное события

Использование фиктивных работ

Если выполнение работы D возможно только после получения совокупного результата работ A и B, а выполнение работы C – после получения только результата работы А, то в сетевом графике необходимо ввести дополнительное событие и фиктивную работу.

Что определяет сетевой график

Рисунок 8. Использование фиктивных работ

«Хвосты» и «тупики»

В сети не должно быть «тупиков», т.е. промежуточных событий, из которых не выходит ни одна работа. На рисунке 9 тупиковым событием является событие 6.

Также не должно быть «хвостов», т.е. промежуточных событий, которым не предшествует хотя бы одна работа. На рисунке 9 хвостовым событием является событие 3.

Что определяет сетевой график

Рисунок 9. «Хвосты» и «тупики» в сетевом графике

Циклы

На сетевом графике не должно быть циклов, состоящих из взаимосвязанных работ, создающих замкнутую цепь — цепочка работ D->F->G на рисунке 10. Данная ситуация скорее всего свидетельствует об ошибке при составлении перечня работ и определении их взаимосвязей.

Что определяет сетевой график

Рисунок 10. Цикл на сетевом графике

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

На рисунке 11 приведен пример устранения цикла, когда работа G становится частью общего результата.

Что определяет сетевой график

Рисунок 11. Устранение цикла на сетевом графике

Именование работ и нумерация событий

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

Для правильной нумерации событий поступают следующим образом: нумерация событий начинается с исходного события, которому дается номер 0. Из исходного события вычеркивают все исходящие из него работы, на оставшейся сети вновь находят событие, в которое не входит ни одна работа. Этому событию дается номер 1. Затем вычеркивают работы, выходящие из события 1, и вновь находят на оставшейся части сети событие, в которое не входит ни одна работа, ему присваивается номер 2, и так продолжается до завершающего события.

Источник

Организационный инструментарий менеджмента

4.2. Сетевые графики

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

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

Основными понятиями сетевой модели являются:

Что определяет сетевой график

В понятие «работа» включается «процесс ожидания», т.е. процесс, не требующий затрат труда, но требующий затрат времени. Обычно ожидание изображают в виде пунктирной стрелки, над которой указывают продолжительность ожидания ( рис. 4.1 а, б).

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

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

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

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

Что определяет сетевой график

При сравнении продолжительности путей выявляется путь, длина которого (суммарная продолжительность работ на этом пути) имеет наибольшую величину по сравнению с длиной любого другого пути. Такой путь называется критическим. Критический путь определяет общую продолжительность работ. Пример выявления критического пути изображен на рис. 4.3. Изображенный на рисунке сетевой график имеет пять путей.

Что определяет сетевой график

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

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

Правила построения сетевых моделей

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

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

Правило пересечения стрелок. Пересечения стрелок допустимы, но чем меньше пересечений, тем график более продуман и нагляден.

Изложенные три правила можно рассматривать как предварительные. Теперь перейдем к основным правилам построения сетевых графиков.

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

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

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

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

Что определяет сетевой график

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

Что определяет сетевой график

На графике вводится дополнительное событие в том месте предшествующей работы, где может начаться новая. Пример этого приведен на рис. 4.5. Предстоящая работа предполагает необходимость корректировать рабочие чертежи (работа «а», продолжительность 30 дней) и изготовить испытательный стенд (работа «б», продолжительность 25 дней). Если эти работы изобразить последовательно, то общая продолжительность составит 55 дней, как это изображено на рис. 4.5 а, между работами. После составления сетевого графика и анализа взаимосвязи предполагается, что работу «б» можно начать после выполнения половины работы «а», т.е. через 15 дней. Закончить работу «б» можно только после полного окончания работы «а». Исходя из этого можно построить новый сетевой график, изображенный на рис. 4.5 б. Из него видно, что общая продолжительность работ теперь составляет 42 дня, т.е. мы получили выигрыш во времени на 13 дней.

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

Что определяет сетевой график

Если такое замыкание произошло, то это означает, что имеются ошибки в технологии или в составлении графика.

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

Правила запрещения «тупиков» и «хвостовых» событий проиллюстрированы на рис. 4.7.

Что определяет сетевой график

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

Сам собой напрашивающийся вариант сетевой модели, объединяющий обе группы работ, приведен на рис. 4.8 б.

Но такой вариант неправильный. Так как сетевой график показывает, что работа «д» зависит как от работы «б», так и от работы «в», а это противоречит исходной моделируемой технологии.

Чтобы построить правильную сетевую модель, необходимо ввести дополнительное событие.

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

Что определяет сетевой график

Правило учета непосредственных примыканий (зависимостей). В сетевом графике учитывается только непосредственное примыкание (зависимость) между работами ( рис. 4.9).

Что определяет сетевой график

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

Правило кодирования событий сетевого графика. Для кодирования сетевых графиков необходимо руководствоваться следующими требованиями:

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

Четкая система кодирования позволяет выявить имеющиеся в сети замкнутые контуры.

Правила кодирования событий сетевого графика проиллюстрированы на рис. 4.10.

Источник

Моделирование сетевого графика проекта

Что определяет сетевой график

Что определяет сетевой график

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

Глоссарий разработки сетевого графика

Построение сетевого графика методологически основано на общей концепции СПУ (системы планирования и управления) проектов. Ключевые аспекты данной методологии были рассмотрены в статье на тему сетевого планирования проекта. В настоящем материале мы развиваем начатое осмысление теоретических и прикладных вопросов сетевого моделирования. В первую очередь, нас интересует разработка сетевой диаграммы вида «вершина – работа» в контексте ее составления, оптимизации и корректировки. Логика сетевого планирования достаточно проста, математически метод не сложен.

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

Что определяет сетевой график

Введем основные понятия, которые понадобятся для составления сетевой модели проекта и ее оптимизации:

Базовый алгоритм и виды связей сетевого графика

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

Что определяет сетевой график

Сетевой график строится по следующему алгоритму составления.

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

Что определяет сетевой график

Методы расчета длительности операций

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

Что определяет сетевой график

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

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

Параметрическая оценка длительности тесно сопряжена с нормативным подходом. Данный подход задействует такие параметры, в частности, как производительность (объем производства в единицу времени) или выработка. Например, чтобы выполнить монтаж I-го уровня сложности оборудования «А» требуется, допустим, 100 нормо-часов труда специалистов высшей квалификационной категории. Подобного рода мероприятия называют еще работами фиксированного объема, потому что продолжительность их связана с числом выделяемых ресурсов и может быть оценена как объем работ, деленный на количество человеческих ресурсов.

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

Методы оптимизации сетевого графика

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

Что определяет сетевой график

На текущий момент нас интересует оптимизация сетевого графика как подэтап процесса планирования проектной задачи. Это связано с тем, что после сбора информации о работах и ограничениях разработка визуальной модели в форме сетевой диаграммы подразумевает дальнейшее ее улучшение с использованием методов расчета расписания. Основных методов два: метод критического пути (сокращенно МКП) и анализ расписания по методу PERT.

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

Метод оценки и анализа программ (PERT) служит вторым методом, по которому проводится оптимизация сетевого графика. Его основные отличия от МКП основаны на допущении, что длительность работ носит случайный характер, и для целей оценки и анализа сроков следует учитывать неопределенность временного параметра работ проекта. Также делается допущение о независимости всех случайных величин продолжительности критического пути. Для этих целей на основе метода математической статистики и теории вероятности используется β-распределение и оценка параметров распределения с трех экспертных позиций: оптимистичной, пессимистичной и наиболее вероятной.

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

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *