|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Т.е. проект 1 человеко/год ТРИ программиста будут делать 9 месяцев (субъективно) Что-то не то с математикой. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.07.2008, 17:36 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Сергей ВаскецовЧто-то не то с математикой. Вот в том-то и беда, что многие только одну математику и принимают во внимание. По вашему правильней будет: один программист пишет 12 месяцев. три 4 месяца, а если взять 24 студента на практику, то они напишут за 2 недели? С точки зрения математики так получается? :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2008, 11:23 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Тогда как лучше распределить работу на троих? Ну вот представьте надо написать систему Х, есть 3 программиста. Какие роли лучше выделить? ВАРИАНТ 1 1 аналитик/архитектор - ни чего не пишет. 2-е пишут по спецификациям аналитика ВАРИАНТ 2 1 аналитик/архитектор/главный программист - делает 60% работы 2-е помогают в написании вспомогательных модулей ВАРИАНТ 3 Разбиваем на модули, каждый пишет свой модуль, потом пытаемся все соединить. Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2008, 11:28 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? Ессно 2. В 1 работа архитектора пойдет в урну. В 3 замучаешься стыковать модули ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 09:13 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007 Ну вот представьте надо написать систему Х, есть 3 программиста. система уравнений не имеет решения. ЗЫ. Опиши конкретно задачу ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 09:14 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Petro123 ЗЫ. Опиши конкретно задачу Обычная такая задача. Есть ТЗ (хлам) надо написать систему, которая будет выполять ... (тут можно вставить все что угодно, не принципиально) ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 10:46 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
_мод student2007Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? Ессно 2. В 1 работа архитектора пойдет в урну. В 3 замучаешься стыковать модули Точно? Пробовали в жизни? Работает? Почему-то обычно пытаются работать по правилу 1. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 10:49 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007 _мод student2007Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? Ессно 2. В 1 работа архитектора пойдет в урну. В 3 замучаешься стыковать модули Точно? Пробовали в жизни? Работает? Почему-то обычно пытаются работать по правилу 1. пытаются, только не в случае небольшого проекта и 3-х программистов ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 11:10 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
1 чел выкопает яму за 2 часа 2 чел - за 1 час 4 чел - за 30 минут а 10 чел, если будут вместе пытаться рыть - ничего не сделают ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 11:46 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Все давно известно, что группавая разработка сложнее. Но вот интересует на сколько? И есть ли какие-то метрики? Для примера. Есть проект 1 человеко/год. Но год разрабатывать это долго, поэтому принято решение, что в проекте будет учавствовать 3 человека. На сколько уменьшится/увеличится разработка? Пока по субъективным предварительным оценкам - ВРЕМЯ НЕ УМЕНЬШАЕТСЯ !!! Но имеем конечно другие плюсы. Эффективность работы группы программистов обратно пропорциональна их количеству ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 12:17 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? Варианты 1 или 3 Вариант 3 подойдёт, если работа очень хорошо делится на модули (вплоть до того, что каждый из модулей можно эксплуатировать независимо). Кроме того, нужен аналитик - хотя-бы бизнес-требования описать. На практике получается вариант 2, т.к. двоих программистов к архитектору берут совсем никаких :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 12:18 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
iscrafmпытаются, только не в случае небольшого проекта и 3-х программистов Согласен. В том-то и вся беда, что ситуация какая-то пограничная. 1---->> ----10, с одним вопросов нет, даже с двумя вопросов нет :-) а третьего куда девать? :-) ну с 10-ю тоже уже становится более менее понятно - можно разбить на роли: архитектор, дизайнер, программист, тестер и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 12:29 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
alexeyvgНа практике получается вариант 2, т.к. двоих программистов к архитектору берут совсем никаких :-) Это про что ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 12:30 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Точно? Пробовали в жизни? Работает? Почему-то обычно пытаются работать по правилу 1. 1 - Это для больших проектов, когда работа делится не между людьми а между группами. Для малых и средних проектов архитектор=главный программист - вариант 2. Я пробовал и 1 и 2. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 12:52 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007 1 аналитик/архитектор - ни чего не пишет. не аналитик, а бизнес-аналитик. Он не должен быть программистом (если бизнес-область не "учёт выхода сотрудников на работу"). 2. IMHO Функциональные обязанности: - бизнес-аналитик (непрограммист) - архитектор (можно совместить на четветь ставки с программистом) - программист-кодер :) Если пишем ИС "Калькулятор", то первого и третьего можно сократить :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 13:35 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007 _мод student2007Какой вариант наиболее жизнеспособный с точки зрения сроки/качество ? Ессно 2. В 1 работа архитектора пойдет в урну. В 3 замучаешься стыковать модули Точно? Пробовали в жизни? Работает? Почему-то обычно пытаются работать по правилу 1. Правило 2 - рулит. Архитектор пишет скелет (+ документацию по нему), остальные - мясо. В результате во всей системе все сделано более-менее одинаково. Каждый знает, что ожидать от схожих процессов. А в схеме 1 происходит отделение "идей" от "реализации" и все идет в разнос. Делить на модули можно (схема 3), но тогда надо быть готовыми к тому, что одни и те же вещи будут реализованы по нескольку раз и всегда по-разному. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 13:40 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Тогда как лучше распределить работу на троих? ВАРИАНТ 2 1 аналитик/архитектор/главный программист - делает 60% работы 2-е помогают в написании вспомогательных модулей ВАРИАНТ 3 Разбиваем на модули, каждый пишет свой модуль, потом пытаемся все соединить.Пробовали работать по ВАРИАНТУ 4, который является комбинацией из 2 и 3. Был проект по созданию ПО для вещания метеосводок в аэропортах в атоматическом режиме. В команде было 3 человека. Распределение ролей в команде было сделано согласно квалификации и опыта (кто с чем справится). Один человек был архитектором внутреннего взаимодействия модулей в системе. Второй (руководитель проекта) - идеолог системы вцелом. Вся система была разбита на модули, все модули были закреплены за отдельным человеком (в т.ч. и за Архитекторами). Модули закреплялись за человеком исходя из оценки сложности модуля, трудоемкости, из квалификации человека. Человек, отвечающий за свой модуль, был главный в этом вопросе и сам определял внутреннюю архитектуру модуля и как он работал. В некоторых модулях надо было быть "бизнес аналитиком", например, там где речь касалась правил вещания сводок в эфир и правил разбора и обработки метеотелеграмм. Выделенного человека на тестировании не было, но 70% тестирования проводил один из нас. Проект был сделан успешно, система заработала и была установлена в несколько аэропортов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 14:04 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Спасибо. Немного начинает укладываться в голове. Тоже склоняюсь к варианту 2 - как наиболее стабильно работающий. Но, тогда мы не получаем принципиального сокращения СРОКОВ!!! На модули поделить можно, но они тесно связаны друг с другом, поэтому очень хлопотно их объединить. Было бы здорово выделить отдельного архитектора, который бы думал и писал спецификации, но тогда я считаю, что его не имеет смысла привлекать к программированию - будет или плохая архитектура или плохой код (а наверное и то и другое). А потом архитектор и программисты еще и подерутся. И опять склоямся к варианту 2. Так это что же? Получается мелкие/средние проги проще поручить ОДНОМУ программисту, чем команде? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 15:29 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007 На модули поделить можно, но они тесно связаны друг с другом, поэтому очень хлопотно их объединить. можно предположить, что это вопрос от НЕархитектора. student2007 Было бы здорово выделить отдельного архитектора, который бы думал и писал спецификации, но тогда я считаю, что его не имеет смысла привлекать к программированию - будет или плохая архитектура или плохой код (а наверное и то и другое). А потом архитектор и программисты еще и подерутся. вот найдите архитектора (как главного человека-спеца в проектировании ИС), и у него спросите. Будете влазить в его работу - загубите проект. IMHO ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 15:38 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Так это что же? Получается мелкие/средние проги проще поручить ОДНОМУ программисту, чем команде? Проблема только его найти :) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 15:54 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007ВАРИАНТ 3 Разбиваем на модули, каждый пишет свой модуль, потом пытаемся все соединить. Неэффективность этого подхода доказана в начале семидесятых годов прошлого века. Ключевые факторы, перечисляя по памяти: наиболее серьезные проблемы, в том числе архитектурные, вскрываются в самом конце работ и влекут за собой кучу переделок уже реализованного; большие затраты на тестирование и/или плохое качество оного в связи с невозможностью до последнего времени отлаживаться в реальной среде, затраты на подготовку тестовых данных; отсутствуют метрики, которые показывали бы степень реальной готовности проекта; поскольку до последнего момента вместо "программы" есть "куча модулей", заказчик не может пощупать промежуточные версии и оперативно уточнить задачу. Грубо говоря, представьте себе, что проектируя самолет, Вы сажаете несколько групп: одна "от балды" проектирует фюзеляж, другая - крылья, третья - начинку, а потом соединяете все вместе, решая проблемы наподобие "два ряда кресел из спроектированного пассажирского торчат из спроектированного фюзеляжа на три метра вбок". При этом, если выяснится, что требования к скорости (обусловившей узкий фюзеляж) и к пассажировместимости (обусловившей широкий салон) одновременно не реализуемы, то выяснится это в последний момент, когда все уже "сделано". student2007ВАРИАНТ 1 1 аналитик/архитектор - ни чего не пишет. 2-е пишут по спецификациям аналитика ВАРИАНТ 2 1 аналитик/архитектор/главный программист - делает 60% работы 2-е помогают в написании вспомогательных модулей Это по сути один вариант. Выбор деталей зависит от того, что за люди. Если команда до того вместе не работала, я бы посоветовал так: 1 аналитик/архитектор - проектирует, ставит задачи (спецификации или как - отдельный вопрос), делает review кода остальных, при необходимости реализует ключевые фрагменты (особо сложные итп). По мере того, как команда срабатывается, необходимость в review уменьшается, соответственно он может уделять больше времени другим вопросам, в том числе при желании - кодировать. 2-е - оппонируют идеям архитектора, выдвигают советы, реализуют порученные им задачи (возможно, в том числе, проектируют решения относительно мелких задач - на усмотрение архитектора). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 16:24 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Получается мелкие/средние проги проще поручить ОДНОМУ программисту, чем команде? Именно так. С одной поправкой: когда программа более-менее готова, стоит познакомить с ней одного-двух других программистов (например, поручая им сопровождение и мелкие доработки под надзором). ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2008, 16:29 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
student2007Вот в том-то и беда, что многие только одну математику и принимают во внимание. По вашему правильней будет:.... С точки зрения математики так получается? :-) С моей точки зрения сложность проекта в человекогодах зависит от того, сколько человек реализуют проект. Очевидно, что с увеличением количество человек необходимо увеличивать время на согласование их работы и т.п. Поэтому с увеличением людей сложность проекта в человекогодах всегда увеличивается. Будет ли это увеличение нивелировано распараллеливанием работы - еще неизвестно. Ситуации, когда ускорение работы параллельных алгоритмов по сравнению с последовательными больше 1 - крайняя редкость. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2008, 13:02 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Сергей ВаскецовСитуации, когда ускорение работы параллельных алгоритмов по сравнению с последовательными больше 1 - крайняя редкость.Ну-ну... тогда бы все компьютеры были бы однопроцессорными, а все фирмы разработчики - состояли из одного человека. PS: если вам не удается построить работу так как надо - это еще не значит, что ни у кого это не получалось и не получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2008, 17:49 |
|
Время затраченое одним и тремя, на сколько примерно отличается?
|
|||
---|---|---|---|
#18+
Bely Сергей ВаскецовСитуации, когда ускорение работы параллельных алгоритмов по сравнению с последовательными больше 1 - крайняя редкость.Ну-ну... тогда бы все компьютеры были бы однопроцессорными, а все фирмы разработчики - состояли из одного человека. PS: если вам не удается построить работу так как надо - это еще не значит, что ни у кого это не получалось и не получится. Ускорение при анализе работы параллельных алгоритмов - это не просто отношение времен выполнения алгоритмов, а приведенное к количеству узлов. Если задача полностью распараллеливается, и 2 процессора ее выполняют вдвое быстрее, N процессоров - в N раз быстрее - ускорение равно 1. Оставляю в качестве домашнего задания придумать ситуацию, когда ускорение может превышать 1, это крайне нетривиальные случаи. Но начать рекомендую с матчасти. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2008, 17:56 |
|
|
start [/forum/topic.php?fid=33&msg=35415589&tid=1548743]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 295ms |
total: | 556ms |
0 / 0 |