Created 6/19/99 - Last Updated 6/20/99 - Jack Harich - Go Back
The Bean Assembler (BA) is used to assemble systems from parts. Here we progressively present the Key Concepts needed to understand how the BA really works. |
Each of the Key Concepts has subconcepts, each of which has practice lessons. The BA is so novel and vast that at first it may appear complex, but as soon as your understanding reaches a critical mass, it becomes simple. That should happen about 2/3 the way through these concepts and lessons. Before you start you should have installed the BA and be able to run it. See Downloads.
The Key Concepts
1. System Tree
The basic building block is parts. Each is a Java class.
Parts are grouped into containers.
Containers are hierarchially organized into a System Tree.
2. Message (incomplete)
The basic collaboration mechanism is a Message.
Parts implement MessageListener to receive Messages.
Parts implement MessageSource to send Messages.
Parts have no idea where Messages come from or go. (Anonymous Collaboration)
3. Message Chain (not yet started)
All Messages travel from MessageSource to MessageListeners.
The path a Message travels is a Message Chain.
Message Chains are defined by Container DK.
Message Chains can be viewed with the Inspector.
4. Declarative Knowledge (DK) (incomplete)
The basic reuse mechanism is DK.
Part DK is used by a part to initialize itself. (ParamDriven interface)
Container DK is used to define a container's parts and relationships.
5. Layered Architecture (not yet started)
The topmost layer is the DK used to declare systems.
The middle layer is the parts that are assembled into system.
The bottom layer is the BA Microkernel.
A BA system is composed of DK, parts and the Microkernel.
6. System Assembly (not yet started)
First create an empty system with a root directory and marker class.
Add parts and containers to the root container using Container DK.
Configure each part for reuse with Part DK.
Start the system by starting the root container.
Live evolution of any type can occur while the system is running using Visual Tools.
7. Visual Tools (not yet started)
System Tree shows the hierarchial tree of containers and parts.
DK Editor allows editing a part's DK.
Inspector allows viewing Message Chain, manipulating Properties amd Methods.
Part Shop allows drag and drop assembly from large part inventory. (future feature)
8. System Structure (not yet started)
The basic static structure is the System Tree.
The basic collaborative structure is the Message Chains.
The basic physical structure is DK and class files.
The basic architectural structure is the DK, parts and Microkernel layers.
The basic visual structure is using the DK Editor and Part Shop on the System Tree.