Identifying High-Level Objects

We can also pick out some potential high-level objects. This is an important step, since these objects are likely to be the ones that are shared across multiple use cases, and very likely across multiple applications within our organization. Basically, we just want to look through the use case and pick out all the nouns. Each noun has the potential to become a business object. Whether it ends up as a business object is something we'll determine through the rest of the process.

Here's a list of potential high-level business objects from the video rental use case:

StoreAttendant

InventoryInvoice

VideoRental price

CustomerPayment

Front counterSecurity alarm

We'll use this list later on, as we go through the functional use cases and analysis. During that process, we'll identify some of the objects listed here as actual objects in our application; others, of course, won't be required. In this first phase, our objective is to identify any objects within the business domain - not just those that we'll code into our application.