A business object when used in object-oriented programming, is a representation of parts of a business, A business object may represent, for example, a person, place, event, business process, or concept and exist as for example and invoice, a product, a transaction or even details of a person.
Although classes may contain executing or management behaviors, a business object is usually inert holding sets of instance variables or properties.A business object may also make client data requests to the Data Access Object (DAO) and receive data through the Transfer Object (TO).
Business objects enable designers to design software in manageable pieces by breaking the business down into a modular form and separating each function into a software object so that as development progresses, increasing complexity can be added without huge changes to the other objects. The layered architecture protects the application functional objects such as the TO and DAO from the client business objects.
Business objects are defined formally as:
Business Name: The term used to classify a business object.
Business Definition: Statement of the meaning and purpose of the business object.
Attributes: Facts relating to the purpose of the business object.
Behavior: The activities that a business object engages in such as interacting with other objects, recognizing events and changing attributes accordingly.
Relationship: The association between business objects that is a reflection of the inter-relationships between their business purposes and the interactions therein.
Business Rules: The rules by which the behavior, relationships and attributes of a business object must abide.
The communication through layers and the DAO, mean that many types of business objects can be developed that can access DBMS and provide very useful manipulations of the data to assist in promoting overall business application functionality. The Business-Application Architecture (BAA) is a protocol for the cooperation of business objects tying together the 3 layers of the business object-oriented model.