На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! ПРАВИЛА РАЗДЕЛА
1. Убедительная просьба предложения по работе размещать только в соответствующих разделах "Вакансии" или "Резюме".
2. В общий раздел допускаются предложения о работе, которые по тем или иным причинам не могут быть отнесены к вышеуказанным разделам (например, предложения об указании какой-либо услуги, ваши советы соискателям работы, полезные ссылки).
3. При размещении объявлений, пожалуйста, не забывайте указывать Ваши координаты для обратной связи!
4. Запрещается размещать запросы/предложения на разработку вредоносного программного обеспечения а также оказание услуг/размещение предложений, так или иначе запрещенных текущим законодательством РФ.
5. Объявления, размещенные в целях накрутки баннерных показов, а также объявления, идентифицируемые как "спам" будут удалятся без предупреждений!

Полезные ссылки

* Советы по поиску работы
* Где разместить резюме?
* Наш черный список нечестных работодателей
* Пример оформления вакансии
Модераторы: Rust
  
> Помогите назвать цену
    Мне кажется, что самое трудное в переходе на коммерческую основу - это научиться оценивать свою работу.
    Мне предложили сотрудничество и сказали назвать цену за первый проект. Прошу у вас совета. Как не загнуть, но и не сдешевить:

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

    основные аспекты:
    - drag&drop интерфейс
    - применение dll
    - сжимание файла
    - авторизация
    - отправка на сервер

    Время на работу - 2 недели, но я думаю это не из-за трудоёмкости.
      Когда-то давно попадалась цифра $1 за строку кода. Но это было давно. Цены наверняка поменялись.
        Дык, по-моему, я где-то уже писал об этом....
        Коротко, процесс мне представляется так:
        1. Собираешь и формализируешь требования к программе. Подробно. Здесь главная опасность - различное понимание одного и того же функционала заказчиком и исполнителем. В твоем конкретном случае, например, ты делаешь то, что описано как drag&drop по своему пониманию, а заказчик заявляет: "я думал, это должно будет работать не так, а вот этак..." Кстати, затраты на сбор требований - включаешь в счет. Этов ведь работа, которую ты делаешь, не так ли?
        2. Делаешь прикидку архитектуры приложения. Далее, разбиваешь компоненты на все более и более мелкие задачи до тех пор, пока не будет ясности типа "вот этот функционал я напишу за 4 рабочих часа". Не забываешь включить сюда время на написание юнит-тестов. На RSDN коллега Gaperton выкладывал такую Excel'евскую табличку G-Estimation - поищи, позволяет весьма точно оценить трудозатраты по проекту. Конечно, если в списке задач нет фатальных пропусков :) Но здесь поможет только опыт...
        3. Строишь в MS Project или Planner (ну или на бумажке :) ) график работ проекта. Он нужен для тебя - чтобы оценивать продвижение проекта и отставание (что чаще :) ) или опережение по сравнению с графиком. Ну и постепенно ты сможешь называть все более реальные сроки окончания. Или, в крайнем случае, известить заказчика об отставании. Никто не любит неожиданностей! Как правило, заказчик готов пойти на подвижку срока, если узнает об этом не в самый последний момент.
        4. Альтернативный метод - оценить количество фунциональных точек (ФТ). Можно считать, что 1 ФТ средней сложности потребует 1-2 человеко-дня. Ну, или как альтернатива - можно как-то прикинуть ожидаемое итоговое количество строк _отлаженного_! кода и плясать от этой печки. (Грубо, на C/C++ можно ожидать 80-120 LOC/день). Если оценки по пп.3 и 4 достаточно хорошо коррелируют - это говорит об отсутствии грубых ошибок в планировании. И этими оценками уже можно пользоваться.
        5. Теперь, зная трудозатраты на кодирование, добавляешь некоторое время на отладку и тестирование приложения и на другие затраты. У меня по опыту реальных проектов получаются вот такие проценты соотношения затрат:
        Управление 3%
        Анализ 12%
        Проектирование 19%
        Кодирование 32%
        Отладка 18%
        Интеграция модулей 13%
        Тестирование 4%
        В твоем случае, соотношение затрат может быть иным.
        6. Достаточно ли ты знаешь заказчика? Достаточно ли он предсказуем? Не произойдет ли изменения требований в процессе работы? Если это возможно, то как часто? Готов ли заказчик увеличивать сроки работы и оплачивать переработки вследствие изменения требований? Если возможно изменение требований прямо в процессе работы, то тебе может потребоваться "технологический запас" трудоемкости до 20-30%. А может - не потребоваться. Зависит от заказчика и отношений с ним.
        7. Теперь, зная трудозатраты, умножаешь их на свой рейт в час и получаешь цену работы.
        8. Но это еще не все. Есть ли в проекте области, с которыми ты недостаточно знаком? Если так, то добавляешь еще примерно 30% времени к суммарному времени проекта. Но не добавляешь стоимость - ведь заказчик не должен платить за твое обучение, не так ли?
        9. Итак, получаешь оценку сроков работы и стоимости. Но еще рано называть стоимость заказчику :)
        10. Имеет ли этот заказчик "стратегическое" значение для тебя? Стал ли он (или может стать в перспективе) постоянным заказчиком? Имеет смысл подумать о возможной скидке в 10-15-20% (сколько можешь себе позволить). То есть, сначала надо назвать полную стоимость, а в процессе торга сделать скидку и преподнести это как твой подарок заказчику.
        11. Имеет ли смысл попросить аванс перед началом работы? Аванс в 30% - нормальная практика. Обосновать всегда можно - у тебя ведь будут затраты, прежде, чем ты выполнишь работу полностью.
        12. Вот теперь можно говорить с заказчиком о сроках и стоимости.....
        Удачи!
          Цитата
          на C/C++ можно ожидать 80-120 LOC/день
          Вообще-то стандартной производительностью программиста считается 8-10 тыс.строк отлаженного кода в год.
          Откуда получается прмерно 4 строки в час. Сколько же часов в день Вы предлагаете работать?

          По поводу распределения времени: мне кажется сильно недооценены фазы отладки и тестирования. Насколько я помню, оценки примено такие:
          Проектирование 11%
          Написание кода 1%
          Отладка 10%
          Альфа-тестирование 11%
          Бета-тесирование 67%
          Правда, это применимо к большим проектам. В случве индивидуального исполнения, вполне допускаю, доля тестирования может быть меньше, но вот насчет соотношения времени на написание и отладку почти 2:1 вместо 1:10 - вызывает серьезные сомнения.

          PS. Полностью согласен с тем, что один из самых важных моментов - заранее формализовать требования к результату, а также оговорить, что в случае внесения изменений в требования после согласования цены и сроков как то, так и другое может быть серьезно пересморено в сторону увеличения.
            Цитата andriano @
            Вообще-то стандартной производительностью программиста считается 8-10 тыс.строк отлаженного кода в год. [.....]
            Насколько я помню, оценки примено такие: [......]

            1. Считается - кем? Откуда дровишки (сиречь, каков источник информации)?
            2. Оценки - откуда? Опять таки, каков источник информации?
            0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
            0 пользователей:


            Рейтинг@Mail.ru
            [ Script execution time: 0,0218 ]   [ 15 queries used ]   [ Generated: 26.04.24, 10:51 GMT ]