22 мая 2010 г.

Убедитесь в понимании проблемы перед ее решением

Автор: Рэймонд Чен.
Оригинал на английском: Before you develop a solution, make sure you really understand the problem.

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

Часто вам задают вопрос, заставляющий вас недоверчиво качать головой, но при уточнении оказывается, что в действительности человеку нужно не то, о чем он просит. На самом деле требуется нечто другое, но они уже "решили" часть проблемы и теперь надо только помочь им с решением оставшейся части, той, которая не имеет смысла. Например, вопрос "Как написать регулярное выражение, которое совпадает со всем, кроме XYZ?", но если копнуть глубже, выяснится, что на самом деле они упростили свою задачу до подхода "Я знаю, мне надо использовать регулярные выражения" и создали еще большую проблему. (Лучшее решение часто является сочетанием регулярных выражений и простой программной логики)

Эта проблема также существует при разработке пользовательского интерфейса. Рик Шаут описывает историю, в которой пользователь попросил одну возможность, а на самом деле нужна была совершенно другая. Понимание проблемы клиента - первый шаг на пути ее решения.

Комментариев нет:

Отправить комментарий