В какую сторону податься ?!

Существует проблема выбора дальнейшего развития информационной системы для своего предприятия
Что имеем: бухучет, складской учет на 1С 7.7 (файловая). Конфигурация только по бухгалтерии совпадает со стандартной, остальные уже давно переделаны, в т.ч. с внешними компонентами.
Когда пришел работать на фирму, одна из задач стояла сделать свою КИС (или взять готовую). Что я подразумеваю под КИС?! В моем понимании это система в которой максимально все "ведется" (бухгалтерский, управленческий учет, документооборот и т.д.). Можно просто сказать - "давайте купим Axapta или Navision и все б. все ок!!!", но владельцы компании мои друзья, поэтому не могу их подвести. Моя задача сделать побыстрее, надежнее, с минимальными затратами, ну и с большой вероятностью, что данный вариант будет работать и приживется в фирме. На практике реально видел, когда заказчик купил полный комплект лицензий ERP Axapta (даже лицензию разработки), а потом остановил внедрение, т.е. отказался, и местные программисты вернулись к программам написанным Foxpro (в то время работал в крупной софтверной компании программистом по аксапте).

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

Что же выбрать то, в какую сторону двигаться?! Пока наметил несколько вариантов:

1. 1С8-ка.
Плюсы: Практически 100% внедрится, система будет и дальше расширяться, постоянно обновляться, реально можно внедриться через полгода.
Минусы: привязка к ОС Windows, требовательна к ресурсам, стоимость покупки матобеспечения порядка 100 т.р. (в нашем случае), про "железо" отдельный разговор. Программисты и стоимость внедрения дорогая. Франчи заявляют - к-т 3-5 от стоимости купленного пакета. В реальности коэффициенты на внедрение гораздо больше. В данный момент катастрофически не хватает программистов-восьмерочников ни в Москве, ни тем более на перефирии. Отсюда высокая зарплата у них, соответственно затраты у клиента.
Для себя, как для айтишника, это наверное плюс (работу всегда можно найти)

2. Писать на делфе, взяв за основу старую разработку, написанную на делфе и реально работающую, отлаженную. Система "заточена" была под оракл (Oracle 8), но в силу лицензионной чистоты надо переделывать на PostgeSQL. Так к сведению: в системе своя система разработки, т.е. на делфе сделано только ядро системы, все остальное разрабатывается внутри (формы, отчеты, исходные тексты хранятся в СУБД, синтаксис Pascal Object, инспектор объектов, палитра как в делфе, генератор отчетов Fastreport 4).
Плюсы: уже почти все есть, проверенное решение, вероятность внедрения порядка 85% (ну мало ли что), будет работать быстро. Реально внедрить можно со следующего года (переписать все модули и т.д.)
Минусы: Привязка к "винде", чисто свое решение, клиенты все время будут зависеть от программиста., т.е. от меня, цена вопроса - покупки матобеспечения (делфы)
Для себя наверное минус, в том плане, что дельфисты вообще нафиг никому не нужны

3. Кроссплатформенная разработка на С++ + виджеты
Плюсы: то что на любой оси будет работать, практически все матобеспечение бесплатное
Минусы: никаких наработок вообще нет, ни генераторов, ни толкового объяснения как работать с СУБД, вероятность внедрения вообще под большим вопросом, учитывая разработку с нуля.
Для себя конечно же плюс, т.к. "новое" - это всегда интересно

На C# сейчас модно писать, но в плане кроссплатформенности, на мой взгляд, mono project, все время будет догонять microsoft в плане наворотов, и наверное, стабильности.

Java, тоже не вариант (по крайней мере для меня). Достаточно много ресурсов кушает, "тормознута" (мое мнение, хотя м.б. и ошибаюсь). В плане кроссплатформенности - лучше не придумаешь. Генераторы отчетов уже есть (к примеру JasperReport), сервер приложений тоже (JBoss), наработок в инете "вагон и маленькая тележка". Но "явисты" нынче в моде.

Если взять готовые freeware ERP системы, то наиболее работоспособная ERP Compiere/Adempiere. Но тут куча нюансов: нет российской специфики, реально, чтобы внедрить, нужен отдел программистов, потому как новые модули можно сделать только с помощью программирования на яве. Год назад начал изучать данный продукт и планировали внедрять, потом этот процесс заморозили. Очень хорошо продукт продвигают ребята с Украины.

Мне, конечно, интереснее разрабатывать свой продукт, чем потом плясать с бубном возле продукта в котором ничего изменить нельзя.

Т.е. куда же все таки двигаться дальше?! Или поставим вопрос по другому, а как вы поступаете, как решаете аналогичные проблемы?

Forums: 

Изображение пользователя ipanshin.

Путь наименьшего сопротивления

Путь наименьшего сопротивления в условиях априорной неопределенности финансирования, я думаю, наиболее приемлем. Сразу скажу, что выбор любого пути в ИТ - это деньги, идущие в никуда. Так уж пусть лучше они идут на собственную разработку. Другое дело, что его детище должно лежать в области интеграции работающих систем будь то 1С или что-либо другое. Это при условии, когда есть собственные силы тянуть весь этот воз.

Интеграция с 1С

Интеграция с 1С - тоже спорный вопрос. Если все сферы бухучета есть в системе, то 1С не нужна. Отчетность в налоговую инспекцию можно формировать и в "налогоплательщике", который обновляется постоянно и бесплатен, надо только организовать выгрузку данных из своей информационной системы. У "налогоплательщика" только есть один существенный минус: для того чтобы выгрузить отчет в формат XLS, Excel должен присутствовать на компьютере. Другой вариант формирования налоговой отчетности - программы электронной налоговой отчетности (такие как Контур-Экстерн, Такснет, СБис и т.д.).

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

Встает другой вопрос: если своя разработка то на чем?! Кроссплатформенная или чисто на "винде". Если на винде то тут выбора уже не слишком много. Для меня это C# или Delphi. Второе из за того что на делфе есть много наработок.

Не надо делать "Все в одном флаконе"

В моем понимании это система в которой максимально все "ведется" (бухгалтерский, управленческий учет, документооборот и т.д.).

Рекомендую еще раз уточнить для себя понятие КИС.
Цели и схема (Учетная политика) бух. учета и упраленческого учета очень сильно отличаются. Скрещивание их в одной БД приведет к неизбежному перекосу с стророну бух . учета, потому что он жестко регламентирован, и ни какие отклонения от нормативной основы главбух не потерпит. В результате любая модификация в интересах бизнеса, будет жестко ограничиваться нормами бух. учета спущенными гос-вом.
Существенный минус "собственной" бухгалтерии необходимость пожизненной модификации в связи с изменением законодательства. Нет более сильного способа посадить контору "на иглу", чем внедрить туда самописную бухгалтерию.
Делать на одно БД еще и документоборот не правильно. Т.к. учетная задача, это задача фиксации свершившихся фактов (data flow), в то время, как документоборот - это система поддержки бизнес-процессов (work flow). Буквально сразу Вы упретесь в протеворечия между требованиями к учету и докуметообороту.
Хочу заметить, что СОА появилась имеено как альтернатива большим системам "все в одном флаконе". Она призвана помочь интергрировать между собой решения "best to fit" для каждой отдельно взятой задачи.
В моем понимании современная КИС - это интегрированные между собой системы упраленческого учета, бух. учета, документооборота, упраления складским комплексом, бюджетирования/планироания/прогнозирования, система поддержки принятия решений (бизнес-анализ). Под каждую задачу выбирается оптимальная для конкретных условий система, все они интегрируются в единый комплекс. Ведущей (мастер справочники, первичный вод данных), как правило выступает система управленческого учета, но могут быть варианты, например, "главной" системой может быть документооборот.

В Ваших условиях, я бы рекондовал для бухгалтерии 1С8:Бухгалтерия, для всего остального 1С: Предприятие или собственная разработка (можете еще посмореть в сторону NEXUS, система интересная :) ).

Спасибо за

Спасибо за советы (всем).
Насчет "все в одном флаконе" - у каждого свое мнение, есть свои плюсы и минусы. work flow + data flow + бухучет (правда GAAP) есть в ERP Adempiere. Но обязательно посмотрю СОА. За примером реализации далеко ходить не надо - ISCRA Framework, может быть свое мнение и изменю ;)

Изображение пользователя Serguei_Tarassov.

СОА появилась,

СОА появилась, скорее, как альтернатива CORBA ввиду излишней сложности последней и плохой поддержки поставшиками. Полного набора КОРБА-сервисов по-моему вообще никто не предлагал, а для использования в качестве самописного сервиса + служба имен - это как раз и есть нынешняя СОА на веб-сервисах, только более простая в реализации интероперабельности. Правда, микрософт, как всегда, отличился, последние спецификации 3.0 пока работают только на микрософтовской платорме. Остальные вынуждены будут догонять в угоду квазимонополисту.

Изображение пользователя Serguei_Tarassov.

Я бы предложил

Я бы предложил вариант 2 - развитие своего продукта. Текущий проект даст возможность перейти на PostgreSQL, это уже большой шаг вперед.

Привязка к виндам на десктопе пока не является серьёзной проблемой. Но в любом случае такой тотальный переход - СУБД и клиентская платформа - в одночасье вам будет трудно совершить без потерь времени и качества. Насчет "дельфисты вообще нафиг никому не нужны" - это ерунда. Во-первых, имея свою систему не надо беспокоиться на этот счет. Во-вторых, несмотря на соотношение предложений на рынке труда примерно 1 к 7-8 для C#/ASP.NET (подавляющее большинство вакансий C# - это именно веб-разработка, ведь микрософт официально позиционирует .NET прежде всего как платформу веб-сервисов) вероятность получить эту работу по каждой из таких вакансий приближается к 99%. Ориентироваться на моду нужно во время последних лет обучения в ВУЗе, а в нашем возрасте ориентиры меняются.

Что касается использования .NET и политики микрософт, у меня (да и не у меня только) появился серьёзный скепсис по этому поводу. Даже хорошо знакомый MS SQL Server двигается, как мне кажется, в не совсем верном направлении.

Дальнейшая миграция подразумевает четкое отделение логики от пользовательского интерфейса (что не всегда наблюдается в дельфовых системах, особенно старых). Поэтому вам следует постараться отделить эти слои сейчас. Тогда следующий шаг позволит относительно безболезненно портировать логику, например, на Delphi.NET, DelphiWin32/Kylix или FreePascal, оставляя для реализации интерфейса гораздо больший выбор. А возможно, что описанная в статьях, датацентричная архитектура с логикой на уровне СУБД, также решит эту проблему.

Примерно так и

Примерно так и предполагал. Старые технологии (средства программирования к примеру) не скоро еще отживут. CA "кинула" всех своих пользователей с клиппером (Clipper) еще в 90-х годах. Одна фирма у меня до сих пор работает на клипперовской программе и слезать с нее не собирается.
В планах планировал создать базу данных по принципу описанному на сайте принципу описанному на сайте, учитывая опыт других систем. Всю бизнес-логику "взвалить" на сервер СУБД, а программу на пользовательском компьютере использовать только для отображения и ввода информации.