I found creating this outline helpful while I read Chapter 2 in the textbook:
Database [Storage]: The most popular information producer and consumer by far, databases are natural points of integration because they were designed to produce and consume data, and thus provide the best interface into source and target applications exchanging information. An advantage of using the database as a point of integration is that the interfaces are almost always well defined and tested, and there are many different types of result sets you can request. A disadvantage is that the information produced is typically not bound to business entities. Thus, while you will receive a lot of information, you have to figure out how the information in the result set pertains to the specific process you are working on.
Application logic [Processing] aka API [Application Programming Interface Layer]: Provide interfaces access to information as well as encapsulated processes, additionally to application services. Because interfaces among applications differ so vastly [patterns or standards], you need to address each packaged application individually. Packaged application vendors and developers expose these interfaces to provide access to the business processes and are encapsulated within their applications w/o requiring other developers to invoke the user interface or to go directly to the database. The use of such interfaces creates a benefit for application integration by allowing externally applications to access the information found in these applications w/o making any changes to the packages or to applications themselves. Exposing these interfaces also provides a mechanism to allow encapsulated information to be shared.
User Interface Layer: Leveraging the user interface as a point of information integration is a process known as "screen scraping," or accessing screen information through a programmatic mechanism. Many times, application integration projects have no other choice but to leverage user interfaces to access application data and processes, sometimes, due to the fact that underlying databases and application interfaces do not exist. One issue with this type of option is that it cannot scale, so it is unable to handle more than a few screen interfaces at any given time. However, due to the fact that there are many closed and proprietary applications out there, the application integration architect has few choices left. In order to implement this integration type, it is critical to understand the application. This requires understanding the underlying data storage schema, much of the application logic, and, most important, how the information is presented to the user interface. Unlike other interface levels, information presented to a user interface may not map back to a database. Most of the data elements on the screen, such as calculated fields, are created by the application logic and do not come directly from the database.