Do you find that the number of errors in Windows 10 updates has increased in the last two years? If so, do you know why? This question answers a recent question video former employee of Microsoft (Senior SDET) Jerry Berg, also known as Barnacules.
Berg worked for 15 years at Microsoft, and one of his roles was to design and develop tools and processes to automate testing on Microsoft's operating system. He left her company after the release of Windows 8.1.
So according to Berg, Microsoft has significantly changed its testing procedures over the last two years. The developer describes in detail how the tests were performed at the end of 2014 until the beginning of 2015, and how Microsoft's testing procedures have changed since then.
In 2014/2015, Microsoft employed an entire team dedicated to testing the operating system, builds, updates, drivers, and other code. The group consisted of several subgroups that conducted tests and debated errors and topics in daily meetings. Testing was performed manually by each group as well as through automated controls. If the specific changes passed the tests, then we could integrate the code into Windows.
The teams performed the tests on "real" hardware in a laboratory through automated tests. There were different systems had different hardware components, e.g. processors, hard drives, video and audio cards and other components so that the company can cover a wide range of configurations of various systems. But it also helped to identify bugs that only affected certain hardware.
So Microsoft stopped using almost the entire Windows test team as it began preparing three different systems: Windows, Windows Mobile and Xbox as a single system. The company began moving most of the testing to virtual machines. This means that the tests have stopped being performed on real systems and many different hardware configurations.
Microsoft employees could then use Windows under development on their own computers. The main idea behind this was to find bugs outside of working hours. Berg states in the video that this is not as widely used as before.
The main source of data, apart from the automated test systems that exist, comes from telemetry and Windows Insiders. Τα Windows Insider builds are installed on millions of devices and Microsoft collects telemetry data from all these devices.
If something goes wrong, Microsoft gets information about what and how. But one of the issues with telemetry data collection is that it's just data. Data does not accurately explain most errors. If something goes wrong, Microsoft may not be able to distinguish the relevant bits from the telemetry data. As for Insiders, others report the problems and others don't. There are also times when bugs appear to have been fixed on some Insiders' systems, but that doesn't mean they've been fixed for every hardware configuration. In addition, although Insiders can report bugs, it is a fact that they do not give all the necessary information to Microsoft, which creates huge problems for the developers who are tasked with solving these issues.
2014 / 2015, the Microsoft test team, was tasked with analyzing bugs and problems. This gave the developers the data they needed to solve them.
Today, Berg says there is only telemetry that developers are trying to analyze to figure out how to fix these issues. The patches that are running for client devices running Insider Builds cannot be properly controlled due to lack of experience. This creates new errors.
One of the main reasons why Microsoft stopped releasing new feature updates to everyone at the same time was that problems that had not been identified could affect a large number of company customers.
So to avoid massive protests like after the circulation Windows 10 in the 1809 version, Windows releases with gradual rollouts rather than massively through Windows Update.