- Business logic
Scope of business logic
- models real life business objects (such as accounts, loan, itineraries, and inventories)
- prescribes how business objects interact with one another
- enforces the routes and the methods by which business objects are accessed and updated
Business logic comprises:
- business rules that express business policy (such as channels, location, logistics, prices, and products); and
- workflows that are the ordered tasks of passing documents or data from one participant (a person or a software system) to another.
In single-tier applications, business logic, presentation logic, and CRUD are often used, with each having intimate knowledge of, or being strongly coupled to, the others. This is seen as problematic, since changes to one result in changes to both of the others, requiring retesting and revalidation of the entire system for a single change. The interweaving also limits the extent to which the CRUD and the business logic can be reused.
In a multilayered architecture (compared to multitier architecture) business logic is a separate module. In the common 3-tier architecture, the business logic in theory occupies the middle tier, the business-services tier or business layer. In practice, the business logic is often interwoven in the other two tiers (the user services tier and the database services tier), such as by encoding business logic in stored procedures and in decisions about input validation and display formatting. However there is not a well-defined rule:  Chad Hower and others advocate storing all business logic in a business layer, and not encoding any business logic in the application's user services or database services tiers, while  T. Koppelaars and others are for placing the business logic layer in the database using stored procedures.
Tools for handling business logic
Business logic can be extracted from procedural code using a business rule management system.
- ^ Steven Minsky (2005-03-27). "The Challenge of BPM Adoption". eBizQ. http://www.ebizq.net/topics/bpm/features/5757.html?&pp=1.
- ^ Khawar Zaman Ahmed and Cary E. Umrysh (2001-10-17). "Introduction to Enterprise Software". Developing Enterprise Java Applications with J2EE and UML. Addison-Wesley. ISBN 0-201-73829-5. http://www.awprofessional.com/articles/article.aspx?p=24260&seqNum=3.
- ^ Chad Z. Hower. "Dude, where's my business logic?". The Code Project. http://www.codeproject.com/KB/architecture/DudeWheresMyBusinessLogic.aspx.
- ^ T. Koppelaars. "A database-centric approach to J2EE application development". http://web.inter.nl.net/users/T.Koppelaars/J2EE_DB_CENTRIC.doc.
- ^ James Owen (2003-09-19). "Bring business logic to light: JRules 4.5 tames business rules with friendly tools". JavaWorld. http://www.javaworld.com/javaworld/jw-09-2003/jw-0919-iw-jrules.html.
- Brett McLaughlin (March 2002). "Business Logic, Part 1". Building Java Enterprise Applications, Vol I: Architecture. O'Reilly and Associates. ISBN 0-596-00123-1. http://www.onjava.com/pub/a/onjava/excerpt/bldgjavaent_8/index1.html. — McLaughlin discusses the façade pattern for implementing the business layer of an application.
- Kathy Bohrer (November 1997). "Middleware isolates business logic". Object Magazine (New York, USA: SIGS Publications, Inc.) 7 (9): 41–46;. ISSN 1055-3614. http://portal.acm.org/citation.cfm?id=284112.284140.
- Harumi Kuno, Mike Lemon, Alan Karp, and Dorothea Beringer (2001). "Conversations + Interfaces = Business Logic". In F. Casati, D. Georgakopoulos, and M.-C. Shan. Technologies for E-Services: Second International Workshop, TES 2001, Rome, Italy, September 14–15, 2001, Proceedings. 2193. Springer Berlin / Heidelberg. ISSN 0302-9743.
- Volker Turau (2002). "A framework for automatic generation of web-based data entry applications based on XML". Proceedings of the 2002 ACM symposium on Applied computing, Madrid, Spain: Web and e-business application. ACM Press. pp. 1121–1126. ISBN 1-58113-445-2. http://portal.acm.org/citation.cfm?id=509011. — Turau presents an application framework implemented using Java Servlets and JavaServer Pages that enables the separation between business logic and presentation logic, allowing development of each to proceed in parallel along relatively independent but cooperating tracks.
- Pau, L-F. and Vervest, P.H.M. (2003-12-08). Network-based business process management: embedding business logic in communications networks. ERIM Report Series Research in Management. Erasmus University. hdl:1765/1070. — Pau and Vervest develop an approach for the embedding of business logic into the communications network that underlies a distributed application with a multiplicity of actors, in order to optimise the allocation of business resources from a network point of view.
Wikimedia Foundation. 2010.
Look at other dictionaries:
Business Logic — Custom rules or algorithms that handle the exchange of information between a database and user interface. Business logic essentially consists of business rules, which are policies that govern various aspects of a business, and workflows, which… … Investment dictionary
Business Logic — Geschäftslogik (engl. Business Logic, auch Anwendungslogik) ist ein abstrakter Begriff in der Softwaretechnik, der eine Abgrenzung der durch die Aufgabenstellung selbst motivierten Logik eines Softwaresystems von der technischen Implementierung… … Deutsch Wikipedia
Business logic — Règles métier En management et en informatique, les règles métier (ou règles de gestion, ou « business rules » en anglais) sont des déclarations de haut niveau structurées, qui permettent de contraindre, contrôler et influencer un… … Wikipédia en Français
business logic — noun Algorithms in a software system that models real life business objects and their interactions … Wiktionary
Business logic layer — A business logic layer (BLL), also known as the domain layer, is a software engineering practice of compartmentalizing. The business logic layer is usually one of the tiers in a multitier architecture. It separates the business logic from other… … Wikipedia
Functional logic (business logic) abstraction — Functional Abstraction (or Business Logic Abstraction) is the ability to separate business logic implementation code from the service protocol implementation which is calling it. This architectural abstraction allows the user to implement the… … Wikipedia
Business rules approach — Business rules are abstractions of the policies and practices of a business organization. The Business Rules Approach is a development methodology where rules are in a form that is used by, but does not have to be embedded in business process… … Wikipedia
Business rule — Business rules or business rulesets describe the operations, definitions and constraints that apply to an organization in achieving its goals. For example a business rule might state that no credit check is to be performed on return customers .… … Wikipedia
Business object (computer science) — Business objects are objects in an object oriented computer program that represent the entities in the business domain that the program is designed to support. For example, an order entry program might have business objects to represent each… … Wikipedia
Business model design — refers to the activity of designing a company s business model. It is part of the business development and business strategy process and involves design methods. Business model design includes the modeling and description of a company s: * value… … Wikipedia