Frage:
Wie man Geschäftsleuten erklärt, dass ihre Funktionsanforderung nicht realisierbar ist
Buzz
2012-11-27 11:38:59 UTC
view on stackexchange narkive permalink

In meiner Rolle sitze ich einige Zeit mit Geschäftsleuten von & (Personen, die direkt mit Kunden in Verbindung stehen) zusammen, um neue Funktionen oder Änderungen zu besprechen. Diese Personen sind meistens nicht technisch und wissen nichts über das System und seinen internen Prozess.
Manchmal geben sie sehr wertvolle Vorschläge und Einblicke in das System, aber manchmal fordern sie sehr merkwürdige Funktionen an, die meiner Meinung nach für den Endbenutzer sehr wenig nützlich und sehr schwer zu implementieren sind .
Ich kann meine technischen Schwierigkeiten nicht erklären, weil sie sie nicht verstehen werden.
Wie kann ich sie davon überzeugen, dass die Anfrage unmöglich und ist?

Diese Frage bezieht sich eher auf eine bestimmte Jobfunktion als auf die Navigation am Arbeitsplatz. Daher ist es nicht zum Thema.
Ich würde dies für die Moderatormigration empfehlen - Benutzererfahrung oder Stapelüberlauf funktionieren möglicherweise -, aber ich bin @Chad - dies ist ein Standardproblem in der Informatik, keine Frage am Arbeitsplatz.
"... ich denke, der Endbenutzer hat sehr wenig Sinn ..." - Wenn sie der Endbenutzer sind, wissen sie es besser als Sie. Sie sollten sich nur alle ihre Anfragen ansehen und entsprechende Schätzungen vorlegen (auch wenn es sich um verrückte Arbeitsmengen handelt), und sie dann entscheiden lassen, was es wert ist, aufbewahrt zu werden und was nicht.
Ich bin verwirrt, warum dies offtopic ist? Wenn es nicht hierher gehört, können sie unter http://programmers.stackexchange.com passen
@Suslik - Nach meiner Erfahrung fragen Benutzer selten nach dem, was sie tatsächlich wollen. Sie wissen, was sie zu wollen glauben, aber wenn Sie ihnen das geben, sagen sie, dass ich darum gebeten habe, nicht was ich will.
@Chad Ein BA sollte Anforderungen aktiv ausdrücken, anstatt sie zum Nennwert zu nehmen. Vorausgesetzt, das ist richtig gemacht und Sie verstehen, was der Benutzer will (nicht was er sagt, dass er will), ist es nicht Ihre Aufgabe, zu entscheiden, ob es sinnvoll ist, zu bauen oder nicht - es ist die Aufgabe der Stakeholder. Eine schreckliche Sache, die einige BAs tun, ist, dass sie anfangen zu entscheiden, was es wert ist und was nicht, während sie die Prioritäten des Benutzers ignorieren.
Bei der Bearbeitung von @With könnte dies zu einer allgemeinen Frage werden, mit der viele Menschen am Arbeitsplatz konfrontiert sind. Wie man "externe" Vorschläge für "offensichtliche, einfache" Änderungen an einem System, einem Prozess oder einem Tool verwaltet - da die externe Person nicht das vollständige Bild hat, hat dies enorme versteckte Auswirkungen auf Kosten, Zeit und Priorität.
@Suslik Sie gehen davon aus, dass jeder einen BA hat, um Anforderungen für ihn zu erhalten ... schlechte Annahme.
Fragen Sie, wie viel Geld die Funktion verdienen wird. Und dann denken Sie über die Schwierigkeit nach und sagen ihnen, wie viel Geld die Implementierung kosten wird. Sie müssen nicht verstehen, warum es Geld verdienen wird. Sie müssen nicht verstehen, warum die Implementierung kosten wird. Wenn das Geld, das sie verdienen, deutlich höher ist als das, was es Sie kostet (unter Berücksichtigung der Opportunitätskosten, die sie hoffentlich verstehen), stimmen Sie dem zu, andernfalls tun Sie es nicht. Nichts ist unmöglich. Einige Dinge sind sehr, sehr teuer.
Denken Sie daran, dass Vertriebsmitarbeiter häufig nach Dingen fragen, weil ein (potenzieller) Kunde nach ihnen gefragt hat. Potenzielle Kunden fragen häufig nach Funktionen, die Sie nicht haben, nicht weil sie die Funktion möchten, sondern weil sie Ihr Produkt nicht möchten, und sie finden es höflicher, auf einer Funktion zu bestehen, die Sie dann nicht benötigen Sagen Sie dem Verkäufer ins Gesicht, dass sein Produkt stinkt. Wenn Sie die Funktion bereitstellen, werden sie immer noch nicht kaufen, sondern nach einer anderen Funktion fragen, die Sie erst haben, wenn der Verkäufer die Nachricht erhält.
Dies ist ein Problem bei der Kommunikation am Arbeitsplatz. Es ist zum Thema.
Euan M hat es gesagt.Hier geht es um Kommunikation am Arbeitsplatz.
Sechs antworten:
David Segonds
2012-11-27 12:58:12 UTC
view on stackexchange narkive permalink

Möglicherweise möchten Sie das Gespräch beginnen, indem Sie um Erläuterungen zu den Anforderungen bitten, um sie besser zu verstehen. Dies wird dazu beitragen, den Unternehmer zu beruhigen, anstatt konfrontativ zu wirken. Die Frage, warum sie die Anforderung überhaupt benötigen, zeigt Interesse und Bereitschaft, die Bedürfnisse des Endbenutzers zu befriedigen.

Dann können Sie erklären, dass nichts wirklich undurchführbar ist, solange Sie genügend Zeit und Ressourcen dafür aufwenden das Problem. Daher können Sie eine explorative Schätzung darüber abgeben, wie lange es dauern würde, bis Sie die Anforderungen implementiert haben. Sie stellen ihrerseits Fragen zu den Schätzungen und warum sie so hoch sind.

Sie können den Unternehmer auch fragen, welchen Teil der Anforderungen er zuerst implementieren möchte. Dies wird ihnen und Ihnen helfen, zu verstehen, was das wichtigste Stück ist, und dieser Teil kann möglicherweise machbar sein.

Im Allgemeinen versuche ich, emotionslos zu bleiben und meine Aufmerksamkeit darauf zu richten, die Notwendigkeit zu verstehen und in verschiedene Teile zu zerlegen Teile und Schätzen der Zeit, die zum Implementieren jedes Teils benötigt wird.

+1 Lassen Sie sie entscheiden, wie viel sie für ein Feature bezahlen möchten - es ist eine Geschäftsentscheidung, keine Entwicklerentscheidung.
gute Punkte David
"... nichts ist wirklich undurchführbar, solange Sie genügend Zeit und Ressourcen für das Problem einsetzen."Dies ist nicht nur falsch, sondern auch gefährlich, da Sie sich in eine Situation versetzen, in der der Kunde möglicherweise nach etwas fragt, das technisch wirklich unrealistisch ist, nachdem Sie ihm den Eindruck vermittelt haben, dass Sie mit genügend Zeit / Geld / etc. Alles tun können.Es ist schwierig, nicht-technischen Personen technische Einschränkungen zu erklären, aber das bedeutet nicht, dass Sie unehrlich sein sollten, wenn ein Kunde etwas anfordert, das einfach nicht möglich ist.
Neil T.
2012-11-27 12:29:52 UTC
view on stackexchange narkive permalink

Sie müssen ihnen die technischen Details nicht erklären, aber Sie müssen ihnen ein Verständnis für die Herausforderungen vermitteln, denen Sie bei der Implementierung begegnen müssen. Eine Sache, die Sie immer im Auge behalten müssen (und ich bin seit fast 30 Jahren Entwickler), ist, dass die Mitarbeiter in den Bereichen Geschäft und Betrieb Experten in ihrem Geschäft und im Betrieb des Unternehmens sind. Ich bin auf meinen Reisen auf zu viele technische Leute gestoßen, die die Tatsache aus den Augen verlieren, dass die Leute, mit denen sie täglich zu tun haben, zwar sehr wenig über Computer- und Softwareentwicklung wissen, aber weit mehr über Geschäfts- und Unternehmensabläufe wissen als tun sie. Der Entwickler muss sich dem Problem mit dem Auge einer Person nähern, die ihr Problem lösen möchte, und nicht ihren Ansatz kritisieren.

Nehmen Sie jedoch an einer Diskussion teil, die es ihnen ermöglicht, Ihnen genau zu zeigen, was Sie brauchen. Gehen Sie so einfach vor, wie Sie es brauchen, denn je besser Sie das Problem verstehen, desto einfacher wird es für Sie, einen alternativen Weg vorzuschlagen, der ihnen das meiste, wenn nicht alles bietet, wonach sie suchen, ohne Ihre Entwicklung übermäßig zu belasten Zeitplan. Sie kommen zu Ihnen, um Hilfe zu erhalten, und wenn Sie sich die Zeit nehmen, auf ihre Bedürfnisse zu hören und das Problem, das sie zu lösen versuchen, vollständig zu verstehen, werden Sie nicht nur die Dankbarkeit einer verzweifelten Gruppe von Menschen haben, sondern auch eine Qualität Lösung, mit der Sie nur für alle, die davon betroffen sind, gut aussehen.

GuyM
2012-11-27 13:30:11 UTC
view on stackexchange narkive permalink

In solchen Situationen finde ich die Technik "Ja natürlich ... aber" nützlich.

" Ja natürlich Wir können Feature X jedoch die Art und Weise, wie der Code derzeit entwickelt wird, würde bedeuten, was wir als "Coding-Epos" bezeichnen. Ohne eine detaillierte Analyse mit dem Team ist es schwer zu sagen, aber die Implementierung könnte ungefähr 16 Wochen dauern, wenn Wir haben alle anderen Aufgaben fallen gelassen, die nächste Version zurückgeschoben und uns nur darauf konzentriert. "

Der Vorteil hierbei ist, dass Sie die Wichtigkeit der Anfrage falsch verstanden haben - was bedeutet, dass Sie nicht direkt mit dem Ende sprechen -Benutzer ist immer möglich - Wenn es das Wichtigste im Universum ist, kann es angesprochen werden.

Angelo
2012-11-27 21:12:45 UTC
view on stackexchange narkive permalink

Ich denke, was Sie möglicherweise sehen, ist wirklich ein Problem bei der Erfassung von Anforderungen.

Sie erhalten eine Feature-Anfrage, die keinen Sinn ergibt. Dies könnte bedeuten, dass das Geschäftsteam nicht weiß, wovon es spricht, aber es ist viel wahrscheinlicher, dass es eine falsche Übereinstimmung zwischen dem gibt, was Sie Ihrer Meinung nach verlangen, und dem, was es wirklich benötigt.

Bei der Anforderungserfassung geht es darum, zu bestimmen, was die Kunden benötigen und NICHT, was sie buchstäblich verlangen. Die Kunden sind möglicherweise nicht in der Lage, ihr Problem / ihre Anfrage in ein Formular zu fassen, das für jemanden zum Entwerfen und Implementieren sinnvoll ist. Es liegt an der anderen Seite, die Arbeit zu tun, um zu verstehen, welche Ergebnisse gewünscht werden, und dann einen Plan zu entwickeln, um diese Ergebnisse zu erreichen. Mit anderen Worten, eine effektive Erfassung von Anforderungen ist keine einseitige Übertragung von Anforderungen vom Kunden an den Implementierer, sondern ein dialektischer Prozess, bei dem ein gewisses Maß an Hin- und Her-Ausgabe die realen Anforderungen ausgibt Rhetorik, mit der der Implementierer arbeiten kann.

vartec
2012-11-27 17:52:24 UTC
view on stackexchange narkive permalink

Haben Sie einen richtigen Fluss. Erlauben Sie Geschäftsleuten nicht, direkte Anfragen an Entwickler zu richten. Änderungsanforderungen müssen mithilfe der Issue-Tracking-Software eingereicht werden. Und dann würden sie nicht direkt an Entwickler gehen, sondern an einen Produktmanager, der sie anhand des Geschäftswerts und Ihrer Einschätzung der damit verbundenen Arbeit priorisiert.

Offensichtlich werden Vorschläge mit geringem Geschäftswert und viel Entwicklerarbeit entweder abgelehnt. Oder, wie es in einigen Organisationen praktiziert wird, ganz unten im Rückstand stehen (wo sie höchstwahrscheinlich für immer bleiben werden).

SQLSavant
2012-11-27 19:10:00 UTC
view on stackexchange narkive permalink

Unabhängig davon, wie Sie arbeiten, um ihnen zu sagen: "Nun, die Art und Weise, wie wir unser Kerncode-Setup derzeit haben, würde dies nicht funktionieren" oder "Dies würde unseren Kunden technisch wenig Wert geben."

Sprechen Sie stattdessen mit ihnen über Geschäfte .

Diese Leute kennen Geld und sie kennen Charts. Bei einer Machbarkeitsbewertung an meinem Arbeitsplatz stellt meine Entwicklungsabteilung immer sicher, dass ein Angebot enthalten ist und dass dieses Angebot nicht nur den Geldwert berücksichtigt, der Zeit und Ressourcen kosten würde, sondern auch die Vernunft. Wenn das Projekt wahrscheinlich keinen Wert liefert oder zu problematisch ist, um zu versuchen, es zu füllen, wird das Angebot erhöht.

Die Preisgestaltung für die Arbeit und die mögliche Darstellung des Return on Investment wird der einfachste Weg sein, um ihnen zu zeigen, dass es aus ihrer Sicht eine schlechte Projektidee ist. Wenn Sie mit beiden nicht in der Lage sind, ist dies wahrscheinlich keine undurchführbare oder schlechte Idee.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...