Contracts1 A General Pattern for Business Modeling
Pavel Hruby Navision a/s Frydenlunds Allé 6 DK-2950 Vedbaek, Denmark E-mail: firstname.lastname@example.org A contract is: a) an agreement between two or more parties, especially one that is written and enforceable by law, or b) the writing or document containing such an agreement. (TheAmerican Heritage® Dictionary of the English Language, Fourth Edition.)
Contracts are at the core of business. Business administration systems implement functionality that focuses on various aspects of relationships between business partners, such as customers and vendors, employers and employees, service providers and service receivers. The relationships usually manifest themselves inthe form of exchanges of economic resources, such as the purchase and sale of products and the exchange of financial resources. These exchanges are accompanied by various business documents, such as purchase and sales orders, invoices and receipts. These documents specify commitments and constraints for the participating parties. Some examples of such documents are as follows: ! Purchase order: acommitment for the vendor to deliver goods and obligation for the customer to pay for them. In addition, purchase order specifies other purchase properties, such as delivery date and what happens if the delivery date is not met. ! Invoice: a declaration of the claim that the buyer owes a specific amount of money to the seller. In addition, an invoice typically specifies other properties such aspayment terms. ! Employment contract: specifies details about relationship between employee and employer. In addition, the employment contract specifies other conditions of the employment, such as position and compensation. ! Delivery receipt: a declaration of a material movement between business partners, warehouse sites, or between a warehouse site and a business partner. ! Payment: a transfer ofmoney from one business partner to another. I call the business partners participating in a business relationship parties. In keeping with the authors of other publications , , , , , I use the term party to mean a business entity that can participate in a contractual relationship with another party, such as a person, company, legal entity, team, or organizational unit.
A notefor the reviewer: This pattern does not cover agreements, that is, general entities such as service level agreements that contain rules that control specific entities, such as purchase and sales orders. Therefore, the name contracts might be confusing. Alternative names might be something like business events, business relations, or “work before party”.
Draft, 20. February 2002. Authorappreciates suggestions and comments.
I call the abovementioned business documents contracts. The term contract, as used in this paper, covers relationships between parties in various scopes and at various levels of abstraction. An example of a general scope contract is a contract for providing a maintenance service in a given period of time. This contract can result in more specific contracts,such as service orders, and they result in more specific contracts, such as material movements. The economic resource is a subject of trade. I use the term resource to mean a concrete physical product, asset, inventory, or service that has identity. For example, a product that has a serial number, or a service that has a start time and end time. I use the term resource type to mean the descriptionof a tangible product, or the description of a service.
Have you ever tried to describe an object model of a business system and struggled to find the right relationships between business entities, such as customers, business partners, products, sales and purchase orders, invoices and credit memos? Have you ever wanted to know a simple rule for modeling the business system in a...