Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как бороться с непрофессионализмом? 
:(
    Опции темы
W4FhLF
Дата 13.4.2008, 08:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: нет
Всего: 121



Приветствую всех.

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

Профессор, как программист(в понятии, включающем всю широту данного занятия) не силён. Он решает свои проблемы, может запрограммировать алгоритм на фортране, написан огромную функцию, понятную лишь ему. Кроме меня? в проекте учавствует ещё один неопытный программист-студент(опыт работы в команде == 0), пишущий на делфи потому, что последний предусмотрен ВУЗовской программой. Когда я пытаюсь говорить в терминах ООП они делают круглые глаза, я решил пусть каждый мыслит в терминах удобных ему, лишь бы код был качественный(хотя неясно, как мы потом будем в команде писать). Люди не понимают почему нельзя начинать писать код до этапа проектирования. Я должен объяснять почему функции объёмом 500 строк - зло. 

Самое сложное, что руководитель проекта - профессор и я не в состоянии сказать делать так-то и так-то, да и что толку, если люди не понимают... Я уж думал давать выдержки из книг знаменитых авторов, если моё мнение не является столь авторитетным, но тактично ли так делать? Проект интересный и я заинтересован в участии, но как работать в такой команде? Опускаться до уровня написании громоздкой, несопровождаемой и немасштабируемой системы? Не могу. Как тогда донести до людей, что подготовительный этап и тщательное обсуждений даже самых мелких деталей зачастую просто необходимо и не является излишеством? 

С ув. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
S.A.G.
Дата 13.4.2008, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


не эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1339
Регистрация: 20.7.2006
Где: in ad equate

Репутация: нет
Всего: 19



Цитата(W4FhLF @  13.4.2008,  08:10 Найти цитируемый пост)
 но тактично ли так делать?

Не совсем. Но и не совсем нетактично. Постарайтесь объяснить разумному человеку (а вы его отрекомендовали именно так), что задача, которая решается текущими методами, неможет быть решена качественно. Если вы его не сможете убедить, то выбор за вами. Такой вам мой совет студента (я бы сделал так). smile


--------------------
Вот она задачка: спасти себя от себя самого © Cube
Sometimes good people do evil things © A Simple Plan
PM   Вверх
bilbobagginz
Дата 13.4.2008, 15:42 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 1
Всего: 317



Цитата(W4FhLF @  13.4.2008,  08:10 Найти цитируемый пост)
Проект интересный и я заинтересован в участии, но как работать в такой команде?

а какая твоя роль в этой команде ?

Добавлено @ 15:43
Цитата(W4FhLF @  13.4.2008,  08:10 Найти цитируемый пост)
Самое сложное, что руководитель проекта - профессор и я не в состоянии сказать делать так-то и так-то, да и что толку, если люди не понимают... 

хмм... а есть ли команда ? и он ли - тим-лид ?
руководство должно во первых быть руководством, т.е. быть СПОСОБНЫМ сказать делать "так-то" или "сяк-то".

имхо вам нужно определиться как команде, назначить руководителя, которого ВСЕ буду слушать, и который будет координировать.
если команда достаточно крупная - назначить и помощников.

если проект будет большим и долгим - писать его через зад - это закапывать его.
кстати не недооценивай 500 строчные программы на фортране ;-). особенно если они делают свою работу, и алгоритмически не страшны.

у мя такое впечатление, что проект этот - академический, а смысле работоспособности команд в некоторых академических кругах - паталогический: решите организационные вопросы, поменяйте команду на более контролируемых и кооперирующих людей.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
JackYF
Дата 13.4.2008, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Вообще проблема, наверное, встречается часто.

Как вариант - попробовать объяснить это профессору, пусть он выскажет им, что в плане проектирования главный - ты, и с тобой надо считаться.
Если нет... тогда надо думать.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
W4FhLF
Дата 13.4.2008, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: нет
Всего: 121



Цитата(S.A.G. @  13.4.2008,  10:36 Найти цитируемый пост)
Постарайтесь объяснить разумному человеку (а вы его отрекомендовали именно так), что задача, которая решается текущими методами, неможет быть решена качественно.


Именно это я и пытаюсь сделать smile Сейчас определился с тем, что надо приводить побольше примеров и цифр из реальной жизни, он всё-таки математик и реальным доказательствам внять может. Поэтому на выходных лазил в книги по проектированию за примерами различных подходов и их применением в реальных крупных проектах. 

Цитата(bilbobagginz @  13.4.2008,  15:42 Найти цитируемый пост)
а какая твоя роль в этой команде ?


Да в общем-то была поставлена задача превратить в код большой и сложный мат. алгоритм. Я был приглашён в качестве программиста. 

Цитата(bilbobagginz @  13.4.2008,  15:42 Найти цитируемый пост)
хмм... а есть ли команда ? и он ли - тим-лид ?руководство должно во первых быть руководством, т.е. быть СПОСОБНЫМ сказать делать "так-то" или "сяк-то".


Да в том-то и дело, что люди пока не представляют как следует вести проекты по разработке ПО в команде. Т.е. ситуация такая: профессор просто хочет декомпозировать проект на блоки и чтобы мы отдельно все эти блоки запрограммировали, а потом собрали во что-то единое. Ну я то понимаю, что даже если мы доведём в таком виде систему до какого-то более или менее рабочего состояния, то на этом мы и остановимся, прогресс прекратится. А если кто-то уйдёт во-время разработки так и вообще проект встанет неизвестно насколько. Поэтому на следующей встрече внесу вопрос о использовании систем контроля версий и систем управления проектами, посмотрим насколько хорошо/плохо будут приняты идеи.

Цитата(bilbobagginz @  13.4.2008,  15:42 Найти цитируемый пост)
кстати не недооценивай 500 строчные программы на фортране ;-). особенно если они делают свою работу, и алгоритмически не страшны.


Ну Вы, наверное, представляете как пишет программы математик?smile Переменные i,j,k,m,n и вперёд smile Дело не в этом. Я боюсь некачественного кода, в котором придётся потом разбираться. В частности, эта функция представляет из себя нехилый алгоритм, который будет одним из частей ядра системы. 
На прошлой встрече я убедил всех начать с выработки требований. В итоге мы пришли к выводу, что, т.к. система проводит весьма долгие вычисления, а число ядер в процессорах будет только расти, необходимо включать в список требований мультипроцессорность. А это значит, что придётся разбираться с мат. алгоритмами на самом низком уровне, чтобы предусмотреть возможность работы параллельно, а когда перед глазами шмот кода в 500 строк, написанный понятным только автору образом, то это слегка тревожит. smile 
Возможно, я слегка утрирую и в нашем случае всё будет не так страшно, но интуитивно понимаю, что подход не очень-то перспективен.

Цитата(bilbobagginz @  13.4.2008,  15:42 Найти цитируемый пост)
у мя такое впечатление, что проект этот - академический


Нет, коммерческий. А вот подход точно академический.

Добавлено через 11 минут и 43 секунды
Цитата(JackYF @  13.4.2008,  15:47 Найти цитируемый пост)
Как вариант - попробовать объяснить это профессору, пусть он выскажет им, что в плане проектирования главный - ты, и с тобой надо считаться.


Пример с прошлой встречи. Проф решил, что пока я займусь проектированием, другой программист на Delphi будет писать ядро системы, т.е. функционал, который в любом случае в проекте будет, в каком виде он будет мы, конечно, не знаем, ибо проектирование ещё не проведено. Я сказал, что не следует приступать к коду, ибо рановато ещё. Убедить не удалось, хотя я привёл веские аргументы, что этот код в итоге придётся переписать под нашу конечную архитектуру, сказали: "перепишем, не проблема". В итоге на след. встречу пойду с чётким обоснованием и доказательствами того, что Delphi для реализации этого алгоритма не приемлем(нет поддержки SIMD и OpenMP + он медленнее в этом случае на 35%, ибо я сам в итоге этот алгоритм нашёл, подправил, собрал 3мя компиляторами(2 С++ и 1 delphi) и протестировал на 7ми разных процессорах), ну а программист, который всю неделю писал код - потратил время зря. Жаль конечно. 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
JackYF
Дата 13.4.2008, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(W4FhLF @  13.4.2008,  16:01 Найти цитируемый пост)
другой программист на Delphi будет писать ядро системы

Да уж...

Кстати, боюсь, что ты сам сможешь написать проект лучше (а, возможно, и быстрее), чем ваша разношёрстная группа.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
arilou
Дата 14.4.2008, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Великий МунаБудвин
****


Профиль
Группа: Экс. модератор
Сообщений: 2646
Регистрация: 15.7.2004
Где: город-герой Минск

Репутация: 1
Всего: 61



W4FhLF, А зачем вам на данном этапе тот студент? Только проблем огребете. Если продукт коммерческий, надо подходить соответственно. В первую очередь, написать документ с требованиями, потом описать продукт с точки зрения пользователя (функциональная спецификация). Далее, создать выскокоуровневую архитектуру системы исходя из требований, известных на момент начала проекта. 

Далее нужно трансформировать спеку в план работ и начинать писать код. Думаю, в неделю можно уложиться с первым этапом (до начала кодирования).

Потом надо бы предложить профессору свой алгоритм описать словами. Код на Фортране - это хорошо, но это всего лишь концепт-прототип (proof of concept prototype). Этот код ни в коем случае не должен попасть в продакшн   smile 


--------------------
user posted imageuser posted image
PM WWW ICQ   Вверх
bilbobagginz
Дата 14.4.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 1
Всего: 317



Цитата(W4FhLF @  13.4.2008,  17:01 Найти цитируемый пост)
Нет, коммерческий. А вот подход точно академический.

нужно всем объяснить разницу между академическим и коммерческим проектом.
делается это просто: профессора и асприранты на свою з/п обычно не живут, а программисты - живут.
а если хочется кормиться с дела - дело нужно делать правильно.
насчет студентов - действительно, это нужно с большой осторожностью делать.
вам имхо нужен тимлид профессиональный.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
W4FhLF
Дата 18.4.2008, 10:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: нет
Всего: 121



Спасибо всем за советы и помощь, кое-что сдвигается с места. Будет непросто, но придётся исходить из того, что есть smile 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
arilou

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание на то, что новые темы, касающиеся новых вопросов, создаются кнопкой "Новая тема", а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих темах, будут удалены.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, arilou.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | УП: Человеческий фактор | Следующая тема »


 




[ Время генерации скрипта: 0.1345 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.