Цепочка принятия решений должна быть поддержана, с другой стороны, цепочкой проверки и валидации.
Откуда берется вторая часть этого… этой замечательной схемы? Представьте себе, что по той или иной причине надсистема перестала выполнять свою работу. То есть, мы здесь столкнулись с часто возникающей проблемой — что-то не работает. (:-))
Как мы можем понять, какая именно часть большой сложной системы не функционирует? Возможно, проблема находится в какой-то части, реализованной в надсистеме. Возможно, проблема кроется в каком-то компоненте или, возможно, проблема кроется в изменениях, которые были недавно внесены.
Соответственно, практика, наработанная в комплексных системах, то есть в системах, которые построены на большом количестве взаимосвязанных человеческих решений, сформировался так называемый V-процесс, в рамках которого, прежде чем мы будем осуществлять использование модифицированного компонента, то есть там, где у нас произведено изменение, мы вначале должны его верифицировать.
Мы должны его верифицировать с точки зрения того — соответствует ли он тому, что мы планировали реализовать. И только после того, как мы проверили, что этот компонент функционирует так, как мы задумывали, мы проверяем, как он будет взаимодействовать с другими компонентами. Таким образом, осуществляя, во-первых, первичную проверку на предмет того в рамках модели, в рамках решений, как планируемые характеристики системы будут взаимодействовать между собой, и вторая сторона части — проверяя, как каждый из компонентов, который мы реализовали, соответствует уже принятым решениям, мы получаем ситуацию, когда мы управляем развитием системы.
И не возникает ситуации, когда незначительная модификация в одном из компонентов приводит к тому, что перестает функционировать система в целом.