Программное обеспечение интернет-проектов должно удовлетворять ряду требований, таких как максимально возможное разделение трех составляющих любого интернет-проекта: исполняемого кода, дизайна веб-интерфейса и информационного наполнения ресурса, что дает возможность изменения любой из компонент в достаточно широких пределах, не подвергая опасности работоспособность ресурса в целом.
Разделение подразумевает не только возможность раздельной разработки, но и возможность отчуждения любой составляющей, что обеспечивает выполнение следующего требования - повторного использования решений. В самом деле, какими бы уникальными ни были ресурсы и бизнес-процессы, они строятся из базовых элементов, ряд которых практические не изменяется от проекта к проекту.
Необходимость повторного использования влечет за собой требование функциональной полноты и замкнутости решения, что означает полное покрытие программным кодом возможных управляющих воздействий и решение всех задач управления решением в рамках самого этого решения.