Business logicBusiness logic
is an ambiguous term used in software architecture
to signify a software component
, layer (or tier
) of software functionality, software library
or similar that performes operations on some kind of data
passed back and forth through it. It is usually associated with the three-tier software architecture
and has been conceptually popularized by Rational Software
A more descriptive term might be, "small data processing computer program used in conjunction with other programs", or "software thing that does some things to things I send to it". This does not sound so sexy, and that is probably why the buzzword "business logic" was born.
The word might also be used because it brings up associations to such things as enterprises, corporations, transactions inbetween them and other businesses. However that's not the kind of business referred to here, though this is a common use of the technique, and a common (and perhaps intentional) misconception of the word.
The idea that software should be "layered" or "tiered" comes from Newi Business Objects and Microsoft Component object model architects. A "business object" is the same thing as a software component.