a method of building and assembling programs across computer networks that is dictated by the user to perform logical work without the user using a compiler . users are able to assemble programs over a network by defining or re - defining which logical components are bound into the overall program without the use of a compiler . logical components are called and bound into the program at run time , allowing dynamic programming which may be modified at any time without re - compiling the entire program . each logical component can act independently of other logical components or work in concert with each other . this allows assembly of a program , even though some components may be created using totally different methodologies and / or are constructed by different programmers .