Последняя редакция: 2015-10-19 18:08:49

Основы организации программирования при доработках базового ПО интернет-магазина.

Введение

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

  • развитие аппаратных средств (использование более мощных вычислительных систем или более дорогого хостинга);

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

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

Типичные ошибки

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

Ошибки организации взаимодействия с подрядчиками по программным работам. При организации работ большинство допускает две основные ошибки:

  • либо все пускают практически на самотек,

  • либо наоборот, стремятся все контролировать и всем руководить.

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

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

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

Недооценка важности организации управления проектом развития ПО. Наиболее распространенной ошибкой многих интернет-предпринимателей является заблуждение, что если объем доработок невелик (только верстка и мелкие переделки), то в основательной организации этих работ ( в документировании изменений и комментировании кода, в организации проектной площадки и налаживании управления проектом, то есть в project management) нет необходимости. Но, к сожалению, довольно часто складывается ситуация, когда по мере роста бизнеса потребности в развитии функционала интернет-магазина растут и объемы доработок становятся все больше. Количество отдельных незначительных, неконтролируемых изменений растет лавинообразно. Отсутствие координации и планирования приводит к несогласованности работ, которые выполняются разными разработчиками, с разной квалификацией, при отсутствии документации не только на код базового ПО, но и на код доработок.

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

Рекомендации

1. Постоянно учиться, накапливать знания в сфере управления организацией разработки (модернизации) программного обеспечения. Сегодня разработка ПО, де факто, является целой отраслью науки и экономики, в которой накоплен большой запас технологических знаний и типовых проектных решений, создан широкий спектр инструментальных средств для организации совместной работы всех участников такого процесса, применение которых и дает возможность получать качественный результат. Но чтобы воспользоваться этими возможностями, CEO интернет-магазина должен иметь представление как об этих технико-технологических возможностях, так и о самом объекте управления (процессе разработки/доработки программного обеспечения), более подробное описание которого можно найти в статье Основы бизнес-процесса разработки (доработки) программного обеспечения.

2. Избегать привлечения к работам низкоквалифицированных исполнителей, ведь лучше один раз заплатить много за полезный результата, чем десять раз понемногу выкинуть деньги на ветер. Сумма может оказаться одинаковой, но итог будет разный.

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

  • при проведении доработок требовать от разработчиков использования специализированных средств и технологий, упрощающих фиксацию и документирование изменений;

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

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

Отладочный сайт может не только служить единой площадкой для взаимодействия всех участников проекта. По завершении работ, отладочный сайт можно «привязать» к рабочему домену, сделав его таким образом рабочим. При этом старую версию сайта можно временно сохранить, чтобы быстро откатиться к ней в случае возникновения проблем с новой версией.

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

Заключение

Как, наверное, многим начинающим интернет-бизнесменам знакомо ощущение, что все программисты, с которыми они работали, либо ленивые и глупые, потому что не в состоянии понять, чего от них хотят, либо жулики, которые пытаются выманить побольше денег, не сделав ничего. Не скрою, что в Сети достаточно и тех, и других, но не все они такие. Возможно, проблема этих CEO как раз в том, что при заданной ими организации работ вокруг них концентрируются только такие исполнители, подчеркивая тем самым их управленческие ошибки. Так может: «Не стоит на зеркало пенять коли ...».

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


Не хотите тратить время и силы на самообучение? Готовы обратиться к специалисту, чтобы задачу увеличения продаж решили за вас? Напишите нам!
Мы также будем очень благодарны за ваше участие в мини-опросе, комментарии, отзывы и рекомендации в соцсетях.

Комментарии (0)







Разрешённые теги: <b><i><strong><em><s><ul><li><ol>Добавить новый комментарий:




Какова главная причина отсутствия заказов в вашем интернет-магазине по вашему мнению?

Всего голосов: 71