0
Экономика разработки проекта

          Олег Бунин
Общий алгоритм расчета стоимости
                 разработки

                                                     Фриланс...
Фрилансеры
• Дешево;
• Совершенно не
  сердито;
• Сложности в
  коммуникациях;
• Безответственность;
• Непредсказуемость;
...
Внутренняя команда
• Долго и сложно собирать;
• Оптимальные затраты;
• Без сильного
  технического
  директора – не
  стои...
Внутренние команды: кому
           придется платить?
•   Технический директор;
•   Системный архитектор;
•   Ведущие прог...
Внешняя команда
• Самый дорогой вариант;
• В случае профессиональной команды
  гарантированный
  результат.
Или как выбрать внешнюю
        команду?
Насколько можно доверять оценкам
         программистов?
Вопрос                                Правильный ответ
Сколько вр...
Выбор команды
• Фрилансеры;
• Внешняя профессиональная команда;
• Внутренняя команда.
             Стоимость в   Вероятнос...
Оптимальный тип команды для
          разных видов проекта
                       Рекомендуемая команда
Корпоративный сайт...
Выбор технологий

Как от него зависит стоимость
         разработки?
Выбор технологий
На что будет влиять выбор
        платформы для сайта?
• Стоимость поддержки и
  разработки;
• Сроки разработки;
• Стоимос...
Выбор платформы
• Что такое CMS?
• Что такое фреймворк?
• Что такое “написать с нуля”?
CMS
• Высокая скорость
  разработки;
• Низкая стоимость
  разработки и
  поддержки;
• Большое количество
  готовых модулей...
Фреймворк
• Набор модулей
  низкого уровня;
• Большая гибкость;
• Высокие
  требования к
  разработчикам;
• Меньшая, чем у...
Написать с нуля
Написать “с
нуля” означает
“написать
фреймворк”. А
затем перейти к
предыдущему
слайду.
Сравним для разных платформ:
• Стоимость специалистов, фонд оплаты
  труда;
• Стоимость поддержки готового решения;
• Стои...
Факторы, влияющие на выбор
            платформы
• Стоимость поддержки и разработки;
• Стоимость требуемых ресурсов и
  пр...
OpenSource

           IIS
           8%
Nginx
19%




                     Apache
                      73%




         ...
LAMP
• Linux (*nix);
• Apache;
• MySQL (PostgreSQL);
• PHP (Perl, Python, Ruby).


• Memcached;
• Nginx.
Языки программирования

      PHP
      65%
                                       Ruby
                                  ...
Язык программирования: PHP

• Высокая скорость программирования;
• Большое количество специалистов – простота
  поддержки;...
PHP-программист




                  Декабрь, 2008
Язык программирования: Ruby

• Высокая скорость разработки прототипа;
• Малое количество специалистов;
• Современный “модн...
Язык программирования: Perl
• Самый “опытный” язык
  программирования, огромное количество
  библиотек;
• Средняя скорость...
Язык программирования: C/C++
• Самые низкие
  требования к
  ресурсам;
• Низкая скорость
  разработки;
• Высокая сложность...
Unix-системы
Предоставляют больший контроль для
разработчиков и системных
администраторов. Взамен требуют
серьезных знаний...
Системный администратор Unix
Windows-системы
Общепринятое мнение заключается в том, что
операционные системы Windows хуже
приспособлены для обслуживани...
Системный администратор Windows
Windows-программист




                 Декабрь, 2008
Благотворное влияние кризиса
Обычный сайт
                       Unix + PHP   Unix + Perl   Unix + Ruby   Unix + Java
Стоимость разработки
            ...
Так что же выбрать?




Выбирайте ту платформу, на которой работают Ваши
     специалисты или те, кому Вы доверяете!

Если...
Стоимость разработки
• Проектирование, исследование;
• Оплата труда разработчиков;
• Аппаратное обеспечение.
             ...
Длительность и сложность
          различных типов проектов*
                       Длительность                Техническа...
За что придется платить?

• Дизайн, юзабилити, проектирование
  интерфейсов;
• Разработка архитектуры;
• Программирование,...
Железо, хостинг!
Выбор серверов: необычные
             ситуации
• Очень крупный и высоконагруженный
  проект;
• Большие хранилища данных;
...
Хостинг
Вид хостинга                    Ориентировочная стоимость

Виртуальный хостинг             20-50 долларов в месяц
...
Оценка потребности в хостинге
                       Размер серверного парка
Корпоративный сайт     Виртуальный хостинг
СМ...
Новые виды хостинга
• Хостинг в Европе: дешевле, проще, зато
  придется платить за трафик;
• Хостинг в Amazon EC2:
  дешев...
Поддержка и развитие
Поддержка и развитие
• Стоимость команды, профиль
  специалистов;
• Стоимость внесения изменений и ее
  взаимосвязь с выбр...
Обычный сайт: стоимость
                  поддержки
                 CMS       Unix + PHP   Unix + Perl Unix +    Windows ...
Попробуем составить бюджеты

  Для социальной сети, блогосферы,
    СМИ и корпоративного сайта
Общий алгоритм расчета стоимости
                 разработки

                                                     Фриланс...
oleg.bunin@ontico.ru
LiveJournal: oleg_bunin
Upcoming SlideShare
Loading in...5
×

Economy of project development

727

Published on

Published in: Technology, Business
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
727
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
25
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Transcript of "Economy of project development"

  1. 1. Экономика разработки проекта Олег Бунин
  2. 2. Общий алгоритм расчета стоимости разработки Фрилансеры Выбор команды Фрилансеры Внешняя команда Внешняя команда Внутренняя команда Внутренняя команда Менеджер Менеджер Время на Выбор формирование технологий внутренней команды Системный аналитик Системный аналитик Стоимость Стоимость Стоимость разработки Сроки разработки функционального лицензий железа описания Стоимость разработки ∑
  3. 3. Фрилансеры • Дешево; • Совершенно не сердито; • Сложности в коммуникациях; • Безответственность; • Непредсказуемость; • Необходимость иметь в штате сильного технического менеджера для координации удаленных работ.
  4. 4. Внутренняя команда • Долго и сложно собирать; • Оптимальные затраты; • Без сильного технического директора – не стоит и пытаться!
  5. 5. Внутренние команды: кому придется платить? • Технический директор; • Системный архитектор; • Ведущие программисты; • Программисты; • Верстальщики; • Дизайнеры; • Системные администраторы; • Тестировщики.
  6. 6. Внешняя команда • Самый дорогой вариант; • В случае профессиональной команды гарантированный результат.
  7. 7. Или как выбрать внешнюю команду?
  8. 8. Насколько можно доверять оценкам программистов? Вопрос Правильный ответ Сколько времени заложено на отладку Сравнимо с временем, заложенным на и тестирование? разработку проекта Когда Вы покажете мне первую версию Примерно в середине проекта сайта? Сколько специалистов будет работать Прикиньте из таблицы “Длительность и над моим проектом? сложность различных проектов” Будут ли специалисты совмещать Нет работу над моим проектом еще с чем- то? Сколько времени заложено на Не менее 2-3 недель для любого типа внедрение и отладку верстки? проекта
  9. 9. Выбор команды • Фрилансеры; • Внешняя профессиональная команда; • Внутренняя команда. Стоимость в Вероятность Основная проблема случае успеха успеха Сложность в осуществлении Фрилансеры Низкая Низкая контроля, безответственность фрилансеров Высокая стоимость (обычно в два Внешняя Высокая Высокая три раза больше по сравнению с команда внутренней командой) Внутренняя Средняя Высокая Сложность в поиске и подбора команда команды
  10. 10. Оптимальный тип команды для разных видов проекта Рекомендуемая команда Корпоративный сайт Внешняя команда, фрилансеры СМИ Внешняя команда СМИ с элементами UGC Внешняя команда Интернет-магазин Внешняя команда Фотохостинг Внешняя команда, внутренняя команда Блогосфера Внешняя команда, внутренняя команда Видеохостинг Внешняя команда, внутренняя команда Социальная сеть Внешняя команда, внутренняя команда Сайт знакомств Внешняя команда, внутренняя команда Онлайн игра Внутренняя команда Поисковая система Внутренняя команда
  11. 11. Выбор технологий Как от него зависит стоимость разработки?
  12. 12. Выбор технологий
  13. 13. На что будет влиять выбор платформы для сайта? • Стоимость поддержки и разработки; • Сроки разработки; • Стоимость требуемых ресурсов и программного обеспечения; • Простота развития и скорость внесения изменений;
  14. 14. Выбор платформы • Что такое CMS? • Что такое фреймворк? • Что такое “написать с нуля”?
  15. 15. CMS • Высокая скорость разработки; • Низкая стоимость разработки и поддержки; • Большое количество готовых модулей. • Негибкость функциональных возможностей; • Проблемы при росте нагрузок.
  16. 16. Фреймворк • Набор модулей низкого уровня; • Большая гибкость; • Высокие требования к разработчикам; • Меньшая, чем у CMS скорость разработки; • Большая, чем у CMS стоимость.
  17. 17. Написать с нуля Написать “с нуля” означает “написать фреймворк”. А затем перейти к предыдущему слайду.
  18. 18. Сравним для разных платформ: • Стоимость специалистов, фонд оплаты труда; • Стоимость поддержки готового решения; • Стоимость лицензий, open source; • Взаимосвязь с аппаратными решениями (стоимость необходимого железа).
  19. 19. Факторы, влияющие на выбор платформы • Стоимость поддержки и разработки; • Стоимость требуемых ресурсов и программного обеспечения; • Риски, связанных с неизвестной платформой; • Стоимость обучения специалистов новой платформы; • Требуемые сроки разработки. Разрабатывайте на той платформе, которую лучше всего знают Ваши технические специалисты!
  20. 20. OpenSource IIS 8% Nginx 19% Apache 73% По данным lexa.ru
  21. 21. LAMP • Linux (*nix); • Apache; • MySQL (PostgreSQL); • PHP (Perl, Python, Ruby). • Memcached; • Nginx.
  22. 22. Языки программирования PHP 65% Ruby 1% Python 5% Java 13% Perl 16% По данным сайтов вакансий
  23. 23. Язык программирования: PHP • Высокая скорость программирования; • Большое количество специалистов – простота поддержки; • Сложно найти высококвалифицированного специалиста; • Низкая стоимость специалистов; • Средняя заработная плата по Москве около 55000 рублей.
  24. 24. PHP-программист Декабрь, 2008
  25. 25. Язык программирования: Ruby • Высокая скорость разработки прототипа; • Малое количество специалистов; • Современный “модный” язык программирования; • Удобные фреймворки, позволяющие создавать прототипы за дни; • Мало отлаженных механизмов работы с высокими нагрузками; • Средняя заработная плата по Москве около 60000;
  26. 26. Язык программирования: Perl • Самый “опытный” язык программирования, огромное количество библиотек; • Средняя скорость разработки; • Небольшое количество специалистов; • Сложно найти профессионалов высокого уровня; • Высокая стоимость программистов.
  27. 27. Язык программирования: C/C++ • Самые низкие требования к ресурсам; • Низкая скорость разработки; • Высокая сложность разработки; • Малое количество сильных специалистов; • Высокая стоимость специалистов.
  28. 28. Unix-системы Предоставляют больший контроль для разработчиков и системных администраторов. Взамен требуют серьезных знаний и опыта. Например, часто операционные Unix-системы поставляются в исходных кодах. Многие Unix-системы распространяются бесплатно.
  29. 29. Системный администратор Unix
  30. 30. Windows-системы Общепринятое мнение заключается в том, что операционные системы Windows хуже приспособлены для обслуживания высоконагруженных web-серверов. Но они же являются наилучшим решением, если задача требует интеграции с офисным программным обеспечением, Share Point и другими Microsoft- технологиями. Windows-системы являются проприетарной разработкой компании Microsoft (являются платными).
  31. 31. Системный администратор Windows
  32. 32. Windows-программист Декабрь, 2008
  33. 33. Благотворное влияние кризиса
  34. 34. Обычный сайт Unix + PHP Unix + Perl Unix + Ruby Unix + Java Стоимость разработки Низкая Средняя Низкая Средняя (ФОТ) Скорость разработки Высокая Средняя Высокая Высокая Стоимость поддержки Низкая Высокая Средняя Средняя (ФОТ) Легкость и скорость Высокая Средняя Высокая Высокая обновления Стоимость программного 0 0 0 0 обеспечения Стоимость Низкая Низкая Низкая Высокая необходимого железа
  35. 35. Так что же выбрать? Выбирайте ту платформу, на которой работают Ваши специалисты или те, кому Вы доверяете! Если таковых нет – руководствуйтесь последствиями.
  36. 36. Стоимость разработки • Проектирование, исследование; • Оплата труда разработчиков; • Аппаратное обеспечение. Проектирование Оплата труда разработчиков Аппаратное обеспечение
  37. 37. Длительность и сложность различных типов проектов* Длительность Техническая сложность Корпоративный сайт 1-2 человеко-месяца Низкая СМИ 2-4 человеко-месяца Низкая СМИ с элементами UGC 3-5 человеко-месяцев Средняя Интернет-магазин 2-12 человеко-месяцев Средняя Фотохостинг 6-16 человеко-месяцев Средняя Блогосфера 6-20 человеко-месяцев Высокая Видеохостинг 6-20 человеко-месяцев Высокая Социальная сеть 8-20 человеко-месяцев Высокая Сайт знакомств 8-20 человеко-месяцев Высокая Онлайн игра 1-3 человеко-лет Высокая Поисковая система 3-6 человеко-лет Высокая * Очень грубо и очень ориентировочно
  38. 38. За что придется платить? • Дизайн, юзабилити, проектирование интерфейсов; • Разработка архитектуры; • Программирование, кодирование; • Верстка, внедрение верстки; • Тестирование.
  39. 39. Железо, хостинг!
  40. 40. Выбор серверов: необычные ситуации • Очень крупный и высоконагруженный проект; • Большие хранилища данных; • Большие немасштабируемые вычисления; • Повышенные требования к безопасности или надежности.
  41. 41. Хостинг Вид хостинга Ориентировочная стоимость Виртуальный хостинг 20-50 долларов в месяц Арендованный серверный парк 150-500 долларов за сервер в месяц, в (dedicated) зависимости от конфигурации Собственный серверный парк Покупка сервера (от 2000-3000 (colocation) долларов разово) и аренда порта (50- 100 долларов в месяц). Собственный дата-центр Хм…
  42. 42. Оценка потребности в хостинге Размер серверного парка Корпоративный сайт Виртуальный хостинг СМИ Виртуальный хостинг СМИ с элементами UGC Виртуальный хостинг, выделенный сервер Интернет-магазин Виртуальный хостинг, выделенный сервер Фотохостинг Выделенные севера Блогосфера Выделенные севера Видеохостинг Выделенные севера Социальная сеть Выделенные севера Сайт знакомств Выделенные сервера Онлайн игра Выделенные сервера Поисковая система Выделенные сервера, собственные дата-центры
  43. 43. Новые виды хостинга • Хостинг в Европе: дешевле, проще, зато придется платить за трафик; • Хостинг в Amazon EC2: дешевле, проще, престижнее, зато проблемы с дисковой инфраструктурой и пинги в 200-300 миллисекунд из России.
  44. 44. Поддержка и развитие
  45. 45. Поддержка и развитие • Стоимость команды, профиль специалистов; • Стоимость внесения изменений и ее взаимосвязь с выбранными технологиями; • Стоимость хостинга, стоимость трафика.
  46. 46. Обычный сайт: стоимость поддержки CMS Unix + PHP Unix + Perl Unix + Windows + Ruby .Net Стоимость Низкая Низкая Средняя Средняя Высокая разработки (ФОТ) Стоимость Низкая Низкая Высокая Средняя Средняя поддержки Легкость и Высокая Средняя Средняя Высокая Средняя скорость обновления Стоимость Низкая 0 0 0 Высокая программного обеспечения Стоимость Средняя Низкая Низкая Средняя Высокая необходимого железа
  47. 47. Попробуем составить бюджеты Для социальной сети, блогосферы, СМИ и корпоративного сайта
  48. 48. Общий алгоритм расчета стоимости разработки Фрилансеры Выбор команды Фрилансеры Внешняя команда Внешняя команда Внутренняя команда Внутренняя команда Менеджер Менеджер Время на Выбор формирование технологий внутренней команды Системный аналитик Системный аналитик Стоимость Стоимость Стоимость разработки Сроки разработки функционального лицензий железа описания Стоимость разработки ∑
  49. 49. oleg.bunin@ontico.ru LiveJournal: oleg_bunin
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×