Аутсорсинг отдельных этапов разработки приложений
Наталия Елманова
Нередко аутсорсинг отдельных этапов разработки программного обеспечения осуществляется компаниями, которые занимаются этим же видом деятельности. Принятие подобных решений обусловлено необходимостью разделения труда в самом процессе разработки приложений и наличием экономической или стратегической целесообразности такого заказа. Рассмотрим более подробно виды подобных категорий аутсорсинга. Создание типового кодаТипичный пример аутсорсинга создания типового кода выглядит следующим образом. Представим себе ситуацию, когда компания-разработчик, специализирующаяся на разработке сложного наукоемкого ПО, использующего принадлежащие компании знания, не подлежащие распространению, получает заказ на разработку бизнес-приложения, содержащего как наукоемкую функциональность, так и типовые составные части вроде форм ввода в базу данных. В этом случае разработку таких составных частей, не связанных с предоставлением собственного ноу-хау, подобная компания вполне может поручить другой компании, нуждающейся в заказах и не занимающейся наукоемкими разработками. Известны примеры, когда такой аутсорсинг диктовался не столько экономической выгодой, сколько нежеланием поручать подобную работу собственным высококвалифицированным разработчикам, равно как и нанимать на работу программистов специально для решения этих задач. Еще один вариант подобного аутсорсинга, заключающийся в передаче сторонней компании подряда на написание ста процентов кода приложения (а иногда и проектирования данных), широко практикуется американскими компаниями, хотя встречается также в Европе и России. Такие компании имеют в своем штате менеджеров, осуществляющих продажи, и бизнес-аналитиков, занимающихся интервьюированием заказчиков, моделированием процессов, управлением требованиями, чуть реже - моделированием приложений, но не имеют ни разработчиков приложений, ни специалистов по написанию серверного кода, ни специалистов по тестированию. Готовые требования и модели они отправляют другим компаниям (иногда расположенным в другом регионе или в другой стране), которые и создают код самих приложений c помощью предназначенных для этой цели инструментов. К категории создания типового кода относится и такой вид работ, как создание компонентов приложений (COM-объектов, встраиваемых модулей Eclipse, библиотек классов) согласно заданным спецификациям. Именно с выполнения подобных работ начинали свою деятельность многие индийские компании, ныне активно работающие на рынке услуг офшорного программирования. Документирование приложенийСторонним компаниям передаются и иные «отчуждаемые» части проектов, не связанные с созданием кода. Например, составление руководства пользователя к коробочным продуктам, как правило, поручается компаниям, специализирующимся исключительно на данном виде работ. Дело в том, что подобные компании имеют в штате не только технических писателей и специалистов по встраиванию справочных систем в приложения, но и редакторов и корректоров с филологическим образованием, а зачастую - переводчиков и редакторов текста на иностранных языках. Издание же бумажных версий руководств к коробочным продуктам, имеющим большой тираж, иногда поручается издательским домам, специализирующимся на выпуске книг, поскольку в этом случае требуется участие специалистов по дизайну и верстке документации, а также технологов-полиграфистов. Причина распространенности подобного аутсорсинга проста. Технический писатель в штате небольшой компании-разработчика может и быть (хотя в небольших компаниях он, как правило, все равно окажется незагружен), но содержать редакторов, корректоров, верстальщиков, переводчиков, как правило, совершенно невыгодно, равно как и поручать их функции специалистам иного профиля. Тестирование приложенийТестирование приложений является довольно популярным направлением аутсорсинга в области разработки программного обеспечения. С одной стороны, процедуры тестирования являются важной составляющей системы качества ПО и при необходимости соответствия продукта требованиям стандартов качества они должны быть строго регламентированы. Отсутствие полноценного тестирования при разработке продукта является серьезным фактором риска, способным не только сделать отдельный проект полностью нерентабельным из-за необходимости устранения дефектов уже в процессе промышленной эксплуатации продукта или из-за необходимости возвращать покупателям деньги за приобретенное коробочное ПО, но и привести к серьезному ущербу репутации компании. С другой стороны, процесс полноценного тестирования обычно является очень ресурсоемким. Так, тестирование функциональности коробочного ПО должно включать проверку его работоспособности в разных языковых версиях и редакциях операционной системы, для которой оно предназначено, устойчивости по отношению к установке и удалению различных пакетов обновления операционной системы и офисных приложений, при наличии различных настроек и при разных правах пользователей, иногда на разных аппаратных конфигурациях. При этом компания-разработчик, как правило, не имеет в своем распоряжении требуемого набора аппаратных ресурсов и версий операционных систем. Нагрузочное тестирование серверных продуктов (равно как и некоторые другие виды тестирования) обычно требует наличия специально выделенного оборудования, дорогостоящего программного обеспечения для полноценного проведения тестов (например, средств тестирования, стоимость которых превышает бюджеты многих проектов по разработке ПО) и специалистов, способных создать тестовые процедуры, обеспечивающие полноту тестирования на соответствие требованиям к продукту. Подобными ресурсами обладают некоторые крупные компании-разработчики, но средним и малым они не по карману. Отметим, что сегодня в России существуют компании, предоставляющие специализированные услуги тестирования и обладающие широким выбором программно-аппаратных средств и инструментария тестирования. Стоит обратить внимание на то, что, помимо создания типового кода, тестирования, создания документации, в области разработки ПО практикуются и другие виды аутсорсинга. Например, разработчики интернет- и интранет-приложений нередко отдают в аутсорсинг веб-мастерским, имеющим в штате профессиональных художников, создание дизайна своих приложений.
Страница сайта http://silicontaiga.ru
Оригинал находится по адресу http://silicontaiga.ru/home.asp?artId=10323 |