Separation of concerns: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>David MacQuigg
(Add email system example)
mNo edit summary
 
Line 12: Line 12:
=== The email system ===
=== The email system ===


Separation of concerns into two categories - administrative concerns, and process-level concerns, allows the development of simple models which facilitate better understanding of how [[Email system|email systems]] work.
Separation of concerns into two categories - administrative concerns, and process-level concerns, allows the development of simple models which facilitate better understanding of how [[Email system|email systems]] work.[[Category:Suggestion Bot Tag]]

Latest revision as of 06:01, 17 October 2024

This article is a stub and thus not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.

Separation of concerns is an engineering concept, widely used in software engineering, to separate a seemingly overwhelmingly complex problem into a set of more tractable concerns, each with its own technical solution. There will need to be careful engineering among the gateways and interfaces among the various "solution spaces".

One common approach to separation, in telecommunications, is between the consumer and provider of service. The key element in such separation is to understand what each side expects at their shared interface.

Examples

The Internet

Separation of concerns is crucial to the design of the Internet. In the Internet Protocol Suite great efforts have been made to separate concerns into well-defined layers. This allows protocol designers to focus on the concerns in one layer, and ignore the other layers. The Application Layer protocol SMTP, for example, is concerned about all the details of conducting an email session over a reliable TCP connection, but not the least concerned about how the Transport Layer protocol TCP makes that connection reliable. Similarly, TCP is not concerned about the routing of data packets, which is handled at the Internet Layer.

The email system

Separation of concerns into two categories - administrative concerns, and process-level concerns, allows the development of simple models which facilitate better understanding of how email systems work.