@Skit25
на всё воля Бога

На чём писать CRM?

Привет друзья!
Я изучаю этот вопрос, интересно мнение сообщества.

Предполагается создание модульной системы, набор модулей выбирается под задачи, телефония, почта. В общем-то стандартный набор. Готовые решения изучаем, но наш случай, когда специфика очень большая, в основе логики.

Интересует:
  • Уровень вхождения. Специалисты не должны быть на "вес золота".
  • Десктоп !important (нужен оффлайн), смартфон и web (не обязательно)
  • Кросплатформенность не обязательна (но приветствуется), ориентируемся на Windows
  • Десктоп !important, потому что база не должна быть локальной и не зависимой от интернета


В общем, нужно на ёлку залезть и не поцарапаться.
  • Вопрос задан
  • 15162 просмотра
Пригласить эксперта
Ответы на вопрос 8
kumaxim
@kumaxim
Web-программист
Пишите на том, что лучше всего знайте. Это первое и единственное что нужно учитывать.

Уровень вхождения. Специалисты не должны быть на "вес золота".

Открываем hh.ru по Вашему региону и ищем резюме с ключевыми словами C#, Java, PHP и т.д. Исходя из количества потенциальных кандидатов и их запросов понимаем будут ли они на "вес золота" или нет.

Десктоп!important, \(смартфон, web)?\

Не понимаю в чем проблема сделать приложение в браузере, т.е. чтобы Ваша CRM открывалась через любой бразуер. По этому принципу работает Мегаплан, Амо и т.д. Да почти любая соверменная CRM. Возьмите на основу этот же путь, как вариант.

UPDATE 16.12.2016
Анатолий ниже в комментах к моему ответу Вы пишите, что большенство людей советуют Вам использовать именно облачную реализацию. Позвольте поделиться своими мыслями по этому вопросу.

Разрабатывая любое десктопное приложение рано или поздно Вы столкнетесь с проблемой его корректной работы на разных машинах. К примеру, создали Вы програмку под Windows. На одной машине с Win 7 она работает прекрасно, а на Win 7 SP 1 уже выдает какую-то ошибку. Еще пример, на 5 машинах стоит одинаковая ОС. На 4-х из них Ваша программа работает прекрасно, а на 5-й какое-то там окно не отображается... Почему так? Надо садиться и разбираться, копаясь конкретно в настройках этой машины, выесняя что там не так, чего там не стои или стоит лишнего....

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

Писать и поддерживать приложение по второму варианту гораздо сложнее и более затратно как по времени, так и по деньгам. Решением здесь как раз является облако, причем совсем не обязательно Вам где-то покупать сервер в дата-центре и т.д. В локальной сети своей организации ставите самый обычный системный блок, на котором будет стоять Debian + Apache + MySQL. Все, для CRM до 50 человек, Вам такой кофигурации будет более чем достаточно. Любая Ваша CRM, будь она самописной или купленной, теперь должна работать только на одной машине, а все остальные - тонкие клиенты, которые взаимодействуют с ней используя лишь браузер. Такую конфигурацию легче и дешевле поддерживать со всех известных мне точек зрения.
Ответ написан
AmdY
@AmdY
PHP и прочие вебштучки
Я бы советовал строить CRM на базе существующих решений. Например, в мире PHP есть OroCRM, открытый исходный код, вменяемая архитектура, строится на базе symfony, тем самым упрощается поиск разработчиков.
Ответ написан
master2016
@master2016
Всё нормально.
Смотря какие требования будут. Если это web-вариант, то чем плох PHP в связке с БД?
Ответ написан
nki
@nki
bezkart.ru готовая система лояльности
sim3x
@sim3x
Надо начинать делать на том, что есть под рукой, то что нужно вот прямо сейчас
Отказаться от жесткого требования оффлайна

Офис без инета - прекрасно, но там также не будет телефонии, что в современных реалих = нет работы и все по домам

Если офису ок без телефонии (sic), то пусть будет интранет, а в нем сайт на LinNginxPostgresPHP
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
wielski
@wielski
✔ Совет: Вам помогли? Отметьте ответы решением.
Пишите под веб, если хотите дешево - PHP.

Посоветую фреймворк Laravel.
В нем при надобности можно совмещать локальный и серверный драйвер БД. После каждого действия ставить в базе "галочку", после чего приложение будет подсасывать из серверной БД данные в локальную.

Потерялась сеть? Не беда, делаем изменения в локальной. Появилась? Сравнение, внесение изменений.
Хоть данная функция довольно сложна, но в любом случае с этой трудностью вы столкнетесь не только в PHP/Laravel. Синхронизация между пользователями (локалью / сервером) нужна, от нее никуда не деться.
Ответ написан
@ev09
Если CRM будет использовать 1 человек, то можно смотреть в сторону electron, если больше, то нужен сервер. Опять же desktop будет привязан к компьютеру. Облако можно грузить с чего угодно. Но там должна быть защита данных.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы