Objective 3.1: Distinguish appropriate from inappropriate techniques for providing access to a legacy system from Java code given an outline description of that legacy system
Screen Scraper
Scenario: 
You need to connect to a legacy mainframe system. The source code is not available, the database cannot be accessed directly.
Possible architecture: 
Build a screenscraper to emulate the legacy system's terminal.
Pros: 
- Requires not a lot of effort to implement
 - Low-level object-based interface to the legacy system
 - Allows you to build a new GUI over the existing client interface
 - Can be implemented without any disruption to existing legacy applications
 
Cons:
- Slow
 - Scalability might be a problem, because the original system may not be able to handle the load inflicted by the J2EE application.
 - Changing the mainframe code might make the scraper stop working
 - Does not allow for adding new functionality
 - Unexpected outputs or expected inputs that the new GUI is unaware of can cause the new GUI to freeze or break
 
Alternatives: 
An off-board server can also be appropriate for this scenario.
Screen Scraper
A Screen Scraper is an application that translates an existing client interface into a set of objects.