10.03.2011, 08:10 | #1 |
Участник
|
ERP как залежи говнокода
Цитата:
Лет десять назад в ходу был анекдот про МИГ-29, которые купили индусы. Купили в разобранном виде. Собирают, получается паровоз. Звонят нашим, так, мол, и так, не можем понять. А наши им — написано же в инструкции «после сборки доработать напильником». Этот анекдот гораздо больше подходит ERP-системам, чем МИГам.
Почему клиенты «живут» с этими проблемами вечно? Авторы исследования утверждают, что причиной тому — незнание настроек, их сложность. Если бы… Представьте себя на месте клиента. Вы точно знаете, что у вас серьезные проблемы с безопасностью. Решить их можно, но для этого следует изучить недра системы. Неужели вы не разберетесь с ними? Но дело не в них. Дело в том, что технологии, воплощенные в ERP-системах, устарели уже на десятилетия. Почти все разработчики ERP идут одним путем. Выпускается нечто, на что вешается ярлык — «ERP-система». Это нечто и продается клиентам. В реальности это даже не полуфабрикат, а хуже, без «напильника» оно, как правило, работать не способно. А клиентам работать надо, вот они и вынуждены «пилить» и «строгать» эти полуфабрикаты, заставляя их работать. На практике это означает, что в продукты вносятся кардинальные изменения схемы данных и исходных текстов. В результате у каждого клиента работает совершенно индивидуальная версия ПО, в общем случае имеющая мало общего к такому же ПО у других клиентов — хотя называется одинаково. И централизованная поддержка становится совершенно невозможной, потому что производитель абсолютно не контролирует ситуацию у клиентов и не знает, какие именно изменения произведены. Все эти патчи и версии оказываются бесполезными для большинства его клиентов, их установка просто невозможна, ведь у клиентов, по сути, работают совершенно другие продукты. Вот истинная причина проблем с безопасностью. (Да и не только с безопасностью.) ... Производители очень часто пишут о тиражируемости своих решений. Но, напомню, тиражируемый продукт — это тот, у которого на территории заказчика не меняются ни-че-го. Ни исходные тексты, ни схема данных, ни регламенты обслуживания. Вот Word и Excel — это тиражируемые продукты. Много таких среди ERP-систем? статья полностью http://pcmag.ru/columns/detail.php?ID=43993 на хабре http://habrahabr.ru/blogs/erp_systems/115015/ ================= обсуждение системы автора на аксфоруме AVASystems. Еще один игрок. автор на аксфоруме http://axforum.info/forums/member.php?u=3565 на sql.ru http://www.sql.ru/forum/actualthread.aspx?tid=802801 http://www.sql.ru/forum/actualthread.aspx?tid=766479 |
|
10.03.2011, 08:31 | #2 |
Участник
|
очень, очень старое на тему тиражируемого и индивидуального, открытых и закрытых программ:
http://subscribe.ru/archive/economic.../04144800.html http://subscribe.ru/archive/economic.../06144715.html http://subscribe.ru/archive/economic.../11150014.html http://subscribe.ru/archive/economic.../19124654.html http://subscribe.ru/archive/economic.../25154729.html http://subscribe.ru/archive/economic.../02191903.html http://subscribe.ru/archive/economic.../04171659.html http://subscribe.ru/archive/economic.../09181947.html http://subscribe.ru/archive/economic.../17140308.html http://subscribe.ru/archive/economic.../24161513.html http://subscribe.ru/archive/economic.../02191558.html и так далее http://subscribe.ru/catalog/economics.book.automation тема на аксфоруме, где я уже приводил ссылки на эту рассылку Сиголова Миф о модифицируемости Аксапта, или техническая эстетика. |
|
10.03.2011, 11:57 | #3 |
Участник
|
Mazzy, ты сабыл вставить самую бравурную часть статьи г-на Попова:
Цитата:
Защитники отсталых технологий могут стандартно заявить, мол, «все компании разные, у всех разные бизнес-процессы», поэтому избежать серьезного изменения кодов и схем данных не удастся.
Отвечаю. Я бы не счел себя вправе написать эту колонку, если бы не реализовал тиражируемые технологии у себя в компании. Может, зря мы загубили всех этих обитателей стендов на выставках 90х? Получив взамен неповоротливых бронтозавров, свысока взирающих на клиентов? |
|
|
За это сообщение автора поблагодарили: pm-erp (1). |
10.03.2011, 13:30 | #4 |
Участник
|
mazzy, "спасибо за сладостные мгновения"! Стараюсь следить за творчеством Попова, а тут очередной опус!
|
|
10.03.2011, 17:24 | #5 |
Модератор
|
Типичное профессиональное заболевание среди программистов - считать @@@@@кодом любой код кроме своего
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
За это сообщение автора поблагодарили: mazzy (2), kornix (1). |
10.03.2011, 18:23 | #6 |
Участник
|
И свой через пару лет
|
|
|
За это сообщение автора поблагодарили: mazzy (2), AlGol (2), player (1). |
11.03.2011, 09:37 | #7 |
MCP
|
А если свой код не работает - специально морщиться, закатывать глаза и забывать что он свой
|
|
11.03.2011, 09:57 | #8 |
Участник
|
|
|
11.03.2011, 11:09 | #9 |
MCP
|
Цитата:
Вы работали с таблицей, в которой система заполняла поле для вашего алгоритма, ваш алгоритм успешно оттестирован и работает уже много лет. А потом объявляется разработчик, который не знал про то что вы завязаны на это поле (поле нестандартное, стандарт не так часто ломают), и изменяет код заполнения этого поля. Его задача тестируется - переносится на рабочую, а ваш алгоритм превращается в реальную ошибку. Виноват в такой ситуации не ваш код, он был действительно работающим, тут вы правы. Но бывают и такие "преобразования Фурье" Последний раз редактировалось kornix; 11.03.2011 в 11:11. |
|
11.03.2011, 11:12 | #10 |
Участник
|
|
|
12.03.2011, 17:41 | #11 |
Участник
|
|
|
12.03.2011, 22:43 | #12 |
Участник
|
Цитата:
Сообщение от kornix
Вы работали с таблицей, в которой система заполняла поле для вашего алгоритма, ваш алгоритм успешно оттестирован и работает уже много лет. А потом объявляется разработчик, который не знал про то что вы завязаны на это поле (поле нестандартное, стандарт не так часто ломают), и изменяет код заполнения этого поля. Его задача тестируется - переносится на рабочую, а ваш алгоритм превращается в реальную ошибку.
Виноват в такой ситуации не ваш код, он был действительно работающим, тут вы правы. ..... Последний раз редактировалось Мартынов Дмитрий; 12.03.2011 в 22:44. Причина: ино |
|
12.03.2011, 23:47 | #13 |
Участник
|
Цитата:
Сообщение от kornix
потом объявляется разработчик, который не знал про то что вы завязаны на это поле (поле нестандартное, стандарт не так часто ломают), и изменяет код заполнения этого поля. Его задача тестируется - переносится на рабочую, а ваш алгоритм превращается в реальную ошибку.
Виноват в такой ситуации не ваш код, он был действительно работающим, тут вы правы. Но бывают и такие "преобразования Фурье" |
|
13.03.2011, 10:26 | #14 |
Участник
|
Об эффективных менеджерах
Цитата:
Не исключено, что именно такое обывательское рассуждение подхваченное опытными маркетологами и загубило рынок 90х |
|
13.03.2011, 11:16 | #15 |
Участник
|
а его незащищенность от подобных изменений, а именно: отсутствие регрессионнных тестов, проверяющих функциональность данного кода.
__________________
С уважением, Александр Кунташов |
|
13.03.2011, 11:47 | #16 |
Участник
|
Цитата:
К тому же тесты сейчас делают редко - причина проста: код может прекрасно пройти все тесты, но при этом оказаться не пригоден к задаче... Опять к тому, что вопрос написания правильных тестов сравним по сложности с написанием ТЗ и кода... Кто будет писать тесты? Заказчик - он не умеет, затем он и нанял специалиста. А специалист сам себе напишет правильных тестов и сдаст проект, который не работает. Так что главный тест - это работа в реальных условиях, а следовательно описанные выше баги неизбежны... Последний раз редактировалось Мартынов Дмитрий; 13.03.2011 в 11:52. Причина: дополнил |
|
|
За это сообщение автора поблагодарили: kornix (1). |
13.03.2011, 11:59 | #17 |
MCP
|
Цитата:
Сообщение от gl00mie
По-моему, если якобы протестированный код при изменении входных данных перестает работать (и не просекает, что данные некорректны), то такой код просто недостаточно корректно реализован с точки зрения контрактного программирования. Более скользкие случаи - это расширение списка значений enum'ов, которые на самом деле могут стать подставой (как, к примеру, RContractPartnerType, где всю жизнь были лишь клиенты и поставщики, а потом вдруг нарисовался персонал), но строго говоря даже при работе с каким-нить ModuleCustVend надо в switch предусматривать default, где выбрасывать исключение - мол, не знаю, что сделать с новым значением.
Цитата:
а его незащищенность от подобных изменений, а именно: отсутствие регрессионнных тестов, проверяющих функциональность данного кода.
|
|
13.03.2011, 16:32 | #18 |
Участник
|
Цитата:
К тому же тесты сейчас делают редко
Цитата:
причина проста: код может прекрасно пройти все тесты, но при этом оказаться не пригоден к задаче..
Цитата:
Так что главный тест - это работа в реальных условиях, а следовательно описанные выше баги неизбежны...
Цитата:
2 kuntashov: Вы делаете регрессионное тестирование каждой модификации?
__________________
С уважением, Александр Кунташов |
|
02.04.2011, 19:21 | #19 |
AX*****
|
http://infostart.ru/public/83238/
Цитата:
А теперь о другом. Работая с 1С и сравнивая его с другими системами..
.. Именно по этим параметрам 1С сильно выигрывает у многих систем.
__________________
О, как беден, как груб наш русский язык! [c] А.С.Пушкин |
|