Об анализе качества кода системно и архитектурно

Об анализе качества кода системно и архитектурно
К теме анализа качества кода я уже обращался неоднократно и буду и дальше эту тему поднимать. Но все это эпизодические вкрапления, несвязанные в единое целое. Как должен выглядеть процесс создания качественного кода у разработчика или у потребителя, имеющего собственное подразделение по разработке? Картинка достаточно "проста" ;-)

Она отражает все необходимые аспекты, которые надо учитывать при разработке качественного, надежного и безопасного кода. Тут и вопросы архитектуры и дизайна (включая и инструменты по моделированию атак), и требования к разработке (включая шаблоны /паттерны/ атак и уязвимостей), и требования к написанию кода, и вопросы управления проектом по созданию ПО, и вопросы приобретения стороннего ПО, проведения обучения персонала, создания бизнес-кейсов, и вопросы тестирования и анализа кода (включая столь любимые многими пентесты). Учтено все ;-)

В оригинале эта картинка является интерактивной - каждый ее элемент является ссылкой на подробное и детальное описание, содержащее лучшие практики, полезные сведения или инструменты, решающие ту или иную задачу в части повышения качества ПО. Оригинал расположен на одном из лучших сайтов по данной тематике - " Build Security In ", запущенном и поддерживаемом Министерством национальной безопасности США (DHS). Там есть все - статьи, инструментарий, курсы, книги, ссылки, рекомендации и т.д. Является хорошей отправной точкой для погружения в тему повышения качества ПО с точки зрения ИБ.

Но это, разумеется, не все ресурсы, которые могут помочь в освоении описываемой темы. Еще одной классикой является сайт института Карнеги-Меллона, который одним из первых обратился к этой теме в контексте ИБ (аккурат в 1988-м году после эпидемии червя Морриса). Сегодня этот сайт содержит немалое количество полезных ресурсов по теме - подкасты, видео, тренинги, книги и т.д.

Еще одним ресурсом послужит Software Assurance Marketplace (SWAMP) - ресурс, помогающий разработчикам open source понять как правильно разрабатывать и, самое важное, тестировать свои приложения; особенно критические. SWAMP является хорошим примером государственно-частного партнерства, которого так не хватает в России. Может быть Digital Security, которая так часто заявляет о своей лидирующей и пионерской роли в части анализа качества ПО, перестать флеймить и возглавит такую публичную инициативу, создав схожий ресурс (но на русском языке)? Это поможет всем, а заодно и покажет, что Digital Security может не только болтать, пытаясь ужаться в 140 символов твита, но и реально что-то делает на благо России, о которой так пафосно говорит ее генеральный директор? Больших усилий по созданию первой версии такого ресурса (как аггрегатора ссылок и "советов бывалых") там не потребуется.

Наконец, последним интересным ресурсом по теме анализа качества ПО является специализированный портал МинОбороны США - Cyber Security and Information Systems Information Analysis Center. Сразу предупрежу, что на нем не так много открытой информации - много чего доступно только для представителей государственных и военных структур США. Но и того, что выложено в открытый доступ достаточно для понимания тех усилий, которые МинОбороны США прикладывают для решения поставленной задачи. Особенно мне нравится их картинка , отражающая структуру нормативных актов, связанных с ИБ и качеством ПО.


Всего 4 ресурса! Но какая кладезь полезной информации скрыта на них...
open source SDLC оценка соответствия
Alt text

Мы рассказываем о самых актуальных угрозах и событиях, которые оказывают влияние на обороноспособность стран, бизнес глобальных корпораций и безопасность пользователей по всему миру в нашем Yotube выпуске.