Separation of concerns is closely related to the well-known Roman principle of "divide and conquer". It simply means that a large problem is easier to manage if it can be broken down into pieces; particularly so if the solutions to the sub-problems can be combined to form a solution to the large problem. Separation of concerns can be supported in many ways: by process, by notation, by organization, by language mechanism and others.