Was sind die Merkmale eines Software-Kompetenzzentrums (CoE)?

13

Kürzlich ist ein neuer Direktor meiner Abteilung eingetreten und hat den Wunsch geäußert, dass wir ein "Kompetenzzentrum" werden. Da er mein erster Chef ist, der tatsächlich einen Programmierhintergrund hat, hätte ich erwartet, dass es eine Beschreibung davon geben würde. Es wurde jedoch dabei belassen.

Während ich in den letzten Tagen darüber nachdachte, habe ich keine Ahnung, was ein CoE eigentlich bedeutet, als nur "effektiv zu sein", um das Produkt zu liefern. Hier sind die wichtigsten Dinge, mit denen ich zu kämpfen habe:

  1. Ist dies nur ein Begriff, der von Managementtypen verwendet wird?

  2. Welche Eigenschaften zeichnen eine Gruppe von Software-Entwicklern und -Testern aus?

  3. Wie messen Sie Exzellenz in diesem Zusammenhang?

Geil
quelle
7
Ein "Center of Excellence" ist ein zähes und köstliches Codierzentrum inmitten einer knusprigen Management-Süßigkeit. ;)
FrustratedWithFormsDesigner
8
Hast du ihn gefragt? Ich meine ... die Beschreibung ist vielleicht noch nicht da, aber ich würde ihn definitiv fragen , was er von Entwicklern und Testern erwarten würde, um die Abteilung als Kompetenzzentrum zu bezeichnen. Ansonsten stechen Sie nur in der Dunkelheit mit wenig Erfolgschance und großer Frustrationsgefahr.
Marjan Venema
@ Marjan, ich habe ihn nicht gefragt, da er ein paar Level höher ist und ich nicht viel Zeit habe (und seitdem keine mehr hatte). Seien Sie sicher, dass ich das nächste Mal werde. Ich möchte mich nur zuerst aus vertrauenswürdigen Quellen von Drittanbietern informieren :)
Randy
Daumen hoch dafür. Immer gut darauf vorbereitet zu sein, was Ihrer Meinung nach ein Kompetenzzentrum bedeutet ...
Marjan Venema
1
Wahrscheinlich hat dieser Blogeintrag einige Einblicke für Sie: agileelements.wordpress.com/2008/10/29/… (da er von einem Mann stammt (nicht von mir), der einen in seiner Organisation eingerichtet hat).
Yasouser

Antworten:

7

Ja, dies ist nur ein Begriff, der von den Managementtypen umgangen wird, aber wenn Sie die Managementsprache streifen, ist das, was er sagt, dass er eine Abteilung will, die Best Practices der Branche so verwendet und verkörpert, wie es andere anstreben und tun um so großartige Lösungen zu liefern, die Menschen mögen.

(Letzteres ist wichtig - wenn Sie nicht wirklich liefern, spielt es keine Rolle, wie großartig alles andere ist und Ihr Manager wird nicht lange in der Nähe sein.)

Die Komplexität hat zwei Hauptursachen:

1) Will er das, weil er versteht, dass es der richtige Weg ist, Software zu entwickeln, und dass Sie auf diese Weise großartige Produkte herstellen, oder will er das, weil er damit angeben will?

2) Akzeptiert er die Vorlaufkosten (Zeit, Geld, Glaubwürdigkeit und Risiko), die mit der Implementierung von Best Practices verbunden sind? Es ist in Ordnung zu sagen "Lass uns agil werden", aber er legt seinen Ruf auf die Linie, dass es die Dinge verbessern wird und viel Zeit damit verbringen muss, sie an die Organisation zu verkaufen. Fast immer sind die Vorteile langfristig, die Kosten kurzfristig und das ist das Schwierigste. Ist er es letztendlich wirklich ernst?

Wie das aussehen würde, hängt davon ab, was Sie tun, aber Sie müssen sich überlegen, wie Ihre Entwicklungs- und Projektmanagementprozesse aussehen, welche Tools Sie verwenden, welche Kits die Leute haben und so weiter . Der Joel-Test ist immer ein guter Anfang, und insbesondere würde ich mir einen wirklich soliden Versionskontrollprozess, eine wirklich gute Fehlerverfolgung und wirklich gute Erstellungsprozesse wünschen.

Ich würde auch prüfen, ob agile Methoden für Sie geeignet sind (insbesondere SCRUM) und inwieweit automatisierte Tests helfen könnten (ohne einen Religionskrieg auszulösen, gibt es unterschiedliche Überzeugungen darüber, an welchem ​​Punkt die Komplexität der Tests die Vorteile überwiegt, die sie bieten Geben Sie an, ob Sie die erforderlichen Werkzeuge und das Kit für die Arbeit haben. Im Allgemeinen würde ich vorschlagen, dass Sie Werkzeuge an der Spitze, aber nicht am Puls der Zeit haben möchten. Es muss betont werden, dass es nicht darum geht, Spielzeug zu haben, sondern jedem im Team die Werkzeuge zu geben, die es ermöglichen, für einen Großteil des Arbeitstages so produktiv wie möglich zu sein. Das offensichtlichste Beispiel sind schlechte PCs - ist es wirklich exzellent, Entwickler dafür zu bezahlen, einen Cursor zu sehen, während die Erstellung ihres Projekts 5 Minuten dauert, wenn sie es ein halbes Dutzend Mal am Tag erstellen?

Ein paar andere Dinge, die wahrscheinlich in einem Kompetenzzentrum sichtbar sein werden: Ich würde vorschlagen, dass ein Software-Kompetenzzentrum wahrscheinlich ein ziemlich gutes Schulungsprogramm hat - vielleicht keine formellen Kurse, aber auf jeden Fall Budgets, Studienzeit, Mentoring und das mögen.

Und ich würde vorschlagen, dass es wahrscheinlich auch (zumindest) eine kleine Menge an F & E leistet. Damit meine ich nicht komplett blauen Himmel, sondern den Entwicklern Raum geben, neue Dinge auszuprobieren und neue Tools und Sprachen zu evaluieren, ohne den ständigen Druck, dem Kunden zu liefern. So kommst du voran und bleibst nächstes Jahr gut, das Jahr danach und so weiter.

Wie kannst du es messen? Ah, die uralte Frage. Letztendlich ist das Messen der Softwareentwicklung schwierig, wenn nicht sogar unmöglich, und das Messen der Exzellenz in der Softwareentwicklung ist ähnlich schwierig.

Das einzige, was ich wirklich empfehlen kann, ist die Zufriedenheit der Kunden und Mitarbeiter. Es ist eine indirekte Messung, aber meiner Meinung nach ist es unwahrscheinlich, dass Sie ein wirklich hohes Maß an Kundenzufriedenheit und ein wirklich hohes Maß an Mitarbeiterzufriedenheit erzielen, wenn Sie nicht hervorragend sind.

Jon Hopkins
quelle
Mein Problem mit Modewörtern ist, dass sie allzu oft als wirksamer Ersatz für das tatsächliche Nachdenken über das, was sie repräsentieren, erscheinen. Ich versuche jedoch nicht zu hart zu urteilen, wenn ich auf Modewörter treffe, denn manchmal sind sie nur Manageräquivalente von Programmierer-Nerds, verstrickt in ein anderes Universum von Verbagen und bemerken nicht, dass sie für den Rest von uns albern klingen obwohl sie tatsächlich intellektuelle Integrität haben und effektiv, zugänglich usw. sind
Erik Reppen
6

Das ist das Problem mit Wieselwörtern ; sie klingen wie sie etwas bedeuten ... aber sie tun es wirklich nicht.

Im Kontext klingt es so, als ob Ihr Unternehmen ein Produkt produziert und Ihr Direktor möchte, dass Ihre Abteilung so effizient und effektiv wie möglich ist. IME bedeutet, dass sie eine oder alle der folgenden Aktionen ausführen möchten:

  • Neue Leute mit "strengen Anforderungen" an die Einstellung einstellen (normalerweise höhere Abschlüsse oder Zertifizierungen oder Branchenanerkennung)
  • "Schneiden Sie das Fett" - werden Sie Leute los, von denen sie denken, dass sie nicht produzieren
  • Geben Sie Geld in die Abteilung für Werkzeuge / Prozesse / Personen / Schulungen

Um Ihre Fragen direkt zu beantworten:

  • Ja
  • Darauf habe ich keine eindeutige Antwort. Es gibt viele Metriken, die zur Quantifizierung der Attraktivität verwendet werden können.
  • In diesem Zusammenhang normalerweise danach, ob Sie Veröffentlichungstermine festlegen oder nicht.
Steven Evers
quelle
3

In meiner über 30-jährigen Erfahrung bedeutet ein Ausdruck wie dieser normalerweise, dass Sie mit weniger Menschen mehr produzieren möchten.

HLGEM
quelle
Einfache hervorragende Antwort.
Schüler
2

Als Antwort auf Ihren Punkt Nummer 1:
Die Antwort lautet definitiv Ja , es ist ein Begriff, wie erfahrene Bullshit Bingo- Spieler. Das heißt aber nicht, dass der Begriff bedeutungslos ist.

Gehen wir weiter zu Nummer 2:
Entnommen aus Wikipedia : Center of Excellence: Ein offiziell festgelegter und informell anerkannter Wissens- und Erfahrungsschatz zu diesem Thema. Vergessen wir formell festgelegte und informell akzeptierte, und konzentrieren wir uns auf den Körper des Wissens und der Erfahrung. Ich würde Wissen als theoretischen Hintergrund sehen, und Erfahrung als etwas, das aus der praktischen Anwendung kommt. Um Spitzenleistungen zu erzielen, brauchen Sie beides. Abgesehen von diesen (ganz offensichtlichen) Eigenschaften halte ich ein drittes für unerlässlich, um Spitzenleistungen zu erzielen: Die Fähigkeit, sich selbst zu hinterfragen, über Ihre Aktivitäten nachzudenken und nach Verbesserungsmöglichkeiten zu suchen. Wissen, das du als Student lernst, aber du musst ständig daran arbeiten, mit den neuesten Entwicklungen Schritt halten usw. Erfahrungen, die du sammelst, sind Erfahrungen, die man so gut wie nicht vermeiden kann. Aus Managementsicht ist es am schwierigsten, eine Kultur des Nachdenkens und der Selbstverbesserung zu schaffen (viel Glück für Ihren Chef damit ;-)

Zu Ihrer Frage Nummer 3:
Ich denke, das können Sie nicht. Ich spreche von mehr als nur davon, Projekte zum Erfolg zu führen (was unter anderem aufgrund der Tendenz, selbst das am meisten verpfuschte Projekt für erfolgreich zu erklären, weil es in der PowerPoint-Präsentation besser aussieht, ohnehin schwer zu messen ist). Wahre Exzellenz entsteht aus der Einstellung aller Mitglieder eines Teams, ihr Bestes zu geben, sich selbst, ihre Werkzeuge, ihre Prozesse usw. zu verbessern. Ihr bester Versuch ist es, einen Weg zu finden, um die Wirksamkeit eines vordefinierten kontinuierlichen Verbesserungsprozesses zu messen

Treb
quelle
1

Die erste Person, die mir in den Sinn kommt, wenn ich an das "Software Center of Excellence" denke, ist Onkel Bob Martin

Onkel Martin ist ein langjähriger Verfechter von Spitzenleistungen in der Softwareentwicklung in der Form, die als Software Craftsmanship bekannt ist . Wie Wikipedia es beschrieben hat

Software-Handwerkskunst ist ein Ansatz zur Software-Entwicklung, bei dem die Programmierkenntnisse der Software-Entwickler selbst betont werden. Es handelt sich um eine Reaktion von Softwareentwicklern auf die Missstände der Mainstream-Softwareindustrie, einschließlich der Priorisierung finanzieller Bedenken gegenüber der Verantwortlichkeit von Entwicklern.

Hören Sie ihn sich im folgenden Podcast an, während er erklärt, was Software Craftsmanship ist:

Schauen Sie sich auch das Manifest für Software-Handwerk an , in dem die Bedeutung gut gestalteter Software, die Schaffung von Mehrwert, die Community von Fachleuten und produktive Partnerschaften hervorgehoben werden

BEARBEITEN: Da für ein Software-Kompetenzzentrum hervorragend ausgebildete Programmierer erforderlich sind, sollten Sie sich auch die folgenden Ressourcen ansehen:

Anthony
quelle
0

Klingt für mich so, als würde er nur sagen, dass er eine Kultur der Qualität vor der Quantität haben möchte, aber er könnte auch nur sein @ss aussprechen. Als Programmierer neigen wir meiner Meinung nach dazu, über das nachzudenken, was die Leute sagen. Zumindest weiß ich, dass ich es tue. Soweit er sagte, ist es nur Corporate Speak, aber denken Sie nicht darüber nach. Wie andere gesagt haben, frag ihn.

Ominus
quelle