1 3 1 What is a Repository

Visual LANSA

1.3.1 What is a Repository?

A repository stores information about an application in a central location. It is simply a collection of information about the application - the application's fields, files, rules, relationships, etc. Like a High-Level Application Definition, it should store the information in a non-platform specific format.

Using a repository architecture should significantly reduce application coding. Application information is defined just once in a central location instead of repeating this information wherever it is used in application programs. For example, a business rule for a field can be defined once instead of on every screen and program which uses that field.

Repositories should promote both the sharing and reuse of application logic. Sharing and reuse are very similar but not the same. Reuse generally applies to code reuse within one application. However, completely different applications can share objects or logic when they use a repository, just as different applications can share a database file. Different applications can also reuse repository-based information so it is not repeated in multiple places. It is important to note that some tools can reuse information in an application, but the information cannot be shared with a different application or tool.

Another key benefit of repositories should be reduced maintenance. Repositories simplify application maintenance because the information is easy to find and change since it is stored centrally. Testing can be much faster and easier. Changes can often be made to the repository without impacting existing coded application logic.

Finally, a repository architecture should increase developer productivity, particularly for client/server application development. Developer productivity increases are a direct result of reduced coding, reduced maintenance, reuse and sharing of application logic.

However, a repository does not guarantee these benefits to the developer. The manner in which the repository architecture is implemented is very important.  Not all repositories are the same.

Also See

1.3.2 What is An Active Repository?

1.3.3 What Goes in LANSA Repository?

Ý 1.3 LANSA Repository