Как убедить начальника?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 29.08.07 16:04
Оценка: :)
На работе получилась такая ситуация: после обновления программы у клиентов начали появляться ошибки (зависимые от оборудования, у себя протестировать не могли). Мне удалось обнаружить ошибку. Для её устранения потребуется переписать один класс. Класс был написан (правильнее сказать "рожден в мучениях") два года назад, комментариев ноль, автор уже уволился, короче рефакторинг делу не поможет. И все бы ничего, но надо это сделать быстро, желательно до конца недели.

Начальник отклонил мое предложение все переписать и хочет чтобы я связался с клиентами, выяснил какие у них стояли версии программы (учет этого конечно же не ведется), нашел где-то эти версии (полу-)годичной давности (естественно CVS никакого нет, а архив храниться где-то на дисках), проанализировал эти версии и внес локальные изменения для восстановления работоспособности.

Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?
Re: Как убедить начальника?
От: 0rc Украина  
Дата: 29.08.07 16:36
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Как теперь в этои убедить начальника?


Зачем? Вы ведь сами сказали, что ошибки возникли в следствии обновления программы.
... << RSDN@Home 1.2.0 alpha rev. 725>>
Re: Как убедить начальника?
От: frik  
Дата: 29.08.07 16:41
Оценка: -1
Здравствуйте, gandjustas, Вы писали:

G>Начальник отклонил мое предложение все переписать и хочет чтобы я связался с клиентами, выяснил какие у них стояли версии программы (учет этого конечно же не ведется), нашел где-то эти версии (полу-)годичной давности (естественно CVS никакого нет, а архив храниться где-то на дисках), проанализировал эти версии и внес локальные изменения для восстановления работоспособности.


G>Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?


ну так делай вид что ищешь. потом скажи что никаких версий нету
Re[2]: Как убедить начальника?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 29.08.07 16:58
Оценка:
Здравствуйте, 0rc, Вы писали:

0rc>Зачем? Вы ведь сами сказали, что ошибки возникли в следствии обновления программы.


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

Я уже думал включить дурачка и сделать по-своему, но хочется дать понять начальнику что стоит переписывать части программы для уменьшения сложности, а он зачем-то держится за старый код, позволяя вносить только мелкие изменения.
Re: Как убедить начальника?
От: bnk СССР http://unmanagedvisio.com/
Дата: 29.08.07 17:08
Оценка: +1 -1
Здравствуйте, gandjustas, Вы писали:

G>На работе получилась такая ситуация: после обновления программы у клиентов начали появляться ошибки (зависимые от оборудования, у себя протестировать не могли). Мне удалось обнаружить ошибку. Для её устранения потребуется переписать один класс. Класс был написан (правильнее сказать "рожден в мучениях") два года назад, комментариев ноль, автор уже уволился, короче рефакторинг делу не поможет. И все бы ничего, но надо это сделать быстро, желательно до конца недели.


G>Начальник отклонил мое предложение все переписать и хочет чтобы я связался с клиентами, выяснил какие у них стояли версии программы (учет этого конечно же не ведется), нашел где-то эти версии (полу-)годичной давности (естественно CVS никакого нет, а архив храниться где-то на дисках), проанализировал эти версии и внес локальные изменения для восстановления работоспособности.


G>Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?


IMHO, ваш начальник прав. спрашивайте клиента, ищите исходники...
"Переписать все" — типовая ошибка, ее последствия обычно еще хуже.
Хотя в вашем конкретном случае все может быть и по-другому.
Re: Как убедить начальника?
От: Baudolino  
Дата: 29.08.07 17:15
Оценка: +3
G>Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?
Хочется-не хочется, а при такой организации сначала правильнее будет накатить мелкий патч или сделать откат к старым версиям у клиентов, чтобы выиграть время для существенных исправлений. Возможно, ваш начальник не договаривает насчёт дальнейших планов?

(одно "но": исходя из описаний могу предположить, что ваша контора относится к тому типу, для которого рациональные пути решения проблем вряд ли будут правильными, а потому лучше тупо делать, как велит начальник, а если совсем невмоготу, увольняться с надеждой на лучшее)
Re[2]: Как убедить начальника?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 29.08.07 17:16
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>IMHO, ваш начальник прав. спрашивайте клиента, ищите исходники...

bnk>"Переписать все" — типовая ошибка, ее последствия обычно еще хуже.
bnk>Хотя в вашем конкретном случае все может быть и по-другому.

Абсолютно не имею желания переписывать все. Переписать реально надо ОДИН класс, 600-1000 строк кода, после переписывания объем может уменьшиться в 2 раза.
Re[3]: Как убедить начальника?
От: Daevaorn Россия  
Дата: 29.08.07 17:21
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, bnk, Вы писали:


bnk>>IMHO, ваш начальник прав. спрашивайте клиента, ищите исходники...

bnk>>"Переписать все" — типовая ошибка, ее последствия обычно еще хуже.
bnk>>Хотя в вашем конкретном случае все может быть и по-другому.

G>Абсолютно не имею желания переписывать все. Переписать реально надо ОДИН класс, 600-1000 строк кода, после переписывания объем может уменьшиться в 2 раза.

Ну так перепеши. Начальник что, изучает каждый раз код табою написанный? Ему важен результат скорей всего.
Re[4]: Как убедить начальника?
От: bnk СССР http://unmanagedvisio.com/
Дата: 29.08.07 18:25
Оценка: 1 (1) +1
Здравствуйте, Daevaorn, Вы писали:

G>>Абсолютно не имею желания переписывать все. Переписать реально надо ОДИН класс, 600-1000 строк кода, после переписывания объем может уменьшиться в 2 раза.


D>Ну так перепеши. Начальник что, изучает каждый раз код табою написанный? Ему важен результат скорей всего.


IMHO, такая линия поведения называется словом "саботаж"
Re[5]: Как убедить начальника?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 29.08.07 18:37
Оценка:
Здравствуйте, bnk, Вы писали:

bnk>IMHO, такая линия поведения называется словом "саботаж"

И в чем саботаж то заключается? В любом случае ошибка будет исправлена, подход разный.
Re[6]: Как убедить начальника?
От: bnk СССР http://unmanagedvisio.com/
Дата: 29.08.07 18:47
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Здравствуйте, bnk, Вы писали:


bnk>>IMHO, такая линия поведения называется словом "саботаж"

G>И в чем саботаж то заключается? В любом случае ошибка будет исправлена, подход разный.

вообще-то это "цитата" была

- Gentlemen, I've completed my report on the crash.
— Whoa! I'm not reading that crap. Summarise it in one word.
— Sabotage!


А имел я в виду то, что без согласования с начальником делать по-своему не есть хорошая идея (в общем случае).
Re: Как убедить начальника?
От: uuu2  
Дата: 30.08.07 01:46
Оценка: 1 (1) +2
Не надо никого убеждать. Выполняйте поставленную задачу — так, как сказал начальник. Возможно, он знает что-то, чего не знаете вы. В любом случае, ему надо сообщить своё мнение, но если он настаивает на своём — выполняйте.
Re[3]: Как убедить начальника?
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 30.08.07 05:13
Оценка: 1 (1) +3
Здравствуйте, gandjustas, Вы писали:
G>Я уже думал включить дурачка и сделать по-своему, но хочется дать понять начальнику что стоит переписывать части программы для уменьшения сложности, а он зачем-то держится за старый код, позволяя вносить только мелкие изменения.

Начальник правильно делает.
Если это класс работы с железом, то там _могут_ _быть_ неочевидные (не поддающиеся логическому объяснеию) элементы (задержки, вставки пустых байт, последователнтсти запросов и т.д.) которые есть резултат старого опыта и "большого траха". Поскольку они "не следуют из логики", вы их наверняка потеряете при переписывании. И начнете круг "большого траха" по новой. Особенно это касается российского "железа", но и западного тоже.
Re[4]: Как убедить начальника?
От: Pavel_Agurov Россия  
Дата: 30.08.07 07:07
Оценка: 1 (1)
Здравствуйте, Alex EXO, Вы писали:

AE>Здравствуйте, gandjustas, Вы писали:

G>>Я уже думал включить дурачка и сделать по-своему, но хочется дать понять начальнику что стоит переписывать части программы для уменьшения сложности, а он зачем-то держится за старый код, позволяя вносить только мелкие изменения.

И он прав. Вы видете только кривой код, а он видит больше. Исправить код не проблема, но чем больше вы внесете изменений, тем больше нужно будет перетестировать и перепроверять. Переписать 1000 строк кода — гарантированно получить десяток ошибок. Их нужно будет исправлять и снова тестировать. И не говорите что вы такой гениальный, что пишете код без ошибок и перепишете эту тысячу без проблем. Так не бывает. Внесение точечных изменений — правильный подход. Переписать все можно только при запасе времени на полное перетестироание системы, а при работе с железом — так еще и проверки что у всех клиентов ничего не сломалось.
Re[5]: Как убедить начальника?
От: Alex EXO http://aleksandr-zubarev.moikrug.ru/
Дата: 30.08.07 07:41
Оценка:
Здравствуйте, Pavel_Agurov, Вы писали:
P_A>Здравствуйте, Alex EXO, Вы писали:

Это вы не мне отвечали.
Re: Как убедить начальника?
От: Трофимов  
Дата: 30.08.07 08:27
Оценка:
2All: Человек спрашивает "Как убедить начальника?", а ему как всегда отвечают "Купите Windows 98!".

PS Я не знаю, как убедить начальника. Вспомните, как Вы в детстве убеждали маму.
Re: Как убедить начальника?
От: Гоги Россия  
Дата: 30.08.07 09:03
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?


Вам меньше 23 лет?
Re: Как убедить начальника?
От: bastrakov Россия http://bastrakof.livejournal.com/
Дата: 30.08.07 09:55
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>На работе получилась такая ситуация: после обновления программы у клиентов начали появляться ошибки (зависимые от оборудования, у себя протестировать не могли). Мне удалось обнаружить ошибку. Для её устранения потребуется переписать один класс. Класс был написан (правильнее сказать "рожден в мучениях") два года назад, комментариев ноль, автор уже уволился, короче рефакторинг делу не поможет. И все бы ничего, но надо это сделать быстро, желательно до конца недели.


G>Начальник отклонил мое предложение все переписать и хочет чтобы я связался с клиентами, выяснил какие у них стояли версии программы (учет этого конечно же не ведется), нашел где-то эти версии (полу-)годичной давности (естественно CVS никакого нет, а архив храниться где-то на дисках), проанализировал эти версии и внес локальные изменения для восстановления работоспособности.


G>Мне этого делать совсем нехочется, да и переписать, по-моему, правильнее будет. Как теперь в этои убедить начальника?


гм... я прочитал правильное замечание "трофимова", потому ответы только на вопрос.

убедить начальника, что это делать не хочется просто. надо сказать, что ты не хочешь это делать. он поверит.

то, что переписать "это" проще — убедить начальника сложнее. для этого надо сделать:
1) написать план переписывания.
2) написать план тестирования.
3) написать план накатывания обновленной версии для всех пользователей.
4) не забыть включить время для исправления при тестировании и для исправления после деплоймента.
5) все это собрать в одно письмо, и оправить в адрес начальника. можно сделать сс на другого начальника или на одного из представителей заказчика. в письме мотивировано обьяснить, чем это лучше, и к чему приведет в дальнейшем. если начальник "технически правильный" — можно вложить код с подробным коментарием.

для демонстрации разницы:
1) написать план исследования клиентов
2) написать план работы с изменениями у клиентов.
3) указать количество разных систем и возможные проблемы адаптации под системы.
4) сравнить планы по времени и ресурсам.

...тока... оно тебе надо?!..
может быть, что ты зарабатываешь от времени "на клиенте" больше.

во
Re[4]: Как убедить начальника?
От: Miroff Россия  
Дата: 30.08.07 11:00
Оценка:
Здравствуйте, Alex EXO, Вы писали:


AE>Если это класс работы с железом, то там _могут_ _быть_ неочевидные (не поддающиеся логическому объяснеию) элементы (задержки, вставки пустых байт, последователнтсти запросов и т.д.) которые есть резултат старого опыта и "большого траха". Поскольку они "не следуют из логики", вы их наверняка потеряете при переписывании. И начнете круг "большого траха" по новой. Особенно это касается российского "железа", но и западного тоже.


Такие "неочевидные" элементы в большинстве случаев результат невнимательного чтения спеки, наивного подхода к решению проблем или криворукой оптимизации. Поскольку "цикл большого траха" обычно проходит в темпе гопака с чечеткой, разбираться в причинах ошибки, а уж тем более читать документацию недосуг. Вот и получается корявый код, изобилующий никак не отмеченными хаками, в котором никто не способен разобраться.
Re[5]: Как убедить начальника?
От: Ромашка Украина  
Дата: 30.08.07 11:32
Оценка:
Miroff пишет:
> Такие "неочевидные" элементы в большинстве случаев результат
> невнимательного чтения спеки, наивного подхода к решению проблем или
> криворукой оптимизации. Поскольку "цикл большого траха" обычно проходит
> в темпе гопака с чечеткой, разбираться в причинах ошибки, а уж тем более
> читать документацию недосуг. Вот и получается корявый код, изобилующий
> никак не отмеченными хаками, в котором никто не способен разобраться.

Единственное, с чем я согласен с Вами, так это с Вашим "наивным подходом
к решению проблем".

Тут иногда с более серьезными продуктами приходится с бубном плясать
(http://rsdn.ru/Forum/message/1685895.1.aspx
Автор: Ромашка
Дата: 17.02.06
), не говоря уже об
железяках местного производства.
Posted via RSDN NNTP Server 2.1 beta


Всё, что нас не убивает, ещё горько об этом пожалеет.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.