|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Занимаюсь (полу-)автоматизацией установленного бизнес процесса, в основном уменьшением ручного ввода. С этой целью к системе (СУБД, сервер, терминалы) подключили внешние источники данных и событий, с целью уменьшить ручной труд сотрудников. В то же время ручной контроль остался, т.к. автоматизация покрывает не все случаи даже для одного поля. Пример (приближенный к реальности): дата выставления субсчета. Дату раньше заполнял человек вручную. Теперь во многих случаях дату можно вычислить автоматически из доступных сведений, но не всегда. Это приводит к ситуации двойного контроля над полем даты, что чревато проблемами при любом дизайне. Когда что-то под двойным контролем вспомогательной автоматики и человека, обычно человеку дается право окончательного решения, желательно без полного отключения автоматизации. Например, в самолете автопилот, если резко потянуть за штурвал, отключается, звучит оповещение что "дальше рули сам", и автоматика уступает дорогу. При этом другие аспекты автопилота остаются в силе (автоматическое поддержание скорости, и т.п.). Архитектурно правильное решение в таких случаях, когда человек рассчитывает на помощь, но не отдает контроль - это раздельное хранение данных. Машина что-то сумела подсчитать - положила рядом с данными человека. Данные машины могут измениться со временем из-за пересчетов. Если человек не выразил желание этими данными управлять - данные машины считаются актуальными. Если человек вбил свое число - данные человека победили. Если человек передумал и захотел отдать вожжи обратно машине - человек стирает свое число. Чтобы это реализовать с максимальным удобством, поле под двойным контролем должно показать в интерфейсе: - то, что оно под двойным контролем, т.е. это поле можно пропустить, и автомат его сможет заполнить - если оно "иногда" под двойным контролем, но не сейчас - нужно показать, что это поле останется пустым если его не заполнить - если поле заполнено, нужно показать источник данных (от человека или от машины) - если данные от машины, нужно показать оно окончательное, или может измениться при пересчете. - если данные от человека, нужна способность подсмотреть, какие данные туда внесла бы машина. Много работы, и все равно будут вопросы от пользователей, которым влом в этом разбираться. Если кто-то занимался подобной автоматизацией, какой подход вы использовали, и какие вынесли уроки? Я сейчас имплементирую значительно упрощенный вариант, без двойного хранение данных, по правилу: - если робот успел раньше человека, робот вносит свои данные и помечает их "от робота" - если человек внес свою информацию, данные робота пропали и робот это поле больше не трогает - если робот сделал пересчет, он может обновить поле только если там человек не побывал, или оно пустое - человек может на глаз определить, от кого в поле данные. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 02:07 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
НеофитSQL, В принципе суть любой автоматизации это сократить ручной труд человека. Ваша ошибка в том, что вы "робота" определили как субъект. Это порождает кучу описанных вами сложностей, и соответствующих овер-усложнённых решений. Принципы же простые как тапок: 1. Если что-то можно автоматизировать, автоматизируйте это. — заполните все поля, какие возможно сразу по возможности — дайте возможность заполнить поле автоматически, если это возможно (отдельная кнопка рядом с полем, всплывающая подсказка, иные явные средства управления) 2. Принцип наименьшего удивления, никакого волшебства быть не должно, никаких подковёрных скрытых манипуляций с интерфейсом и данными, прыжков и скачков в интерфейсе. — значение оно либо корректное, либо не корректное — после сохранения никто ничего "довносить" и изменять не должен — все изменения должны быть контролируемые — дайте возможность внести/откорректировать данные — дайте возможность откатить изменения (ctrl-z) 3. Корректность данных важней авторитетности — не важно кто автор значений (робот, человек, какой-то конкретный человек), важна корректность данных — обеспечьте максимальную валидацию введённых данных — убедитесь, что автоматически вычисляемые значения не противоречат этой валидации, иначе доверие к системе будет снижено И, самое главное, не пытайтесь решать задачи UX, если вы не специалист в этой области. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 05:25 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
hVostt 3. Корректность данных важней авторитетности — не важно кто автор значений (робот, человек, какой-то конкретный человек), важна корректность данных .... IMHO крайне спорно ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 12:02 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
hVostt Ваша ошибка в том, что вы "робота" определили как субъект. Это порождает кучу описанных вами сложностей, и соответствующих овер-усложнённых решений. он же юзер, который работает с системой ему uid нужен ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 13:31 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev hVostt 3. Корректность данных важней авторитетности — не важно кто автор значений (робот, человек, какой-то конкретный человек), важна корректность данных .... IMHO крайне спорно С точки зрения аудита, разумеется это имеет значение. Но и в этом случае, "робот" никакой ни автор, это шизофрения. Автором может быть только человек. Если даже автоматически что-то вычисляется, то либо по инициативе человека, на основе введённых данных людьми, или собранных из других источников. Представьте себе ситуацию в UX, где человек спорит с "роботом". Это же курам на смех. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 23:26 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
IMHO В первую очередь должно быть понятно, откуда пришли данные и почему они именно такие. Корректные / не корректные - в очень многих случаях вопрос спорный. Корректные с чьей точки зрения? А точка зрения может кардинально отличаться. Если даже автоматически что-то вычисляется, то либо по инициативе человека, на основе введённых данных людьми, или собранных из других источников. Вариантов то больше: например по крону... Ну "и из других источников" - а если из других источников очень часто приходит "лажа" (как у нас) ? При этом такая лажа, что отражать ее в отчетности/выставлять клиентам, нет никакой возможности. И наиболее тупые ляпы (из-за которой данные вообще не загрузить) видны сразу и тут же правятся. С одной стороны - явную лажу нужно исправлять (т.к. надо печатать документы и посылать реальным клиентам), с другой стороны - исправляя лажу, потом (когда придется с "источником" сверять данные), фиг найдешь, где данные правили, где не правили и почему итоговая сумма за год отличается по двум базам (которые в идеале должны быть синхронны), а откуда взялось итоговое сальдо по бумажным документам - вообще никто не знает и лучше даже об этом не задумываться. IMHO & AFAIK Ну и "на основе введённых данных людьми" это что значит? IMHO данные должны быть из ДОКУМЕНТОВ (подписанных) ну или, в крайнем случае, из электронных документов/файлов обмена. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2020, 23:43 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Много хороших мыслей, интересно читать. По поводу корректности данных, это вопрос из другой плоскости. Если для данного поля есть 100% объективно верные данные (сумма столбца в таблице), задача вырождается в более простую - отобрать контроль у человека. Вопрос двойного контроля пропал, также исчезла ответственность работника за правильность подсчёта суммы. Один из подходов - требовать явное действие от человека. Хочет автоподсчет? Ставит галочку автоподсчет рядом с полем. Хочет вручную? Убирает галочку, пишет свое. Стоимость имплементации - по галочке на все поля и способность пересчёта любого поля в любой момент (или двойное хранение данных). Дата: [__/__/_____] [✓]авто ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 05:11 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
hVostt, В этом сценарии поле долгоживущее (недели) и может обновиться пока человек спит. В отличие от автокорректа или автозаполнения пароля в браузере, которое происходит в присутствии пользователя, тут приходится создавать субъекта. Этот робот-субъект редко ошибается, а иногда не знает ответа, поэтому поле остаётся открытым для редактирования человеком, у которого последнее слово. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 05:34 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Усложняет мою конкретную проблему свойство путезависимости (path dependence) при вычислении значений. Другими словами, переход в ручной режим прост, а возвращение в автоподсчет требует значительной работы, т.к. число вычислялось инкрементально, с учётом состояния системы на каждой итерации. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 05:43 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev Корректные с чьей точки зрения? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 07:08 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Basil A. Sidorov Leonid Kudryavtsev Корректные с чьей точки зрения? "Господины акционеры, я тут правильно дату поставила?" Корректность данных определяется лицом, кому поручена задача ввода данных. Для этого лицу даётся критерии, источники, и т.д. Зато появляется спрос с данного лица. В условиях моей задачи автоматизации, спрос снизился до "если робот вбил дату, считать корректной по умолчанию, и в случае ошибки винить робота". Снижение ответственности - неизбежное следствие сокращения ручного труда, ИМО. Когда я пользуюсь калькулятором, я не проверяю ответы на бумаге столбиком, и если выданный мне для работы калькулятор ошибся при делении, это не моя вина. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 07:45 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
hVostt Leonid Kudryavtsev пропущено... IMHO крайне спорно С точки зрения аудита, разумеется это имеет значение. Но и в этом случае, "робот" никакой ни автор, это шизофрения. Автором может быть только человек. Если даже автоматически что-то вычисляется, то либо по инициативе человека, на основе введённых данных людьми, или собранных из других источников. Представьте себе ситуацию в UX, где человек спорит с "роботом". Это же курам на смех. Есть старая аналогия с экспертными системами из 80х. К примеру врач-инфекционист если встречается с чем-то неизвестным - может привлекать электронные экспертные системы для того чтобы понять по нечетким симптомам - что за болезнь или что делать дальше и какие дополнительные анализы собрать. Но отвественность за то что больной помер - несет лично врач а не экспертная система. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 11:39 |
|
Бюджетная автоматизация производства
|
|||
---|---|---|---|
#18+
Экспертные системы использовались на правах справочников. Если аналогия медицинская - возьмём инсулиновый насос, который сам определяет и сам вкалывает диабетику нужное (с точки зрения программиста) количество инсулина. Все без присутствия врача, вне больницы. Это портативное устройство, вживленное в пациента. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2020, 15:32 |
|
|
start [/forum/topic.php?fid=16&fpage=4&tid=1339722]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 165ms |
0 / 0 |