views:

436

answers:

10

How to explain what is an application server to a non IT manager?

Thanks :).

A: 

An application server is a server computer in a computer network dedicated to running certain software applications. The term also refers to the software installed on such a computer to facilitate the serving (running) of other applications. For example, an web application server delivers content to the Web, interprets site traffic and constructs pages based on a dynamic content repository.

Galwegian
That's far too ambiguous.
Steve Claridge
A: 

An application server is a server that has some custom software installed on it. In most cases the software provides a service to software clients (including browsers)

Not an easy question to answer for non-techies.

Philippe Leybaert
+3  A: 

Would a diagram help to explain this to your manager? An application server often sits in between the database server and the clients, so a nice Visio diagram showing this may help.

Keith Bloom
A quick diagram on a whiteboard showing a a few web applications installed into one app server, some URLs to access each and a client browser would hit the spot.
Steve Claridge
Well, you assume that a non-techie knows what a database server or a client is. What about explaining them too? That wouldn't be so complicated, right?
TFM
Yes your right. All ways start explaining a system from the point of you audiences understanding.
Keith Bloom
+3  A: 

An Application Server is a place for all our business logic to run that we can access from many other applications so they all use the same business rules. It will also allow our application to grow(scale) as our demand grows.

David Waters
Exactly, an Applicaton Server houses the business logic. Period. Why make it more complicated, especially to non-techies?
TFM
A: 

Explain the client/server model, but instead of calling them client and server just they they are computers, and one sends information to the other.

Nippysaurus
+4  A: 

You might want to concentrate on selling it to the manager here instead of talking of all the best features it has.

If its a manager you know, link it to what he likes. He likes art, talk of its beauty and how its save the day, is he is an ex-marine, talk of its robustness and reliability. Create an analogy to get the point home.

If you don't know the manager, place the application server is a situation/scenario it saves the day for the company. At the end of it all makes sure its of use to the company.

BTW: That's a tough mission you have there, i feel for you, i once had to do it as well ;-)

n002213f
+3  A: 

When you go to (insert your favorite fast-food place here) and order via the drive through, here's what happens:

  • someone takes your order
  • the order is passed into the "kitchen"
  • someone cooks the meat
  • somebody else assembles your burger
  • another person is making sure there are fries available
  • your order is prepared
  • finally, you're handed a bag full of food

The first & last steps are the "web server". Every thing else is the "application server".

chris
The same person who takes the order can do all of those things (aka. "web server"). Why let another "person" be involved?
TFM
It can be, but that's not usually the case. Web servers by themselves just deliver files - any processing is handed off to something else - php, perl, java, asp.net - I can't think of a single example where the web server is actually doing the processing.
chris
@chris: What you are saying is true from an architectural point of view. Management has no such views, except economical.
TFM
Wait, are we discussing web architectures, or fast food? Because the example does break down if you dig into it too deeply - I figured that something that looks good superficially would be good enough for a manager :)
chris
I'm barely presenting a way the management might reason. They are good at pointing out missing bricks in an explanation where we nerds rely on other types of reasoning, such as web architectures.
TFM
A: 

There are two ways to look at your question. One is how to explain its role in the architecture. A lot of the other answers focus on that angle. How it sits between the web browser and the database, and performs the tasks behind the scenes, etc.

But there is another angle to your question: What is it and why would I pay for it or need it (there are open source ones you don't have to pay for, of course, but you do need them).

To answer that you have to speak a bit to what your application server does for your architecture, not "application servers" in general. So pick some common functions that it takes care of (transactions, serving web pages, etc.) and explain how without the application server you would have to reinvent the wheel on these things, and develop your own transaction manager and your own http server, and hand code your own html. To keep it in non-technical terms:

Application servers provide functionality that is common to all [web applications]. They make it easy to make sure that your data remains consistent if there is a failure during the processing, it takes care of a lot of the redundant work around creating and transmitting [web pages].

Without an application server, developers would spend a lot of time redeveloping this functionality instead of focusing on implementing the things that provide greater direct value to the business.

Yishai
A: 

Draw on paper Shema

adopilot
A: 

If it's a functional explanation you're looking for, you could draw the analogy with an organization:

  • The front office is your "user interface"
  • The back office is your "application server"
  • The archive of your business data is your "database"
Pascal Lindelauf