Rollen und Verantwortung

Bei einer Ausschreibung bin ich über 2 Begriffe gestoßen, die ich selbst so nie unterschieden habe, bei denen es mir jedoch jetzt sinnvoll erscheint. Es geht um die Rollen Software-Architect und Software-Engineer. Hättet ihr gewusst, wo die Unterscheidung liegt? Nun, über diese und weitere Rollen möchte ich in diesem Beitrag berichten und versuchen ein einheitliches Verständnis zu schaffen. Zumal diese Begriffe nie wirklich vereinheitlicht wurden. Diese Liste erhebt jedoch keinen Anspruch auf Vollständigkeit und natürlich können mehrere Rollen auch von einer Person ausgeübt werden.

Projektleiter
Er ist die Person, die ein Projekt zusammen hält und den Überblick hat. Er arbeitet am besten, wenn er wie ein Fluglotse agieren kann. Selbst ist er an der Umsetzung nicht beteiligt, sondern ist derjenige, der alle Informationen über Das Projekt hat. Er kennt den großen Status des Projektes, weiß welche Pakete aktuell umgesetzt werden, welche abgeschlossen sind und wo es Probleme gibt. Außerdem benennt er die Verantwortlichkeiten im Projekt und sorgt dafür, dass die Leute auch entsprechend handeln und handeln können. Er berichtet in regelmäßigen Abständen an den Kunden und das Projekt-Controlling.

Teil-Projektleiter
In besonders großen und interdisziplinären Projekten, kann es sein das ein z.B. technischer und ein fachlicher Projektleiter den Hauptprojektleiter unterstützen. Sie nehmen die gleichen Funktionen der Koordinierung wahr und berichten an den Projektleiter. Alle interdisziplinären Entscheidungen und sehr wichtige Teilprojektentscheidungen werden durch oder in Absprache mit dem den Hauptprojektleiter getroffen.

(Software-)Architekt
Der Architekt ist derjenige, der für die gesamte Lösung das große Bild erstellt. Er entscheidet welche Technologien und Applikationen verwendet werden. Soll der SharePoint mit dem SQL reden? Dann ist das eine Architekturentscheidung. Auch ob eine Farm-Solution oder CSOM eingesetzt wird obliegt ihm. Ferner bestimmt er zusammen mit dem Projektleiter die Entwicklungsmethodik. Arbeit nach Scrum oder V-Modell zum Beispiel. Er berichtet an den (Teil-)Projektleiter. Ihm unterstellt sind die Ingenieure aller Disziplinen.

Qualitätsmanager
Bei dem Qualitätsmanager handelt es sich um eine interdisziplinäre Rolle. Ähnlich wie beim Projektleiter handelt er am besten, wenn er nicht direkt in das Projekt eingebunden wurde, sondern als Stabsstelle des Projektleiters fungiert. Er prüft die Arbeitsergebnisse aller Disziplinen und gibt wenn notwendig Verbesserungsvorschläge oder verweist auf Standards. In seiner Verantwortung liegt, dass das Projekt sauber abgewickelt wird. Wenn Kompromisse im Projekt eingegangen werden, überwacht er, dass diese sauber dokumentiert und wenn notwendig durch den Kunden zur Kenntnis genommen oder abgesegnet werden. Er berichtet an den Projektleiter und wenn notwendig an das Projekt-Controlling.

(Software-, Test-) Ingenieur
Der Ingenieur ist für die konkrete Umsetzung verantwortlich und überwacht diese. Während der Architekt die Entwicklungsmethodik und Technologie vorgegeben hat, kümmert sich der Ingenieur um die konkreten Schnittstellen und die Einhaltung der Richtlinien. Er ist quasi der Erste der Entwickler und sorgt auch dafür das die einzelnen Module und Pakete reibungslos miteinander laufen.

Neben dem Softwareingenieur gibt es hier auch den Testingenieur. Seine Aufgaben gleichen sich in einer anderen Fachrichtung. Er überwacht die Erstellung und Ausführung der Tests und prüft dabei immer wieder, ob die Qualitätsrichtlinien auch sauber umgesetzt wurden.

(UX-, Software-, Test-) Designer
Der Designer ist dafür verantwortlich, dass das Frontend ansprechend und den Anforderungen gemäß umgesetzt wird. Während der Softwaredesigner sich um das Design der Oberflächen kümmert, kümmert sich der UX-Designer darum, dass der User ein möglichst leicht zu bedienendes Produkt erhält und die Klickpfade kurz und verständlich bleiben. Beide sind in der Regel dem Softwareingenieur unterstellt.

Der Testdesigner erstellt die Testszenarien für die Anforderungen und sorgt dafür, dass alle Akzeptanzkriterien abgehandelt werden. Er ist dem Testingenieur unterstellt.

(Software-) Entwickler
Der Entwickler ist für die Realisierung der Anforderungen zuständig. Er berichtet im Rahmen der Projektmeetings an die Vorgesetzten und ist für seine Arbeitspakete und deren Qualität verantwortlich. Er ist der einzige, der einem Produkt wirklich etwas hinzufügt.

Tester
Der Tester nutzt die Arbeitspakete des Testdesigners und führt diese aus. Er dokumentiert Widersprüche zwischen Software und Tests und teilt diese in den Projektmeetings mit. Seine Arbeitsresultate sind notwendig um die einzelnen Testphasen abzuschließen. Der Tester kann sowohl durch den Lieferanten als auch durch den Kunden oder auch gemischt besetzt werden.

Consultant
Der Consultant ist der Berater des Kunden. Er nimmt die Anforderungen auf und bringt sie in eine standardisierte Form, sodass diese durch die Softwareentwicklung in ein konkretes Arbeitspaket interpretiert und umgesetzt werden kann. Er nimmt auch Änderungswünsche auf und kommuniziert diese in beide Richtungen.

Werbung

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s