The Case for an Open Data Model
CARNEGIE-MELLON UNIV PITTSBURGH PA SCHOOL OF COMPUTER SCIENCE
Pagination or Media Count:
The trend in modern software systems such as Java is to support reflection, wherein independent software can query to find out the properties of objects. The authors have been investigating the implications of taking this property even further, so that all aspects of an application are open and available to inspection by external software. By giving the fundamental data structures of the application a standard format, external components can access the information they need without requiring a complex protocol. The authors have found that this gives the application developer and end users many important benefits, including support for increased automation, extensive end-user customization capabilities, external agents and tutors, sophisticated search and replace, scripting and macros, alternative interfaces without re-implementing the application, plug-ins that operate in the same space, and significantly higher re-use of common code. Many of these benefits are demonstrated in their Amulet user interface development environment, which uses the open data model.
- Computer Programming and Software