ТЕХНИЧЕСКИЕ НАУКИ
Аносов Александр Владимирович
к.т.н., PMP
Автономная некоммерческая организация Центр научных исследований "Три Би " Россия, Санкт-Петербург Патрина Татьяна Александровна
к.т.н.,
Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» им. В. И. Ульянова (Ленина) Россия, Санкт-Петербург, ул. Профессора Попова, д. 5
РАЗРАБОТКА РЕШЕНИЯ ДЛЯ АВТОМАТИЧЕСКОГО ОТСЛЕЖИВАНИЯ СТАТУСА ЗАВИСИМОСТЕЙ ЗАДАЧИ В SMARTSHEET
Anosov Aleksandr Vladimirovich
Ph.D., PMP
Nonprofit organization "3B " Center of Scientific Research
Russia, Saint-Petersburg Patrina Tatiana Alexandrovna Ph.D.,
St. Petersburg State Electrotechnical University "LETI" Russia, Saint-Petersburg, ul. Prof. Popova 5
DEVELOPMENT OF A SOLUTION FOR AUTOMATIC TRACKING OF THE STATUS OF TASK
DEPENDENCES IN SMARTSHEET
DOI: 10.31618/ESSA.2782-1994.2021.3.76.212 Abstract. The article proposes a solution to automate the dependencies completion tracking in Smartsheet for a specific task. The solution allows tracking different types of dependencies for a task: completing direct dependencies from other tasks and completing dependencies for all of its ancestors. The algorithm of the solution, Smartsheet's functions for its implementation, and the screen forms of the obtained results are given.
Аннотация. В статье предлагается решение по автоматизации задачи отслеживания выполнения зависимостей для отдельно взятой задачи в программе Smartsheet. Предлагаемое решение позволяет отслеживать завершение разных типов зависимостей для задачи: прямых зависимостей от других задач и зависимостей всех предков задачи. Приводится алгоритм решения, функции Smartsheet для его реализации и экранные формы полученных результатов.
Keywords: Smartsheet, task' dependencies execution tracking, project plan, project management. Ключевые слова: Smartsheet, контроль выполнения задач, план проекта, управление проектами.
Введение
Smartsheet - широко известное облачное программное обеспечение для проектного управления. Оно может помочь менеджерам для решения разных типов задачах.
Большое количество подобного программного обеспечения имеет аналогичный функционал: позволяет создавать задачи, устанавливать планируемые сроки их выполнения и зависимости между ними. После организации таким образом плана проекта, менеджер приступает к его ежедневному контролю.
Все идет хорошо, пока не появляется проект, требующий контроля большого количества задач за короткий промежуток времени. Например, в плане имеется 40 задач со сложными зависимостями, которые должны быть сделаны в течение часа. Задача отслеживания и обновления статусов задач по поступающей информации в короткий
промежуток времени становится для менеджера трудно выполнимой. А задача старта очередных задач плана проекта, в зависимости от завершения всех ее зависимостей, критически сложной. Фактически для менеджера это означает перемещение по плану к зависимостям каждой задачи с визуальной оценкой их статуса. Если зависимостей много, это соответственно увеличивает время, необходимое для анализа.
Очевидным становится желание
пользователей Smartsheet иметь автоматизацию по отслеживанию зависимостей для каждой задачи плана. Такой функционал периодически запрашивают пользователи в Smartsheet community [1], и до настоящего времени он не реализован. Статья предлагает альтернативное решение, как добавить эту функцию используя стандартные возможности Smartsheet.
Smartsheet как электронная таблица
Кроме известных методов работы с задачами проекта, описанных на домашней странице приложения [2], Smartsheet имеет встроенные формулы, которые могут быть использованы для расширения его возможностей. Это повышает его гибкость по сравнению с аналогичными программными продуктами, позволяя менеджеру реализовывать решения для своих целей.
Менеджер может использовать поля Smartsheet аналогично ячейкам Excel, добавляя для расчетов информацию отдельных полей текущего листа и других планов проектов. Используя эту возможность, можно формировать отдельные запросы, расширяя стандартный функционал Smartsheet.
Информацию о встроенных формулах Smartsheet можно найти на официальном сайте приложения [3].
Отслеживание выполнения зависимостей задачи
Описание алгоритма решения
Для отслеживания статуса выполнения зависимостей для задачи средствами Smartsheet, необходимо оценить:
1. статусы выполнения зависимостей задачи;
2. статусы выполнения зависимостей комплексной задачи, для которой обсуждаемая задача является подзадачей.
Рис. 1 поясняет данное утверждение: для старта задачи 2.1, задача 1.1 и задача 1.2 должны иметь статус "Completed" (выполнена). Задача 1.1 является прямой зависимостью для задачи 2.1. А задача 1.2 является зависимостью для комплексной задачи, с задачей 2.1 в ее составе.
Комплексную задачу в Smartsheet принято называть "предком" задачи. Предков у задачи может быть несколько, в зависимости от вложенности уровней комплексных задач.
Task Name Status Duration © Start Finish Predecessors
1 2 3 " Группа задач 1 Задача 1.1 Задача 1.2 In progress Completed Not started 2d Id Id 12/11/21 12/11/21 12/13/21 12/13/21 12/11/21 12/13/21 2
4 5 " Группа задач 2 Задача 2.1 Not started Not started 2d Id 12/14/21 12/14/21 12/15/21 12/14/21 3 2
6 7 Задача 2.2 " Группа задач 3 Not started Not started Id 2d 12/15/21 12/14/21 12/15/21 12/15/21 2. 5
8 Задача 3.1 Not started Id 12/14/21 12/14/21
Задача 3.2 Not started Id 12/15/21 12/15/21 S
Рис. 1 Пример зависимых задач в Smartsheet.
Таким образом, для принятия решения о возможности старта задачи, необходимо проанализировать статусы завершения
зависимостей двух обозначенных типов.
По мере выполнения проекта, статус задач в Smartsheet вручную изменяется менеджером в столбце "Status" (статус), к примеру, он может принимать значение "Completed", если задача завершена, или "Not Started" (не начата), если ещё не начата.
Когда для отдельной задачи все статусы её зависимостей и зависимостей её предков принимают значение "Completed", это означает, что она может быть начата. В этот момент нужно проинформировать менеджера о такой возможности (включить для такой задачи визуальную индикацию).
Блок-схема описанного решения представлена на Рис. 2.
К примеру, если у задачи 5 зависимостей и два предка, имеющих по 2 зависимости, необходимо уточнить статусы выполнения всех 9 зависимостей. Если все в статусе "Completed", включить визуальный индикатор для задачи, означающий возможность её старта.
Разработка решения
Формулы Smartsheet, которые могут быть использованы для контроля статусов зависимостей: INDEX (rangerow_index [column_index]) [4] совместно с MATCH (search_value range [ search_type]) [5]. Используя эти формулы, можно обратиться к статусам зависимостей задачи и проверить их. Если они имеют статус "Completed", перейти к проверке статуса зависимостей предков.
Для контроля статуса зависимостей предков можно использовать функцию ANCESTORS ([reference]) [6], где reference - это задача, для которой необходимо получить информацию о предках. Формула COUNT (ANCESTORS ([Task Name] @row)) возвращает количество предков для отдельной задачи. Необходимо проверить статус завершения зависимостей для каждого из них. Когда все они перейдут в статус "Completed", зависимость от завершения зависимостей предков будет выполнена.
Результат проверки зависимостей можно визуализировать в отдельной колонке: когда все зависимости завершены, включить зеленый индикатор для задачи, чтобы показать менеджеру, что она может быть начата.
Рис. 2 Алгоритм отслеживания завершения зависимостей задачи и зависимостей предков.
Заключение
Предлагаемое решение было реализовано и ежедневно используется в наших планах проектов Smartsheet. Формулы для обработки зависимостей содержатся в нескольких столбцах, могут быть перенесены в любой план и скрыты от
Can go Task Name
пользователя. Зеленый индикатор,
информирующий менеджера о выполнении всех зависимостей для задачи и возможности ее старта, размещен в первом столбце Smartsheet плана. На рис. 3 а, 3б показано, как меняются индикаторы в зависимости от изменений в плане.
а
Status Duration Start Finish Predecessors
a ©
1 " Группа задач 1 In progress 2d 12/11/21 12/13/21
2 Задача 1.1 Completed Id 12/11/21 12/11/21
3 Задача 1.2 Completed Id 12/13/21 12/13/21 2
4 " Группа задач 2 In progress 2d 12/14/21 12/15/21 3
5 • Задача 2.1 Not started Id 12/14/21 12/14/21 2
6 Задача 2.2 Not started Id 12/15/21 12/15/21 2, 5
7 • " Группа задач 3 Not started 2d 12/14/21 12/15/21
8 • Задача 3.1 Not started Id 12/14/21 12/14/21
9 Задача 3.2 Not started Id 12/15/21 12/15/21 8
б
Can go a Task Name Status Duration © Start Finish Predecessors
i " Группа задач 1 In progress 2d 12/11/21 12/13/21
2 Задача 1,1 Completed Id 12/11/21 12/11/21
3 Задача 1.2 Completed Id 12/13/21 12/13/21 2
4 Группа задач 2 111 progress 2d 12/14/21 12/15/21 3
5 Задача 2.1 Completed Id 12/14/21 12/14/21 2
6 • Задача 2.2 Not started Id 12/15/21 12/15/21 2. 5
7 " Группа задач 3 In progress 2d 12/14/21 12/15/21
8 Задача 3.1 Completed Id 12/14/21 12/14/21
9 • Задача 3.2 Not started Id 12/15/21 12/15/21 8
Рис. 3 Разработанное решение. Зеленые индикаторы показывают, что задача может быть начата (а),
изменения зеленых индикаторов в зависимости от изменений в плане (b).
Есть некоторые ограничения предлагаемого решения:
• количество предков задачи - не более 8;
• количество зависимостей для задачи или предков - не более 5;
• типы зависимостей "SS", "FF", "SF', "FS", "+5д", "-5д" обрабатываются, но без учета значений этих функций.
Указанные ограничения не уменьшают прикладной значимости реализованного решения. При необходимости его можно доработать. Очевидно, это увеличит время расчета формул. В настоящее время пересчет происходит практически в реальном времени (проверено на рабочем плане Smartsheet, более 500 строк).
Добавление предлагаемого решения в план Smartsheet значительно упрощает менеджеру задачу оценки новой ситуации в плане проекта при изменении статуса задач: зеленые индикаторы выделяют задачи, которые можно начинать. Это решение незаменимо при планировании и
_25
выполнении сложных планов проектов со множеством зависимостей. До появления функционала отслеживания зависимостей для задач в релизе Smartsheet предлагаемый подход способен решить эту задачу в значительной степени.
References
1. Smartsheet Community / Smartsheet, official site. URL: https://community.smartsheet.com.
2. Smartsheet / Smartsheet, official site. URL: https://www.smartsheet.com/customers-home.
3. Functions List / Smartsheet, official site. URL: https://help.smartsheet.com/functions
4. Index Function / Smartsheet, official site. URL: https://help.smartsheet.com/function/index.
5. Match Function / Smartsheet, official site. URL: https://help.smartsheet.com/function/match.
6. Ancestors Function / Smartsheet, official site. URL: https://help.smartsheet.com/function/ancestors.
УДК 519.876.5
Ермаков П.Г.*, Гоголев А.А. **
Государственный научно-исследовательский институт авиационных систем, ГосНИИАС,
ул. Викторенко, 7, Москва, 125319, Россия
СРАВНИТЕЛЬНЫЙ АНАЛИЗ СХЕМ КОМПЛЕКСИРОВАНИЯ ИНФОРМАЦИИ БЕСПЛАТФОРМЕННЫХ ИНЕРЦИАЛЬНЫХ НАВИГАЦИОННЫХ СИСТЕМ БЕСПИЛОТНЫХ
ЛЕТАТЕЛЬНЫХ АППАРАТОВ
Р01: Ш.3Ш8/ESSA.2782-1994.202L3.76.213 Аннотация. Серьезной проблемой современных беспилотных летательных аппаратов массой менее 500 кг является их низкая надежность ввиду существенных ограничений на массу информационно -управляющего комплекса, что в свою очередь ведет к применению микроэлектромеханических (МЭМС) датчиков, обладающих существенными уходами и дрейфами [1]. В данной статье приводится сравнительный анализ раздельной и слабосвязанной схем комплексирования на основе данных имитационного моделирования инерциально-измерительного модуля УЫ-100Т и навигационных алгоритмов с целью повышения точности и надежности информационно-управляющего комплекса беспилотного летательного аппарата (БЛА).
Ключевые слова: имитационное моделирование; беспилотный летательный аппарат; навигационная система; раздельная схема комплексирования; слабосвязанная схема комплексирования; фильтр Калмана.
Введение
В настоящее время БЛА малой массы (до 500 кг) все чаще используются как в гражданских, так и в военных областях. Перспективными задачами в данных отраслях для БЛА являются: доставка грузов в удаленные районы, поиск терпящих бедствие людей, охрана частной территории, длительная разведка над вражеской территорией, осуществление бомбометания.
Из-за небольших габаритов рассматриваемых БЛА в настоящей статье появляются ограничения на применение инерциальных измерителей навигационной информации в виде линейных размеров и массы, следовательно, одной из проблем при автономном использовании БЛА является осуществление как можно более точной его навигации. По большей части современные БЛА оснащаются следующими измерителями навигационной информации: МЭМС
акселерометрами / датчиками угловой скорости
(ДУС), приемником глобальной навигационной спутниковой системы (ГНСС), барометрическим высотомером, лазерным дальномером
(высотомером), магнитометром и другими сенсорами различной физической природы [2].
В данной работе исследуется возможность повышения точности навигационного счисления угловой и пространственной ориентации БЛА за счет комплексирования навигационной информации на основе раздельной и слабосвязанной схемы комплексирования [3,4,5].
Стоит отметить, что основным измерителем в случае выбора вышеприведенного набора измерителей является БИНС, которая обладает высокой автономностью (не требует дополнительных внешних сигналов) и высокой частотой получения измерений (более 200 Гц). Однако с течением времени данная навигационная система начинает вырабатывать ошибки в своем решении, появляющиеся в процессе двойного