Совет 18 Автоматизация задач
Совет 18
Автоматизация задач
Моя карьера постоянно сопровождалась конфликтами между желанием руководства нанять для работы над проектами бюджетную (зачастую заграничную) консалтинговую компанию и моей уверенностью, что самый дешевый разработчик далеко не всегда гарантирует низкие затраты. Я много спорил с директором по информационным технологиям и вице-президентом, увлеченно доказывая, что лучше нанять несколько сильных разработчиков вместо толпы неквалифицированных, хотя и дешевых, кодеров.
К сожалению, меня часто прерывали на полуслове. И проблема была вовсе не в моей неправоте (это очевидно!). Но простого способа доказать мою правоту не существует. А с точки зрения затрат единственные имеющиеся у нас объективные данные заставляли сделать вывод о выгоде найма сотрудников с более низкой почасовой оплатой.
Представь себе гипотетический проект по созданию программного обеспечения для какой-либо сферы по твоему выбору. Сколько программистов потребуется, чтобы написать такую программу за три месяца? Говоришь, пять? Шесть? (Потерпи минутку.) Хорошо. А как насчет выполнения этого проекта за два месяца? Как ты уберешь целый месяц?
Руководство отделов информационных технологий, как правило, заявляет, что для ускорения процесса следует нанять дополнительных программистов. Это неправильно, но люди так считают. И раз можно ускорить один проект, увеличив число исполнителей, значит, экстраполируя эту тенденцию, получим, что продуктивность прямо пропорциональна количеству рабочего персонала.
Но достичь поставленной цели можно несколькими способами. Для увеличения объемов производства программного обеспечения можно:
? нанять тех, кто будет работать быстрее;
? нанять дополнительных работников;
? автоматизировать работу.
Но так как мы пока не знаем, как корректно измерить продуктивность разработки программного обеспечения, сложно доказать, что один человек работает быстрее другого. И именно поэтому руководители финансовой службы предпочитают сосредоточиться на почасовой оплате.
Это дает простую формулу, привязанную к фиксированному периоду времени:
Продуктивность = Количество проектов / (Количество программистов * Почасовая оплата)
В некоторых сферах деятельности действительно можно посчитать реальный доход от инвестиций в программное обеспечение. Но в большинстве случаев речь пойдет о таких нечетких показателях, как число проектов или количество требований, без контролируемого способа их измерения.
Итак, получается, что мы не в состоянии доказать преимущество более способных программистов, но при этом не хотим нанимать много дешевых программистов. Значит, остается только вариант с автоматизацией.
Я помню сенсационную безработицу в США в 1980-х. В то время мы возлагали вину не только на другие страны, но и на машины, а особенно на компьютеры. На предприятиях стали появляться гигантские роботы-манипуляторы. Эти роботы настолько превосходили людей в производительности и точности, что состязаться с ними не было никакой возможности. Расстроены такой ситуацией были все, кроме создателей этих роботов.
Представь, что ты работаешь в компании, которая создает сайты для малого бизнеса. По сути, тебе приходится раз за разом проделывать одну и ту же работу, добавляя контактную информацию, опросы, корзины и прочие аксессуары. Можно нанять либо несколько очень продуктивных программистов, которые будут делать за тебя сайты, либо целую армию дешевых программистов, которые будут вручную делать одно и то же. Либо создать систему, генерирующую сайты.
Введя в формулу нашего финансового директора некоторые (вымышленные) цифры, мы получим показанное ниже уравнение.
Сравнение производительности
Быстрые программисты: 5 / (З * $80) = 0,02.
Дешевые программисты: 5 / (20 * $12) = 0,02.
Один программист + робот: 5 / (1 * $80) = 0,06
Автоматизация является неотъемлемой частью нашей отрасли. Но по каким-то причинам мы пока не хотим автоматизировать наш труд разработчиков программного обеспечения. Как гарантированно создавать программы быстрее и дешевле зарубежных конкурентов? Нужно сделать роботов. Автоматизируй свою работу!
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Автоматизация
Автоматизация Приемочные тесты всегда должны быть автоматизированными. В других моментах жизненного цикла программных продуктов находится место для ручного тестирования, но такие тесты никогда не должны выполняться вручную. Причина проста: затраты.Взгляните на
11.8.1 Администрирование и автоматизация конфигурирования
11.8.1 Администрирование и автоматизация конфигурирования DHCP позволяет существенно снизить объем администрирования для конфигурирования системы. При необходимости можно просто указать блок IP-адресов, из которого сервер DHCP будет присваивать адреса клиентам в локальной
Автоматизация закупки ссылок
Автоматизация закупки ссылок Закупка ссылок является вторым про трудоемкости процессом в SEO, уступая лишь составлению семантического ядра. Это означает, что для эффективной работы над порталом, для которого закупается огромное количество ссылок, процесс необходимо
Глава 12 Макросы и автоматизация
Глава 12 Макросы и автоматизация В процессе работы над изображениями вы часто выполняете одни и те же команды и даже последовательности команд. Чтобы не выполнять последовательность этих операций каждый раз, вы можете записать ее в виде макроса. Затем, запустив этот
Технология COM, автоматизация и интерфейсы IDispatch
Технология COM, автоматизация и интерфейсы IDispatch Поскольку программирование не является темой данной книги, мы не будем углубляться в суть понятий технологии COM и автоматизации. Я опишу эти вопросы вкратце, чтобы вы имели некоторое представление.С начала 1990 годов
Автоматизация импорта и экспорта
Автоматизация импорта и экспорта Назначение спецификации – сохранение параметров импорта или экспорта данных, необходимых программе Access для повторения той или иной операции без участия мастера. Причем в спецификации можно изменить имя исходного или конечного файла
15.4. Утилита make : автоматизация процедур
15.4. Утилита make: автоматизация процедур Сами по себе исходные коды программ не делают приложения. Также важен способ их компоновки и упаковки для распространения. Операционная система Unix предоставляет инструментальное средство для частичной автоматизации данных
Глава 22 Автоматизация действий
Глава 22 Автоматизация действий Adobe Photoshop содержит возможности автоматизации действий, которые можно и нужно использовать в тех случаях, когда вы сталкиваетесь с повторением одинаковых (или почти одинаковых) операций или когда требуется обработать большое количество
22.2. Автоматизация задач с помощью bash
22.2. Автоматизация задач с помощью bash Представим, что нам нужно выполнить резервное копирование всех важных файлов, для чего создать архивы каталогов /etc, /home и /usr. Понятно, что понадобятся три команды вида: tar — cvjf имя_архива. tar.bz2 каталог Затем требуется записать все эти три
Автоматизация задач
Автоматизация задач Большое количество различных операций, выполняемых на компьютере, можно автоматизировать. Обычной функцией программ стало завершение текущей операции с последующим выключением компьютера. Сегодня существует класс подобных утилит и с расширенными
25.3. Автоматизация меню
25.3. Автоматизация меню Несмотря на то что конструкция "документ здесь" успешно применяется для создания экранов меню, ее можно также использовать при автоматизации навигации по пунктам меню. В этом случае пользователю не придется вручную выбирать определенные
Автоматизация поиска мелодий
Автоматизация поиска мелодий С помощью программы «Поиск Полифонических Мелодий Mtone.Ru» вы быстро и легко сможете найти нужную мелодию, а также просмотреть последние их поступления на сайт. Вот как она работает.1. Для начала скачайте и установите программу (ее можно найти
13 Автоматизация
13 Автоматизация Автоматизация наших задач — отдельное удовольствие. В какой еще профессии можно запрограммировать машины, чтобы они делали за нас нашу работу? Ах, если бы это было так просто! Автоматизация задачи требует времени, но выигрыш может быть огромным.Я не
Урок 5.4. Автоматизация форматирования документа
Урок 5.4. Автоматизация форматирования документа В программе Word 2007 имеется целый комплекс новых средств для автоматизации форматирования текста, благодаря которым можно легко и быстро создать документы с профессиональным видом, особо не вдаваясь в тонкости