Unser nächster Engineering Milestone

Viele Beiträge beginnen mit einem “Dankeschön,” und ich möchte im Namen des gesamten Windows Teams diesen Beitrag mit einem ganz besonderen Dank an Sie dafür einleiten, dass Sie die Betaversion von Windows 7 installiert haben und ausprobieren. Windows 7 wurde millionenfach installiert, und wir sammeln die Daten telemetrisch. Es ist einfach unglaublich. Von den Kunden, die auf die Schaltfläche “Feedback senden” klicken, erhalten wir detailierte Angaben zu Bugs und natürlich auch viele Anregungen. Ohne die große Anzahl der BenutzerInnen, die die Betaversion installiert haben, und ohne deren großes Interesse könnten wir den Schritt von der Betaversion zum endgültigen Release auf gar keinen Fall in Angriff nehmen. Die Reaktion der BenutzerInnen ist überwältigend: viele Leute schreiben in ihren Blogs wie froh sie sind, dass sie zu Windows 7 Beta übergewechselt und es auf ihren Computern installiert haben. Die am häufigsten gestellte Frage ist: „Wenn die Betaversion im August abläuft, was mache ich dann? Ich möchte nicht zurück zum alten [sic] Betriebssystem.” Dies ist ein ziemliches Kompliment für ein Beta-Release, und wir freuen uns sehr über diese wohlwollende Reaktion.

Dieser Beitrag beschreibt den Weg, den wir von der Betaversion (jetzt) bis zum RTM (Release To Manufacturing, Auslieferung an die Hersteller) zurücklegen müssen und nimmt die auf der PDC begonnene Diskussion wieder auf . Auf gar keinen Fall sollte dieser Beitrag als Ankündigung des Releasedatums, einer Änderung unserer Pläne oder Abweichung von unseren zuvor beschriebenen Prozessen verstanden werden. Es sollen vielmehr zusätzliche Einzelheiten erörtert und aufgezeigt werden, wie wir uns den Weg bis zum RTM und zur General Availability (Allgemeinen Verfügbarkeit) vorstellen. Anlass zu diesem Beitrag gab, neben dem enormen Interesse an Windows 7, die Erkenntnis, dass das Release von Windows nicht etwas ist, was Microsoft im Alleingang durchführt, sondern dass wir dabei stets in ein übergreifendes PC-Ökosystem eingebunden sind. Selbstverständlich tragen wir einen großen Teil der Verantwortung - eine Tatsache, deren wir uns voll bewusst sind. Die letzten Stadien eines Windows-Releases sind ein Gemeinschaftsunternehmen, das das gesamte Ökosystem einbezieht, in dem alle zusammenarbeiten um sicherzustellen, dass die unglaubliche Auswahl unter verschiedenen PCs, Programmen und peripheren Geräten Ihnen eine nahtlose und zufriedenstellende Erfahrung mit Windows 7 bietet.

Der nächste Milestone in der Entwicklung von Windows 7 ist der Releasekandidat bzw. “RC”. Gewöhnlich signalisiert der Releasekandidat, dass “wir kurz vor dem Ziel sind und möchten, dass die Leute das Release testen, da die Feature-Arbeit abgeschlossen ist.” Wie bereits erwähnt, ist unsere Vorgehensweise im Falle von Windows 7 etwas anders, und wir haben diese Tatsache immer betont. Die vorläufige Betaversion, die auf der PDC zur Verfügung gestellt wurde, war ein Release, von dem wir sagten, dass das API im wesentlichen vollständig sei. Für die Bereiche, die nicht in dieser vorläufigen Version enthalten waren, stellten wir die APIs und die Benutzererfahrung bei der PDC im Detail vor. Zu jenem Zeitpunkt kündigten wir an, dass die zum Testen Anfang 2009 zur Verfügung gestellte Betaversion sowohl in Hinsicht auf das API als auch auf die Features vollständig ist und einem großen Benutzerkreis zur Verfügung gestellt werden wird. Dies sollte der einzige Betatest sein. Bei der WinHEC setzten wir diesen Dialog mit unseren Hardwarepartnern fort. Wir gaben auch bekannt, dass viele unserer Partner im Ökosystem, darunter auch Hardwarehersteller, weiterhin regelmäßig zwischenzeitliche Builds erhalten sollten, was auch der Fall war. Dies ist der gegenwärtige Status. Wir haben eine Betaversion mit sämtlichen vollständigen Features herausgegeben und weltweit unzähligen BenutzerInnen zur Verfügung gestellt (wobei uns bewusst ist, dass viele die Betaversion auch in vielen anderen Sprachen haben möchten). Als Entwicklungsteam machen wir genau das, was viele von Ihnen auch tun: wir installieren die Betaversion auf sovielen PCs wie möglich – zuhause und im Büro (bei mir läuft die Betaversion auf mindestens 9 PCs), und innerhalb von Microsoft wurde die Betaversion auf Tausenden von Computern unserer Mitarbeiter und in unseren Labors installiert.

All die BenutzerInnen, die die Betaversion installiert haben, tragen aktiv zur Verbesserung der Version bei. Wir sammeln telemetrisch unter anderem Daten zu Leistung, Kompatibilität von Anwendungen, Nutzung und Einzelheiten zu Anforderungen an die Geräte. Die Daten sind übersichtlich strukturiert und ermöglichen Entscheidungen in Bezug auf unser weiteres Vorgehen. Wir haben sehr enge Beziehungen zu unseren Partnern und verfügen über gute Tools, um den BenutzerInnen eine optimale User Experience zu bieten. Es wird Ihnen vielleicht auffallen, dass Hardware- und Softwareanbieter für Windows 7 aktualisierte Treiber und Software ausprobieren. So haben zum Beispiel bereits viele Anbieter von Antivirusprogrammen Kompatibilitäts-Packs oder Updates auf den Markt gebracht, die automatisch auf das von Ihnen installierte Betriebssystem angewandt werden. Möglicherweise werden viele GPU-Chipsätze ermittelt und die aktualisierten WDDM 1.1 Treiber von Windows 7 heruntergeladen. Während die Treiber für Windows Vista noch wie zu erwarten funktionieren, bieten die neuen 1.1 Treiber eine verbesserte Leistung und beanspruchen eine geringere Speicherkapazität, was auf Computern mit 1 GB an freigegebenem Speicher einen großen Unterschied machen kann. Wenn Sie ein Gerät hinzufügen, bekommen Sie unter Umständen eine kürzlich aktualisierte Version eines Treibers, wie es bei meiner Logitech QuickCam der Fall war. Ein anderes Beispiel ist Skype, wo Sie für die Windows 7 Betaversion eine aktualisierte Version der Software benötigen, die gegenwärtig getestet wird. Wenn Sie die alte Version installieren möchten, erhalten Sie eine Fehlermeldung, und die Benutzeroberfläche für Problembehandlung wird geöffnet, in der Sie zur Betawebsite umgeleitet werden. Aufbauend auf unserer Erfahrung und der Unterstützung durch unsere Partner im Ökosystem wird diese Art von Fehlerbehandlung ständig auf den neusten Stand gebracht. Dies ist nur möglich aufgrund unserer engen Beziehungen mit unseren Partnern innerhalb des Ökosystems, auch wenn es sich erst um die Betaversion handelt.

Ich sollte nochmals hervorheben, dass ein Hauptanliegen unseres Designs darin besteht, dass Geräte und Programme, die mit Windows Vista kompatibel sind und vom Hersteller noch unterstützt werden, natürlich auch im Fall von Windows 7 mit der gleichen Software kompatibel sein sollen. Es gibt eine Reihe von Programmen und Geräten, die aus vielerlei Gründen speziell für eine bestimmte Version von Windows zur Verfügung stehen. Darüber haben wir bereits gesprochen, und wir bemühen uns weiterhin zusammen mit unseren Partnern, optimale Lösungen für Windows 7 anzubieten. Der Wunsch, den BenutzerInnen eine umfassende Auswahl an Optionen zur Verfügung zu stellen, sowie die offene Windows-Plattform stellen eine große Herausforderung dar. Wir bemühen uns weiterhin um Verbesserungen in diesem Bereich und möchten gleichzeitig sicherstellen, dass wir die richtigen Optionen und Differenzierungsmöglichkeiten anbieten, die für ein intaktes und diversifiziertes Ökosystem von zentraler Bedeutung ist. Die von uns gesammelten Daten und die Zusammenarbeit mit unseren Partnern stehen jetzt im Zentrum der nächsten Schritte auf dem Weg zum Releasekandidaten.

Ebenso aufmerksam verfolgen wir die Daten, die wir in Bezug auf die Qualität des Systems während der Betaphase sammeln. Wir analysieren Programmcrashes, Situationen, in denen ein Programm oder das Betriebssystem hängt, Probleme mit der Anwendungskompatibilität sowie die Systemleistung in Bezug auf die wichtigen realen Szenarien. Ein nicht geringer Teil unserer Arbeit am Releasekandidaten befasst sich ausschließlich mit Qualität und Leistung. Wir möchten sowohl die von unseren BenutzerInnen während des täglichen Gebrauchs festgestellten als auch die im Laufe unserer umfassenden Tests und Automationsprozessen erfassten Bugs beseitigen. Dabei ist es besonders wichtig, dass wir die Bugs beseitigen, denen unsere BenutzerInnen tatsächlich begegnen. Dies geschieht dadurch, dass wir unsere Bemühungen auf die Daten konzentrieren, die wir erfassen, und aufgrund dieser Daten die Prioritäten für die zu beseitigenden Bugs festlegen. Diese Vorgehensweise wurde bereits bei Internet Explorer angewandt, als der Releasekandidat herauskam. Näheres erfahren Sie auf dem IE Blog.

Selbstverständlich arbeiten wir auch an der Ausarbeitung der Details des endgültigen Produkts, wobei wir uns von der tatsächlichen Nutzung der Features und dem Feedback der BenutzerInnen leiten lassen. In Bezug auf die User Experience haben wir bereits viel Feedback in Form von Kommentaren erhalten — sei es im Zusammenhang mit den Standardeinstellungen, Tastenkombinationen, oder gewünschten Optionen, um nur einige Beispiele zu nennen. Es ist klar, dass schon allein die Durchsicht, Unterteilung und Zuordnung dieses Feedbacks eine große Herausforderung darstellt, und wir haben eigens Leute mit dieser Aufgabe beauftragt. In Spitzenzeiten haben wir alle 15 Sekunden einen Kommentar über “Feedback absenden” erhalten! Wie bereits in diesem Blog erörtert, erhalten wir viel Feedback, bei dem wir die einzelnen Alternativen abwägen müssen, da uns viele unterschiedliche Ansichten zu den einzelnen Problemen mitgeteilt werden. Dies ist nicht anders zu erwarten und stellt eine der zentralen Herausforderungen beim Design dar. Manchmal erhielten wir auch Feedback zu einem Feature, von dem wir dachten, es wäre offensichtlich oder würde reibungslos funktionieren, aber in Wirklichkeit bedurfte es einer weiteren Abstimmung und Ausarbeitung der Details. Die Beiträge in den nächsten Wochen werden auf einige dieser Veränderungen am Produkt näher eingehen. Solche Änderungen sind Teil des Prozesses und werden einen Teil der Zeit in Anspruch nehmen, die wir für die Arbeit am Releaasekandidaten vorgesehen haben.

Wir untersuchen also täglich die Probleme, von denen unsere BenutzerInnen berichten, versuchen, sie zu lösen und stellen sicher, dass mit der Lösung dieser Probleme keine Regressionen (in Bezug auf Leistung, Verhalten, Kompatibilität oder Zuverlässigkeit) auftreten. Beim Übergang zum Releasekandidaten geht es vor allem darum, das Produkt in einen stabilen und auslieferbaren Zustand zu bringen, sowohl von einem internen als auch externen Standpunkt (Nutzung der Betaversion und Bereitschaft des Ökosystems der Partner) aus betrachtet.

Der Releasekandidat wird von uns als Aktualisierung der Betaversion zur Verfügung gestellt werden. Ausgehend von unserer Erfahrung mit der Betaversion erwarten wir, dass eine große Anzahl von BenutzerInnen daran interessiert sein wird, den Releasekandidaten auszuprobieren.

Mit dem Releasekandidaten wiederholt sich der Prozess des telemetrisch erfassten Feedbacks. Allerdings werden wir in diesem Milestone weit selektiver in Bezug auf die Änderungen vorgehen, die wir zwischen dem Releasekandidaten und der endgültigen Version an dem Produkt vornehmen, und wir werden diese Änderungen offenlegen. Wir werden uns auf die wichtigsten Probleme konzentrieren. Beim Releasekandidaten geht es darum sicherzustellen, dass alles bereit ist für die neue Version, und dass genügend Zeit zwischen dem Releasekandidaten und dem Release an PC-Hersteller eingeräumt wird, um die Arbeit, die seit der vorläufigen Betaversion an dem Produkt geleistet wurde, genügend zu testen. Auch in dieser Hinsicht erwarten wir nur sehr wenige Änderungen am Code. Scherzhaft lassen wir uns oft darüber aus, dass dies die unproduktivste Phase für das Team der Entwickler ist, da wir alle unsere Arbeit auf das Produkt konzentrieren, aber nur wenig Code schreiben. So muss es sein: das Schiff ist bereit, in See zu stechen, und alle Werkzeuge sind weggeräumt und werden nur dann aus dem Werkzeugkasten hervorgeholt, wenn wirklich wichtige Probleme auftauchen.

Von Anfang an haben wir betont, dass es sich hier um eine Partnerschaft handelt. Bei diesem Abschnitt des Projekts geht es hauptsächlich darum sicherzustellen, dass das gesamte Ökosystem auch tatsaechlich für die neue Version bereit ist. PC-Hersteller, Softwareanbieter und Hardwarehersteller haben alle ihre eigenen Vorlaufzeiten. Es muss genug Zeit dafür sein, neue Produkte und Konfigurationen bereitzustellen, sowie Software-Updates und all das, ohne das Windows 7 nicht auf den Markt gebracht werden kann, vorzubereiten. Denken Sie nur an all die Websites, Downloadseiten, Hilfeartikel, Trainingsmaterialien und periphere Packages, die erstellt werden müssen. Dies erfordert Zeit, und für das Ökosystem ist es wichtig zu wissen, dass mit dem Releasekandidaten die endgültige Version des Codes zur Verfügung steht und getestet werden kann. Wir möchten den Kunden und Kundinnen eine zuverlässige Version von Windows 7 bieten.

Darüberhinaus erweitern wir ständig unsere Kompatibilitätslisten, beginnend mit den Logo-Produkten. Unsere Website https://www.microsoft.com/windows/compatibility ist eine wertvolle Ressource für die BenutzerInnen. All dies fügt sich zu einem Ganzen, wenn die PC-Hersteller vollständige „Abbilder“ von Windows 7 PCs erstellen, einschließlich der ganzen Software-, Hardware- und Treiberinstallationen. Dies ist sozusagen eine Probe für die nächsten Schritte.

Zu jenem Zeitpunkt ist das Produkt bereit zum Release, und das ist es, was wir möchten. Vielleicht werden wir dies sogar ein wenig feiern!

Es gibt noch einen weiteren Schritt, den wir General Availability (Allgemeine Verfügbarkeit) oder GA nennen. Dieser bezeichnet die Zeitspanne, die benötigt wird, um den Markt mit Windows- PCs zu versorgen, die bereits mit Windows 7 geliefert werden, und die Software an den Einzelhandel (Online oder Einzelhandelsgeschäfte) zu liefern. Wir wissen, dass viele Leute es vorziehen würden, wenn die RTM-Software umgehend zum Herunterladen bereit wäre, aber wir werden mit diesem Release wie gewohnt vorgehen. Mit der Allgemeinen Verfügbarkeit gewinnen wir auch etwas Zeit für die Lokalisierung und können Windows innerhalb dieser relativ kurzen Zeitspanne für den weltweiten Markt zur Verfügung stellen. Diese Zeitspanne ist bei Windows 7 erheblich kürzer als bei früheren Versionen. Ich möchte auch hervorheben, dass der Releasekandidat lange genug zur Verfügung stehen wird, so dass Sie nicht befürchten müssen, dass dessen Gültigkeit abläuft.

Um es zusammenzufassen:

  • Vorläufige Betaversion – Mit diesem Release, das bei der PDC zur Verfügung gestellt wurde, sollten die Entwickler mit Windows 7 vertraut gemacht werden. Diese Version stellt die komplette Plattform dar und enthält sämtliche neuen Features.
  • Beta – Mit diesem Release erhalten ein paar Millionen von BenutzerInnen die Gelegenheit, sämtliche Features von Windows 7 auszuprobieren, wobei wir telemetrisch Daten zur Benutzung sowie Feedback sammeln, was für eine Überprüfung der Qualität, Zuverlässigkeit, Kompatibilität und Benutzererfahrung von Windows 7 notwendig ist. Wie gesagt, arbeiten wir mit allen Partnern des Ökosystems zusammen um zu gewährleisten, dass während der Betaphase die Tests, Validierung und Entwicklung von Produkten, die auf Windows 7 basieren, abgeschlossen werden können.
  • Releasekandidat (RC) – Dieses Release stellt die Version von Windows 7 dar, die wir auf den Markt bringen wollen. Wir werden weiterhin das Feedback und die telemetrisch erfassten Daten analysieren und uns dabei auf die wichtigsten Probleme konzentrieren. Änderungen, die von uns am Produkt vorgenommen werden, werden von uns publik gemacht. Mit diesem Release wird es den Partnern im Ökosystem ermöglicht, gemeinsam eine bestimmte Stufe zu erreichen und zu gewährleisten, dass wir alle für das Release to Manufacturing bereit sind. Nachdem wir beim Releasekandidaten angelangt sind, widmen sich die Partner des Ökosystems der “Kostümprobe” für die nächsten Schritte.
  • Release to Manufacturing (RTM) (Release an die Hersteller) – Dies stellt die endgültige Version von Windows 7 dar, die den PC-Herstellern für Einzelhandels- und Volumenlizenz-Produkte zur Verfügung gestellt wird.
  • Allgemeine Verfügbarkeit (General Availability, GA) – Dies ist ein geschäftlicher Milestone und bezeichnet den Zeitpunkt, zu dem Sie PCs erwerben können, auf denen Windows 7 bereits installiert ist, oder das endgültige Windows 7 Produkt kaufen können.

Damit stellt sich natürlich die Frage nach dem Zeitpunkt, zu dem der Releasekandidat zur Verfügung steht oder wann das Datum des Releases an die Hersteller ist. Die vorläufige Betaversion wurde am 28. Oktober zur Verfügung gestellt, das Datum für die Betaversion war der 7. Januar. Die Frage wird demnächst beantwortet werden. Gegenwärtig evaluieren wir das Feedback und die telemetrisch erfassten Daten und arbeiten an einem soliden Zeitplan, der ein Release auf dem angestrebten Qualitätsniveau ermöglicht. Glauben Sie mir – es ist uns klar, dass viele Leute genauere Daten wissen möchten. Wir machen Fortschritte und sind überzeugt, dass wir den richtigen Weg eingeschlagen haben. Unser Ziel ist Qualität bei der Fertigstellung des Produkts, und wir werden uns nicht von uns auferlegten Fristen leiten lassen. Wir verfügen über eine interne Metrik und Milestones, und unsere Partner erhalten regelmäßig neue Builds, so dass auch der Releasekandidat ein Produkt unserer Zusammenarbeit mit unseren Partnern sein wird. Der Erfolg des Produkts hängt entscheidend davon ab, dass Sie alle die Betaversion testen, sowie von der Zusammenarbeit mit unseren Partnern, die uns beim Endspurt helfen.

Ich hoffe, wir konnten zeigen, wie sehr die abschließende Arbeit an einer neuen Version von Windows auf der die gesamte Industrie erfassenden Zusammenarbeit basiert. Wie in unserem ersten Beitrag erwähnt, versprechen wir, die beste Version von Windows zu liefern, die uns überhaupt möglich ist, und das ist und bleibt unser Ziel. Gemeinsam, mit etwas Geduld, werden wir dieses Ziel erreichen.

Wir sind überwältigt von der Reaktion, die Windows 7 hervorruft und konzentrieren uns voll auf die verbleibende Arbeit an einem Produkt, das sowohl Ihre als auch die Bedürfnisse der gesamten Industriebranche erfüllen soll.

--Steven, im Namen des Windows 7 Teams