Die Frage, die Sie sich stellen sollten, ist, woher der Verkäufer weiß, dass die Funktion x Entwicklertage Arbeit kostet . Angesichts der Tatsache, dass selbst gute Projektmanager mit jahrelanger Berufserfahrung dies oft nicht beurteilen können, erscheinen solche Daten, die von einem Verkäufer stammen, äußerst ... spekulativ .
Nach meiner Erfahrung machen Verkäufer normalerweise keine Schätzungen, raten aber, wie viel zu viel für das Management oder den Kunden ist: Wenn das Management bereit ist, 50 Mannwochen Arbeit zu zahlen, aber 75 Mannwochen absolut ablehnen wird, lassen Sie es uns wissen Das Feature wird 70 Mannwochen in Anspruch nehmen, während die Neuverhandlung (was für eine echte Schätzung nicht in Frage kommt) auf 55 Mannwochen reduziert wird.
Auf der einen Seite haben Sie Schätzungen von IT-Experten, die etwa Folgendes aussagen:
Laut dieser spezifischen Prüfung verschwenden wir mit einer veralteten Technologie 8.000 USD pro Tag im Vergleich zu ähnlichen Projekten ähnlicher Größe, bei denen neuere Technologien zum Einsatz kommen. Es scheint auch, dass die Migration der gesamten Codebasis zwischen 50 und 80 Mannwochen dauern wird. In dieser Zeit werden keine neuen Funktionen veröffentlicht. Es besteht auch ein Risiko von 10%, dass die Migration einer bestimmten Komponente zu 20 bis 30 zusätzlichen Arbeitswochen führt.
Auf der anderen Seite haben Sie Vermutungen von Verkäufern angestellt, basierend auf ihrer Hebelwirkung bei Verhandlungen mit der Person, die sie überzeugen müssen.
Es geht darum, wie einflussreich Sie in Ihrem Unternehmen sind. Kommunikation ist hier der Schlüssel, und hier überzeugen Verkäufer in der Regel IT-Experten, wenn es darum geht, dem Management (oder einem Kunden) die Vorteile einer Funktion zu erläutern.
Beachten Sie, dass Sie, wenn Ihre Schätzungen in der Vergangenheit recht genau waren, an Ansehen und Einfluss gewinnen. Wenn Ihre Schätzungen immer falsch wären, würde das Management Ihre Vorschläge wahrscheinlich ignorieren.
Für die Schätzungen ist es äußerst schwierig, hier eine wertvolle zu erstellen, da eine Vielzahl von Parametern zu berücksichtigen ist. Unter anderen:
Wissen Sie eigentlich, wie geschickt Ihr Team in C # im Vergleich zu VB6 ist? Basiert es auf tatsächlichen Messungen oder nur Vermutungen?
Hat dieses Team große Projekte in C # entwickelt? Kennen sie die Tools, die sie verwenden sollten (IDE, Debugger, Profiler usw.)? Benötigen Sie zusätzliche Lizenzen (was in der Welt von Microsoft Tausende von Dollar pro Computer bedeutet)?
Ist das aktuelle Projekt völlig klar und Sie können garantieren, dass es bei der Migration keine Überraschungen gibt? Ist es einfach, alles , jedes Feature neu zu schreiben , oder gibt es Überraschungen?
Haben Sie die Infrastruktur, die C # unterstützt? Was ist mit kontinuierlicher Integration? Was ist mit Ihrem Build-Server? Styleguides? Statische Prüfer?
Können Server (wenn es sich um eine Webanwendung handelt) oder Kunden-PCs (wenn es sich um eine Desktopanwendung handelt) in der Produktion die Version von .NET Framework ausführen, die Sie voraussichtlich verwenden werden?
Aber das Wichtigste ist zu wissen, warum Sie alles neu schreiben möchten. Was ist das Problem, das Sie durch ein Umschreiben lösen möchten? Produktivitätsverlust? Wie misst du es? Wie zeigen Sie dem Management diesen Produktivitätsverlust?
Wenn Sie gezeigt haben, dass Sie beispielsweise 8.000 US-Dollar pro Tag durch VB6 verschwenden (was bedeutet, dass Sie nach der Migration auf C # 8.000 US-Dollar pro Tag sparen), wie erklären Sie den Vorteil, wenn Sie jede neue Feature-Entwicklung beibehalten und Konzentrieren Sie sich auf eine vollständige Umschreibung? Was ist der Vorteil gegenüber dem progressiven Umschreiben, bei dem Sie Ihre Komponenten in kleinen Blöcken nacheinander migrieren und gleichzeitig neue Funktionen bereitstellen?