Цитата:
Сообщение от
petr
И как мы ... должны поступить?
Мне кажется, это во многом зависит от того, с чьей точки зрения смотреть на этот вопрос

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

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

). Разумеется, сразу сложно предстваить, в каких еще ситуациях эти "блоки" могут понадобиться, так что по мере развития функционала приходится не раз заниматься их рефакторингом с учетом новых особенностей, но это с лихвой окупается в плане времени разработки, когда новые типовые задачи решаются с использованием имеющихся наработок быстро и элегантно.
Цитата:
Сообщение от
glibs
Оптимизировать затраты клиента (в этом и вижу свою задачу как консультанта).
[...]
Но чтобы так делать нужно хорошо уметь воображать себе во что может вылиться финальное решение и знать систему, чтобы не пойти изначально не тем путем.
Интересно, а как еще можно оптимизировать затраты клиента, если не знать систему и не уметь оценивать, во сколько обойдется то или иное решение с учетом уже имеющейся логики работы и архитектуры системы?