Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Работа Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3 4 5 6   вперед  Ctrl      все
 Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
Всем привет!
Народ, такой вот вопрос.

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

Система разрослась немеряно. За 5 лет куча веток мертвых, но которые обрубать опасно. Не ясно, где рванет.
В проекте под 1.000 файлов, в базе около 300 таблиц (в основном вспомогательных, производных).
Масштаб логистики - около трех десятков складов по стране, три распределительных центра, десятки поставщиков.
Товаров, которые хотя бы раз "дернулись" - ок. 450.000 (вся номенклатура ок. 11.000.000). "Живых" товаров, с которыми работает система - ок. 65.000 (плюс "мертвых" около 10.000).
Бизнес- автозапчасти. Город - Москва.

Собственно, вопрос.
Какие варианты? Платформа, язык, сроки, деньги.... Ну, в общем все.
Видимо, по организации - я постановщик задачи и у меня программист. Как ни странно, система развивается, поэтому это тоже нужно учесть.
Программист - как вариант в штат или на проект... Как предлОжите.
6 май 19, 10:59    [21878503]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Программист 1с
Member

Откуда: Москва
Сообщений: 9036
Аннушка разлила масло?

Могу подъехать - поговорим. (Я и постановщик задач и программист :) ) Емайл в профиле.

Или 1с принципиально не устраивает?
6 май 19, 11:10    [21878517]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
Программист 1с,

Да у меня нет идиосинкразии к 1С. Вот почему-то рук-во...
Но тем не менее, хотя бы в общих чертах - по деньгам и срокам.
6 май 19, 11:18    [21878527]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
Программист 1с,

А насчет Аннушки не понял... Или это к трамваю? )))
6 май 19, 11:19    [21878528]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
dvim
Member

Откуда: Санкт Петербург
Сообщений: 656
по деньгам и срокам.

Без описания имеющейся системы никто не сможет адекватно сказать.

У меня другой вопрос - вы хотите переходить одномоментно?
Просто, по опыту, при плавном варианте успешность внедрения на порядок выше.

Я бы решал задачу так
1. Данные храним в MS SQL (надеюсь что уже)
2. Модифицируем фокс для рефакторинга хранения данных.
3. Пишем новый интерфейс для тех же данных, запуская посистемно.
Есть опыт внедрения нового приложения в старую оболочку - проблем море, но зато внедряется проще.
Просто вариант, когда 2 года пишется новое приложение, а потом при внедрении идет лихорадка- норма.
Даже оттестировать его, без документации (и с неописанными в ней юзер кейсами, которые есть только в голове юзера), очень непросто.

Но это - отдельное приложение, для 1С такой вариант не подойдет.
Для 1с идти немного другим путем.
6 май 19, 11:31    [21878533]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
dvim,

Без описания имеющейся системы никто не сможет адекватно сказать.
------
Ну, это же не ERP. Масштаб другой. Просто набор алгоритмов и условий. Хотя бы От и До по срокам и деньгам.


У меня другой вопрос - вы хотите переходить одномоментно?
------
Зачем... Делаем новую, параллельно работает старая. Тестируем поэтапно.
6 май 19, 11:38    [21878544]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
sqlnew
В проекте под 1.000 файлов, в базе около 300 таблиц (в основном вспомогательных, производных).
Масштаб логистики - около трех десятков складов по стране, три распределительных центра, десятки поставщиков.
Товаров, которые хотя бы раз "дернулись" - ок. 450.000 (вся номенклатура ок. 11.000.000). "Живых" товаров, с которыми работает система - ок. 65.000 (плюс "мертвых" около 10.000).
Бизнес- автозапчасти.

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


Проект.
Подготовка ТЗ, подробное описание бизнес-процессов, функций, взаимосвязей, форм и т.п. - 1 мес.
Срок разработки и миграции 6-9 мес, в зависимости от возникающих хотелок.
Платформа
Вариант 1: SQL Server + ASP.NET MVC + IIS (или декстоп)
Вариант 2: MySQL + Java Spring + Tomcat.

По оплате
1. Официально, через договор с ООО (сроки, ответственность, акты сдачи-приемки
, неустойка и т.п.) 240 тыр в мес. (200 раб часов в мес. расчет 1200 руб час). Предоплата 40%, сдача в работу 40% (может быть разбита на этапы), спустя месяц после запуска 20%, на исправление косяков.

2. Неофициально, черным налом. Проект разбивается на этапы, оговариваются сроки каждого этапа, оплата из расчета 1000 руб/час 40% предоплата, 60% после сдачи работ по данному этапу.

Разработка ТЗ с заказчиком - срок месяц, стоимость 50 000 руб. Аванс 60%, остальное после завершения ТЗ.
Оплата за разработку ТЗ вне зависимости от того будут работы продолжены или нет не возвращаются,
но после полной оплаты Техническое Задание будет являться собственностью Заказчика.
6 май 19, 11:41    [21878549]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
sqlnew
Делаем новую, параллельно работает старая. Тестируем поэтапно.

Обычно делается так.
Пишутся шлюзы, позволяющие новой программе работать со старыми данными.
Рабочая база реплицируется на платформу DEV, которая подключается к новой программе.
Тестируется, допиливается.
Затем в один солнечный день шлюз переключается на новую базу.
Работать одновременно в старой и новой нельзя!
Проверено опытом! Если не избавиться от старой, то со временем,
ввиду консервативности сотрудников ( "А мы так привыкли!") вся работе снова вернется в старую программу.
6 май 19, 11:47    [21878555]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Программист 1с
Member

Откуда: Москва
Сообщений: 9036
sqlnew
Программист 1с,

А насчет Аннушки не понял... Или это к трамваю? )))
Да :)
sqlnew
Программист 1с,

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


Как сказать о сроках и деньгах, если не видел хотя бы набросок ТЗ?

Ну положим на кофейной гуще:
1. Или стандартная УТ11 или скорее всего нужна не стандартная база 1с, для скорости. Также зависит от требуемого функционала, если минимум функционала - то проще свою базу.

2. Также возможно использование прямых sql запросов, для каких-то случаев, когда требуется скорость.

3. Ключевое - 30 складов и 3 распред центра, и непонятно что в 300 таблицах. Если 1 день на 1 таблицу - то как раз 2 года срок. Оплата - возьмем среднюю - 200*24 - около 5млн.

4. Переход можно как и по частям, часть дублируем данных, так и полностью.
6 май 19, 11:48    [21878556]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
SQL2008
Рабочая база реплицируется на платформу DEV, которая подключается к новой программе.
Тестируется, допиливается.

Работа с основной базой на этом этапе ведется в старом интерфейсе о старой базой.
6 май 19, 11:49    [21878558]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Программист 1с
Member

Откуда: Москва
Сообщений: 9036
SQL2008
Проверено опытом! Если не избавиться от старой, то со временем,
ввиду консервативности сотрудников ( "А мы так привыкли!") вся работе снова вернется в старую программу.
Все решается, если есть воля руководства.
6 май 19, 11:51    [21878560]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
alex55555
Member

Откуда:
Сообщений: 2080
sqlnew
Собственно, вопрос.
Какие варианты? Платформа, язык, сроки, деньги....

Правильный вариант такой:

1) Проводится обследование.
2) Готовятся варианты предложений по оптимизации процессов на основе комплекса из старого и нового ПО.
3) Выбирается вариант и по нему готовится ТЗ.
4) ТЗ согласовывается и утверждается.
5) Сроки и деньги становятся понятны именно в пункте №5.

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

Ну и можно "как всегда", мол напишите мне новое чудо, ну хоть как-нибудь...
6 май 19, 11:52    [21878564]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
Вооо.. Уже что-то конкретное.
Спасибо всем. Как только что-то прояснится - отпишусь..
6 май 19, 11:55    [21878572]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
alex55555
2) Готовятся варианты предложений по оптимизации процессов на основе комплекса из старого и нового ПО.

Этот пункт уже подразумевает работу бизнес-аналитика. Это не предусматривалось в начальной постановке задачи. Подразумевалось простой перенос на современную платформу "AS IS".
Но конечно этот пункт крайне желателен. Хотя он может быть выполнен силами самого Заказчика.
6 май 19, 11:55    [21878574]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
sqlnew
Member

Откуда:
Сообщений: 768
Забыл сказать, наверное, главное!
НЕТ ИНТЕРФЕЙСА.
Собственно, интерфейс существует только для меня - для разработки и визуализации.
А так - система ночью загружает информацию из CSV и утром выплевывает 2 файлика TXT по 3 столбца для закупок и перемещений на склады.
6 май 19, 12:04    [21878590]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
dvim
Member

Откуда: Санкт Петербург
Сообщений: 656
sqlnew,
Зачем... Делаем новую, параллельно работает старая. Тестируем поэтапно.

По мне для таких "распластанных" приложений надо переходить кусками, функциональными модулями.
300 таблиц это не так и мало - неучтенного функционала может быть очень много.

При мажорной смене версии у крупных то вендоров - слезы и сопли, а внутренних инициаторов может просто раскатать. ( Лично знаю несколько примеров)

Для оценки нужно хотя бы сколько форм и что они делают.
С описаниями, естественно.
6 май 19, 12:04    [21878592]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
sqlnew
Забыл сказать, наверное, главное!
НЕТ ИНТЕРФЕЙСА.
Собственно, интерфейс существует только для меня - для разработки и визуализации.
А так - система ночью загружает информацию из CSV и утром выплевывает 2 файлика TXT по 3 столбца для закупок и перемещений на склады.

А сколько сотрудников работает с системой? Вводят данные, строят отчеты, проводят сделки.
6 май 19, 12:12    [21878613]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Ares_ekb
Member

Откуда: Екатеринбург
Сообщений: 1226
На DevExpress XAF можно переписать. Будет одновременно и вин (WinForms), и веб (ASP.NET) интерфейс. Гибкая система управления правами доступа (на уровне отдельных записей и полей), формирование документов, интеграция с другими системами, рассылка уведомлений и остальное по желанию. Если не брать в расчёт 1С, то как по мне очень клёвая платформа для написания учётных систем. На ней ERP Галактика например сделана. Я писал на ней медицинскую информационную систему, когда работал в больнице, писал систему для строительных расчетов, наряд-заказов, договоров и т.п.

150 т.р./мес. По срокам на вскидку - 1-2 мес., чтобы сделать вариант, на который уже можно постепенно переводить отдельных пользователей. И месяца 4 на допиливание.
6 май 19, 12:14    [21878621]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Программист 1с
Member

Откуда: Москва
Сообщений: 9036
sqlnew
Забыл сказать, наверное, главное!
НЕТ ИНТЕРФЕЙСА.
Собственно, интерфейс существует только для меня - для разработки и визуализации.
А так - система ночью загружает информацию из CSV и утром выплевывает 2 файлика TXT по 3 столбца для закупок и перемещений на склады.
И это все? Тогда может быть все гораздо проще и работы гораздо меньше.

(Никаких расчетов стоимостей доставок и вариантов использование машин и тп.)

Проведите обследование. И создайте хотя бы образ тз.
6 май 19, 12:19    [21878637]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
Ares_ekb
DevExpress XAF

Можно еще на Component One.
Вот только они приличных денег стоят.
6 май 19, 12:32    [21878669]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
Ares_ekb
Member

Откуда: Екатеринбург
Сообщений: 1226
SQL2008,

у Component One нашел только компоненты... XAF хорош тем, что описываешь схему данных и сразу получаешь готовые формочки для работы с данными, их не нужно самому рисовать. Тем более если в учетной системе 300 сущностей, то руками делать каждую формочку очень муторно, даже с готовыми компонентами. Конечно и в XAF нужно много чего допиливать, особенно если у заказчика нестандартные запросы, но хотя бы на рутину время не тратишь.

Прочитал, что в системе особо не будет интерфейса... Интересно как данные попадают в FoxPro? Если там какие-то самописные системы для ввода данных, может и их заодно переписать? Я писал про цены и сроки исходя из этого.
6 май 19, 12:40    [21878686]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
ПЕНСИОНЕРКА
Member

Откуда: Владимирская обл
Сообщений: 4477
sqlnew
В проекте под 1.000 файлов, в базе около 300 таблиц (в основном вспомогательных, производных).
Масштаб логистики - около трех десятков складов по стране, три распределительных центра, десятки поставщиков.
Товаров, которые хотя бы раз "дернулись" - ок. 450.000 (вся номенклатура ок. 11.000.000). "Живых" товаров, с которыми работает система - ок. 65.000 (плюс "мертвых" около 10.000).
Бизнес- автозапчасти. Город - Москва.


реально, сколько же основных таблиц, за вычетом
--прайсов прежних лет
--старых остатков
--различных выборок
...

видимо не более 50
--
и в каком фоксе (версия имею ввиду) написана прога, причем на коленке
6 май 19, 12:45    [21878698]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 3751
ПЕНСИОНЕРКА
реально, сколько же основных таблиц, за вычетом
--прайсов прежних лет
--старых остатков
--различных выборок
...
видимо не более 50

Очень давно приходилось иметь дело с проектом на FoxPro где данные за день хранились каждый в отдельном файле (!!!)
Т.е. сколько дней, столько и файлов :)
6 май 19, 12:52    [21878721]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 28326
sqlnew
Ну, это же не ERP. Масштаб другой. Просто набор алгоритмов и условий. Хотя бы От и До по срокам и деньгам.
Очевидно же, что по срокам и трудоёмкости вы можете спрогнозировать точнкее, чем любой самый опытнейший разработчик, после ознакомления с подробнейшим ТЗ и подробнейшим описанием системы.
Вы же её сами писали и развивали.

Масшаб немаленький, иначе что вы там делаете всё это время?

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

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

ИМХО, самое правильное, взять разработчика/разработчиков в свою команду, притом как минимум один разработчик должен быть не ниже вашего уровня, но на современной платформе.
И расчитывать на год-два.
6 май 19, 13:04    [21878751]     Ответить | Цитировать Сообщить модератору
 Re: Переписать программу  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 28326
sqlnew
Забыл сказать, наверное, главное!
НЕТ ИНТЕРФЕЙСА.
Собственно, интерфейс существует только для меня - для разработки и визуализации.
А так - система ночью загружает информацию из CSV и утром выплевывает 2 файлика TXT по 3 столбца для закупок и перемещений на склады.
А, ну тогда нужно меньше времени, я думал, это ваша основная бизнес-система.

Но принципы, которые я написал выше, не меняются.
6 май 19, 13:08    [21878762]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5 6   вперед  Ctrl      все
Все форумы / Работа Ответить