Таможня - препятствие посерьезней
В конце октября петербургская компания “Астро Софт” сообщила о завершении разработки SCARD (smart card reader driver) - драйвера для устройства считывания с магнитных карт под операционную систему Windows 2000. Работа проводилась на основании договора с CIS Electronic Industria e Comercio (Бразилия). Бразильская фирма занимается производством SCAR-устройств для широкого круга потребителей - банков, предприятий торговли, транспорта и пр. Первые контакты с ней были установлены представителями “Астро Софт” на выставке CeBIT’2000, где российская фирма демонстрировала свои услуги по удаленному программированию. Тогда же была достигнута договоренность о разработке драйвера для Windows 95/98. Клиент остался им доволен, и сотрудничество было продолжено.
На этом можно было бы поставить точку, однако данный проект отразил некоторые характерные моменты в российском бизнесе, связанном с услугами оффшорного программирования. К тому же в этом сотрудничестве символично то, что офисы заказчика и исполнителя находятся почти точно на противоположных концах света.
Прежде всего следует отметить, что разработка драйверов для подобных устройств связана с решением достаточно сложных технических задач и требует высокой квалификации разработчиков. Неудивительно поэтому, что бразильцы нашли партнера на европейской выставке, но показательно, что партнером стали российские программисты. Более того, несмотря на организационные проблемы, сотрудничество было продолжено.
Устройство для чтения смарт-карт подключается к ПК через клавиатуру, данные передаются в него через стандартный клавиатурный порт. Соответственно драйвер должен фильтровать информацию, различая разные типы данных. Проблема заключается в том, что из-за ограничений, присущих всем Win32-приложениям, для подключения подобных внешних устройств необходимо создавать компоненты на уровне ядра операционной системы.
В рамках первого проекта разрабатывался драйвер для Windows 95/98, как наиболее простой в реализации. Для проведения испытаний компания CIS Electronic предоставила тестовое SCAP-устройство, но в ходе работы были обнаружены ошибки в его микрокоде - и российским и бразильским специалистам пришлось совместно “доводить” устройство.
Однако кроме технических проблем было немало и организационных. Одна из них - доставка в Россию SCAP для тестирования. Оказалось, что оформить временный ввоз (после завершения работ устройство отправится обратно) намного сложнее, чем оформить ввоз постоянный. По согласованию с поставщиком пришлось пойти на второй вариант, заплатив лишние налоги. Из-за неразберихи со списками необходимых документов значительно возрос объем разных согласований и уточнений с заказчиком (12-часовая разница во времени затрудняла обсуждения в режиме онлайн). Опыт “Астро Софт” говорит о необходимости обязательного участия в таких операциях таможенных брокеров.
И все же, по мнению директора “Астро Софта” Павла Васильева, несмотря на подобные проблемы, у компании (и у российских разработчиков вообще) есть хорошие перспективы для сотрудничества с зарубежными партнерами. За два года активной деятельности на поприще оффшорного программирования специалисты фирмы отладили технологию ведения проектов, при которой становится непринципиальным, где находится заказчик: в Бразилии или на соседней улице (см. рисунок). Базовую структуру этой технологии образуют следующие три этапа.
Схема работы с заказчиками
- Общие требования к разрабатываемой системе, которые формулируются заказчиком и максимально уточняются исполнителем. Это позволяет оценить ресурсоемкость, стоимость и продолжительность реализации проекта. После этого подписывается договор.
- На основе общих требований исполнитель составляет и согласовывает с клиентом функциональную спецификацию, где подробно описано, как именно будет выглядеть требуемая система. В описи продукта полностью фиксируется все, что важно для клиента: функции системы, модули, язык, платформа, а также граничные требования.
- Внутренняя спецификация, отражающая, как именно будет реализована задача.
В ходе выполнения проекта заказчику предоставляются еженедельные отчеты. И хотя все эти этапы стандартны для любого проекта, но при работе с иностранными клиентами приходится учитывать дополнительные трудности:
1. Языковой барьер: английский язык может не являться родным (как, например, в случае с Бразилией), и это затрудняет общение, так как и у заказчика, и у исполнителя есть свои языковые штампы, понятия, которые могут не совпадать.
2. Необходимость четко, точно формулировать мысли: это очень важно, поскольку все общение идет по переписке, и если мысль высказана недостаточно внятно, то это чревато дополнительными вопросами, непониманием задачи, неправильным решением проблемы и, следовательно, - переделкой уже сделанного.
3. Устоявшиеся представления о продуктах, о приложениях, об их функциональности, к сожалению, тоже могут не совпадать.
4. Разница во времени: каждая итерация (вопрос - ответ, любое уточнение и т. д.) занимает сутки, и это очень важно учитывать при определении ресурсоемкости проекта.
“Астро Софт”: (812) 327-4400.