Database Reference
In-Depth Information
The need for metadata
During the course of building enterprise systems, there are functional and nonfunctional re-
quirements. Functional requirements describe the business rules, and nonfunctional re-
quirements are system characteristics with non-business rules. A simple nonfunctional re-
quirement for a system is, for instance, that any SSN must be encrypted both at rest and in-
transient states. Nonfunctional requirements simply go beyond security requirements; non-
functional requirements include notifications, alerts, monitoring, logging, and other soft-
ware qualities.
Nonfunctional requirements include many of the components that make up software quality
http://en.wikipedia.org/wiki/Software_quality . Software quality includes some of the soft-
ware characteristics already mentioned, such as maintainability, security, code quality, reli-
ability, integrity, and so on. Software quality is the ideal state for software to achieve; non-
functional requirements form the specifics of how to achieve certain pieces.
The problem is that, while business requirements may be clearly spelled out, nonfunctional
requirements may not be defined clearly or negotiated enough ahead of time. Therefore,
tweaks are required along the way during the application life cycle, including development
or maintenance. Metadata and precreated frameworks are the key players of this tweaking.
Consider an administration application that business analysts ( BAs ) and operational teams
use to check the current state of an enterprise application. The application takes orders for
aircraft maps and equipment, and customer service representatives ( CSRs ) have an inter-
face for working with the customers and changing their data at will. Operations use an ad-
ministration application to monitor the end-to-end throughput from a browser to a database
and receive notifications if the levels are not achieved.
In the previous example, notifications and monitoring are nonfunctional requirements. BAs
may use the administration application to handle special customer cases and monitor the
number of orders, customers, and other reports. The generation of the reports, the data for
monitoring, is based on the business data and generates metadata. This metadata is used to
check the business data.
The following is a common 3-tier diagram for an application that gathers sales information:
Search WWH ::




Custom Search