Helix (database) - Description

Description

A Helix project is known as a Collection, a "document" created by Helix RADE (which stands for "Rapid Application Development Environment"). It is represented in the system by a sort of "pseudo-desktop" similar to the Macintosh Finder. A collection may contain thousands of individual databases (also known as relations or tables). Helix applications only open one Collection at a time. However, licenses can be purchased to allow access to numerous collections simultaneously, limited primarily by available memory.

Opening a collection results in a project window with two main parts driven entirely by a unique set of GUI objects. On the left are a number of icon wells, representing new objects that could be created, and a scrollable window on the right (known as the Collection Window) displays the objects that the user has created. Icons are dragged from the wells on the left into the window to create new objects in the collection. These objects include relations (tables) to hold data, sequences (macros) to automate tasks, and users to create custom menus for the end-user. This is one of Helix's most unusual and powerful features.

In the Relation, database tables (groups of related data) are created. Relations contain fields to define datatypes, an abacus to define the relationships among data and create information the fields alone cannot present, indexes to organize data and improve performance, queries to find data, "templates" to structure information visually and for entering, modifying, deleting and printing from "Views" that combine templates, queries and indexes to give the user access to and control over information.

The abacus uses a completely graphical system for creating calculations. You describe the desired calculation by dragging icons representing operations and fields into the abacus' editor window, and then arrange them in a dataflow diagram. For example, to say "first name followed by space followed by last name", you drag in a "followed by" icon, then drag the "first name" field into its first part and set a space character as its second part; then you drag in a second "followed by" icon, feed the output arrow from the first one into the second's first part, and drag the "last name" field into its second part.

Helix RADE runs in two modes, Design mode and User mode. In User Mode the Helix collection opens in one of the defined user menu bars, allowing the user to use the database as they would any other application. Design mode allows the developer (or advanced user) to alter the design of the database, adding fields, creating new reports, etc.

Although intended to simplify programming, iconic programming languages often "miss the point": programming is difficult not because you have to type, but because the complexity very quickly reaches a level where the project can no longer be understood. In theory a graphical language can help reduce this complexity considerably (see intentional programming for examples). In some cases, they do, but in many cases they make the problem worse. Helix is a very forgiving tool, allowing numerous routes to the same result. In the hands of an unskilled user, as with any tool, complex calculations can quickly become unwieldy, requiring that the programmer have a large monitor (or two) to work efficiently. However, skillful users find its visual approach both timesaving and liberating with few serious limitations.

Although quite adept at handling small to mid-size databases, a common problem for Helix is that for much of its lifetime, it has run only in the co-operative multitasking environment of the Classic Mac OS, making it rather unstable for large databases. For many products this is not a serious problem, but for a database this is a true kiss of Death. Although the programming language itself has the scalability required to create complex databases, the inability to run reliably in a 24/7 environment relegates Helix to workgroups of 100 users or less. However, these limitations are rapidly becoming history. QSA released an OS X version of its Helix Server in December 2005 and is rolling out the rest of its product line in OS X versions in 2006 and 2007.

For someone familiar with Helix, the savings in development time can be significant. One expert who is also a leading Microsoft Access trainer/developer estimates that depending upon the size of the project, a Helix project can be finished in 30-70% of the time as the same Access project. The savings come particularly from the absence of a programming "language," thus the elimination of all syntax errors. Since Helix, itself, prevents a developer from making syntactical or programming errors, the remaining sources of problems come from errors in business logic. All languages face this problem, but Helix once again softens the difficulty in tracking down the problems due to its object-based and graphical nature. Because all of the objects are linked (through icons, not through coding), the system "knows" what objects are used by other objects and in what way and simplifies tracking down business logic errors and also provides a simple method of determining everything that is about to be affected by a proposed change to any object.

Helix was the first object-based, visual-programming development environment (preceding VB by many years), so programmers did not seem ready for the idea of a language-less development tool (just as, in those days, they preferred and argued in favor of a character-based OS over a GUI-based OS). But Helix found a strongly loyal following among professionals and small business owners who were able to create complex applications to run their businesses the way they want them to be run (instead of having to fit into a packaged product or hire a programmer to develop a custom application).

Read more about this topic:  Helix (database)

Famous quotes containing the word description:

    It [Egypt] has more wonders in it than any other country in the world and provides more works that defy description than any other place.
    Herodotus (c. 484–424 B.C.)

    A sound mind in a sound body, is a short, but full description of a happy state in this World: he that has these two, has little more to wish for; and he that wants either of them, will be little the better for anything else.
    John Locke (1632–1704)

    As they are not seen on their way down the streams, it is thought by fishermen that they never return, but waste away and die, clinging to rocks and stumps of trees for an indefinite period; a tragic feature in the scenery of the river bottoms worthy to be remembered with Shakespeare’s description of the sea-floor.
    Henry David Thoreau (1817–1862)