The primary software components of a system consist of:
Presentation logic and application logic
Application logic, presentation logic, and data access logic
Presentation logic, application logic, data access logic, and data storage
Data access logic and data storage