Последние новости Карта сайта Контакты
Главная Демонстрация Купить Поддержка Компания  
Информационная поддержка: Украина: +38 067 408 00 78 (пн-пт c 10:00 до 20:00 по Киеву)
   
Сайт
 · Главная
 · Новости
 · Статьи
 · Форум
 · Бесплатная версия
 · Карта cайта
Программа
 · Скачать
 · Файлы
 · Покупка
 · Способы оплаты
 · Цель внедрения
 · Документация
 · Скриншоты
 · Демонстрации
 · ЧАВо
Компания
 · Поддержка
 · Форум
 · Наши клиенты
 · Бета тестирование
 · Наши партнёры
 · Наши сотрудники
 · Сотрудничество
 · Полезные ссылки
 · О компании
Бесплатная версия
Работа операторов
Настройка компьютера
для поддержки
Работа АОНа в такси
Карта Visicom XMLAPI
Разделение по каналам
Как ставить обновление
Как переустановить Windows
Импорт улиц из КЛАДР
Бизнес план Таксопарка


Разработчикам программ такси.


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

Глава 1


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

Перед началом разработки Вам необходимо определить порядок работы - выделить все бизнес-процессы работы в диспетчерской такси. Записать их и задокументировать - это Вам необходимо для работы - это и будет то, ЧТО Вы конкретно будете разрабатывать, а не "программу для такси".

Что бы получить эту информацию о том, как все правильно будет работать, Вам необходимо поговорить с:
  • главным оператором\диспетчером - тут нужно выяснить как должен быть принимаем заказ, какие основные моменты должны быть учтены при приеме, проведении, закрытии заказа.
  • бухгалтером - какие отчеты, статистика необходима для ведения бухгалтерии, формирования отчетности, расчета зарплат и другое
  • директором - какие основные функции необходимы общие, маркетинговые, контрольные.

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

    Для этого проекта так же необходимо учесть тех пользователей, которые будут работать с программой - обычно люди, которые работают операторами и диспетчерами такси не обладают азами компьютерной грамотности, поэтому необходимо будет производить обучение работы с программой.

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

    Еще один важный фактор, который стоит учесть при разработке, это права на создаваемый продукт. Имеете ли Вы право устанавливать этот продукт на другие службы такси, на другие службы такси в этом же городе, должны ли Вы передавать исходники заказчику. В зависимости от этих ответов Вы можете устанавливать цену разработки. Так же есть достаточно удобный способ расчета - это зарплата программиста в компании такси. Поэтому выбор способа оплаты - за Вами.


    Глава 2


    Основные программные моменты разработки комплекса такси.

    О себе: я, как главный разработчик системы "Такси Диспетчер" имею большой опыт в разработке программ для диспетчерских такси. Но основе "Такси Диспетчера" были реализованы различные варианты работы как небольших диспетчерских так и огромных таксопарков крупных городов. Так же в своей работе я знакомился как внешне так и с исходниками с различными системами обработки заказов такси, которые стояли и работали в различных таксопарках различных городов СНГ. Я активно занимаюсь этим проектом уже 3 года на момент написания этой статьи, поэтому требования и пожелания которые могут быть предъявлены к программам такси мне знакомы практически все.
    На основании этого опыта я расскажу об основных моментах, которые необходимо учитывать при разработке программы для управления заказами такси "с нуля".

    1 База данных должна быть.
    Даже не предполагайте возможности того, что бы данные по выполненным заказам можно хранить где-то в файликах, или список улиц в файликах. Должна быть сетевая база данных. Скорее всего выбор будет происходить между Interbase/Firebird, MySQL, MS SQL (я лично использую первые - Firebird и MySQL - они хорошо работают для нагрузки в такси диспетчерской). Так же сейчас есть вариант попробовать базу Oracle SE - бесплатная база от Oracle с ограничениями, но с учетом этих ограничений возможно использовать ее как раз для данной задачи.

    2 Сетевая работа.
    Систем должна быть развернута на нескольких компьютерах и должна быть легко расширяема - если нам нужно подключить еще одного оператора или одного диспетчера. Так же должна быть возможность предоставлять на одном и том же компьютере возможность работы как оператора так и диспетчера - возможны замены в работе диспетчерской и это нужно учитывать.

    3 Парольный вход.
    Да, система должна запускать только тех пользователей, которые зарегистрированы в системе и показывать им только то, что им нужно видеть. Обычно сами пароли не используются и назначаются всем одинаковые, но требование, что бы такие операторы видели только вот такие функции, а диспетчеры - только такие - встречается практически у всех, поэтому и необходимо это учитывать в самом начале разработки.
    Еще один момент, с этим связанный, это то, что для различных категорий пользователей нужно ли создавать различные exe файлы (отдельно для оператора, отдельно для бухгалтера, отдельно для руководителя)? Ответа на этот вопрос я не дам, но замечу, что в системе "Такси Диспетчер" сделано так, что если Вы заходите по своему логину и паролю на любом из компьютеров, где подключена система, то Вы увидите как раз свой рабочее окружение. В правильность этого могу сказать, что в Windows реализована такая же политика ;-)

    4 Единая система.
    По моему глубокому убеждению (но как показывает практика других программ для такси) если заказ был создан - он должен быть занесен в базу данных, а не быть запомненным на одном компьютере. Все другие компьютеры должны этот заказ видеть, разве что не отображать - например на рабочем месте, где происходит выдача адресов по заказу должны быть видны только адреса в назначенным водителем и со статусом - уточнены, хотя текущих заказов - много, но их видеть сейчас - излишне.
    Когда же заказ должен быть создан и передан на диспетчерский компьютер, для назначения водителя, а потом передан назад, лучше все это опять же делать через базу, а не хранить в памяти компьютера и общаться напрямую - намного правильнее посылать просто сообщение диспетчерскому компьютеру о том, что нужно обновить таблицу текущих заказов прямо сейчас (заказ с не назначенным водителем появляется), а потом уведомить компьютер оператора о том, что и ему нужно обновить таблицу текущих заказов - на заказ уже назначен клиент.
    В остальном нужно опрашивать обновления от базы в периодичностью в 4-5 секунд, что является достаточным временем задержки при обработке заказа.

    5 Окно ввода заказа и назначения водителя.
    Это одна из основных и критических форм для работы операторов и диспетчеров. Оно должно сразу предоставлять а) удобство, б) быстроту, в) функциональность. Поэтому правильная разработка именно этого окна является огромной долей положительного результата от проекта.
    В программе "Такси Диспетчер" например для различных клиентов было выполнено около 3 полностью различных окон по вводу заказа. В последних же версиях это окно создано как настраиваемое, что дает возможность реализовывать различные схемы работы просто настройками. Так же сделаны оптимальные настраиваемые формы быстрого ввода и редактирования заказа.
    К этому же моменту, я бы отнес настройку отображения списка и порядка текущих заказов, поэтому эта таблица тоже должна иметь широкие возможности по настройке.

    6 Отчеты.
    С одной стороны все есть просто - есть база, из нее необходимо получать все отчеты. С другой стороны - каждый заказчик видит список и формирование этих отчетов различными методами. Поэтому тут необходимо решать с заказчиком, что ему необходимо и какие поля для этого нужно выводить.
    Так же очень полезный момент заключается в том, что результаты могут быть отредактированы - это позволяет например вывести отчет по водителям за неделю, а потом добавить столбик с заголовком "подпись" и собрать со всех водителей деньги за указанную неделю.
    В "Такси Диспетчер" это реализовано путем вывода в Excel, что дает возможность редактировать и проводить различные расчеты дополнительно по отчетам.

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

    8 Карта.
    "Хочу видеть все на карте" - это бессмысленное заявление заказчика в 90% случаев.
    Аргументирую:
  • далеко не каждый город имеет векторную карту (а растровая не подходит, потому что показать дом по улице Ленина номер 85 на ней невозможно)
  • отображать положение машин на карте - так же возможно только с векторной картой, но кроме этого она должна позволять отображать эти положения машин внешней программой. Кроме того, вопрос, откуда эти положения машин будут браться - это реально и актуально только при использовании GPS.
  • "Видеть марштур как нужно ехать водителю" если каждый заказ диспетчер будет пояснять водителю, как ехать, то это не просто неэффективно, а крайне неправильно. Единственное, что может подсказать водителю диспетчер, это как подать машину, ориентируясь по карте или где находиться эту улица в каком районе, но это все должно быть однозначно делом водителя, который должен знать город.
  • Расчет расстояния проезда по карте. Для этого карта должна быть не только векторная, но и давать внешний интерфейс для работы сторонним программам. Стоимость такого удовольствия сразу возрастает (для сравнения, если есть карта с прокладкой автомобильного маршрута и она стоит порядка 20 долларов (на ней можно мышкой указать, куда и как ехать), то карта которой это можно указать программно и получить от нее результат стоит порядка 600 долларов. Хотя, для крупных городов, это того стоит.
    Итог по картам: если у Вас есть хорошая карта, которая может быть использована для необходимых задач, используйте ее. Если нет - не старайтесь создать ее - это сложное и что главное, не очень необходимый в работе заказчика модуль.

    9 АОН, запись телефонных разговоров.
    Для использования АОНа и\или записи телефонных разговоров однозначно необходимо дополнительное железо. Стоимость такого железа - большая. Например, мы используем плату Ольха для определения АОНа и записи телефонных разговоров. Стоимость ее для 2 телефонных линий составляет более 350 долларов.
    Есть возможность использовать модем для определенных функций. Но по качеству того же АОНа и записи телефонных разговоров это ниже на порядок. Поэтому этот вопрос качества лучше сразу проверять - удовлетворяет ли заказчик это качество и стоит ли продолжать двигаться в этом направлении.

    10 GPS
    Все заказчики хотят чтобы они могли видеть, где в данный момент находятся их машины. Но не все согласны за это платить. А цены там ориентировочно следующие: от 300 долларов на машину (в зависимости от типа оборудования) и от 1000 на сервер. В зависимости от задач эти оценки могут быть увеличены в разы (если мы хотим например еще и водителям карту на их мобильные устройства передавать). Так же тут появляется расходный материал - это канал связи. Возможно использовать для этого 2 типа канала - это тот же радиоканал - для этого нужен радиомодем или GPRS/гарантированный SMS/GSM каналы. Использование каждого из них стоит денег, поэтому это необходимо учитывать при расчетах.
    Еще один аспект, который должен быть учтен - это то, а КАК Вы хотите использовать в программе управления заказами такси информацию о том, где находятся сейчас машины и в каком они состоянии?


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

    В статье не писано много моментов, которые являются нашими ноу-хау или коммерческой\технической тайной и не могут быть раскрыты. Дополнительную информацию по разработке программ для диспетчерских такси на практических примерах Вы можете получить в главе 3.

    Если Вы разрабатываете\собираетесь разрабатывать\поддерживаете программу для диспетчерской такси, то мы Вам можем помочь. У нас есть закрытая часть форума, а так же возможность сотрудничества\консалтинга\тестирования Вашей системы на слабые места и рекомендации по ее улучшению. Если Вам интересно сотрудничество и использование Нашего опыта в Вашей системе - пишите нам.



    Глава 3.


    Какие функции и исходники предоставляет Вам комплекс "Такси Диспетчер" для разработки на его основе своей системы.

    Как было описано в первых двух главах, мы давно занимаемся разработкой программ для диспетчерских такси, поэтому имеем множество наработок и уже реализованных модулей. Мы предоставляем эти наработки в виде готовой системы "Такси Диспетчер" или частями его исходников. Если Вам необходимо разработать свою систему управления диспетчерской такси, мы можем предоставить Вам части различных исходников программы, базу, дополнительных модулей. Это позволяет сделать ускорить время на разработку в разы. О более подробной информации об этом виде сотрудничества, напишите Ваш запрос в поддержку - все решается в индивидуальном порядке.

    Технические моменты:
    Система Такси Диспетчер написана на Delphi 7, сейчас идет перенос ее и поддержка на Turbo Delphi. Вы можете использовать этот компилятор для редактирования и доработки системы Такси Диспетчер или ее модулей.
    Компилятор предоставляется в платной и бесплатной версии. Вы абсолютно легально можете использовать бесплатную версию для разработки коммерческого ПО. Подробнее на www.turboexplorer.com

    Какие технические моменты мы можем предоставить:
    1. База данных.
    Как описано в Главе 2 данный комплекс должен быть развернут на каком-то сервере баз данных. В "Такси Диспетчере" сейчас поддерживаются Firebird и MySQL. Рассматривается поддержка Oracle SE - бесплатной базы данных от Oracle.
    При создании Вами Вашей базы данных, Вы можете использовать нашу, уже готовую и оптимизированную расстановкой индексов и ключевых полей базу данных. Ее описание Вы можете найти в справке
    Таким образом, Вы не только не потратите время на проектирование базы данных, но и сможете на основании уже спроектированной базы данных построить архитектуру самой системы.

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

    3. Отчеты.
    Отчеты в Такси Диспетчере построены на системе плагинов - Вы можете дорабатывать свои отчеты и они автоматически будут появляться в стандартных отчетах Такси Диспетчера. Для примера Вы можете посмотреть справку, а так же прочитать описание базы данных, на основании данных которой Вы будете строить отчеты. Со своей стороны Мы можем предоставить все исходники всех отчетов, которые есть в стандартной поставке Такси Диспетчера.

    4. Функциональность Такси Диспетчера.
    В индивидуальном порядке мы можем предоставить исходники некоторых модулей, описание их работы и поддержку в разработке. Возможность предоставления всех исходников Такси Диспетчера решается в индивидуальном порядке и может осуществляться только на основании договора о неразглашении. О более подробной информации по этому вопросы пишите напрямую сюда .

    5. Индивидуальная разработка на базе Такси Диспетчера.
    Например, рассмотрим ситуацию, когда Вы установили Такси Диспетчер на предприятии заказчика, он работает, все хорошо. Появляеться новое требование заказчика - он хочет что бы заказы, оформленные на его сайте автоматически попадали в систму Такси Диспетчера.
    Как это можно реализовать?
  • Вы заказываете нам доработу этой функции и оплачиваете ее.
  • Вы можете сами доработать эту функцию!
    Предвариетльно, Вам следуюет проконсультироваться, что Вам необходимо - мы посдкажем как это лучше реализовать с точки зрения архитектуры системы и требований заказчика. Так же сможем предоставить какие-то свои наработки, если они есть. Обычно это обсуждение идет в закрытой части форума для разработчиков и парнтеров.
    В данном конкретном случае, Вам необходимо было бы сделать следующее: написать программу, которая получала бы инфомрацию с Вашего сайта в виде email о новых заказах и разбирала бы это письмо. Поэтому этого программа должна была бы просто помещать информацию о новом предварительном заказе в систему "Такси Диспетчер". Далее работа с заказом может быть такой же, как и в случае стандартного предварительного заказа, принятого по телефону. Конкретно для этой задачи Мы бы смогли Вам предоставить скрипты которые можно поместить на сайт для оформления заказа и предоставить функцию подключения в базе данных (нашу например) и создания нового заказа.

    6. Взаимодействие с внешними программами.
    Программа Такси Диспетчер имеет встроенный TCP/IP сервер, по которому она может принимать от внешних программ определенные команды и выполнять их. Яркий пример этого - это работа АОН модуля, который обращается к Такси Диспетчеру по TCP/IP для создания в формы ввода заказа, с заполненным полем телефон и определенным уже полями телефон и заказчик (адрес откуда).
    Сейчас таких команд поддерживается несколько, но по Вашему запросу они могут быть доработаны (даже Вы их можете дорабатывать сами, в зависимости от того, какие требования Вашего заказчика и какие могут быть команды для этого использованы).

    7. Внедрение Такси Диспетчера на предприятия Вашего заказчика.
    Мы приветствуем сотрудничество с нашими партнерами - это люди или организации, которые выполняют установку и настройку программ на предприятиях заказчиков. Таким людям мы предоставляем дополнительные возможности по поддержке, скидки на приобретения лицензий для своих заказчиков, доступ к закрытым разделам форума и закрытым документам по проекту Такси Диспетчер. Если Вы хотите и можете стать нашим партнером - подробнее, можете прочитать тут.

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

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


    Итог: система Такси Диспетчер являеться открытой для разработки сторонними разработчиками. Мы предоставляем исходники, консультации, поддержку в разработке для Вас. Возможность получить доступ к этим возможностям пределяеться стоимостью. Использование уже готовой системы Такси Диспетчер для ускорения, удешевления стоимости и стабильности системы являеться прекрасной альтернативой собственной разработки программы с нуля. Пишите нам: taxi@taxi-office.ru




  •   Наверх