1. A method performed by a server computer having a memory and a processor for extending a business application, the method comprising: receiving from an Add-in developer an Add-in having a behavior, the Add-in being comprised of a plurality of artifacts, each artifact specifying a common interface and display target-specific code for implementing the behavior of the Add-in in a manner that is specific to the display target; for each of a plurality of client computers, receiving from the client computer a request for the Add-in, the request specifying a display target, and when it is determined that the Add-in includes an artifact for the specified display target, distributing to the client computer the artifact for the specified display target; receiving from the client computer a message generated by an artifact associated with the display target of that client computer, the artifact having been invoked by a client-side component; and in response to receiving the message, with a processor, executing business logic of a server-side component that performs business logic that is independent of the display target of the client computer wherein the business logic sends to the artifact a response using the common interface of the Add-in so that the server does not need to perform display target-specific business logic processing.