In allen Projekten, an denen ich beteiligt war und die von einem externen Berater durchgeführt wurden, wurde die Frage gestellt, welche Art von Konfigurationsmanagement wir verwenden. In keinem dieser Fälle konnte der Berater das Konfigurationsmanagement definieren. Also, was ist es?
12
Antworten:
Was Software Configuration Management (SCM) bedeutet, ist die Beantwortung folgender Fragen:
Dies kann wiederum zu einem ziemlich großen und hässlichen "Prozess" werden. Die Prozessprobleme sind der Grund, warum die meisten Entwickler bei der Erwähnung von SCM die Augen glasig erscheinen lassen, da dies das Verfolgen von Quelldateien, Fehlern und Anforderungen bedeutet. Anschließend binden Sie alles zusammen, damit Sie Änderungen überwachen können. (Dies ist eine ideale Welt aus Sicht des Managements, da sie einem guten Manager Tools bietet, mit denen er besser erkennen kann, welche Ressourcen er wo benötigt.)
Dies unterscheidet sich von ITIL Configuration Management, bei dem es sich tatsächlich um die Nachverfolgung von Software-Assets handelt, welche Software wo ausgeführt wird (welcher Server / welche Workstation) und welches Setup für diese Software vorliegt.
Mit anderen Worten, Ihr Berater möchte höchstwahrscheinlich wissen, wie IHR Unternehmen / Ihre Entwicklungsgruppe die drei Fragen oben in meiner Antwort beantwortet.
quelle
Das Konfigurationsmanagement umfasst "alles andere", was nicht direkt mit dem Schreiben von Code zusammenhängt. So verwalten Sie Releases, verwalten und analysieren Fehlerberichte und Funktionsvorschläge, führen Ihre Builds aus und so weiter. Oft wird auch angegeben, wie Ihr Quellcode verwaltet wird (z. B. welche Versionskontrolle Sie verwenden, Verzweigungsstrategien, wie Sie [möglicherweise] mehrere gleichzeitige "Releases" verwalten usw.).
quelle
Konfigurationsmanagement hat im Laufe der Zeit viele Dinge mit sich gebracht. Ich halte es für wichtiger für Administratoren oder Vorgänge als direkt für Entwickler. Wenn Ihre Mitarbeiter versuchen, Server am Laufen zu halten, sorgen Sie sich darum, Maschinen einzurichten, ihre Konfiguration zu verwalten und sie am Laufen zu halten. Wenn Sie sich nur bei einem Computer anmelden und mit der Installation der Software beginnen und die Konfigurationsdateien auf einem Computer ändern, verwalten Sie diese Konfiguration nicht. Was passiert, wenn diese Maschine stirbt? Was passiert, wenn jemand auf diesen Rechner geht und eine Konfigurationsdatei ändert und alles ausflippt? Was ist, wenn Sie einen anderen Computer starten müssen, der genau so konfiguriert ist, wie der, der gerade ausgeführt wird? Kannst du es machen?
Ohne Konfigurationsmanagement-Strategie geht das nicht. Und deshalb ist es wichtig. Alles dreht sich um Wiederholbarkeit. Entwickler gehen die Wiederholbarkeit anders an als die Mitarbeiter, daher ist es uns wichtig, verschiedene Dinge zu wiederholen.
Es gibt einige großartige Open-Source-Tools, die Ihnen dabei helfen: Chef, Capistrano, Cook und sogar SVN. Warum sollte SVN nur von Entwicklern verwendet werden? Checken Sie Ihre Konfigurationsdateien und Skripte ein, mit denen Sie Computer konfigurieren, und verfolgen Sie deren Versionen. Diese Teile Ihrer Organisation sind von entscheidender Bedeutung, um den Betrieb aufrechtzuerhalten. Die willst du nicht verlieren.
quelle