Повышение надежности в IE8Источник: thevista
В предыдущей статье Энди писал о некоторых новых функциямх, внедрённых нами для повышения надёжности Internet Explorer, среди которых свободно связанные сессии (от англ. Loosely Coupled IE) и автоматическое восстановление после сбоя (от англ. Automatic Crash Recovery). Эти функции помогают снизить отрицательный эффект от возникающих проблем с надёжностью (сбои и зависания). Если такое случается, указанные функции позволят как можно скорее восстановить работоспособность программы. Как разработчики мы видим свою цель в том, чтобы сбоев было как можно меньше. В этой статье мне хотелось бы показать вам, какие подходы мы используем, чтобы определять, присваивать приоритет и устранять проблемы со стабильностью IE8. Каждый из этих подходов соответствует различным аспектам продукта и равно полезен в обеспечении надёжности для разных типов пользователей. Отзывы конечных пользователей В статье за прошлый месяц я рассказывал, как мы используем график случаев сбоя (кривую сбоев) для определения и исправления ошибок, вызванных неудовлетворительной стабильностью программы в бета-версии Windows 7. Такой же схеме мы следовали при подготовке к выпуску окончательной версии IE8. Ниже вы видите изображение кривой сбоев, пик которой приходится на бета-версию IE8. Информация основана на данных, собранных в течение 50 дней после выхода очередной сборки. Зелёные столбики - это ошибки, уже исправленные в IE8.
Диаграмма сбоев программы. Каждый столбик - сбой программы. Сортировка по количеству случаев. Легенда расположена справа в рамке. Кривая демонстрирует, что небольшое количество сбоев испытывают очень многие пользователи. Столбики в левой части диаграммы - это наиболее вероятные сбои в самых распространённых сценариях использования. То, что оказалось в "длинном хвосте" диаграммы - сбои, возникающие относительно редко при специфических конфигурациях оборудования и ПО. Несмотря на важность исправления таких ошибок, мы сосредоточились в первую очередь на самых болезненных моментах и осторожно продвигались дальше вниз по графику. Наиболее существенные ошибки, которые пока не исправлены, будут устранены чуть позже с помощью обновлений. На сегодняшний день мы устранили причины 80% сбоев и зависаний IE8, о которых нам сообщили. Проверка функций программы Дополнительно наш коллектив интенсивно использовал несколько механизмов, с помощью которых выискивают и определяют потенциальные проблемы в исходном коде программы, такие, как переполнение буфера, повреждение памяти, неинициализированная память и пр. Многие из этих проблем могли стать огромной проблемой для пользователей, но, к счастью, мы справились с ними ещё до того, как они стали известны кому-то ещё. Использование продукта внутри компании Внутренние пользователи тоже отправляют нам отчёты через систему сообщений об ошибках Windows. Мы используем их сведения для исправления наиболее критичных ошибок в текущих сборках. Участок кривой сбоев, сформировавшийся за счёт таких сообщений, в значительной мере совпадает с картиной, полученной с помощью данных от обычных пользователей. Например, многие из наших коллег перешли на бета-версию Windows 7 за несколько недель до её открытого выпуска. Данные, генерируемые в результате массового тестирования, позволяют нам создавать предварительный вариант графика сбоев. Мы начали исследовать группу сбоев, которую можно охарактеризовать как наиболее критичные. Исправляя эти ошибки досрочно, мы шли с опережением графика, и поэтому у нас была возможность быстро отреагировать на проблемы пользователей спустя короткое время после выпуска бета-версии. Лабораторная проверка стабильности Стресс-тесты Непрерывное тестирование Заключение Мы уверены, что наши подходы к выявлению проблем с надёжностью IE8 послужили причиной существенных усовершенствований браузера. Мы надеемся, что вы начнёте использовать Internet Explorer 8 и поделитесь с нами своими впечатлениями. Мы полагаемся на ваши отзывы, которые помогут выявить другие проблемы, и мы непременно исправим их в будущих сборках. Если у вас случится сбой или зависание, пожалуйста, дайте нам знать, отослав отчёт об ошибке. Спасибо за вашу поддержку и уверенность в отличном качестве нашего браузера! |