За информацията в тази статия или раздел не са посочени източници. Въпросната информация може да е непълна, неточна или изцяло невярна. Имайте предвид, че това може да стане причина за изтриването на цялата статия или раздел.
Разделянето на отговорности (на английски: separation of concerns) е базов принцип при дизайна и реализацията на сложни софтуерни системи. Принципът се състои в разделянето на компонентите на програмата по такъв начин, че изолирани нейни части (класове, методи, функции) да имат възможно най-тясна специализация. Целта е логиката на отделни части от програмата да не се припокрива с другите части на програмата и по този начин да се минимизират промените в цялата програма, когато някой неин отделен компонент претърпи модификация или разширение. Модулното програмиране и капсулацията са традиционни техники за постигане на разделянето на отговорности.