Bee Team Software


BeeTeam Software is my name for a software design I have developed over the last 50-60 years. Rather than large complex programs that give so much trouble, I now use coordinated small programs that I call WorkerBees. 

Why? Smaller modules are interchangeable and more reliable, with easier unit testing and development.

The Bee Team:


A BeeTeam consists of a Queen with her Workers and Drones organized into a Hive.
Workers and drones are tasks launched by a Queen.
Workers are complete tasks that can run anywhere on your network.
Drones are simplified workers to which you can attach other programs.
Worker/Drones perform their tasks and report on the Event Log.



Inside the Hive -     a suite of related programs:

The Shell-Parser …          processes commands, initiates tasks

The Scheduler …              arranges tasks by time or events

The Dispatcher …             launches tasks that are ready to run

The Event Handler ….       coordinates time, starts, stops, waits, etc.

The Rule Processor …      responds to changes: condiitons or events


Honey = The Event Log:   

We will call our event data honey. 
It is used to monitor and control your organization. 
It costs to collect and is indispensible in making decisions,
Never underestimate the value of your honey!

All events in the Hive are recorded in the Event Log, with a timestamp.
They may contain data such as task starts and completions, progress messages, request for new services, etc.
Because the data is raw, any form of information may be stored in it:
    - data for factories, warehouses, scientific labs, small or large businesses or schools.
Once the data is collected, all sorts of useful information may be extracted from it for analysis and actions, 
       and placed in databases, reports, accounting systems, etc. 
For example, events such as starts and stops may be combined for calculating durations.  
Reports can range from employee and task time tracking - to inventory tallying - to data collection, etc. …

New events may also trigger other tasks - such as dispatching a worker/task by the Queen.


HOW DOES IT WORK? What’s under the hood? :: Python, SimPY, Pyro

The Bee Team software is written in a portable programming language called Python,
       available on most computers today - [Windows, Mac, Linux, IBM AS400s, etc.] 

The Bee Team Queen makes decisions using a custom python based knowledge engine
       using a sqlite event and status database.
       It compares events and rules to decide what to do next.

The BeeTeam coordinates tasks and timing using a python package called SimPY,
       which controls task dispatching - starts, stops, etc. - by creating and tracking events

The BeeTeam also uses another python package called PYRO - python remote objects - 
        to transport tasks/bees between computers on your network.

Finally, The BeeTeam records and coordinates all activity through the use of a database called the Event Log.
All starts, stops and similar events are recorded there.
Event Logs provide the ability to collect and report not only previously anticipated data needs,
             but often to construct other unforseen reports later as well.

© Gareth Harris 2019        -         Contact email:         -         see also: