GeschÀfts- und Systemanalytiker. Was du wissen musst

Bild

Schöne GrĂŒĂŸe! Mein Name ist Sergey und ich bin ein Business / System-Analyst. Ich arbeite seit ungefĂ€hr 8 Jahren in der IT-Branche, angefangen bei der UnterstĂŒtzung beim Testen bis hin zur Analyse: sowohl im GeschĂ€fts- als auch im Systembereich. Ich habe noch nicht getrennt als Unternehmen und als Systemanalyst gearbeitet.

Im Laufe meiner beruflichen AktivitĂ€ten im Allgemeinen, einschließlich Praxis- und persönlicher Interviews und insbesondere Interviews mit potenziellen Kandidaten, wurde mir allmĂ€hlich klar, welche FĂ€higkeiten der Markt vom Analysten erwartet. Habr hat lange Zeit keine neuen Artikel zu diesem Thema gesehen, deshalb habe ich beschlossen, das Material selbst vorzubereiten.

FĂŒr wen wird der Artikel meiner Meinung nach nĂŒtzlich sein:

  • AnfĂ€ngliche GeschĂ€fts- / Systemanalysten;
  • Analysten, die ihren prof weiter pumpen wollen. Kompetenzen
  • Vielleicht Rekrutierungsmanager.

Ich muss sofort sagen, dass die folgenden Punkte meine subjektive Vision der Spezialisierung des Analytikers sind , die wĂ€hrend der Praxis gebildet wurde. Wenn Ihr Unternehmen ein vollwertiges Scrum mit einem Produktbesitzer durchfĂŒhrt, der einen Meter von Ihnen entfernt sitzt und einem Designer und einem Architekten fĂŒr das Team zugewiesen ist, sind einige der oben genannten Punkte möglicherweise nicht gefragt.

Dennoch werden zumindest all diese FĂ€higkeiten nicht ĂŒberflĂŒssig sein und den Analytiker in seinen Fragen noch kompetenter machen. NatĂŒrlich mĂŒssen Sie verstehen, dass ich nicht alle FĂ€higkeiten und Fertigkeiten des Analysten aufgelistet habe (dieselben Notationen, GeschĂ€ftsfĂ€higkeiten, SQL usw.).

GeschÀftsanalysen


Bild

  • Beseitigen Sie mehrdeutige Anforderungen in den frĂŒhesten Phasen

Wenn Sie mit einem GeschĂ€ftskunden sprechen, mĂŒssen Sie sich bewusst sein, dass sich seine Sprache erheblich von Ihrer unterscheiden kann. Eine GeschĂ€ftsanforderung kann so geĂ€ußert werden, dass mehrere Teilnehmer am Genehmigungsprozess ein unterschiedliches VerstĂ€ndnis dafĂŒr haben, was diese Anforderung bedeutet. Die Mehrdeutigkeit wird erzeugt, was fĂŒr das Team in spĂ€teren Entwicklungsstadien sehr teuer ist.

Das Problem ist am akutesten, wenn es mehrere GeschÀftskunden gibt, von denen jeder seine eigenen Anforderungen stellt. Zum Beispiel bei der Integration von zwei Systemen, von denen jedes einen eigenen Vertreter aus dem Unternehmen hat.

Fallstudie: Ein Monat Entwicklungszeit wurde fĂŒr die Übertragung der Liste der AktivitĂ€ten von Objekt Nr. 1 auf Objekt Nr. 2 aufgewendet. In der Phase der Abnahmetests wurde festgestellt, dass der Kunde eine völlig andere FunktionalitĂ€t erwartete - Kopieren, nicht Übertragen von AktivitĂ€ten. Bei der Überarbeitung der FunktionalitĂ€t und der Detaillierung der Mehrdeutigkeit stimmte das IT-Team erstens mit dem Kunden ĂŒber MVP ĂŒberein und zweitens ĂŒber die Notwendigkeit, mit der Wurzel des GeschĂ€ftsproblems zu arbeiten. Es wurde die Hypothese aufgestellt, dass die KopierfunktionalitĂ€t selbst nur aufgrund einer unzureichend implementierten FunktionalitĂ€t zum Laden von AktivitĂ€tsvorlagen erforderlich ist.

  • Haben Sie keine Angst, sich beim Kunden ĂŒber die Anforderungen zu erkundigen

Ich bin auf FĂ€lle gestoßen, in denen ich herausgefunden habe, wann die EntwicklungserklĂ€rung beschrieben wurde, ohne ein GeschĂ€ftsziel festzulegen: Was genau wĂŒrde diese Fertigstellung dem GeschĂ€ft helfen? Welchen Schmerz wird diese Verfeinerung vom GeschĂ€ft lindern?
Oft fĂŒhrten solche zwecklosen Verbesserungen bereits in der Testphase zu unangenehmen Konsequenzen, als sowohl der Entwickler als auch der Tester nicht verstanden, warum wir diese FunktionalitĂ€t entwickelt haben. Schlimmer noch, der Entwickler und der Tester erhielten keine Antworten vom Analysten, und wenn doch, kamen sie oft selbst auf den Analysten: Ziele, die der Analyst selbst formuliert hatte.

Schreiben Sie gemeinsam mit dem Kunden Ziele auf, damit absolut alle Teilnehmer des Prozesses jederzeit verstehen, warum sie ihre Arbeit machen.

  • Fordern Sie die Teilnahme Ihrer Kunden an GeschĂ€ftstreffen

In der Praxis bin ich auf verschiedene Kunden gestoßen, von denen einige nicht sofort bereit waren, den Analysten zu ihren Offline-Meetings einzuladen. Der Analyst muss auch damit arbeiten: um zuzustimmen und das Ergebnis einer gut koordinierten Zusammenarbeit zu zeigen.
, — UX- — « », , . : , , windows-, . , .


Viele Analysten, einschließlich meiner selbst, verwendeten bei der Formulierung von Anforderungen, die mit einer harten Frist konfrontiert waren, die folgende Technik: Sie schrieben den Teilnehmern des Prozesses einen Brief mit einer Frist, bis zu der der Brief beantwortet und die vereinbarten Anforderungen / Kommentare abgegeben werden sollten. Andernfalls werden die Anforderungen automatisch als vereinbart erkannt.

Wie die Praxis gezeigt hat, ist dieser Ansatz nichts Gutes. Es ist klar, dass Sie, wenn Sie auf der Seite des Anbieters arbeiten und eine Vereinbarung haben, auf solche Methoden zurĂŒckgreifen mĂŒssen, aber dennoch versuchen, eine stillschweigende Zustimmung zu vermeiden, zu verstehen, warum die Teilnehmer Ihnen jetzt keine Antwort geben möchten, und das Problem so schnell wie möglich lösen mĂŒssen.

Es ist besser, schriftlich zu dokumentieren, dass die Antwort von solchen und solchen Personen nicht erhalten wurde und Sie darin die folgenden Risiken fĂŒr das Projekt sehen. Der Arbeitsprozess kann jedoch nicht zum Stillstand gebracht werden, weshalb Sie gezwungen sind, Ihre analytische Arbeit fortzusetzen, wĂ€hrend zuvor identifizierte Risiken allen Teilnehmern des Prozesses klar sein sollten.
Bei der Entwicklung der Integration der beiden Systeme wurden wir vom Direktor mit der Bildung von Anforderungen konfrontiert, die die Aktionen der Benutzer in den beiden Systemen abdecken, jedoch mit der fehlenden expliziten Koordination dieser Anforderungen durch den unmittelbaren Leiter der Einheit, dessen Mitarbeiter Benutzer des Systems waren.

Wie sich spĂ€ter herausstellte, verstand der Abteilungsleiter ĂŒberhaupt nicht, warum all diese Verbesserungen und wie sie dazu beitragen wĂŒrden, die Prozesse in seinem Verantwortungsbereich zu optimieren.

Oft haben Teilnehmer am Genehmigungsprozess einfach Angst, ihre Unterschrift zu setzen, weil sie bestimmte Abschnitte des aktualisierten GeschÀftsprozesses nicht vollstÀndig verstehen. Ihre Aufgabe als Business Analyst ist es, dieses MissverstÀndnis zu beseitigen.

Bild

  • Stellen Sie Entwicklern den Themenbereich vor

Verbringen Sie ein paar Stunden, aber informieren Sie Ihre Entwickler ĂŒber den Kunden, aktuelle GeschĂ€ftsprozesse, Schmerzen und EntwicklungsplĂ€ne. Gut motivierte Entwickler machen ihre Arbeit in der Regel nicht nur perfekt, verstehen, fĂŒr wen sie den Code schreiben, sondern leisten auch einen wertvollen Beitrag: Sie bieten Optimierung, Problemumgehungen und sind eher bereit, klĂ€rende Fragen zu stellen.

Wenn nötig (und ohne Scrum), locken Sie den Kunden zu einem solchen Meeting. In der Regel stimmen Unternehmensvertreter solchen Initiativen bereitwillig zu.

  • Bringen Sie dem Kunden bei, die Frage „Was?“ Zu beantworten, anstatt Anforderungen im Format „Wie“ zu formulieren.

Der Kunde sollte keine GeschÀfts- / Benutzeranforderung aus der Position "Gewusst wie" formulieren: Wir benötigen eine SchaltflÀche auf diesem Bildschirm, um einen Bericht zu erstellen. In diesem Abschnitt benötigen wir einen Link zu einem externen System. usw.

In der Phase der anfÀnglichen Analyse des Prozesses sollte der Kunde vor dem eigentlichen Entwurf keine Lösung anbieten.

Bringen Sie dem Kunden stattdessen bei, das Problem, seinen „Schmerz“, zu formulieren: Wir mĂŒssen wöchentlich einen Bericht erstellen, der manuell von einem Mitarbeiter ergĂ€nzt und an das Management gesendet wird. WĂ€hrend der Arbeit mit dem Client mĂŒssen wir zusĂ€tzliche Informationen analysieren. Da diese im CRM-System nicht verfĂŒgbar sind, mĂŒssen wir eine neue Registerkarte im Browser öffnen und uns beim benachbarten System anmelden.

Nachdem Sie den Schmerz des Kunden gelernt haben, können Sie als Spezialist Optionen zur Optimierung des Prozesses und seiner Automatisierung anbieten. Senden Sie beispielsweise den generierten Bericht automatisch an die E-Mail des Mitarbeiters, speichern Sie den Mitarbeiter vor manueller Arbeit mit dem Bericht, laden Sie im Prinzip automatisch Daten von einem benachbarten System in CRM herunter und so weiter.

In vielen FÀllen wird dieser Ansatz der RealitÀt gerecht: Fristen und PrioritÀten. Aber Sie haben es auf jeden Fall ehrlich versucht.

Bild

  • Teilen Sie die Benutzer unbedingt in Klassen ein

Das Akzeptieren von Anforderungen durch den Benutzer des Systems berĂŒcksichtigt unbedingt seine Rolle im GeschĂ€ftsprozess. In der Praxis gibt es hĂ€ufig FĂ€lle, in denen der Abteilungsleiter die Anforderungen fĂŒr die Funktion bildet, mit der ein gewöhnlicher Mitarbeiter arbeiten wird.

Teilen Sie die Benutzer des Systems in Rollen ein, und die fĂŒr eine Rolle geschĂ€rften Funktionen "verschmieren" nicht unter einer anderen Rolle.
Einmal haben wir im Rahmen des Systems eine Liste von Transaktionen mit Kunden implementiert.

Es wurde angenommen, dass sowohl Manager als auch normale Mitarbeiter mit der Liste arbeiten wĂŒrden. Leider konnten wir vom Kunden nicht verstehen, dass der UI-Teil der Revision in zwei Listen / Bildschirme unterteilt werden muss: Eine Liste ist fĂŒr den Manager zum Zwecke der Analyse und Kontrolle bestimmt, die zweite Liste ist fĂŒr den Mitarbeiter zum Zwecke der DurchfĂŒhrung operativer AktivitĂ€ten.

Das Ergebnis war ein bestimmtes Monster, das anschließend finalisiert und finalisiert werden musste.

Wenden Sie Best Practices von UX an: Erarbeiten Sie Zeichen - Benutzermodelle. Überzeugen Sie den Kunden, die Anforderungen fĂŒr jeden Charakter zu trennen.

  • Verwenden Sie aktiv analytisches Brainstorming

Dies ist zusammen mit dem zweiten Analysten möglich, zusammen mit dem UX-Designer. Probieren Sie im Angriffsprozess zwei Rollen aus: Eine Person generiert zuerst viele Ideen, machbar und nicht sehr, die zweite - kritisiert diese Ideen, zerlegt sie, schreibt sie auf, ĂŒberlegt sie; Wechseln Sie dann die Rollen und erledigen Sie den gleichen Job.

Wie die Praxis zeigt, wird dieser Ansatz den Prozess der Erstellung funktionaler Anforderungen erheblich beschleunigen und deren QualitÀt verbessern. Es ist jedoch schwierig, dass beide Spezialisten im Kontext der Aufgabe stehen sollten.

  • Wenn Sie im Wasserfall festsitzen, verzweifeln Sie nicht und bewegen Sie sich in Richtung Scrum

In einem der Unternehmen gelang es unserem Team buchstĂ€blich innerhalb eines Jahres, den Prozess der EinfĂŒhrung von Verbesserungen von den auf Managementebene etablierten Managern auf Waterfall auf eine Art Scrum zu ĂŒbertragen. Ja, die „klaren“ Fristen fĂŒr den stark verschmierten RĂŒckstand, den der Kunde stĂ€ndig vom IT-Team forderte, zogen sich zurĂŒck, wĂ€hrend die Rhetorik durch zweiwöchige Veröffentlichungen, MVP-Lösungen und eine schnelle Reaktion auf Änderungen schrittweise gemildert wurde.

  • DĂ€monisiere niemals den Kunden.

Ja, es gibt alle Arten von Kunden. Es gibt diejenigen, die buchstĂ€blich wĂŒtend sind. Trotzdem muss ein Business Analyst dieses Problem entweder alleine oder unter Einbeziehung eines Managers lösen und sollte auf keinen Fall einen „Streit aus der HĂŒtte“ fĂŒhren - im Team.

Das Team sollte gut motiviert sein, um zu arbeiten, und die Rolle eines GeschĂ€ftsanalysten bei der Motivationsbildung ist einer der SchlĂŒssel.

  • Nicht unterbrechen

Ernsthaft. Wenn ich gerade mit dem Kunden kommuniziere, höre ich absurde verbale Beilagen von meinem analytischen Kollegen. Wenn mein analytischer Kollege den Kunden unterbricht, ohne ihm bis zum Ende zuzuhören, möchte ich ihn zu Kursen ĂŒber Verhandlung oder elementare Ethik schicken.

Versuchen Sie, dem GesprÀchspartner zuzuhören und ihn zu hören.

  • Befreien Sie sich von Parasitenwörtern

Vermeiden Sie parasitĂ€re Wörter und weniger „Moo“ in GesprĂ€chen. Anfangs ist es schwierig, aber glauben Sie mir, es ist doppelt schwierig fĂŒr den Kunden, einem solchen Analysten zuzuhören, der seine Gedanken nicht klar und deutlich ausdrĂŒcken kann. Ein Parasit kann von einem Entwickler, Designer, Tester, aber nicht von einem GeschĂ€ftsanalysten betroffen sein, der das IT-Team mit dem GeschĂ€ft verbindet.

 :
-   "    ".
-   ", :    ".

Systemanalyse


Bild

  • Versuchen Sie, das Sequenzdiagramm zu beschreiben, wenn Sie die Aufgabe auf Vorder- und RĂŒckseite einstellen

Oder auf Russisch Sequenzdiagramme. Die Diagramme werden sich auch nicht unter dem Gesichtspunkt der Entwicklung als nĂŒtzlich erweisen, sondern unter dem Gesichtspunkt der ÜberprĂŒfung ihrer eigenen Anforderungen. Sehr oft habe ich bei der Beschreibung eines Nachrichtenflusses „LĂŒcken“ in meinem eigenen Prozess identifiziert. Zum Beispiel eine irrelevante API.

Verwenden Sie das PlantUML-Plugin fĂŒr Confluence, um schnell eine Folge von Diagrammen zu „zeichnen“. Es schien mir, dass es schneller ist , Code einzugeben, als die Position von Blöcken und Pfeilen mit Stiften anzupassen. Aber jeder in diesem Teil hat seine eigenen Erfahrungen und Vorlieben.

Bild

  • Lerne Swagger Editor

In Bezug auf die Analyse können Sie mit dem Swagger-Editor Ihre eigenen LĂŒcken in den Anforderungen schließen. Irgendwo haben sie das Attribut ĂŒbersehen, irgendwo haben sie vergessen, eine Aufgabe in JIRA zu erstellen, um die Datenbank fertigzustellen. Versuchen Sie nicht, sich die Swagger-Syntax zu merken, sondern erstellen Sie Vorlagen fĂŒr verschiedene Arten von APIs (Verzeichnisse, Filter usw.), um Ihr zukĂŒnftiges Leben zu vereinfachen.

Bild

  • Verwenden Sie das Entwicklertool im Zielbrowser aktiv, um Clientanforderungen und -antworten vom Server zu analysieren

ZunĂ€chst können Sie wĂ€hrend des ersten Akzeptanzprozesses die von Ihnen selbst beschriebene API ĂŒberprĂŒfen. Manchmal ist es schneller, einige der Verbesserungen anhand ausgehender Anforderungen zu ĂŒberprĂŒfen als anhand der BenutzeroberflĂ€che, um die Ursache des Problems frĂŒhzeitig zu erkennen.
Als Analyst benötigen Sie viel weniger Zeit, um die Implementierung des Entwicklers zu ĂŒberprĂŒfen: ausgehende Daten, eingehende Daten, das Ergebnis in der BenutzeroberflĂ€che.

Zweitens können Sie die richtige Anruffolge ĂŒberprĂŒfen. Schließlich haben Sie es selbst im Rahmen des Sequenzdiagramms beschrieben.

Dieser Ansatz ermöglichte es unserem Team, im Rahmen der Sprints ohne Verzögerung recht knifflige Verbesserungen an den Proms vorzunehmen.

 :
-   " JavaScript".   JSON, , HTML, http / https,   .
- . , .  " . , , ".      ,  ,   ,   .

Bild

Außerdem


  • Tauchen Sie ein in die UX

Vielleicht gefÀllt es Ihnen sogar und Sie möchten sich in Richtung UX Analytics weiterentwickeln. In jedem Fall wird das Studium der relevanten Literatur und Design-Tools zumindest unter dem Gesichtspunkt von der Suche nach einer gemeinsamen Sprache mit dem UX-Designer Ihres Teams profitieren.

Oft werden die Anforderungen, die Sie als Analyst detaillieren und aufschreiben, anschließend vom Designer angepasst. Schließlich sind Sie nicht allein, sondern gestalten die Benutzererfahrung.

Um auf der gleichen WellenlĂ€nge zu sein, ĂŒben Sie Ihre UX-Analyse. Zum Beispiel in Ihrer Freizeit in Sketch oder Figma, um Ihrem Designer von Zeit zu Zeit das Ergebnis zu zeigen. Eine solche Analyseerfahrung wird niemals ĂŒberflĂŒssig sein.

 :
-   "  ".
-   "   ".
-   ".   ".
-   ".   ".

***

Danke, dass du den Artikel gelesen hast! Ich wĂ€re zum einen fĂŒr das Feedback dankbar. Zweitens fĂŒr Empfehlungen zu Literatur, Quellen, Best Practices, persönlichen Erfahrungen und Empfehlungen.

All Articles