“Proszę o dodanie możliwości usuwania błędnie dodanego X do Z”.
Często zdarza mi się słyszeć lub czytać takie zgłoszenie. Sęk w tym, że dodane X spowodowało wiele procesów automatycznych w aplikacji, czyli dodanie A, usunięcie B i zmianę statusów w C i D. Tak wyglądają złożone systemy informatyczne, o czym wielu użytkowników zwyczajnie nie wie (po to ukrywamy tą logikę w aplikacji, abyś Ty mógł wydajnie pracować nie myśląc o tych wszystkich szczegółach).
Zatem tracimy czas, żeby przeanalizować potencjalne skutki usunięcia X oraz na szukanie sposobów na przywrócenie spójności systemu po tej operacji chirurgicznej. Aż w końcu okazuje się, że samo istnienie błędnego X w systemie w niczym nie przeszkadza – ma być zwyczajnie niewidoczny na wydruku Z, który idzie do klienta.
Gdybyś od razu powiedział szczerze czego potrzebujesz – dałbym Ci to w 5 minut!

No właśnie… gdybyś nie mówił mi co mam robić, a zamiast tego powiedział mi czego potrzebujesz. Umówmy się: Ty jesteś specjalistą od używania systemu, ja jestem specjalistą od mechaniki jego działania. Nie mówisz swojemu mechanikowi, którą śrubę ma dokręcić – mówisz mu, że tu stuka… a ma nie stukać.
Bądź precyzyjny w kwestii swoich potrzeb.
Wchodząc w szczegóły techniczne może się wydawać, że zyskujemy precyzję, ale tak naprawdę tracimy kontekst. Kontekst pozwala mi znaleźć takie rozwiązania Twoich rozterek, które będą współgrały z aktualnymi mechanizmami aplikacji, zamiast je rozrywać na kawałki.
Gdy go nie ma, musimy wyjść najpierw od szczegółu, do ogółu i z powrotem. To dłuższa i niepotrzebna droga.
Nowy język, ciekawe podejście do tematu (nieco inne niż