![]() |
Расмус Лердорф: "По мере роста объема и усложнения кодовой базы проекта PHP растет значимость Coverity Scan, как инструмента повышения качества кода". Источник: Ed/Wikipedia, CC BY-SA 2.0 |
Инструменты Coverity оценивают качество кода по плотности дефектов — их числу на 1000 строк. Средняя плотность дефектов по программной индустрии в целом — 1.
Авторы доклада установили, что проекты с открытым кодом, которые пользуются сервисом Coverity Scan, имеют среднюю плотность дефектов 0,45. Этот показатель получен на основании анализа 37 млн строк кода 45 самых активных на сегодня открытых проектов.
Для сравнения, средняя плотность дефектов проприетарных кодовых баз — 0,64: эта цифра получена в результате обработки 300 млн строк кода из 41 проприетарной кодовой базы. В среднем коммерческие проекты имеют по 7,5 млн строк кода, тогда как открытые проекты — по 832 тыс.
«Полученные нами результаты поражают, — считает Зак Самоча, директор Coverity Scan Project. — Проекты Open Source демонстрируют такие же показатели, как коммерческие. Если в какой-либо организации захотят перейти с коммерческих продуктов на ПО с открытым кодом, ей определенно будет из чего выбирать».
В докладе Coverity Scan отдельное внимание уделено Linux 2.6, PHP 5.3 и PostgreSQL 9.1, так как считается, что эти три opensource-проекта характеризуются самым высоким качеством кода, благодаря чему на них можно ориентироватся, как на эталон. Плотность дефектов у них составила соответственно 0,62, 0,2 и 0,21.
Как объясняет Самоча, эти проекты были выбраны, как составляющие репрезентативный срез рынка Open Source: Linux — это операционная система, PHP — язык программирования, PostgreSQL — база данных. По его утверждению, у всех трех очень малая плотность дефектов, так во всех из них для контроля качества применяются инструменты наподобие Coverity.
«Разработчики PHP, например, буквально ежедневно проводят проверку кода с помощью инструментов Coverity, чтобы поддерживать качество на должном уровне, — утверждает Самоча. — Разработчики понимают, что благодаря высокому качеству кода у них появляется конкурентное преимущество, когда заказчик выбирает между различными проектами с открытым кодом».
«Качество кода — критически важный фактор, влияющий на рост популярности и внедрения языка PHP, на котором написаны многие из самых популярных сайтов в мире, — заявляет создатель PHP Расмус Лердорф. — По мере роста объема и усложнения кодовой базы проекта растет значимость Coverity Scan, как инструмента повышения качества нашего кода».
Coverity Scan — это облачный сервис, широко используемый в сообществе Open Source. Он автоматически проверяет код на программные дефекты, способные приводить к сбоям, непредвиденным действиям и уязвимостям. У Coverity более 1100 клиентов, включая компании Adobe, Alcatel Lucent, Samsung и Vodafone.