Ich arbeite an einem neuen Projekt und wir verwenden einen ziemlich schönen Stapel. NHibernate, Spring, MVC ... die Liste geht weiter.
Eine Sache, die mir aufgefallen ist, ist, dass wir in den sechs Monaten seit unserer Gründung eine neue Version von NHibernate herausgebracht haben, eine neue Version eines Control Toolkits von Drittanbietern, und Windows 7 ist am Horizont.
Wir hatten schon mal Probleme, wo uns das Hängenbleiben an einer alten Version einer Technologie teuer zu stehen kam. Ich frage mich, welche Techniken wir verwenden könnten, um sicherzustellen, dass unsere Übergänge zu den neuesten Versionen der Dinge so aussehen so schmerzlos wie möglich?
Ich stimme den anderen Kommentaren hier bezüglich der Aktualisierung oft zu. Wenn Sie zu lange warten, ist es genug Arbeit, dass Sie es in der Projektproduktivität bemerken werden.
So machen wir das.
Auf diese Weise verlieren wir während des Upgrades nicht die Produktivität des Teams. Beachten Sie, dass dies ohne Komponententests viel schwieriger wäre.
Machen Sie es einfach zur Priorität und aktualisieren Sie es. Wenn Sie mit der neuesten Version auf dem neuesten Stand sind, werden weniger Änderungen vorgenommen als wenn Sie jeweils 5 Versionen aktualisieren müssen.
Vielleicht erstellen Sie eine Verzweigung und führen eine Testaktualisierung für betas durch, damit Sie über bevorstehende Probleme bei der Verwendung dieser Version von RTMs informiert sind (wenn Sie Betas verwenden, ist dies ein Problem für Sie).
"Früh aktualisieren, oft aktualisieren"
Wenn Sie warten, wird es immer schwieriger, also legen Sie großen Wert auf die Aktualisierung des Systems. Entwickler sind meist auf dem neuesten Stand, so dass sie sich nicht allzu sehr stören. Die Hauptaufgabe besteht darin, diese Idee an das Management zu verkaufen.
Es ist immer gut Schritt für Schritt Ansatz, wo Sie ein Tool nach dem anderen upgraden. Dann ist es auch einfacher, wenn Sie zu einer älteren Version zurückkehren müssen. Big Bang Ansatz ist schwieriger und viele Dinge können schief gehen.
Lasst uns realistisch sein, jedes Update kostet Sie Zeit und auch Ihr Team muss auf die neue Tooling-Version umsteigen, aber nach einiger Zeit lernt das Team damit umzugehen und der Stress beim Wechsel der Versionen ist viel geringer.
Aus der Sicht des Managements sollte kein Upgrade durchgeführt werden, es sei denn, es gibt einen zwingenden Grund. Sie müssen sich ansehen, was das Upgrade für Ihr Projekt bedeutet. Wenn das Upgrade keine Vorteile bietet, tun Sie es nicht. Offensichtlich ist dies keine feste Regel, aber die meisten Teams, die ich kenne, haben keine Zeit, die Systeme ohne Grund zu aktualisieren. Sie sind zu beschäftigt mit Feature-Anfragen und Bug-Fixes. Ich empfehle, in Upgrades auf folgender Basis zu arbeiten:
Spezielle Gründe, die nicht zu aktualisieren sind:
Ich empfehle, eine Liste aller von Ihrem Projekt verwendeten Software zusammen mit ihrer Version und dem letzten Upgrade-Datum zu führen (zusammen mit anderen wichtigen Informationen wie Lizenzinformationen, Support-Informationen usw.). Bewerten Sie jedes Element auf dieser Liste einmal im Jahr, um sicherzustellen, dass Sie keine Updates verpassen, die einem Grund für ein Upgrade entsprechen, das Sie möglicherweise verpasst haben. Software auf dieser Liste mit einer alten Version / Datum und einer neueren Version kann Anreiz genug sein, das Management davon zu überzeugen, dass ein Upgrade durchgeführt werden sollte.
Tags und Links project-management