Новый метод определения времени работы с проектом в программном комплексе Costinformation
Использование программного комплекса, позволяющего отслеживать действия пользователей и определять трудовые затраты сотрудника на создание электронной информации. Применение Costinformation для оценки стоимости проектов на основе слежения за файлами.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 12.05.2018 |
Размер файла | 21,5 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Волгоградский государственный технический университет,
Волгоградский институт бизнеса
НОВЫЙ МЕТОД ОПРЕДЕЛЕНИЯ ВРЕМЕНИ РАБОТЫ С ПРОЕКТОМ В ПРОГРАММНОМ КОМПЛЕКСЕ COSTINFORMATION
Завьялов Д.В., Филиппов М.В.
Аннотация
Описан новый метод учета времени работы с проектами в созданном и описанном ранее авторами программном комплексе, который позволяет отслеживать действия пользователей и определять трудовые затраты сотрудника на создание электронной информации. Новый алгоритм обладает существенно более высокой производительностью и избавляет пользователя комплекса от обязательного закрытия файлов одного проекта при переходе к работе с файлами другого проекта, что является одним из самых значительных недостатков алгоритма в предыдущей версии программы.
Ключевые слова: стоимость информации, автоматизация учета трудовых затрат, расчет стоимости информации, электронная информация, учет трудовых затрат, информационная система.
Abstract
NEW METHOD FOR DETERMINING WORK TIME IN PROJECT IN COSTINFORMATION SOFTWARE
A new method for accounting of the work time in projects in the developed software complex is described in the paper, it allows to account user actions and determine the employee's labor costs for creating electronic information. The new algorithm has significantly higher performance and eliminates the need for the user to close the files of one project when switching to working with files of another project, which is one of the most significant drawbacks of the algorithm in the previous version of the program.
Keywords: information cost, automation of labor costs accounting, calculation of information cost, electronic information, labor cost accounting, informational system.
Основная часть
Авторами в [1], [2], [3] представлена методика измерений и программный комплекс, созданный для определения той части стоимости информации, которая определяется затратами на оплату труда пользователей за компьютером. Отметим, что на данное время авторам неизвестны компьютерные программы, подобные описанной в [3].
В наиболее общем случае работник в один и тот же промежуток времени может работать над несколькими проектами, и в рамках каждого из них он создает или изменяет файлы, расположенные в определенных папках, которые прикрепляются к проекту.
Программный комплекс CostInformation [3, 4] предназначен для оценки стоимости проектов на основе слежения за файлами проекта, расчета рейтинга их изменения и расчета стоимости этого изменения на основе рейтинга и информации о времени, затраченном на проект (за затраченным временем также следит программный комплекс). Комплекс оценки стоимости проектов CostInformation логически состоит из двух частей:
1) Администраторской части, предназначенной для:
- Управления пользователями в базе данных, которая позволяет добавлять пользователей в организацию, удалять их и менять основную информацию о них (в том числе почасовую ставку);
- Управления проектами в базе данных, которая предназначена для управления списком проектов и их краткой характеристикой;
- Назначения пользователей проектам и просмотра информации закрепления пользователя за проектами и проектов за пользователями;
- Просмотра статистики работы по пользователям;
- Просмотра статистики работы по проектам.
2) Пользовательской части, непосредственно следящей за изменением статистики по проектам на компьютере пользователя (разработчика) и регулярно отсылающая статистику в базу данных.
При этом процесс работы с программой также состоит из двух этапов. Сначала менеджер проектов должен в администраторской части программы внести пользователя в базу и назначить ему проект (или проекты). После этого при запуске клиентской части программы пользователь получит сообщение о его добавлении в проект и сможет назначить папки, в которых находятся файлы проекта. Клиентская программа запоминает сопоставления проектов пользователя и их папок в файле на локальном компьютере и при следующем запуске (при условии, что менеджер проектов не уберет пользователя из этого проекта) загрузит эти сопоставления из файла. У пользователя есть возможность изменить папки, назначенные на проект в дальнейшем в любой момент, как только это понадобится.
Клиентская часть комплекса при запуске сканирует папки проектов и устанавливает слежение за файлами в этих папках. Кроме слежения за файлами проекта клиентская часть комплекса следит за нажатиями клавиш, перехватывая возникающие при этом системные события. Перехватывать нажатия необходимо для более точной оценки времени, которое пользователь работал над проектом, что, в конечном итоге, самым прямым образом связано с трудозатратами пользователя по созданию информации в электронном виде. программный комплекс costinformation проект
Как видно из вышесказанного, одной из основных проблем при определении трудозатрат пользователя является определение к какому проекту относится то или иное нажатие клавиши. Целью настоящей работы является описание и сравнение предыдущего и нового методов соотнесения нажатия клавиши рабочим проектам.
В первой версии программного комплекса [4] определение осуществлялось следующим образом:
- программа определяет при нажатии клавиши процесс, которому принадлежит окно, «получившее» нажатие.
- далее определяются все файлы и папки, открытые процессом и, на основе сравнения этой информации со списками файлов проектов, делается вывод о том «принадлежит» ли нажатие какому-либо из проектов пользователя или нет. Если нажатая клавиша «принадлежит» какому-либо проекту, то некоторые служебные сведения о нажатии (время нажатия, код клавиши и т.д.) сохраняется в специальной структуре данных для дальнейшей обработки. Впоследствии программа проанализирует нажатия клавиш для проектов и посчитает время работы над каждым из них и, соответственно, стоимость работы сотрудника для каждого проекта (при этом может быть учтен рейтинг проекта, набранный за время работы пользователя над ним).
Отметим, что для определения файлов и папок открытых процессом, которому принадлежит дескриптор обрабатываемого окна, приходится использовать функцию ядра Windows NtQuerySystemInformation [5], [6], что, во-первых ограничивает область применимости пакета только платформой Windows (хотя подавляющая часть программного кода написана на языке C# [7], является платформонезависимой и может быть запущена на Linux под Mono [8]) и, во-вторых, вызов NtQuerySystemInformation очень “дорогой” по временным затратам, что требовало введения кэширования результатов, чтобы обновление информации можно было проводить реже, чем при каждом нажатии клавиш. Все это усложняло алгоритм работы и, кроме того, корректный расчет времени проводился только в случае, если с проектами пользователь работал последовательно и перед работой со следующим проектом сохранял изменения, сделанные в предыдущем.
В дальнейшем при внедрении первой версии комплекса в деятельность некоторых подразделений Волгоградского Института Бизнеса выяснилось, что указанные выше ограничения при определении времени являются довольно жесткими в повседневной деятельности сотрудников и возникла потребность в переработке метода определения соответствия нажатий клавиш проектам.
Новый метод, в отличие от предыдущего, не соотносит клавишу для какого-либо проекта в момент нажатия, а запоминает и накапливает в связанном списке [9, С. 264], [10] пары «информация о нажатии - дескриптор активного окна в момент нажатия». Впоследствии в момент сохранения какого-либо файла проекта возникает событие файловой системы, которое перехватывается программным комплексом. Определяется дескриптор окна и из списка пар «информация о нажатии - дескриптор активного окна в момент нажатия» выбираются те элементы, дескриптор окна которых равен дескриптору активного окна в момент сохранения файла. По полученному диапазону списка проводится анализ времени работы с проектом, так как возникшее событие сохранения файла позволяет идентифицировать папку к которой относится событие и, следовательно, определить проект, содержащий данный файл. При этом промежутки времени между нажатиями больше некоторого заранее установленного интервала времени (порядка нескольких минут) вычитаются из общего времени.
Описанный подход к определению времени работы пользователя с проектом имеет следующий недостаток - считается, что возникшее событие файловой системы относится к файлу, редактируемому в текущем активном окне. Однако можно привести пример, когда это не так. В случае, если при сохранении файла произошел какой-либо сбой и пользователь успел переключиться на другое окно возникнет ситуация, когда дескриптор окна не имеет отношения к сохраняемому файлу. Но заметим, что это скорее искусственный пример, чем реальная ситуация. В процессе тестирования описанного метода определения времени работы с проектом не было отмечено ни одного такого случая.
В противовес описанному недостатку новый метод обладает несколькими неоспоримыми достоинствами по сравнению со старым. Во-первых, комплекс избавился от вызовов NtQuerySystemInformation, что значительно повысило его быстродействие. Это факт отмечали все, кто тестировал комплекс с новой версией алгоритма. Особенно заметным повышение производительности стало на компьютерах типичных офисных конфигураций с процессорами низшего ценового сегмента трех- четырехгодичной давности. Из вышесказанного вытекает еще одно достоинство нового метода - освободившиеся вычислительные ресурсы можно тратить на дополнительный анализ нажатий клавиш, например статистический анализ распределения нажатых букв и/или интервалов времени между нажатиями с целью отсечь попытки «обмануть» программу. Подобный функционал планируется внедрить в следующих версиях программного комплекса.
Список литературы
1. Филиппов М.В. Основные подходы к решению проблемы расчета стоимости информации, хранимой в электронном виде / Филиппов М. В. // Современное состояние и тенденции развития гуманитарных и экономических наук: Сборник научных трудов 3-й межвузовской научно-практической конференции с международным участием (Волгоград, 12 апреля 2011 г.) Волгоград: Волгоградское научное издание. 2011. C. 208-212.
2. Филиппов М. В. Решение задачи расчета стоимости электронной информации, создаваемой сотрудниками организации, с учетом выполняемого вида работ / Филиппов М. В., Завьялов Д. В. // Бизнес. Образование. Право. Вестник Волгоградского института бизнеса. 2016. № 3. С. 33-37.
3. Филиппов М. В. Программный комплекс для автоматизации учета трудовых затрат на создание информации в электронном виде / Филиппов М. В., Завьялов Д. В. // Академический журнал Западной Сибири. 2017. № 1. С. 44-45.
4. Свидетельство о государственной регистрации программы для ЭВМ №2017612458. Программный комплекс оценки стоимости электронной информации CostInformation. / Филиппов М. В., Завьялов Д. В.; Правообладатель ЧОУ ВО «Волгоградский институт бизнеса».
5. NtQuerySystemInformation function [Electronic resource]//URL: https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms724509(v=vs.85).aspx (accesed: 1.11.2017).
6. SetWinEventHook function [Electronic resource]//URL: https://msdn.microsoft.com/ru-ru/library/windows/desktop/dd373640(v=vs.85).aspx (accesed: 1.11.2017).
7. C# (programming language) [Electronic resource]//URL: https://en.wikipedia.org/wiki/C_Sharp_(programming_language) (accesed: 1.11.2017).
8. Mono [Electronic resource]//URL: http://www.mono-project.com (accesed: 1.11.2017).
9. Thomas H. Cormen. Introduction to Algorithms, Third Edition (3rd ed.) / Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. The MIT Press., 2009. 1292P.
10. LinkedList<T> Class [Electronic resource]//URL: https://msdn.microsoft.com/en-us/library/he2s3bh7(v=vs.110).aspx (accesed: 1.11.2017).
Размещено на Allbest.ru
...Подобные документы
Разработка программного комплекса, позволяющего проиллюстрировать работу с иерархическими структурами данных. Способы изображения древовидной структуры. Двоичное (бинарное) дерево поиска. Описание алгоритмов, которые используются в программном комплексе.
курсовая работа [747,2 K], добавлен 09.06.2013Создание приложения Windows, позволяющего автоматизировать процесс обработки информации студентов университета. Организация работы с физическими файлами в языках программирования. Изучение средств IDE Delphi для организации работы с текстовыми файлами.
курсовая работа [1,5 M], добавлен 08.11.2011Разработка программного комплекса и описание алгоритма. Разработка пользовательского интерфейса. Анализ тестовых испытаний программного блока. Защита пользователей от воздействия на них опасных и вредных факторов. Режимы работы программного комплекса.
дипломная работа [1,7 M], добавлен 14.03.2013Создание прикладного программного обеспечения, позволяющего определять константу скорости реакции. Анализ математических моделей кинетики химических реакций. Разработка пользовательского интерфейса. Проверка работоспособности программного обеспечения.
курсовая работа [269,2 K], добавлен 28.01.2017Анализ и выбор СУБД. Разработка программного комплекса для поликлиники, позволяющего повысить эффективность работы регистратуры за счет сокращения трудовых затрат, а также повышения качества работы. Требования к информационной и программной совместимости.
дипломная работа [3,2 M], добавлен 09.10.2013Модель этапа пост-архитектуры. Предварительная оценка программного проекта на основе LOC-метрик. Расчет затрат на разработку ПО. Стоимость, длительность разработки проекта на основе модели этапа пост-архитектуры конструктивной модели стоимости СОСОМО II.
курсовая работа [89,9 K], добавлен 29.09.2009Назначение программного комплекса (ПК) "Лира": расчет, исследование и проектирование конструкций. Создание расчетной схемы фермы в среде AutoCAD 2000, ее импортирование в ПК "Лира". Определение продольных усилий в элементах фермы, результаты проверок.
реферат [811,2 K], добавлен 04.01.2014Проектирование структуры информационной базы и разработка программного комплекса, позволяющего автоматизировать процесс учета налогоплательщиков. Разработка конфигурации и создание интерфейса базы данных, форм и отчетов в программе "1С Предприятие".
дипломная работа [3,2 M], добавлен 21.06.2015Анализ единичных и комплексных показателей качества аппаратного комплекса системы защиты информации. Расчет стоимости для каждой фазы жизненного цикла системы защиты информации программного комплекса, а также расчет общей стоимости владения комплексом.
курсовая работа [65,9 K], добавлен 20.02.2012Разработка веб-приложения, позволяющего создавать и редактировать проекты с коллективным взаимодействием для совместного редактирования проектов HTML, CSS, JS. Обоснование выбора архитектуры программного изделия. Принцип организации обмена данными.
дипломная работа [1,9 M], добавлен 19.06.2013Аудит как одно из средств защиты сети Windows, с помощью которого можно отслеживать действия пользователей и другие системные события в сети. Понятие и инструменты мониторинга. Использование консоли управления. Журналы и оповещения производительности.
презентация [2,2 M], добавлен 09.12.2013Функции системы управления базами данных. Описание технологии Change Notification. Определение объекта слежения по зависимостям. Архитектурная модель программного комплекса. Практическое применение Database Change Notification. Создание обработчика.
контрольная работа [492,5 K], добавлен 21.04.2014Создание программного продукта, автоматизирующего деятельность сотрудника пожарного контроля. Задача информационной системы - учет информации о пожарах. Средства разработки, структура данных. Описание продукта, экономические преимущества от внедрения.
курсовая работа [1,6 M], добавлен 06.12.2012Анализ возможностей утечки информации, неавторизованного и несанкционированного доступа к ресурсам ЛВС сельскохозяйственного комплекса. Ознакомление с антивирусными программы и брандмауэрами. Разработка программного комплекса для защиты информации.
дипломная работа [3,6 M], добавлен 17.04.2010Создание программного продукта, представляющего моделирование на компьютере логнормального распределения, определение вероятностной оценки стоимости актива. Описание работы программного продукта. Работа с графиками, таблицами, математическими функциями.
курсовая работа [742,7 K], добавлен 08.01.2009Разработка и внедрение программного продукта, позволяющего автоматизировать процесс сбора сведений и ведения журналов полученных анализов в медицинском учреждении. Концепции развития системы здравоохранения. Медицинская информационная система "Квазар".
дипломная работа [1,7 M], добавлен 07.04.2015Принцип организации и способы удаленного обмена файлами с использованием протокола. Разработка проекта распространения софта на множество пользовательских машин. Создание программного комплекса системы с механизмами отображения и управления данными.
дипломная работа [920,0 K], добавлен 03.04.2014Создание программного обеспечения, позволяющего максимально быстро вводить поступающие заявки и данные о клиентах. Автоматическое занесение заявок из электронной почты в систему 1С. Выбор PCI платы для подсистемы интерактивного меню, а также GSM-шлюза.
дипломная работа [93,6 K], добавлен 17.03.2013Изучение сущности и основных задач файловой системы. Принципы работы с папками и файлами. Комплекс системных программных средств, реализующих управление файлами: создание, уничтожение, чтение, запись, именование, поиск и другие операции над файлами.
курсовая работа [309,6 K], добавлен 11.11.2013Использование программы "Total Commander": пользовательский интерфейс, клавиатурные сочетания, операции с файлами, контекстные меню, внутренний просмотр файлов. Назначение и применение функциональных клавиш. Особенности работы с каталогами и файлами.
презентация [462,3 K], добавлен 25.09.2014