1.3 LANSA Repository

You must understand a Repository-based development paradigm to properly use LANSA.

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, tables, rules, relationships, etc. 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 being repeated 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 table. 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. Since it is stored centrally, repositories simplify application maintenance because the information is easy to find and change. Testing can be much faster. Changes can often be made to the Repository without impacting existing application logic.

Finally, a Repository architecture should increase development productivity, particularly for client/server application development. These 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. The manner in which the Repository architecture is implemented is very important.  Not all repositories are the same.

Also See

1.3.1 What is an Active Repository?

1.3.2 What Goes into the LANSA Repository?

1.3.3 Repository Benefits

1.3.4 Controlling Repository Content