Bungee Labs Glossary

Page Status: Beta

Back to Main Page

Contents

[edit] A

Adapter

A meta class containing an immutable and unique identifier, an adapter can be used at design time as an interface to bind one object to another to facilitate runtime object interactions. Adapers also provide the basis for Bungee's Declarative Programming Model. Visit Understanding Adapters for more information. There are currently several types of adapters:

Aggregation

The practice of appending functionality such as fields or functions, to a pre-existing class or meta object directly, usually one representing an object created by a third party (usually a Web service). Object aggregation is facilitated by Bungee Builder where you can either add to, or eclipse pre-existing functionality. Specifically, you can add items such as classes to the projects, or even members to extant data types in imported WSDL classes, without disrupting the original service.

Application Assembly

The process of adding Cords to a page within an application project in Bungee Builder and then using the Event Viewer to wire the Cords together, as well as setting properties on the Cords to create your final Web application.

[edit] B

Bootstrapping

In BungeeSpeak, “bootstrapping” refers to the fact that the entire Bungee Labs development system is made up of the same technology which the system produces. In Bungee Builder you create Cords which you then interconnect to create Web applications. Bungee Builder is a Web application constructed from interconnected Cords, and exemplifies bootstrapping. In other words, Bungee Builder is recursively built from the products Bungee Builder produces. For a more in-depth discussion of bootstrapping, see Bootstrapping at Wikipedia.org.

BS

An affectionate abbreviation of BungeeSpeak.

Bulletin Board

A mode of laying out a form in which controls dragged onto the form have an absolute positon. In Bulletin Board mode, when you resize a form, a control does not stretch or shrink to new positions based on a percentage of the size of the window.

Bungee Connect

Bungee Connect is a hosted application development, deployment, and delivery system. Because Bungee Connect is hosted, the system is always live, and therefore available to developers and end-users "on-demand". Developers using Bungee Connect create applications using Bungee Builder, deploy those applications on the Bungee Grid, and receive the benefits of Bungee's Pulse technology in the rich and nimble Web-enabled application UI's they create using Bungee Builder. In addition, developers using the Bungee Share, can collaborate with others in the Bungee Community and leverage their own efforts to more quickly develop their own applications.

Bungee Builder

Is the hosted Web application development suite portion of the Bungee Connect . All Web applications created in Bungee Builder are cross-browser enabled and run in Internet Explorer, FireFox, and Safari.

Bungee Cord

See Cord.

Bungee Grid

The server portion of the Bungee On-Demand Applcation System. Bungee Backbone provides immediate deployment and hosting capabilty for any applications created with Bungee Builder. Bungee Backbone also provides analytics and logging capabilities for applications.

Bungee Logic

The native Bungee Labs language you edit in the Design Editor of Bungee Builder Bungee Logic makes use of a declarative programming paradigm or model.

Bungee Service

See Bungee Connect.

Bungee Share

Where completed Cords and forms are posted for later reuse. Using the components stored in the Gallery, you can quickly assemble applications. You add Cords from the Gallery to a Page in any combination of Cord functionality that suits you

BungeeSpeak

A group of terms coined or specialized by the Bungee Labs development team. BungeeSpeak describes computing concepts used in the Bungee Labs application development and deployment environment. This Glossary is composed largely of BungeeSpeak terms.

Bungee Unit

A unit of measure developed by Bungee Labs to determine runtime costs for hosting applications deployed by Bungee Connect. Whereas application development in the Bungee Builder environment is free, applications created using Bungee Builder accrue Bungee Units when they are used. The individual or organization designated as the DesignGroup Administrator of the DesignGroup under which the application is deployed, is billed for accrued Bungee Units. For large enterprises, personalized Service Level Agreements (SLA)s are also available.

[edit] C

Category Adapter

A type of adapter that provides a way to declare whether or not an object contains useable properties. This property information is used by the Work Space Object when you create an object. The Work Space object inspects the new object you create and, if you have set Category adapters, makes the properties available for editing at design time.

Collection

An object that contains objects of the same type. A Bag contains objects of different types. The elements in the collection can be iterated over using a [[Collection Iteration] statement.

Connection

An object that facilitates communication between classes and Adapters. It gives the containing classes the ability to "respond to" queries for a particular behavior identified by an adapter. A connection is a design time Meta Object used to expose a class’s functionality to other objects, such as a connection type or an adapter.

Connection Binding

A linking from one object to another achieved at design time by associating a connection adapter with the first object which is implemented by the second object.

Connection Adapter

A type of adapter which not only allows you to bind one object to another (one of which is usually a control), but also provides you with an interface to the object on which the connection adapter is set, in a manner similar to how interfaces are exposed in COM.

Connection Type

A class that provides a static interface to a particular control and acts as a translator between an object and the particular control for which the connection type has been constructed.

Control Adapter

A type of adapter that is added implicitly when you connect a control to an object, a control adapter binds the View element to the Model (object) so that changes in one propagate naturally to the other.

Controls TypeLib  

The TypeLib in Bungee Builder that contains metadata information for the controls you use in laying out the user interface to your Cord.

Cord

A Cord is a functional assembly. A Cord contains at least one form and is a self-contained set of functionality with a corresponding UI that allows an end user to accomplish a task or set of tasks. Cords may also be thought of as "packaging agents" in that they allow you to package a form with application data into reuseable units. Because they contain small sets of functionality, Cords act as building blocks for larger Web applications. Cords may be interconnected to create Web applications through dragging and dropping events from one Cord to another. Individual Cord events can be accessed through the Event Viewer Cord. Cords also facilitate application creation by reuse of existing Cords in new combinations. Such reuse allows end users to design custom applications unavailable in traditional application creation models. In the philosophical realm, Cords provide an avenue towards Democratization in the creation of end-user applications.

[edit] D

Datasources

Datasources are abstractions that allow you to persist a data construct for later reuse anywhere in your projects. Datasources componetize data structures. You can create Datasources from various types of data. A Work Space is one Datasource that a DesignGroup may contain.

Declarative Programming Model

Bungee-powered applications are created using a declarative approach. This means the focus in the application workflow is based on the relationship between the different data elements. These relationships are managed by setting properties. The key elements underlying the declarative model are called adapters.

Democratization

In BungeeSpeak, the move away from corporate control over the creation of software applications, similar to how the Internet has facilitated the proliferation of information created by sources not associated with government or corporate-sponsored mass media entities. Because Bungee Builder is a free hosted platform for the creation of Web applications, any individual with the necessary skills and access to an Internet connection can create sophisticated Web applications. Bungee Labs also democratizes entrepreneurship by lowering costs to developers by charging Bungee Units based on end user application use. In other words, entrepreneurs pay Bungee Labs in direct proportion to the success of their deployed applications. For a general discussion of the philosophical concepts underlying these principles, see Democratization at Wikipedia.org.

Deployment

The process by which an application becomes operational and accessible to end users.

DesignGroup

Where a Bungee Labs user connects to access a Work Space. Each DesignGroup has at least one member and a DesignGroup Administrator who has the power to invite other members to join the DesignGroup. DesignGroups can also be thought of as data constructs that provide:

See Understanding DesignGroups

DesignGroup Administrator

The DesignGroup Administrator is the person or entity authorized to invite new members to join the DesignGroup. The administrator is also billed for Bungee Unit usage for Cords or Web applications created and deployed by the members of the DesignGroup. See Understanding DesignGroups.

Dynamic

In BungeeSpeak, this term is most often applied to the manner in which Bungee-powered applications and data elements interact, and often refers to runtime, or dynamic binding. That is, although a developer may design an application to interact in a certain way, much of the interaction does not occur until the precise moment the  interaction is needed at runtime. For instance, in the case of an object, you may create an object defintion when you create an application, but the actual object may not be instantiated or exist in memory at runtime until another object requires an instance of the first object to complete a task.

[edit] E

Eclipse

To override, or completely block functionality in a WSDL imported for aggregation within the Bungee Builder. Eclipsing may be accomplished by various methodologies, for example through re-implementation of a function signature, or through throwing an exception when a particular function is called. It should be pointed out that best practices in Bungee Labs would call for creating a native Bungee Labs object that implements the imported WSDL as a member of the native Bungee class. Any eclipsing would then occur only on the object instance of the imported WSDL, leaving the original imported WSDL unchanged.

Event Adapter

A type of adapter used to bind any events an object may throw, for use by a second object.

Event Viewer

A Cord in Bungee Builder that displays all Cord level events that you can use to "wire" one Cord to another, by dragging and dropping one of the events displayed in the Event Viewer onto another Cord. You also use the Event Viewer (by adding to a page from the Gallery) to wire your own applications together.

[edit] F

Factory

Sometimes used as a verb by Bungee developers, factory refers to a method for generic creation of an object. “To factory” an object in BungeeSpeak means to generically create an object. For more on general principles associated with the term, see Factory Method Pattern at Wikipedia.org.

Form

A member of a Bungee class, a form is a visual representation of all or a portion of that class. Forms provide the ability to connect GUI elements to data structures. Forms facilitate application workflow that takes advantage of the stateful nature of your application. In addition, Forms can be embedded and reused in different application contexts.

Form Adapter

A type of Bungee adapter that provides a way to bind a control (such as a DynamicForm or FormList) on the form of a  first class to the form of a second class, so that the control on the form of the first class can access and display the second class’s form.

Frozen/Unfrozen Application

This feature coming soon. Because applications in the Bungee Builder are made up of various Cords, applications are by default re-mixable and reconfigurable, even by end users. In BungeeSpeak, a “frozen app” is an application where the functionality and even the layout of the application are pre-configured. An "unfrozen app" can be reconfigured at runtime by the user. At this time, all Bungee-powered applications are frozen.

Function Body

See Statement Body.

Function Adapter

A type of adapter that provides a way to bind a function in a first class for use by a second class. This is typified by the DragDropAdapter, where by setting this adapter on a function in the first class, the second class can invoke the drag-and-drop functionality of the first class without calling the drag-and-drop function by name. Function adapters are particularly useful if the first class is modified and the function is renamed. The second class is not affected by this change because the function is invoked by the second class through the adapter (using an integer), and not by name.

[edit] G

Gallery

See Bungee Share.

[edit] I

IDE

(Integrated Development Environment) A computer application development suite. Bungee Builder can be thought of as an IDE. For a more general definition, see IDE at Wikipedia.org.

Intrinsic Variable

A Bungee Logic variable that is automatically provided within Bungee Logic iteration statements, error handlers, and Connection Model/View code. These are provided in order to simplify Bungee Logic scripting, and  should be considered system variables that must not be renamed or deleted.

[edit] J

JITGUID

An acronym for Just in Time GUI Design. JITGUID is a Bungee Builder innovation wherein as you design your Bungee Cord interface, the system framework may prompt you to accomplish tasks needed for connecting visual interface elements to pertinent functionality.

[edit] M

Meta

The TypeLib in the Bungee Builder that contains metadata information for the base meta objects you use to create a Cord.

Meta Class 

A Bungee Labs design time class that contains a metadata description from which a runtime object can be instantiated.

Meta-data or metadata

Not to be confused with Metadata, which is a registered trademark of The Metadata Company, metadata is a condensed description of data, such as the descriptor and link provided by a search engine about data encountered on a search of the Web. The description may be used to access and manipulate data. For a more in depth discussion, see the entry on metadata at Wikipedia.org. See also Meta Class and Meta Repository.

Meta Object

See Meta Class.

Meta Repository

Where Meta Objects are stored and made available for use during design time.

Middleware

In BungeeSpeak, this term refers to the server component of Bungee Connect. The application server is termed “middleware” because the server occupies a logical middle position in delivering remote data accessed through Web services to end users acting upon that data through a user interface. The Bungee Connect middleware server is also the context in which Bungee-powered applications are built and deployed. Most of the functionality available in a Bungee-powered application resides on the server. Client-side (browser-based) functionality is limited mostly to delivery of resource (image) elements and updates. For a more general definition of the term, see Middleware at Webopedia.com.

MRU

An abbreviation of Most Recently Used.

[edit] O

Object

The base class in Bungee Builder, from which almost all others inherit. Object in turn inherits from Root. See Understanding Objects

Open Services

The concept around which Bungee Connect is organized—that Bungee Connect is a facilitator of access to data sources for use in creating compelling and highly interactive Web applications. The data sources used in creating applications in the Bungee Builder are those made available through Web services, whether those services are supplied by third party members or created by Bungee Connect users. Open Services does not preclude the concept of payment to a third party for use of a Web service supplied by a third party. Open Services facilitates creation of both Open Source and Private Web applications.

Open Source Application

In BungeeSpeak, this term refers to applications not marked as Private that are made available for free use, re-use, and adaptation by any registered Bungee Connect user. Open Source applications differ from, but compliment the notion of Open Services.

[edit] P

Page

The final Application Assembly area in Bungee Builder. You add Cords from the Gallery to your page in any combination that suits you, then interconnect the Cords to create a Web application.

Post

The process by which you add a component, such as a Cord, to the Share. You may post to one of many Gallery instances, including the Share within your own workgroup or any shared workgroup, or the public Share (available to all users in the Bungee community). When posting to any of the Share instances, there are three different licensing schemes available:

  • Type L (Left)—components licensed as Type L are accessible in the public view of the Gallery and requires any derivative works be posted back to the Gallery with the same license. Similarly to the LGPL open source license, any changes to the posted element must be submitted back to the Gallery. However, unlike LGPL, within an application using a Type L element, other non Type L components used within the application do not need to be reposted as Type L. Once posted as Type L, the licensed type cannot be changed, nor can the element be removed from the Gallery.
  • Type R (Right)—components licensed as Type R are accessible in the public view of the Gallery and may be used without requirement of posting derivative works with the same license. Similarly to BSD, Apache and other like licenses, changes to the original or derivative works may be posted to the Gallery. If posted, the license for derivative works is at the discretion of the developer, with Type L, Type R, or Type P all possiblities. Elements posted as Type-R may be re-licensed as Type-L, but cannot be removed from the Gallery.
  • Type P (Proprietary)—components licensed as Type P are accessible only in the Gallery intance where they are posted, generally a developers own DesignGroup or other small DesignGroup, and there is no requirement for posting derivative works. Elements posted as Type P may have the license changed and may be removed from the Gallery. You cannot post an element as Type P to the public Gallery.

Private Application

An application developed by a Bungee Connect developer in the Bungee Builder and posted in a private or commercial fashion. Private applications may only be modified by members of the DesignGroup which created the application. Private applications also exist in contrast to Open Source Applications created in Bungee Builder.

Project

Contained within a Solution, a project is the area within the context of the Bungee Builder where you create application functionality. Projects are also the area from which application elements such as forms and Cords are posted. The current project types consist of:

  • AppProject--the logical area where you add Cords to a page and interconnect the Cords to create the application functionality you want.
  • TypeLib--where you add classes to create a set of functionality for reuse in other projects--in other words, a library of types (TypeLib), or the logical area where you wrap a form and its functionality with a Cord object to make a reusable functional assembly.
  • WSDL--the logical area where you import a WSDL and add functionality and interfaces to make the data accessed through the WSDL accessible to end users.
  • StyleProject--the logical area where you create a set of styles for later application to a form or a completed application.
  • ResourceProject--the logical area where you store your images and other resources for use in your applicaions.

Property Adapter

A Property Adapter

Pulse™ 

The Bungee Labs created technology that handles all application interface updates.

[edit] R

Repository

In the Bungee system, where data of various types are stored. Repositories are contained within DesignGroups.

Root

The ultimate end-point of any hierarchy in the Bungee system. Object inherits from Root.

[edit] S

Schema Types

Bungee Logic contains the following schema types that form the structure of all Bungee classes:

SDDS

See Software Development and Deployment as a Service.

Service Level Agreement

(SLA) A commitment by Bungee Labs to you as a user about the conditions under which your applications are hosted. For a more general discussion, see SLA at Wikipedia.org.

Share

See Bungee Share.

Site

Accessible in the schema TypeLib, sites provide the means for inter-statement communication. A Site is an abstraction that enables you to set properties that provide the Bungee System references to data and cause the Bungee System to retrieve that data without “knowing” the actual identities of the components involved, nor the mechanics of how data is set or retrieved. There are currently twelve different types of sites:

Software Development and Deployment as a Service (SDDS)

The Bungee Labs model for creating and deploying web applications. SInce the entire end-to-end application development, deployment, and hosting is browser-based, the entire system is on demand and service-oriented.

Solution

In the Bungee system, the logical container for one or more projects.

Solution Detail

The portion of Bungee Builder where members of classes are displayed graphically.

Solution Explorer

The portion of Bungee Builder where classes are displayed graphically.

Sort Adapter

Sort adapters are used for sorting data in a collection. If you set a field of a class to be a sorted collection, then you can specify a Sort adaptor. The Sort adapter allows you to define the sort criteria to be used in order to sort an object in a collection. At runtime, the collection will ask each object it references for the adaptor view as specified by the collection's field properties.

Statement

The basic building blocks of all Bungee Builder application functionality, Statements are pre-defined logical units that accomplish a particular computing task, such as that of assigning values (for example a.b.c = x.y.z). Currently, there are twelve basic statement types:

Statements can act upon other Statements through Sites. Functionality internal to a Statement is affected by property settings. Statements are contained within a Statement Body and can contain other Statements. For complex programming tasks, Statements can be deeply nested. For more information, see Properties of Bungee Logic Statements.

Statement Body

Acts as a container for other Statements. Also called Function Body.

[edit] T

This

"This" is a reference to the class or object currently selected in the Solution Explorer.

TypeLib

A grouping of like API’s.

[edit] U

UI

(User Interface) The portion of a software application a user accesses to manipulate the data operated on by the software. Bungee Builder facilitates the quick connection of UI elements to the functionality of a Cord using JITGUID. For a more general discussion, see User Interface.

[edit] W

Web Application

In BungeeSpeak, a scalable, highly interactive software application that just happens to run in a browser or other Web-enabled client. Bungee-powered Web applications have a degree of responsiveness that is similar to traditional desktop applications. This responsiveness is made possible through Pulse technology. Because of the componetization of reuseable functional assemblies called Cords, you can quickly assemble, adapt, and re-configure any application built in Bungee Builder.

Web Services

A construct used for remote data access. For a more thorough discussion, see Web services at Reference.com

Wiki

In BungeeSpeak, the repository for all user editable and expandable Bungee Connect documentation. For a more general definition, see Wiki at Wikipedia.org.

Work Space

A possible type of Datasource, a Work Space is logical container for a Solution. A Work Space should not be confused with the Work Space Object.

Work Space Object

Part of the underlying system in Bungee Builder that is used to examine any object you create in Bungee Builder. The Work Space Object scans the object you create for possible properties, and categorizes any properties found. You enable the Work Space Object to identify potential properties by setting Category adapters when you design the object.

WSDL

Web Services Defnition Language file. WSDLs are flat XML file definitions of how to access a particular Web service. When imported into Bungee Builder, WSDLs appear as class structures you can access to build an interface for the web service represented by the WSDL.

 

 

    Copyright © 2005 - 2007 Bungee Labs. All rights reserved.