Sign Doug's SOTR Petition!

Sign Doug's petition to his boss and help send him to Scotch on the Rocks in 2012!
Recent Entries
Contact Doug!
Learn About Doug!
View Doug Boude's online resume
updated 11/18/2009

View Doug Boude's profile on LinkedIn
Link to me!

Follow Doug Boude on Twitter
Follow me!

Be Doug's friend on Facebook
Befriend me!
(I promise not to follow you home)
OO Lexicon
Chat with Doug!
NO MORE CAREER
POLITICIANS!
Get Out Of Our House: Replacing congress with TRUE citizens!
You may also be interested in...
Web Hosting
best web hosting - top web hosting sites, thetop10bestwebhosting.com

Czech your Page Rank!
Check Page Rank of any web site pages instantly:
This free page rank checking tool is powered by Page Rank Checker service
Surf's Up!
Visit Egosurf.org and massage YOUR web ego!
My Score: 9,001
Doug's Books

Read (and recommend)

  • Men are from Mars, Women are from Venus
  • The Wisdom of Crowds: Why the Many Are Smarter Than the Few and How Collective Wisdom Shapes Business, Economies, Societies and Nations
  • Blink: The Power of Thinking Without Thinking
  • Head First Design Patterns
  • Transact-SQL Programming
  • What's So Amazing About Grace?
  • Just So Stories (Rudyard Kipling collection)

Reading

  • Prayer: Does it Make Any Difference?
  • Data Mining (Practical Machine Learning Tools and Techniques)
<< February, 2012 >>
SMTWTFS
1234
567891011
12131415161718
19202122232425
26272829
Search Blog

Recent Comments
Re: Basic Ajax Select List Filter in PHP (by opineemia at 2/02 8:47 PM)
Re: PHP vs COLDFUSION (by dougboude at 1/24 9:47 AM)
Re: PHP vs COLDFUSION (by WhatTheHeck at 1/23 7:03 PM)
Re: Recursive Functions in ColdFusion (by Marty McGee at 1/22 1:01 PM)
Re: SQL Forward Engineering with Visio 2003 Professional (by Rama at 1/10 11:05 AM)
Re: PHP Export to Excel Snippet (by rasha at 1/10 1:55 AM)
Re: Fredrick "French" Fry (by Picky eater at 1/09 2:21 PM)
Re: Disappearing IE Popup Window During Save/Open Dialog (by Vivekanand at 1/06 12:51 AM)
Re: Just What IS a 'Service Layer', Anyway? (by Ashishkumar Haldar at 1/05 7:49 AM)
Re: Viewing Option Text (in IE7) that's Wider than the Select List (by ranjit sachin at 12/20 6:22 AM)
Re: Recursive Functions in ColdFusion (by Jason at 12/15 12:13 PM)
Re: Viewing Option Text (in IE7) that's Wider than the Select List (by kt at 12/08 3:47 AM)
Re: PayPal IPN Coldfusion CFC (by Guest at 11/28 6:11 PM)
Re: SQL Forward Engineering with Visio 2003 Professional (by freddy villamil at 11/09 2:49 PM)
Re: Finally Found a Use for CFTHREAD (by criclebrava at 11/09 1:23 PM)
Re: Finally Found a Use for CFTHREAD (by assisisowsfub at 11/07 10:37 PM)
Re: IRRITATING CF QUERY ERROR AND SOLUTION (by dougboude at 10/10 10:48 AM)
Re: Using Google as your CF Mail Server (by hlharkins at 10/09 10:24 AM)
Re: IRRITATING CF QUERY ERROR AND SOLUTION (by Peter Boughton at 10/07 3:15 PM)
Re: My Thoughts on the Current Presidential Contenders (by dougboude at 9/23 12:21 PM)
Categories
Archives
Photo Albums
Funnies (5)
Family (3)
RSS

Powered by
BlogCFM v1.11

22 August 2008
Just What Is 'Application Logic', Anyway?
as opposed to 'Business Logic'

In a previous post I did on "what is Business Logic", I used the analogy of the application's controller making a request for information from the model, and how the process that the model executes in order to produce the requested information IS the business logic itself. Since I had taken the time to expound on the term "Business Logic", a reader asked me if I would expound on what, in contrast, exactly Application Logic is, so what follows is an analogy of the term as I understand it....

Let's start a company, shall we? Sapient Grey will be primarily a think tank, but with an in-house development group with the capabilities to make the visions of the core committee a reality. Our corporate motto, "Sapient Grey is People..." will be burnished in giant brazen letters alongside a customized version of Rodin's famous sculpture "The Thinker", all of which will adorn the east-facing side of our brand new ten story red granite office building.... Oh, wait. We don't have an office building yet. Okay then, so we'll hire an architect to design our office building, being sure to include a private elevator and an elaborate zen-style atrium or courtyard in the center. In the meantime, while the building is being designed and constructed, you and I and our other elite colleagues will fly ourselves to Tahiti to brainstorm Sapient Grey's visions, goals, agenda, and lay out a detailed business plan.

Our architect is creating detailed blueprints for the office building, figuring out how the plumbing will need to be laid out, how the electrical systems will be segregated and tied together, how the interoffice communication system will be organized, and how we will implement security at all levels. The systems and designs that our building architect is handling is a precise analogy to what "Application Logic" is within a web application. How security is implemented, how we will manage and access state and persistence, how we will handle storage and retrieval of data....this is application logic. Like our office building, which when complete could house and accommodate anything from an elite night club to an investment firm, the application logic is independent of the actual business logic that executes within it.

Back in Tahiti, we and our elite colleagues have nailed down our mission, vision, and corporate culture statements, and have managed (despite the infinite flow of top shelf pina coladas) to draft a three hundred page document which architects Sapient Grey's primary divisions, corporate policies, managerial policies, communication policies, and human resources policies. We know, generally at this point, what our company will be doing and all the internal workings that will allow it to function efficiently. In our analogy with a web based application, we have just architected our application's Business Logic.

So, although at first glance the terms Application Logic and Business Logic can seem to be very ambiguous and even overlapping (they were for me, anyway), in reality they are not. Using the analogy of Sapient Grey and its office building, it is a rather simplistic exercise to properly categorize any aspect of a web based application's logic as one or the other. Just ask yourself, "is it part of the building our company resides in, or is it part of our company and would go with us DESPITE the building we happen to office in?"

Just my take on things. Input and/or clarification soliticted from any other enlightened beings.

Doug out.




Posted by dougboude at 7:56 PM | PRINT THIS POST! |Link | 4 comments
Subscription Options

You are not logged in, so your subscription status for this entry is unknown. You can login or register here.

Re: Just What Is 'Application Logic', Anyway?
Thanks Doug for taking the time to write up a piece on the distinction's between application and business logic. I agree with you that the two terms can seem fuzzy and even interchangeable but you made it very clear cut how this isn't the case. By the way i love your teaching style it makes the topic very easy to understand as you put it into a context that everyone can relate to.

Thanks again,
Charlotte
Posted by Charlotte on August 23, 2008 at 3:12 AM

Re: Just What Is 'Application Logic', Anyway?
This also highlights another reason that creating software isn't the same as constructing a building. The truly important stuff is not the application logic.
Posted by Calvin on August 23, 2008 at 7:15 AM

Re: Just What Is 'Application Logic', Anyway?
thanks dougie, smashed it bro, made me see the light. keep the lan up lad! gettin the jon jun left right an centre! top man, aja cod x
Posted by jun-forest-jun on January 12, 2011 at 11:52 AM

Re: Just What Is 'Application Logic', Anyway?
test
Posted by test on May 17, 2011 at 8:51 AM

Name:   Required
Email:   Required your email address will not be publicly displayed.

Want to receive notifications when new comments are added? Login/Register for an account.

Time to take the Turing Test!!!

Two plus Seventeen equals
Type in the answer to the question you see above:

Your comment:

Sorry, no HTML allowed!